From 252dfb941efa2a36ef7a0ab344839dd27d510f2a Mon Sep 17 00:00:00 2001 From: albert Date: Wed, 7 Oct 2026 00:45:50 -0700 Subject: [PATCH 1/9] Bump version to 0.6.1 --- lib/src/app/app_metadata.dart | 2 +- linux/io.busystack.busymark.metainfo.xml | 1 + pubspec.yaml | 2 +- snap/snapcraft.yaml | 2 +- test/src/visualization_packaging_audit_test.dart | 10 +++++----- 5 files changed, 9 insertions(+), 8 deletions(-) diff --git a/lib/src/app/app_metadata.dart b/lib/src/app/app_metadata.dart index 86f05517..ac974a9b 100644 --- a/lib/src/app/app_metadata.dart +++ b/lib/src/app/app_metadata.dart @@ -1 +1 @@ -const busyMarkAppVersion = '0.6.0'; +const busyMarkAppVersion = '0.6.1'; diff --git a/linux/io.busystack.busymark.metainfo.xml b/linux/io.busystack.busymark.metainfo.xml index 045ac604..b8ec81aa 100644 --- a/linux/io.busystack.busymark.metainfo.xml +++ b/linux/io.busystack.busymark.metainfo.xml @@ -87,6 +87,7 @@ https://github.com/busystack/busymark/issues + diff --git a/pubspec.yaml b/pubspec.yaml index 29270b42..8d465423 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,7 +1,7 @@ name: busymark description: Local-first Markdown and Writerside-compatible documentation editor. publish_to: 'none' -version: 0.6.0 +version: 0.6.1 environment: sdk: ">=3.12.1 <4.0.0" diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 6f7fd129..9fe4daf0 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -1,6 +1,6 @@ name: busymark title: BusyMark -version: "0.6.0" +version: "0.6.1" summary: Markdown and Writerside documentation editor # Snap Store listing translations are managed outside this Flutter package. # Update store metadata when approved translated listing text is supplied. diff --git a/test/src/visualization_packaging_audit_test.dart b/test/src/visualization_packaging_audit_test.dart index 941f1ee2..5643f67a 100644 --- a/test/src/visualization_packaging_audit_test.dart +++ b/test/src/visualization_packaging_audit_test.dart @@ -29,10 +29,10 @@ void main() { 'linux/io.busystack.busymark.metainfo.xml', ).readAsStringSync(); - expect(pubspec, contains(RegExp(r'^version: 0\.6\.0$', multiLine: true))); + expect(pubspec, contains(RegExp(r'^version: 0\.6\.1$', multiLine: true))); expect( snapcraft, - contains(RegExp(r'^version: "0\.6\.0"$', multiLine: true)), + contains(RegExp(r'^version: "0\.6\.1"$', multiLine: true)), ); expect(snapcraft, contains(RegExp(r'^grade: stable$', multiLine: true))); expect( @@ -57,9 +57,9 @@ void main() { ), ), ); - expect(metainfo, contains(' Date: Wed, 7 Oct 2026 02:30:17 -0700 Subject: [PATCH 2/9] Scope Local History path reconciliation by dependency (#43) --- .../local_history_controller.dart | 291 +++++++- test/src/local_history_controller_test.dart | 679 ++++++++++++++++++ test/src/local_history_workspace_test.dart | 164 +++++ 3 files changed, 1109 insertions(+), 25 deletions(-) diff --git a/lib/src/local_history/local_history_controller.dart b/lib/src/local_history/local_history_controller.dart index 0832fa7d..2e4fc7e8 100644 --- a/lib/src/local_history/local_history_controller.dart +++ b/lib/src/local_history/local_history_controller.dart @@ -1041,7 +1041,11 @@ class LocalHistoryController extends Notifier { final existingSourceId = _documentIdsByBuffer[source.bufferId]; // Save As freezes and retires any stale destination owner under the // shared store lock before writing the new file. - if (!await _enqueue(_pathRemapOwner, _settlePendingPathOperations)) { + if (!await _settlePromotionPathDependencies( + source.bufferId, + existingSourceId, + destinationPath, + )) { if (ref.mounted && existingSourceId != null && _documentIdsByBuffer[source.bufferId] == existingSourceId && @@ -2291,13 +2295,14 @@ class LocalHistoryController extends Notifier { } } if (_pendingPathOperations.isEmpty) return true; - if (!_pendingPathOperations.first.committed) { - _pendingPathOperations.first + for (final operation in _pendingPathOperations.where( + (op) => !op.committed, + )) { + operation ..retryable = false ..errorDetail = 'Filesystem outcome requires reconciliation.'; - _showCaptureFailure(); - return false; } + _showCaptureFailure(); final settled = await _enqueue( _pathRemapOwner, _settlePendingPathOperations, @@ -2400,7 +2405,7 @@ class LocalHistoryController extends Notifier { }) async { if (id == _pathRemapOwner) { if (!automatic || _hasRetryableWork(id)) { - await _settlePendingPathOperations(); + await _settlePendingPathOperations(automatic: automatic); } return; } @@ -2758,8 +2763,59 @@ class LocalHistoryController extends Notifier { ? null : p.normalize(destinationPath); final frozenPreparedTargets = preparedTargets?.toList(growable: false); - if (_pendingPathOperations.isNotEmpty && - !await _enqueue(_pathRemapOwner, _settlePendingPathOperations)) { + // Settle namespace and explicitly frozen identity dependencies before + // resolving current path owners. Those predecessors can move an identity + // away from this path, making a later operation on it independent. + if (!await _settlePathOperationDependencies( + _LocalHistoryPathScope( + kind: kind, + sourcePath: normalizedSource, + destinationPath: normalizedDestination, + recursive: recursive, + targets: frozenPreparedTargets ?? const [], + documentIds: { + if (boundBufferId != null) + if (_documentIdsByBuffer[boundBufferId] case final documentId?) + documentId, + }, + ownerIds: {if (boundBufferId != null) boundBufferId}, + ), + )) { + throw const LocalHistoryStorageException( + 'An earlier Local History path reconciliation is still pending.', + ); + } + final dependencyOwners = { + ..._ownersAssociatedWithPath(normalizedSource), + if (normalizedDestination != null) + ..._ownersAssociatedWithPath(normalizedDestination), + if (boundBufferId != null) boundBufferId, + }; + final dependencyTargets = [ + ...?frozenPreparedTargets, + ...await _store.resolvePathTargets( + normalizedSource, + recursive: recursive, + ), + if (normalizedDestination != null) + ...await _store.resolvePathTargets( + normalizedDestination, + recursive: recursive, + ), + ]; + final dependencyScope = _LocalHistoryPathScope( + kind: kind, + sourcePath: normalizedSource, + destinationPath: normalizedDestination, + recursive: recursive, + targets: dependencyTargets, + documentIds: { + for (final owner in dependencyOwners) + if (_documentIdsByBuffer[owner] case final documentId?) documentId, + }, + ownerIds: dependencyOwners, + ); + if (!await _settlePathOperationDependencies(dependencyScope)) { throw const LocalHistoryStorageException( 'An earlier Local History path reconciliation is still pending.', ); @@ -2855,6 +2911,33 @@ class LocalHistoryController extends Notifier { preparedTargets: effectiveTargets, operation: (targets) async { final owners = _ownersAssociatedWithPath(normalizedSource); + // Source settlement can bind a previously unknown identity, and + // another caller can queue work while the store lock is awaited. + // Recheck the actual frozen targets before publishing filesystem + // changes; reconciliation cannot be retried inside the store lock. + final actualScope = _LocalHistoryPathScope( + kind: kind, + sourcePath: normalizedSource, + destinationPath: normalizedDestination, + recursive: recursive, + targets: [...dependencyTargets, ...targets], + documentIds: { + ...dependencyScope.documentIds, + if (boundBufferId != null) + if (_documentIdsByBuffer[boundBufferId] case final documentId?) + documentId, + }, + ownerIds: {...dependencyOwners, ...owners}, + ); + if (_pendingPathOperations.any( + (operation) => + !operation.settled && + operation.scope.conflictsWith(actualScope), + )) { + throw const LocalHistoryStorageException( + 'An earlier Local History path reconciliation is still pending.', + ); + } staged = switch (kind) { LocalHistoryPathReconciliationKind.remap => _LocalHistoryPathRemap( operationId: _newPathOperationId(), @@ -3564,36 +3647,111 @@ class LocalHistoryController extends Notifier { if (operationId.isNotEmpty) _retiredPathOperationIds.add(operationId); } - Future _settlePendingPathOperations() async { - while (_pendingPathOperations.isNotEmpty) { - final operation = _pendingPathOperations.first; - if (!operation.committed) return false; + Future _settlePathOperationDependencies(_LocalHistoryPathScope scope) { + if (_pendingPathOperations.isEmpty) return Future.value(true); + return _enqueue( + _pathRemapOwner, + () => _settlePendingPathOperations(requiredBy: scope), + ); + } + + Future _settlePromotionPathDependencies( + String bufferId, + String? documentId, + String destinationPath, + ) async { + if (_pendingPathOperations.isEmpty) return true; + if (!await _settlePathOperationDependencies( + _LocalHistoryPathScope( + kind: LocalHistoryPathReconciliationKind.deletion, + sourcePath: destinationPath, + recursive: false, + documentIds: {if (documentId != null) documentId}, + ownerIds: {bufferId}, + ), + )) { + return false; + } + if (_pendingPathOperations.isEmpty) return true; + return _settlePathOperationDependencies( + _LocalHistoryPathScope( + kind: LocalHistoryPathReconciliationKind.deletion, + sourcePath: destinationPath, + recursive: false, + targets: await _store.resolvePathTargets( + destinationPath, + recursive: false, + ), + documentIds: {if (documentId != null) documentId}, + ownerIds: {bufferId}, + ), + ); + } + + Future _settlePendingPathOperations({ + _LocalHistoryPathScope? requiredBy, + bool automatic = false, + }) async { + final queued = _pendingPathOperations.toList(growable: false); + final required = <_LocalHistoryPathOperation>{}; + if (requiredBy != null) { + // Include transitive prerequisites, in reverse queue order. A later + // operation must never overtake an unresolved predecessor on which it + // depends, even when that predecessor does not touch the new operation. + final scopes = [requiredBy]; + for (final operation in queued.reversed) { + if (!operation.settled && scopes.any(operation.scope.conflictsWith)) { + required.add(operation); + scopes.add(operation.scope); + } + } + } + for (final operation in queued) { + if (requiredBy != null && !required.contains(operation)) continue; + final index = _pendingPathOperations.indexOf(operation); + if (index < 0) continue; + if (automatic && !operation.retryable) continue; + if (_pendingPathOperations + .take(index) + .any( + (earlier) => + !earlier.settled && + earlier.scope.conflictsWith(operation.scope), + )) { + continue; + } + if (!operation.committed) continue; + if (operation.settled && + operation.retainUntilAcknowledged && + !operation.acknowledgementRequested) { + continue; + } if (!operation.applied) { try { await operation.apply(_store); } on Object catch (error) { - if (identical(_pendingPathOperations.firstOrNull, operation)) { + if (_pendingPathOperations.contains(operation)) { operation.retryable = _captureErrorIsRetryable(error); operation.errorDetail = error.toString(); _showCaptureFailure(); if (operation.retryable) _scheduleCheckpoint(_pathRemapOwner); } - return false; + continue; } } - if (!identical(_pendingPathOperations.firstOrNull, operation)) { - return false; - } + if (!_pendingPathOperations.contains(operation)) continue; operation ..applied = true ..retryable = true ..errorDetail = null; _showCaptureFailure(); if (!await refresh()) { - if (identical(_pendingPathOperations.firstOrNull, operation)) { + if (_pendingPathOperations.contains(operation)) { + operation.errorDetail = + 'Committed Local History reconciliation refresh pending.'; _scheduleCheckpoint(_pathRemapOwner); } - return false; + continue; } _rebaseQueuedPathTargetsAfter(operation); if (operation is _LocalHistoryPathDeletion) { @@ -3606,9 +3764,9 @@ class LocalHistoryController extends Notifier { } if (operation.retainUntilAcknowledged && !operation.acknowledgementRequested) { - return true; + continue; } - _pendingPathOperations.removeAt(0); + _pendingPathOperations.remove(operation); _rememberRetiredPathOperation(operation.operationId); for (final owner in operation.affectedOwners) { if (_closedBuffers.contains(owner) && !_hasOutstandingWork(owner)) { @@ -3618,7 +3776,10 @@ class LocalHistoryController extends Notifier { } } } - return true; + return (requiredBy == null ? _pendingPathOperations : required).every( + (operation) => + !_pendingPathOperations.contains(operation) || operation.settled, + ); } void _rebaseQueuedPathTargetsAfter(_LocalHistoryPathOperation committed) { @@ -5068,8 +5229,12 @@ class LocalHistoryController extends Notifier { )) { return true; } - if (_pathOperationBlocksOwner(bufferId, promotion.destinationPath) && - !await _enqueue(_pathRemapOwner, _settlePendingPathOperations)) { + _pathOperationBlocksOwner(bufferId, promotion.destinationPath); + if (!await _settlePromotionPathDependencies( + bufferId, + promotion.documentId, + promotion.destinationPath, + )) { return false; } if (!_operationIsCurrent( @@ -5616,7 +5781,22 @@ class LocalHistoryController extends Notifier { bool _hasRetryableWork(String id) { if (id == _pathRemapOwner) { - return _pendingPathOperations.firstOrNull?.retryable == true; + for (var index = 0; index < _pendingPathOperations.length; index++) { + final operation = _pendingPathOperations[index]; + if (operation.settled || !operation.retryable || !operation.committed) { + continue; + } + if (!_pendingPathOperations + .take(index) + .any( + (earlier) => + !earlier.settled && + earlier.scope.conflictsWith(operation.scope), + )) { + return true; + } + } + return false; } bool retryable(_LocalHistoryFailureStage stage) => _failure(id, stage)?.retryable != false; @@ -6003,6 +6183,54 @@ class _LocalHistoryCaptureFailure { }; } +/// The namespaces reserved by a reconciliation and the stable identities it +/// can change. Remaps always include descendants, regardless of the serialized +/// `recursive` flag (which is only used by deletions). +class _LocalHistoryPathScope { + _LocalHistoryPathScope({ + required LocalHistoryPathReconciliationKind kind, + required String sourcePath, + String? destinationPath, + required bool recursive, + Iterable targets = const [], + Set documentIds = const {}, + this.ownerIds = const {}, + }) : documentIds = { + ...documentIds, + for (final target in targets) target.documentId, + }, + namespaces = [ + ( + path: p.normalize(sourcePath), + recursive: + kind == LocalHistoryPathReconciliationKind.remap || recursive, + ), + if (destinationPath != null) + ( + path: p.normalize(destinationPath), + recursive: kind == LocalHistoryPathReconciliationKind.remap, + ), + for (final target in targets) + (path: p.normalize(target.expectedPath), recursive: false), + ]; + + final Set documentIds; + final Set ownerIds; + final List<({String path, bool recursive})> namespaces; + + bool conflictsWith(_LocalHistoryPathScope other) => + documentIds.any(other.documentIds.contains) || + ownerIds.any(other.ownerIds.contains) || + namespaces.any( + (left) => other.namespaces.any( + (right) => + p.equals(left.path, right.path) || + left.recursive && p.isWithin(left.path, right.path) || + right.recursive && p.isWithin(right.path, left.path), + ), + ); +} + abstract class _LocalHistoryPathOperation { _LocalHistoryPathOperation( Set affectedOwners, @@ -6048,6 +6276,7 @@ abstract class _LocalHistoryPathOperation { final bool retainUntilAcknowledged; final String? commitEvidenceOperationId; bool applied = false; + bool get settled => applied && errorDetail == null; bool acknowledgementRequested = false; Set get documentIds => targets.keys.toSet(); bool retryable = true; @@ -6056,6 +6285,18 @@ abstract class _LocalHistoryPathOperation { LocalHistoryWarningKind get warningKind; String get warningPath; LocalHistoryPathReconciliation get reconciliation; + _LocalHistoryPathScope get scope { + final value = reconciliation; + return _LocalHistoryPathScope( + kind: value.kind, + sourcePath: value.sourcePath, + destinationPath: value.destinationPath, + recursive: value.recursive, + targets: targets.values, + ownerIds: affectedOwners, + ); + } + bool blocksPath(String path); Future apply(LocalHistoryStore store) => store.reconcilePath(reconciliation); diff --git a/test/src/local_history_controller_test.dart b/test/src/local_history_controller_test.dart index fda429ba..3dc4ab3e 100644 --- a/test/src/local_history_controller_test.dart +++ b/test/src/local_history_controller_test.dart @@ -3626,6 +3626,677 @@ void main() { }, ); + for (final scenario in [ + ( + deletion: false, + recursive: false, + source: '/workspace/A.md', + destination: '/workspace/Z.md', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/workspace/B.md', + destination: '/workspace/Z.md', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/workspace/C.md', + destination: '/workspace/A.md', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/workspace/C.md', + destination: '/workspace/B.md', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/workspace/dirA/nested/C.md', + destination: '/workspace/Z.md', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/workspace/dirB/nested/C.md', + destination: '/workspace/Z.md', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/workspace/C.md', + destination: '/workspace/dirA/nested/C.md', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/workspace/C.md', + destination: '/workspace/dirB/nested/C.md', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/workspace', + destination: '/other', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/other', + destination: '/workspace', + dependent: true, + ), + ( + deletion: false, + recursive: false, + source: '/workspace/dirA-sibling/C.md', + destination: '/workspace/dirB-sibling/C.md', + dependent: false, + ), + ( + deletion: false, + recursive: false, + source: '/workspace/C.md', + destination: '/workspace/D.md', + dependent: false, + ), + ( + deletion: true, + recursive: true, + source: '/workspace/dirA/nested/C.md', + destination: '/workspace/Z.md', + dependent: true, + ), + ( + deletion: true, + recursive: true, + source: '/workspace/C.md', + destination: '/workspace/dirA/nested/C.md', + dependent: true, + ), + ( + deletion: true, + recursive: true, + source: '/workspace', + destination: '/other', + dependent: true, + ), + ( + deletion: true, + recursive: true, + source: '/workspace/C.md', + destination: '/workspace/D.md', + dependent: false, + ), + ( + deletion: true, + recursive: false, + source: '/workspace/A.md', + destination: '/workspace/Z.md', + dependent: true, + ), + ( + deletion: true, + recursive: false, + source: '/workspace/C.md', + destination: '/workspace/D.md', + dependent: false, + ), + ]) { + test('path dependency namespaces $scenario', () async { + final store = _ControllableRemapStore(); + final container = _historyContainer(store, <_FakeTimer>[]); + addTearDown(container.dispose); + final controller = container.read( + localHistoryControllerProvider.notifier, + ); + await Future.delayed(Duration.zero); + final directory = + scenario.recursive || + scenario.source.contains('dir') || + scenario.destination.contains('dir'); + final pendingSource = directory ? '/workspace/dirA' : '/workspace/A.md'; + final pendingDestination = directory + ? '/workspace/dirB' + : '/workspace/B.md'; + final original = _fileBuffer( + 'pending-owner', + directory ? '$pendingSource/original.md' : pendingSource, + 'original history', + ); + await controller.observeOpened(original); + expect(await controller.flushBuffer(original), isTrue); + final targets = await store.resolvePathTargets( + pendingSource, + recursive: true, + ); + store.failingReconciliationSources.add(pendingSource); + final pending = scenario.deletion + ? LocalHistoryPathReconciliation.deletion( + operationId: 'pending-deletion', + sourcePath: pendingSource, + recursive: scenario.recursive, + targets: targets, + ) + : LocalHistoryPathReconciliation.remap( + operationId: 'pending-remap', + sourcePath: pendingSource, + destinationPath: pendingDestination, + targets: targets, + ); + expect( + await controller.restorePendingPathReconciliations([pending]), + isFalse, + ); + final retainedPending = controller.pendingPathReconciliations.single; + final attempts = store.reconciliationAttempts.length; + var filesystemCalled = false; + final operation = controller.runStagedPathRemap( + sourcePath: scenario.source, + destinationPath: scenario.destination, + filesystemOperation: () async { + filesystemCalled = true; + return true; + }, + didCommit: (value) => value, + ); + if (scenario.dependent) { + await expectLater( + operation, + throwsA(isA()), + ); + } else { + expect(await operation, isTrue); + expect( + store.reconciliationAttempts.skip(attempts), + isNot(contains(pendingSource)), + ); + } + expect(filesystemCalled, !scenario.dependent); + expect( + controller.pendingPathReconciliations.single.toJson(), + retainedPending.toJson(), + ); + expect( + (await store.load()).documents.single.currentPath, + original.filePath, + ); + }); + } + + for (final binding in [ + 'prepared target', + 'bound identity', + 'destination identity', + ]) { + test('path dependency uses $binding with different paths', () async { + final store = _ControllableRemapStore(); + final container = _historyContainer(store, <_FakeTimer>[]); + addTearDown(container.dispose); + final controller = container.read( + localHistoryControllerProvider.notifier, + ); + await Future.delayed(Duration.zero); + final original = _fileBuffer( + 'identity-owner', + '/elsewhere/X.md', + 'same identity', + ); + await controller.observeOpened(original); + expect(await controller.flushBuffer(original), isTrue); + final target = (await store.resolvePathTargets( + original.filePath!, + recursive: false, + )).single; + final pending = LocalHistoryPathReconciliation.remap( + operationId: 'pending-identity-remap', + sourcePath: '/workspace/A.md', + destinationPath: '/workspace/B.md', + targets: [target.atPath('/workspace/A.md')], + ); + store.failingReconciliationSources.add(pending.sourcePath); + expect( + await controller.restorePendingPathReconciliations([pending]), + isFalse, + ); + var filesystemCalled = false; + await expectLater( + controller.runStagedPathRemap( + sourcePath: '/unrelated/C.md', + destinationPath: binding == 'destination identity' + ? original.filePath! + : '/unrelated/D.md', + preparedTargets: binding == 'prepared target' ? [target] : null, + boundBufferId: binding == 'bound identity' ? original.id : null, + filesystemOperation: () async { + filesystemCalled = true; + return true; + }, + didCommit: (value) => value, + ), + throwsA(isA()), + ); + expect(filesystemCalled, isFalse); + expect( + controller.pendingPathReconciliations.single.toJson(), + pending.toJson(), + ); + }); + } + + test( + 'path dependency checks promotion destination identity at a different path', + () async { + final root = await Directory.systemTemp.createTemp( + 'history-promotion-dependency-', + ); + addTearDown(() => root.delete(recursive: true)); + final destination = p.join(root.path, 'C.md'); + const newText = 'new first-save lineage'; + await File(destination).writeAsString(newText); + final store = _ControllableRemapStore(); + final old = await store.capture( + LocalHistoryCaptureRequest( + path: destination, + displayName: 'C.md', + source: 'older destination lineage\n', + format: TextFormatMetadata.utf8Lf, + capturedAt: DateTime.utc(2026, 1, 1), + reason: LocalHistoryCaptureReason.baseline, + ), + const LocalHistoryPolicy(), + ); + final container = _historyContainer(store, <_FakeTimer>[]); + addTearDown(container.dispose); + final controller = container.read( + localHistoryControllerProvider.notifier, + ); + await Future.delayed(Duration.zero); + final untitled = DocumentBuffer.untitled( + id: 'promotion-owner', + name: 'Untitled', + text: newText, + ); + await controller.observeOpened(untitled); + final sourceId = controller.documentIdForBuffer(untitled.id)!; + final target = (await store.resolvePathTargets( + destination, + recursive: false, + )).single; + final pending = LocalHistoryPathReconciliation.remap( + operationId: 'old-destination-identity', + sourcePath: p.join(root.path, 'A.md'), + destinationPath: p.join(root.path, 'B.md'), + targets: [target.atPath(p.join(root.path, 'A.md'))], + ); + store.failingReconciliationSources.add(pending.sourcePath); + expect( + await controller.restorePendingPathReconciliations([pending]), + isFalse, + ); + store.reconciliationAttempts.clear(); + expect( + await controller.captureSavedAs( + LocalHistoryBufferSnapshot.fromBuffer(untitled), + destination, + destinationExisted: false, + ), + isFalse, + ); + expect(store.reconciliationAttempts, [pending.sourcePath]); + // The retained promotion's retry must enforce the same dependency. + expect(await controller.flushBuffer(untitled), isFalse); + final snapshot = await store.load(); + final destinationOwner = snapshot.documents.singleWhere( + (d) => d.id == old.document.id, + ); + expect(destinationOwner.deleted, isFalse); + expect(destinationOwner.currentPath, destination); + expect( + snapshot.documents.singleWhere((d) => d.id == sourceId).untitled, + isTrue, + ); + expect( + controller.pendingPathReconciliations.single.toJson(), + pending.toJson(), + ); + }, + ); + + test( + 'path dependency settles only conflicting entries behind an unresolved head', + () async { + final store = _ControllableRemapStore(); + final container = _historyContainer(store, <_FakeTimer>[]); + addTearDown(container.dispose); + final controller = container.read( + localHistoryControllerProvider.notifier, + ); + await Future.delayed(Duration.zero); + final a = _fileBuffer('a-owner', '/workspace/A.md', 'A history'); + final x = _fileBuffer('x-owner', '/workspace/X.md', 'X history'); + await controller.observeOpened(a); + await controller.observeOpened(x); + final pendingA = LocalHistoryPathReconciliation.remap( + operationId: 'pending-a', + sourcePath: a.filePath!, + destinationPath: '/workspace/B.md', + targets: await store.resolvePathTargets(a.filePath!, recursive: false), + ); + final pendingX = LocalHistoryPathReconciliation.remap( + operationId: 'pending-x', + sourcePath: x.filePath!, + destinationPath: '/workspace/Y.md', + targets: await store.resolvePathTargets(x.filePath!, recursive: false), + ); + store.failingReconciliationSources.addAll([ + pendingA.sourcePath, + pendingX.sourcePath, + ]); + expect( + await controller.restorePendingPathReconciliations([ + pendingA, + pendingX, + ]), + isFalse, + ); + final retainedA = controller.pendingPathReconciliations.first; + store.reconciliationAttempts.clear(); + var filesystemCalls = 0; + Future moveY() => controller.runStagedPathRemap( + sourcePath: '/workspace/Y.md', + destinationPath: '/workspace/Z.md', + filesystemOperation: () async { + filesystemCalls++; + return true; + }, + didCommit: (value) => value, + ); + await expectLater(moveY(), throwsA(isA())); + expect(filesystemCalls, 0); + expect(store.reconciliationAttempts, [pendingX.sourcePath]); + expect( + controller.pendingPathReconciliations.map((op) => op.operationId), + ['pending-a', 'pending-x'], + ); + store.failingReconciliationSources.remove(pendingX.sourcePath); + store.reconciliationAttempts.clear(); + expect(await moveY(), isTrue); + expect(filesystemCalls, 1); + expect(store.reconciliationAttempts, [ + pendingX.sourcePath, + '/workspace/Y.md', + ]); + expect( + controller.pendingPathReconciliations.first.toJson(), + retainedA.toJson(), + ); + final snapshot = await store.load(); + expect( + snapshot.documents + .singleWhere((d) => d.id == pendingA.documentIds.single) + .currentPath, + a.filePath, + ); + expect( + snapshot.documents + .singleWhere((d) => d.id == pendingX.documentIds.single) + .currentPath, + '/workspace/Z.md', + ); + }, + ); + + for (final promotion in [false, true]) { + test( + 'path dependency recomputes identities after settling namespace prerequisites ' + '(promotion=$promotion)', + () async { + final store = _ControllableRemapStore(); + final container = _historyContainer(store, <_FakeTimer>[]); + addTearDown(container.dispose); + final controller = container.read( + localHistoryControllerProvider.notifier, + ); + await Future.delayed(Duration.zero); + final a = _fileBuffer( + 'old-path-owner', + '/workspace/A.md', + 'moved identity', + ); + await controller.observeOpened(a); + final target = (await store.resolvePathTargets( + a.filePath!, + recursive: false, + )).single; + final first = LocalHistoryPathReconciliation.remap( + operationId: 'move-a-to-b', + sourcePath: '/workspace/A.md', + destinationPath: '/workspace/B.md', + targets: [target], + ); + final second = LocalHistoryPathReconciliation.remap( + operationId: 'move-b-to-d', + sourcePath: '/workspace/B.md', + destinationPath: '/workspace/D.md', + targets: [target.atPath('/workspace/B.md')], + ); + store.failingReconciliationSources.addAll([ + first.sourcePath, + second.sourcePath, + ]); + expect( + await controller.restorePendingPathReconciliations([first, second]), + isFalse, + ); + store.failingReconciliationSources.remove(first.sourcePath); + store.reconciliationAttempts.clear(); + var filesystemCalled = false; + if (promotion) { + final untitled = DocumentBuffer.untitled( + id: 'new-owner', + name: 'New', + text: 'new independent identity', + ); + await controller.observeOpened(untitled); + expect( + await controller.captureSavedAs( + LocalHistoryBufferSnapshot.fromBuffer(untitled), + a.filePath!, + destinationExisted: false, + ), + isTrue, + ); + final created = (await store.load()).documents.singleWhere( + (d) => d.currentPath == a.filePath, + ); + expect(created.id, isNot(target.documentId)); + expect(controller.documentIdForBuffer(untitled.id), created.id); + } else { + expect( + await controller.runStagedPathDeletion( + path: '/workspace/A.md', + recursive: false, + filesystemOperation: () async { + filesystemCalled = true; + return true; + }, + didCommit: (value) => value, + ), + isTrue, + ); + expect(filesystemCalled, isTrue); + } + expect( + store.reconciliationAttempts.where( + (path) => path == second.sourcePath, + ), + isEmpty, + ); + expect( + controller.pendingPathReconciliations.single.operationId, + second.operationId, + ); + expect(controller.pendingPathReconciliations.single.documentIds, [ + target.documentId, + ]); + final document = (await store.load()).documents.singleWhere( + (d) => d.id == target.documentId, + ); + expect(document.id, target.documentId); + expect(document.currentPath, '/workspace/B.md'); + expect(document.deleted, isFalse); + }, + ); + } + + test('path dependency preserves transitive queue ordering', () async { + final store = _ControllableRemapStore(); + final container = _historyContainer(store, <_FakeTimer>[]); + addTearDown(container.dispose); + final controller = container.read(localHistoryControllerProvider.notifier); + await Future.delayed(Duration.zero); + final a = _fileBuffer('chain-owner', '/workspace/A.md', 'chain history'); + await controller.observeOpened(a); + final target = (await store.resolvePathTargets( + a.filePath!, + recursive: false, + )).single; + final first = LocalHistoryPathReconciliation.remap( + operationId: 'chain-first', + sourcePath: '/workspace/A.md', + destinationPath: '/workspace/B.md', + targets: [target], + ); + final second = LocalHistoryPathReconciliation.remap( + operationId: 'chain-second', + sourcePath: '/workspace/B.md', + destinationPath: '/workspace/C.md', + targets: [target.atPath('/workspace/B.md')], + ); + store.failingReconciliationSources.add(first.sourcePath); + expect( + await controller.restorePendingPathReconciliations([first, second]), + isFalse, + ); + store.reconciliationAttempts.clear(); + var filesystemCalled = false; + Future deleteC() => controller.runStagedPathDeletion( + path: '/workspace/C.md', + recursive: false, + filesystemOperation: () async { + filesystemCalled = true; + return true; + }, + didCommit: (value) => value, + ); + await expectLater(deleteC(), throwsA(isA())); + expect(filesystemCalled, isFalse); + expect(store.reconciliationAttempts, [first.sourcePath]); + expect(controller.pendingPathReconciliations.map((op) => op.operationId), [ + 'chain-first', + 'chain-second', + ]); + store.failingReconciliationSources.clear(); + expect(await deleteC(), isTrue); + expect((await store.load()).documents.single.deleted, isTrue); + expect( + (await store.load()).documents.single.currentPath, + '/workspace/C.md', + ); + }); + + for (final executingHead in [false, true]) { + test('path dependency retries independent work behind retained head ' + '(executing=$executingHead)', () async { + final store = _ControllableRemapStore(); + final timers = <_FakeTimer>[]; + final container = _historyContainer(store, timers); + addTearDown(container.dispose); + final controller = container.read( + localHistoryControllerProvider.notifier, + ); + await Future.delayed(Duration.zero); + if (executingHead) { + expect( + await controller.restorePendingPathReconciliations([ + const LocalHistoryPathReconciliation.remap( + operationId: 'executing-head', + sourcePath: '/workspace/A.md', + destinationPath: '/workspace/B.md', + targets: [], + ownerIds: ['unknown-outcome-owner'], + phase: LocalHistoryPathReconciliationPhase.executing, + ), + ]), + isFalse, + ); + } else { + final a = _fileBuffer( + 'applied-head-owner', + '/workspace/A.md', + 'A history', + ); + await controller.observeOpened(a); + expect( + await controller.runStagedPathRemap( + sourcePath: a.filePath!, + destinationPath: '/workspace/B.md', + filesystemOperation: () async => true, + didCommit: (value) => value, + ), + isTrue, + ); + } + final head = controller.pendingPathReconciliations.single; + final x = _fileBuffer('retry-owner', '/workspace/X.md', 'X history'); + await controller.observeOpened(x); + final deletion = LocalHistoryPathReconciliation.deletion( + operationId: 'retry-independent', + sourcePath: x.filePath!, + recursive: false, + targets: await store.resolvePathTargets(x.filePath!, recursive: false), + ); + store.failingReconciliationSources.add(deletion.sourcePath); + expect( + await controller.restorePendingPathReconciliations([deletion]), + isFalse, + ); + expect(controller.pendingPathReconciliations, hasLength(2)); + store.failingReconciliationSources.clear(); + store.reconciliationAttempts.clear(); + for (final timer in timers.toList()) { + timer.fire(); + } + await _waitForHistory( + container, + (_) => controller.pendingPathReconciliations.length == 1, + ); + expect(store.reconciliationAttempts, [deletion.sourcePath]); + expect( + controller.pendingPathReconciliations.single.toJson(), + head.toJson(), + ); + expect( + (await store.load()).documents + .singleWhere((d) => d.currentPath == x.filePath) + .deleted, + isTrue, + ); + }); + } + test( 'staged path commit survives refresh failure until workspace acknowledgement', () async { @@ -5409,6 +6080,8 @@ class _RepairStore extends MemoryLocalHistoryStore { } class _ControllableRemapStore extends MemoryLocalHistoryStore { + final failingReconciliationSources = {}; + final reconciliationAttempts = []; var failRemaps = false; var blockNextRemap = false; var failDeletions = false; @@ -5458,6 +6131,12 @@ class _ControllableRemapStore extends MemoryLocalHistoryStore { Future reconcilePath( LocalHistoryPathReconciliation reconciliation, ) async { + reconciliationAttempts.add(reconciliation.sourcePath); + if (failingReconciliationSources.contains(reconciliation.sourcePath)) { + throw const LocalHistoryStorageException( + 'Injected path-specific reconciliation failure', + ); + } if (reconciliation.kind == LocalHistoryPathReconciliationKind.remap) { remapAttempts++; if (blockNextRemap) { diff --git a/test/src/local_history_workspace_test.dart b/test/src/local_history_workspace_test.dart index ea7be97b..8687f37d 100644 --- a/test/src/local_history_workspace_test.dart +++ b/test/src/local_history_workspace_test.dart @@ -15,6 +15,7 @@ import 'package:busymark/src/workspace/session_persistence.dart'; import 'package:busymark/src/workspace/text_format_metadata.dart'; import 'package:busymark/src/workspace/workspace_controller.dart'; import 'package:busymark/src/workspace/workspace_file_monitor.dart'; +import 'package:busymark/src/workspace/workspace_message.dart'; import 'package:busymark/src/workspace/workspace_model.dart'; import 'package:busymark/src/workspace/workspace_service.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; @@ -3331,6 +3332,169 @@ void main() { }, ); + for (final existingDestination in [false, true]) { + test('pending unrelated remap permits workspace Save As ' + '(existing=$existingDestination)', () async { + final source = p.join(root.path, 'A.md'); + final moved = p.join(root.path, 'B.md'); + final destination = p.join(root.path, 'C.md'); + const sourceText = 'History belonging only to A/B\n'; + const destinationText = 'Existing history belonging only to C\n'; + const newText = 'Distinctive newly created C contents\n'; + await File(source).writeAsString(sourceText); + final historyRoot = Directory(p.join(root.path, 'history')); + FileLocalHistoryStore freshStore() => + FileLocalHistoryStore(rootDirectory: () async => historyRoot); + final diskStore = freshStore(); + final existing = existingDestination + ? await _capture(diskStore, destination, destinationText) + : null; + if (existingDestination) { + await File(destination).writeAsString(destinationText); + } + final store = _ControllableHistoryStore(diskStore); + final sessions = MemoryDocumentSessionStore(); + final harness = await _harness( + store, + sessionStore: sessions, + recoveryStore: MemoryDocumentRecoveryStore(), + fileMonitor: _ControlledFileMonitor(), + timerFactory: (delay, callback) => _FakeTimer(delay, callback), + ); + final history = harness.container.read( + localHistoryControllerProvider.notifier, + ); + await harness.controller.openPath(source); + expect(await history.flushBuffer(harness.state.activeBuffer!), isTrue); + final sourceId = history.documentIdForBuffer( + harness.state.activeBuffer!.id, + )!; + store.remapsAvailable = false; + expect( + await harness.controller.renameWorkspaceEntity(source, 'B.md'), + isTrue, + ); + expect(await File(source).exists(), isFalse); + expect(await File(moved).readAsString(), sourceText); + var pending = history.pendingPathReconciliations.single; + expect(pending.sourcePath, source); + expect(pending.destinationPath, moved); + expect(pending.documentIds, [sourceId]); + expect(pending.phase, LocalHistoryPathReconciliationPhase.committed); + + expect(await harness.controller.createMarkdownWorkspace(), isTrue); + harness.controller.updateActiveText(newText); + final newBufferId = harness.state.activeBuffer!.id; + expect(await history.flushBuffer(harness.state.activeBuffer!), isTrue); + final untitledId = history.documentIdForBuffer(newBufferId)!; + expect(untitledId, isNot(sourceId)); + // Closing A transfers its retained work to a detached owner. + pending = history.pendingPathReconciliations.single; + expect( + await harness.controller.saveActiveAs( + destination, + overwriteExisting: existingDestination, + ), + isTrue, + ); + expect(await File(destination).readAsString(), newText); + expect(harness.state.activeBuffer!.filePath, destination); + expect(harness.state.activeBuffer!.isUntitled, isFalse); + expect(harness.state.activeBuffer!.isDirty, isFalse); + expect( + harness.state.message?.code, + isNot(WorkspaceMessageCode.saveFailed), + ); + final destinationId = history.documentIdForBuffer(newBufferId)!; + expect(destinationId, existing?.document.id ?? untitledId); + expect(destinationId, isNot(sourceId)); + if (existingDestination) expect(destinationId, isNot(untitledId)); + expect(history.warningForBuffer(newBufferId), isNull); + expect( + history.pendingPathReconciliations.single.toJson(), + pending.toJson(), + ); + await harness.controller.flushPersistence(); + expect( + sessions.value!.pendingLocalHistoryReconciliations.single.toJson(), + pending.toJson(), + ); + + final beforeRecoveryStore = freshStore(); + final beforeRecovery = await beforeRecoveryStore.load(); + expect( + beforeRecovery.documents + .singleWhere((d) => d.id == sourceId) + .currentPath, + source, + ); + expect( + beforeRecovery.documents + .singleWhere((d) => d.id == destinationId) + .currentPath, + destination, + ); + final destinationRevisions = beforeRecovery.revisionsFor(destinationId); + expect( + await _revisionSources(beforeRecoveryStore, destinationRevisions), + existingDestination + ? containsAll([destinationText, newText]) + : everyElement(newText), + ); + expect(destinationRevisions, isNotEmpty); + expect( + await _revisionSources( + beforeRecoveryStore, + beforeRecovery.revisionsFor(sourceId), + ), + [sourceText], + ); + if (existingDestination) { + expect( + beforeRecovery.documents + .singleWhere((d) => d.id == untitledId) + .untitled, + isTrue, + ); + expect( + await _revisionSources( + beforeRecoveryStore, + beforeRecovery.revisionsFor(untitledId), + ), + [newText], + ); + } + + store.remapsAvailable = true; + expect(await history.flushAll(harness.state.documentBuffers), isTrue); + expect(history.pendingPathReconciliations, isEmpty); + final afterRecoveryStore = freshStore(); + final afterRecovery = await afterRecoveryStore.load(); + expect( + afterRecovery.documents + .singleWhere((d) => d.id == sourceId) + .currentPath, + moved, + ); + expect( + afterRecovery.documents + .singleWhere((d) => d.id == destinationId) + .toJson(), + beforeRecovery.documents + .singleWhere((d) => d.id == destinationId) + .toJson(), + ); + expect( + afterRecovery.revisionsFor(destinationId).map((r) => r.toJson()), + destinationRevisions.map((r) => r.toJson()), + ); + expect(history.documentIdForBuffer(newBufferId), destinationId); + expect(harness.state.activeBuffer!.filePath, destination); + expect(await File(destination).readAsString(), newText); + expect(history.warningForBuffer(newBufferId), isNull); + }); + } + test('committed move retries a failed history path reconciliation', () async { final sourcePath = p.join(root.path, 'remap-a.md'); final destinationPath = p.join(root.path, 'remap-b.md'); From 5ca3a64bc2665adb2cb200439804eb21b7784d01 Mon Sep 17 00:00:00 2001 From: Albert G Date: Wed, 7 Oct 2026 13:16:15 -0700 Subject: [PATCH 3/9] Fix/nextcloud notes uncertain creation workflow (#44) * Require reviewed explicit binding after uncertain Notes creation * Record adoption acceptance, release artifacts and remaining Snap failures * Complete strict Snap acceptance in a configured disposable KVM desktop * Include raw installed acceptance and confinement logs --- .../.gitattributes | 2 + .../nextcloud-explicit-adoption/.gitignore | 1 + .../nextcloud-explicit-adoption/README.md | 34 + .../evidence/analyze-final.log | 65 + .../evidence/analyze-initial.log | 7 + .../evidence/analyze.log | 2 + .../evidence/application-results.json | 15 + .../evidence/automatic-single.html | 22 + .../evidence/boundary-debug.log | 88 + .../evidence/boundary-debug2.log | 48 + .../evidence/boundary-debug3.log | 32 + .../evidence/browser-login.json | 7 + .../evidence/candidate-tab-debug.log | 19 + .../evidence/confirmation-races-final.log | 35 + .../evidence/creation-policy.log | 53 + .../evidence/credential-policy.log | 0 .../evidence/credential-revocation.json | 15 + .../evidence/customized.pdf | Bin 0 -> 72063 bytes .../.busymark-html-export.json | 1 + ...54a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png | Bin 0 -> 8126 bytes ...fabcd82fb194466aa864db1174930d37987c02.svg | 1 + ...6f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg | 1 + ...f55403dcb3dce2b04a0e8c6796d266009157de.svg | 1 + ...53fefa19817867c950e5d788f19f4cc63e1272.svg | 1 + ...4c685f3a0edd2330ae48f931f3bff79d569cb5.png | Bin 0 -> 10479 bytes ...a75c44af4f5fbbe34ff4bb5776543e82ea74f8.png | Bin 0 -> 6591 bytes ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 + ...1b7d454699738c8ea89286f76b474d56eedecd.png | Bin 0 -> 10868 bytes ...ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png | Bin 0 -> 7183 bytes ...9793a43c752b49ebcb4170776147c18f39cfac.svg | 1 + ...476bf8460d1471437bc6a034fab96d2def0b6e.png | Bin 0 -> 8102 bytes ...7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg | 1 + .../evidence/dark-assets.html | 22 + .../evidence/dependency-lock.log | 63 + .../evidence/focused-before-renderer.log | 232 + .../evidence/focused-final.log | 232 + .../evidence/focused-initial.log | 258 + .../evidence/focused-serial.log | 494 + .../evidence/focused.log | 228 + .../evidence/format-final.log | 1 + .../evidence/format-prepare.log | 3 + .../evidence/format.log | 2 + .../evidence/full-flutter-before-renderer.log | 4412 ++++++++ .../evidence/full-flutter-final.log | 4412 ++++++++ .../evidence/full-flutter-timing-failure.log | 4440 +++++++++ .../evidence/full-flutter.log | 4411 ++++++++ .../evidence/gtk-accent-host.log | 25 + .../evidence/gtk-accent.log | 7 + .../live-fixtures/live-lock-persistent.json | 20 + .../historical/live-fixtures/live-lock.json | 12 + .../native-fixtures/spelling-online.json | 25 + .../native-fixtures/spelling-online.log | 7 + .../spelling-wayland-denied-network.json | 17 + .../spelling-wayland-denied-network.log | 12 + .../spelling-x11-denied-network.json | 25 + .../spelling-x11-denied-network.log | 7 + .../historical/native-fixtures/weston.log | 32 + .../historical/native-fixtures/xvfb.log | 57 + .../renderer-experiment/change.patch | 28 + .../renderer-experiment/identity.json | 18 + .../linux-build-render-root.log | 65 + .../native-visualization-wayland-render.log | 26 + .../native-visualization-x11-render.log | 13 + .../renderer-experiment/snap-clean-render.log | 8848 ++++++++++++++++ .../snap-visualization-x11-render-retry.json | 1 + .../snap-visualization-x11-render-retry.log | 13 + .../snap-visualization-x11-render.json | 1 + .../snap-visualization-x11-render.log | 18 + .../01-verify-gtk-svg-icon-loader.sh | 12 + ...imes-packaged-tools-media-and-resources.sh | 100 + ...ctionary-and-verify-refresh-offline-use.sh | 29 + ...p-visualization-and-pdf-paths-under-x11.sh | 14 + ...pelling-and-visualization-under-wayland.sh | 40 + .../evidence/installed-kvm/README.md | 72 + .../01-verify-gtk-svg-icon-loader/run.log | 1 + .../acceptance-session-fixture/status.tsv | 1 + .../01-verify-gtk-svg-icon-loader/run.log | 6 + .../run.log | 2 + .../run.log | 35 + .../spelling-release.json | 25 + .../run.log | 12 + .../spelling-release.json | 25 + .../visualization-release-x11.json | 1 + .../acceptance/desktop-environment.txt | 2 + .../installed-kvm/acceptance/desktop-xvfb.log | 19 + .../acceptance/installed-identity-final.log | 59 + .../acceptance/installed-identity.log | 59 + .../installed-kvm/acceptance/kernel-audit.log | 1009 ++ .../acceptance/portal-settings.txt | 1 + .../installed-kvm/acceptance/portals.conf | 3 + .../acceptance/rendered-exports.tar.gz | Bin 0 -> 118776 bytes .../acceptance/spelling-online-install.json | 25 + .../installed-kvm/acceptance/status.tsv | 7 + .../wayland-configured-desktop/run.log | 52 + .../spelling-release-wayland.json | 25 + .../visualization-release-wayland.json | 1 + .../visualization-smoke.pdf | Bin 0 -> 71212 bytes .../acceptance/wayland-repeat/run.log | 52 + .../spelling-release-wayland.json | 25 + .../visualization-release-wayland.json | 1 + .../wayland-repeat/visualization-smoke.pdf | Bin 0 -> 71212 bytes .../installed-kvm/acceptance/weston-snap.log | 62 + .../acceptance/x11-configured-desktop/run.log | 11 + .../visualization-release-x11.json | 1 + .../visualization-smoke.pdf | Bin 0 -> 66398 bytes .../acceptance/x11-no-at-bridge/run.log | 10 + .../visualization-release-x11.json | 1 + .../acceptance/x11-repeat/run.log | 11 + .../x11-repeat/visualization-release-x11.json | 1 + .../x11-repeat/visualization-smoke.pdf | Bin 0 -> 66398 bytes .../evidence/installed-kvm/cleanup.json | 9 + .../installed-kvm/collect-identity.sh | 19 + .../evidence/installed-kvm/install.log | 34 + .../evidence/installed-kvm/portal-setup.log | 1 + .../installed-kvm/public-ci-access.json | 12 + .../installed-kvm/repeat-acceptance.sh | 16 + .../evidence/installed-kvm/results.json | 44 + .../evidence/installed-kvm/run-acceptance.sh | 17 + .../snap-acceptance-before-kvm.json | 28 + .../evidence/installed-kvm/workflow-run.log | 8 + .../installed-kvm/workflow-steps.json | 22 + .../installed-kvm/workflow-user-session.log | 4 + .../installed-kvm/x11-configured-desktop.log | 1 + .../evidence/libsecret.log | 0 .../evidence/linux-build-final.log | 2 + .../evidence/linux-build.log | 2 + .../evidence/linux-release-hashes.txt | 3 + .../evidence/linux-source-identity.json | 578 ++ .../evidence/live-6.0.1-final.json | 19 + .../evidence/live-6.0.1-final.log | 1 + .../evidence/live-6.0.1.json | 19 + .../evidence/live-6.0.1.log | 1 + .../evidence/live-6.1.0-final.json | 19 + .../evidence/live-6.1.0-final.log | 1 + .../evidence/live-6.1.0.json | 19 + .../evidence/live-6.1.0.log | 1 + .../evidence/live-lock-final.json | 23 + .../evidence/live-lock-final.log | 1 + .../evidence/live-lock-persistent.log | 1 + .../evidence/live-lock.log | 1 + .../evidence/localization-audit.log | 23 + .../evidence/localization-generation.log | 4 + .../evidence/native-adopted-restarted.png | Bin 0 -> 68261 bytes .../evidence/native-adoption-checks.json | 31 + .../evidence/native-after-adoption.json | 51 + .../evidence/native-after-restart.json | 51 + .../native-before-adoption-server.json | 15 + .../evidence/native-confirmation.png | Bin 0 -> 106143 bytes .../evidence/native-connected.png | Bin 0 -> 278 bytes .../evidence/native-final-unresolved.png | Bin 0 -> 91488 bytes .../evidence/native-offline-draft.json | 63 + .../evidence/native-offline-staged.png | Bin 0 -> 87890 bytes .../evidence/native-restart-checks.json | 8 + .../evidence/native-spelling-dependencies.log | 19 + .../evidence/native-spelling.log | 15 + .../native-uncertain-before-edit.json | 55 + .../evidence/native-uncertain-newer-edit.json | 99 + .../evidence/native-uncertain.png | Bin 0 -> 83532 bytes .../evidence/native-unresolved-checks.json | 14 + .../native-visualization-wayland-final.log | 26 + .../native-visualization-x11-final.log | 13 + .../evidence/native-vm-final.log | 7 + .../spelling-online-final.json | 25 + .../native-vm-final/spelling-online.log | 3 + ...spelling-wayland-denied-network-final.json | 25 + .../spelling-wayland-denied-network.log | 12 + .../spelling-x11-denied-network-final.json | 25 + .../spelling-x11-denied-network.log | 1 + .../evidence/native-vm-final/weston.log | 64 + .../evidence/native-vm-final/xvfb.log | 57 + .../evidence/native-vm-smokes.log | 6 + .../offline.assets/.busymark-html-export.json | 1 + ...54a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png | Bin 0 -> 8126 bytes ...c1b02bd63f106d5abd4402820562c3c423ec1e.svg | 1 + ...49c1d49b1ede4096047cf7c0de72a236825eb6.svg | 1 + ...30ee752e9d5846cac2e2162bccbbb31744093e.svg | 1 + ...5b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg | 1 + ...4c685f3a0edd2330ae48f931f3bff79d569cb5.png | Bin 0 -> 10479 bytes ...a75c44af4f5fbbe34ff4bb5776543e82ea74f8.png | Bin 0 -> 6591 bytes ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 + ...1b7d454699738c8ea89286f76b474d56eedecd.png | Bin 0 -> 10868 bytes ...d8a45e196dc124ec370a66a24aaa0fc1a1d8cd.svg | 1 + ...ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png | Bin 0 -> 7183 bytes ...7b20a2ff6039cfdda4d284443c966f4156ae0b.svg | 1 + ...476bf8460d1471437bc6a034fab96d2def0b6e.png | Bin 0 -> 8102 bytes .../evidence/offline.html | 22 + .../pre-fix-draft-confirmation-race.log | 14 + .../evidence/pre-fix-regression.log | 14 + .../evidence/regression-results.json | 50 + .../release-wayland/automatic-single.html | 22 + .../evidence/release-wayland/customized.pdf | Bin 0 -> 72063 bytes .../.busymark-html-export.json | 1 + ...2516098c77c4b5028e77108c208c39f217f2ed.svg | 1 + ...65def2695ed6da5b3f24791b3c01f9b293b38a.svg | 1 + ...27b337b1277d02c745394ff0a7c9b2a2d49831.svg | 1 + ...4c685f3a0edd2330ae48f931f3bff79d569cb5.png | Bin 0 -> 10479 bytes ...a75c44af4f5fbbe34ff4bb5776543e82ea74f8.png | Bin 0 -> 6591 bytes ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 + ...d967a0b721bb4fb4b4026ffdbe2dab18774e08.svg | 1 + ...c8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg | 1 + ...ed3a68e7294086d4397eeddd3183be658e1a41.svg | 1 + ...476bf8460d1471437bc6a034fab96d2def0b6e.png | Bin 0 -> 8102 bytes .../evidence/release-wayland/dark-assets.html | 22 + .../offline.assets/.busymark-html-export.json | 1 + ...46e9083386f10abe201d5abdd58a25a5038c62.svg | 1 + ...93730dc299d3a223e326034ad8e7eaebc6888a.svg | 1 + ...579432e751882cb3cf8718261ab705486a5559.svg | 1 + ...4d800651cc64129c3f082eb6d830415aae3946.svg | 1 + ...5e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg | 1 + ...4c685f3a0edd2330ae48f931f3bff79d569cb5.png | Bin 0 -> 10479 bytes ...a75c44af4f5fbbe34ff4bb5776543e82ea74f8.png | Bin 0 -> 6591 bytes ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 + ...b686d1b2dae2cd5cecf8be4d166be480a808f0.svg | 1 + ...476bf8460d1471437bc6a034fab96d2def0b6e.png | Bin 0 -> 8102 bytes .../evidence/release-wayland/offline.html | 22 + .../visualization-smoke-mermaid.svg | 1 + .../release-wayland/visualization-smoke.pdf | Bin 0 -> 67398 bytes .../release-wayland/visualization.json | 1 + .../release-wayland/visualization.log | 26 + .../.busymark-html-export.json | 1 + .../writerside-embedded/Welcome.html | 14 + .../writerside-embedded/hidden.html | 14 + .../writerside-embedded/index.html | 14 + .../writerside-embedded/reference.html | 14 + .../writerside/.busymark-html-export.json | 1 + .../release-wayland/writerside/Welcome.html | 14 + ...f8b2f9195e34e32a7c152936f1557d95a68b59.png | Bin 0 -> 8020 bytes .../release-wayland/writerside/hidden.html | 14 + .../release-wayland/writerside/index.html | 14 + .../release-wayland/writerside/reference.html | 14 + .../release-x11/automatic-single.html | 22 + .../evidence/release-x11/customized.pdf | Bin 0 -> 71882 bytes .../.busymark-html-export.json | 1 + ...c11b33dd0706d10bccde39de18ec949d19cd79.svg | 1 + ...54a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png | Bin 0 -> 8126 bytes ...8129858dfc9cd63e8656587e7165d98b10408a.svg | 1 + ...f42810ea5b437bd822d0c35b6449d52213ec2f.svg | 1 + ...40448687760f83c5ee93cc688e29c829715873.svg | 1 + ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 + ...1b7d454699738c8ea89286f76b474d56eedecd.png | Bin 0 -> 10868 bytes ...ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png | Bin 0 -> 7183 bytes ...699496bfe3703810a33db0285081dadd2169d6.svg | 1 + ...1f00206a7592d4ebf2452dba12c78d05329c1f.svg | 1 + .../evidence/release-x11/dark-assets.html | 22 + .../offline.assets/.busymark-html-export.json | 1 + ...54a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png | Bin 0 -> 8126 bytes ...f524e670ccc2de0559f1bc1faeb1000a86ffcc.svg | 1 + ...b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg | 1 + ...1d6b2a7ded6ac72a595953a61d366d2e645dfc.svg | 1 + ...cb9524d0689095c32cc9dca40ba45b6b386dcd.svg | 1 + ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 + ...1b7d454699738c8ea89286f76b474d56eedecd.png | Bin 0 -> 10868 bytes ...17b71b28f462b801cc6521add241cac34cc3af.svg | 1 + ...249679217ca3ee8ba1eb7ddf356194ecf1033d.svg | 1 + ...ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png | Bin 0 -> 7183 bytes .../evidence/release-x11/offline.html | 22 + .../visualization-smoke-mermaid.svg | 1 + .../release-x11/visualization-smoke.pdf | Bin 0 -> 67205 bytes .../evidence/release-x11/visualization.json | 1 + .../evidence/release-x11/visualization.log | 13 + .../.busymark-html-export.json | 1 + .../writerside-embedded/Welcome.html | 14 + .../writerside-embedded/hidden.html | 14 + .../writerside-embedded/index.html | 14 + .../writerside-embedded/reference.html | 14 + .../writerside/.busymark-html-export.json | 1 + .../release-x11/writerside/Welcome.html | 14 + ...2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png | Bin 0 -> 7026 bytes .../release-x11/writerside/hidden.html | 14 + .../release-x11/writerside/index.html | 14 + .../release-x11/writerside/reference.html | 14 + .../evidence/repository-router-initial.log | 67 + .../evidence/router-final.log | 7 + .../evidence/selected-logs.json | 62 + .../evidence/snap-acceptance-results.json | 34 + .../evidence/snap-adopted-restarted.png | Bin 0 -> 68209 bytes .../evidence/snap-adopted.png | Bin 0 -> 68276 bytes .../evidence/snap-adoption-checks.json | 25 + .../evidence/snap-after-adoption.json | 83 + .../evidence/snap-after-restart.json | 83 + .../evidence/snap-before-adoption-server.json | 15 + .../evidence/snap-browser-login.log | 1 + .../evidence/snap-build-final.log | 1548 +++ .../evidence/snap-build-retry.log | 6224 ++++++++++++ .../evidence/snap-build.log | 24 + .../evidence/snap-clean-final.log | 8850 +++++++++++++++++ .../evidence/snap-confinement.log | 7 + .../evidence/snap-confirmation.png | Bin 0 -> 108227 bytes .../evidence/snap-connected-state.json | 40 + .../evidence/snap-connected.png | Bin 0 -> 22104 bytes .../evidence/snap-denied-network.log | 8 + .../evidence/snap-install-events.log | 6 + .../evidence/snap-install.log | 170 + .../evidence/snap-installed-final.log | 9 + .../snap-installed-identity-final.log | 31 + .../evidence/snap-installed-identity.log | 27 + .../evidence/snap-installed-payload.log | 8 + .../evidence/snap-installed-restored.log | 9 + .../evidence/snap-network-denials.log | 13 + .../evidence/snap-network-denied.png | Bin 0 -> 57173 bytes .../evidence/snap-newer-edit.json | 132 + .../evidence/snap-offline-draft.json | 62 + .../evidence/snap-offline-restarted.json | 73 + .../evidence/snap-offline-staged.json | 73 + .../evidence/snap-offline-staged.png | Bin 0 -> 80058 bytes .../evidence/snap-offline-state.json | 40 + .../evidence/snap-pack-complete.log | 2674 +++++ .../evidence/snap-pack-final.log | 11 + .../evidence/snap-restart-checks.json | 8 + .../evidence/snap-smokes-final.log | 42 + .../evidence/snap-smokes-first-timeout.log | 11 + .../evidence/snap-source-identity.json | 577 ++ .../evidence/snap-spelling-first-success.json | 7 + .../evidence/snap-spelling-wayland-final.json | 25 + .../evidence/snap-uncertain-before-edit.json | 88 + .../evidence/snap-uncertain.png | Bin 0 -> 82610 bytes .../evidence/snap-unresolved-checks.json | 18 + .../evidence/snap-unresolved-newer.png | Bin 0 -> 85277 bytes .../snap-visualization-wayland-final.json | 1 + .../snap-visualization-x11-desktop.log | 13 + .../snap-visualization-x11-interpreter.log | 11 + .../evidence/snap-visualization-x11-retry.log | 11 + .../evidence/snap-wayland-final.log | 58 + .../snap-wayland-socket-fixture-failure.log | 8 + .../evidence/spelling-integration.log | 6 + .../evidence/spelling-release.json | 25 + .../evidence/spelling-resources.log | 0 .../evidence/spelling-x11-denied-network.log | 1 + .../evidence/spelling-x11-online.json | 25 + .../evidence/spelling-x11-online.log | 9 + .../evidence/ui-confirmation-2.log | 7 + .../evidence/ui-confirmation-final.log | 18 + .../evidence/ui-confirmation-real-zone.log | 29 + .../evidence/ui-confirmation.log | 3 + .../evidence/ui-debug-trace.log | 35 + .../evidence/upstream-source-hashes.json | 10 + .../evidence/visualization-release-x11.json | 1 + .../evidence/visualization-smoke-mermaid.svg | 1 + .../evidence/visualization-smoke.pdf | Bin 0 -> 67398 bytes .../evidence/visualization-wayland-final.json | 1 + .../evidence/visualization-wayland-final.log | 26 + .../evidence/visualization-x11-final.json | 1 + .../evidence/visualization-x11-final.log | 13 + .../evidence/visualization-x11.json | 1 + .../evidence/visualization-x11.log | 13 + .../evidence/vm-bootstrap.log | 10 + .../evidence/vm-desktop.log | 6 + .../evidence/vm-installed-smokes.sh | 80 + .../evidence/vm-installed-wayland.sh | 22 + .../evidence/vm-native-dependencies.log | 186 + .../evidence/vm-native-smokes.sh | 25 + .../evidence/vm-window-manager.log | 99 + .../evidence/vm-xdg-bootstrap.log | 351 + .../evidence/webkit-wayland-final.log | 52 + .../evidence/webkit-wayland.log | 10 + .../evidence/webkit-x11-final.log | 46 + .../evidence/webkit-x11.log | 10 + .../.busymark-html-export.json | 1 + .../evidence/writerside-embedded/Welcome.html | 14 + .../evidence/writerside-embedded/hidden.html | 14 + .../evidence/writerside-embedded/index.html | 14 + .../writerside-embedded/reference.html | 14 + .../evidence/writerside.log | 1 + .../writerside/.busymark-html-export.json | 1 + .../evidence/writerside/Welcome.html | 14 + ...f8b2f9195e34e32a7c152936f1557d95a68b59.png | Bin 0 -> 8020 bytes .../evidence/writerside/hidden.html | 14 + .../evidence/writerside/index.html | 14 + .../evidence/writerside/reference.html | 14 + .../nextcloud-explicit-adoption/verify.py | 68 + .../development/nextcloud-notes-validation.md | 210 +- docs/development/nextcloud-notes.md | 58 +- lib/l10n/app_ar.arb | 9 +- lib/l10n/app_de.arb | 9 +- lib/l10n/app_en.arb | 9 +- lib/l10n/app_es.arb | 9 +- lib/l10n/app_et.arb | 9 +- lib/l10n/app_fa.arb | 9 +- lib/l10n/app_fr.arb | 9 +- lib/l10n/app_hi.arb | 9 +- lib/l10n/app_id.arb | 9 +- lib/l10n/app_it.arb | 9 +- lib/l10n/app_ja.arb | 9 +- lib/l10n/app_ko.arb | 9 +- lib/l10n/app_nb.arb | 9 +- lib/l10n/app_nl.arb | 9 +- lib/l10n/app_pl.arb | 9 +- lib/l10n/app_pt.arb | 9 +- lib/l10n/app_pt_BR.arb | 9 +- lib/l10n/app_ru.arb | 9 +- lib/l10n/app_tr.arb | 9 +- lib/l10n/app_uk.arb | 9 +- lib/l10n/app_vi.arb | 9 +- lib/l10n/app_zh.arb | 9 +- lib/l10n/app_zh_CN.arb | 9 +- lib/l10n/generated/app_localizations.dart | 42 + lib/l10n/generated/app_localizations_ar.dart | 24 + lib/l10n/generated/app_localizations_de.dart | 25 + lib/l10n/generated/app_localizations_en.dart | 25 + lib/l10n/generated/app_localizations_es.dart | 26 + lib/l10n/generated/app_localizations_et.dart | 25 + lib/l10n/generated/app_localizations_fa.dart | 26 + lib/l10n/generated/app_localizations_fr.dart | 26 + lib/l10n/generated/app_localizations_hi.dart | 25 + lib/l10n/generated/app_localizations_id.dart | 25 + lib/l10n/generated/app_localizations_it.dart | 26 + lib/l10n/generated/app_localizations_ja.dart | 23 + lib/l10n/generated/app_localizations_ko.dart | 24 + lib/l10n/generated/app_localizations_nb.dart | 26 + lib/l10n/generated/app_localizations_nl.dart | 26 + lib/l10n/generated/app_localizations_pl.dart | 26 + lib/l10n/generated/app_localizations_pt.dart | 52 + lib/l10n/generated/app_localizations_ru.dart | 26 + lib/l10n/generated/app_localizations_tr.dart | 25 + lib/l10n/generated/app_localizations_uk.dart | 26 + lib/l10n/generated/app_localizations_vi.dart | 25 + lib/l10n/generated/app_localizations_zh.dart | 46 + .../application/notes_repository.dart | 418 +- lib/src/nextcloud_notes/data/notes_store.dart | 12 +- .../nextcloud_notes/domain/notes_models.dart | 39 +- .../presentation/notes_sidebar.dart | 73 +- lib/src/workspace/workspace_controller.dart | 32 +- .../notes_creation_policy_test.dart | 370 + .../notes_repository_test.dart | 60 +- test/src/nextcloud_notes_ui_test.dart | 124 +- test/src/nextcloud_workspace_test.dart | 133 + tools/nextcloud_login_live_acceptance.py | 3 + tools/nextcloud_notes_live_acceptance.dart | 125 +- 428 files changed, 57805 insertions(+), 191 deletions(-) create mode 100644 delivery/nextcloud-explicit-adoption/.gitattributes create mode 100644 delivery/nextcloud-explicit-adoption/.gitignore create mode 100644 delivery/nextcloud-explicit-adoption/README.md create mode 100644 delivery/nextcloud-explicit-adoption/evidence/analyze-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/analyze-initial.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/analyze.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/application-results.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/automatic-single.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/boundary-debug.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/boundary-debug2.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/boundary-debug3.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/browser-login.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/candidate-tab-debug.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/confirmation-races-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/creation-policy.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/credential-policy.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/credential-revocation.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/customized.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/00dc2b13e7375241e7f30a5b38fabcd82fb194466aa864db1174930d37987c02.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/488e2153188474157043755ba66f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/4fe9a6f229ceb15e135a8b5795f55403dcb3dce2b04a0e8c6796d266009157de.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/5d7bd89ebd4399d5aa15ea380853fefa19817867c950e5d788f19f4cc63e1272.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/cae605b340dbaa9cb7c6544ea19793a43c752b49ebcb4170776147c18f39cfac.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f6f894eb8be03336e2e11b946d7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/dependency-lock.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused-before-renderer.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused-initial.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused-serial.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/format-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/format-prepare.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/format.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/full-flutter-before-renderer.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/full-flutter-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/full-flutter-timing-failure.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/full-flutter.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/gtk-accent-host.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/gtk-accent.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock-persistent.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/weston.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/xvfb.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/change.patch create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/identity.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/linux-build-render-root.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-wayland-render.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-x11-render.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-clean-render.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/01-verify-gtk-svg-icon-loader.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/02-verify-shared-runtimes-packaged-tools-media-and-resources.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/README.md create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/status.tsv create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/spelling-release.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/spelling-release.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/visualization-release-x11.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-environment.txt create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-xvfb.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/kernel-audit.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portal-settings.txt create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portals.conf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/rendered-exports.tar.gz create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/spelling-online-install.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/status.tsv create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/spelling-release-wayland.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-smoke.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/spelling-release-wayland.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-smoke.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/weston-snap.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-smoke.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/visualization-release-x11.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-release-x11.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-smoke.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/cleanup.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/collect-identity.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/install.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/portal-setup.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/public-ci-access.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/repeat-acceptance.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/results.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/run-acceptance.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/snap-acceptance-before-kvm.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-run.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-steps.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-user-session.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/x11-configured-desktop.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/libsecret.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/linux-build-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/linux-build.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/linux-release-hashes.txt create mode 100644 delivery/nextcloud-explicit-adoption/evidence/linux-source-identity.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-lock-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-lock-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-lock-persistent.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-lock.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/localization-audit.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/localization-generation.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-adopted-restarted.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-adoption-checks.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-after-adoption.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-after-restart.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-before-adoption-server.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-confirmation.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-connected.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-final-unresolved.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-offline-draft.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-offline-staged.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-restart-checks.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-spelling-dependencies.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-spelling.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-uncertain-before-edit.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-uncertain-newer-edit.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-uncertain.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-unresolved-checks.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-visualization-wayland-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-visualization-x11-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-online-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-online.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-wayland-denied-network-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-wayland-denied-network.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-x11-denied-network-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-x11-denied-network.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/weston.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/xvfb.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-smokes.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/1332073baa61e5fd36e184fa69c1b02bd63f106d5abd4402820562c3c423ec1e.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/263c38a91bb224683bf0bf491749c1d49b1ede4096047cf7c0de72a236825eb6.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/415512507417b44334457993dc30ee752e9d5846cac2e2162bccbbb31744093e.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/9f7edb574746d2ebfcb68eb3825b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/b565a6bcc734884e93f754d9bed8a45e196dc124ec370a66a24aaa0fc1a1d8cd.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/c23fbc6f37566397cb25ac17047b20a2ff6039cfdda4d284443c966f4156ae0b.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/pre-fix-draft-confirmation-race.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/pre-fix-regression.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/regression-results.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/automatic-single.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/customized.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/6d1048497a0b097d6cfb66fd4c2516098c77c4b5028e77108c208c39f217f2ed.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7a5b411b813e97f3f756a0109f65def2695ed6da5b3f24791b3c01f9b293b38a.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7d6e03816ccea2d09fb0ef83a827b337b1277d02c745394ff0a7c9b2a2d49831.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/bc6895a0b73c8d683eeeb5b72bd967a0b721bb4fb4b4026ffdbe2dab18774e08.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c89f96c760e56029e22e5afebfc8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c9693d70fc9bcc18d336ad2743ed3a68e7294086d4397eeddd3183be658e1a41.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/040ee0eadaf8d1ab732a6cffc646e9083386f10abe201d5abdd58a25a5038c62.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/26cd9de5fcc5fb9e147045cb6f93730dc299d3a223e326034ad8e7eaebc6888a.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/3eb9114c8addc4d5e713578ddf579432e751882cb3cf8718261ab705486a5559.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/5289ba0ea5ad014da5f44046224d800651cc64129c3f082eb6d830415aae3946.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke-mermaid.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/Welcome.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/hidden.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/index.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/reference.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/Welcome.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/hidden.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/index.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/reference.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/automatic-single.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/customized.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0019f7540aa7f466f453fb3bb7c11b33dd0706d10bccde39de18ec949d19cd79.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/129a629565c69215557b06221d8129858dfc9cd63e8656587e7165d98b10408a.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/9a8ea2ea8e0e10ada47ca38bb740448687760f83c5ee93cc688e29c829715873.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/cdd258a527cfd2d66f69934411699496bfe3703810a33db0285081dadd2169d6.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/434232ac03faf3e7aaf927762cf524e670ccc2de0559f1bc1faeb1000a86ffcc.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/5153cceea929c29c2d92145807b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/8a2bccd105c3d7f5814003657acb9524d0689095c32cc9dca40ba45b6b386dcd.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc0f8faa10e56ac8f8bdb7694a17b71b28f462b801cc6521add241cac34cc3af.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke-mermaid.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/Welcome.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/hidden.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/index.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/reference.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/Welcome.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/assets/f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/hidden.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/index.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/reference.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/repository-router-initial.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/router-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/selected-logs.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-acceptance-results.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-adopted-restarted.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-adopted.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-adoption-checks.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-after-adoption.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-after-restart.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-before-adoption-server.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-browser-login.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-build-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-build-retry.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-build.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-clean-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-confinement.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-confirmation.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-connected-state.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-connected.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-denied-network.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-install-events.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-install.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-identity-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-identity.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-payload.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-restored.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-network-denials.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-network-denied.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-newer-edit.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-draft.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-restarted.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-state.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-pack-complete.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-pack-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-restart-checks.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-smokes-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-smokes-first-timeout.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-source-identity.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-spelling-first-success.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-spelling-wayland-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-uncertain-before-edit.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-uncertain.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-unresolved-checks.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-unresolved-newer.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-visualization-wayland-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-desktop.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-interpreter.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-retry.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-wayland-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-wayland-socket-fixture-failure.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-integration.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-release.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-resources.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-x11-denied-network.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-2.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-real-zone.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-confirmation.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-debug-trace.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/upstream-source-hashes.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-release-x11.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-smoke-mermaid.svg create mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-smoke.pdf create mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-wayland-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-wayland-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-x11-final.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-x11-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-x11.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-x11.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-bootstrap.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-desktop.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-installed-smokes.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-installed-wayland.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-native-dependencies.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-native-smokes.sh create mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-window-manager.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-xdg-bootstrap.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/webkit-wayland-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/webkit-wayland.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/webkit-x11-final.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/webkit-x11.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/Welcome.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/hidden.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/index.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/reference.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside.log create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/.busymark-html-export.json create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/Welcome.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/hidden.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/index.html create mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/reference.html create mode 100644 delivery/nextcloud-explicit-adoption/verify.py create mode 100644 test/src/nextcloud_notes/notes_creation_policy_test.dart diff --git a/delivery/nextcloud-explicit-adoption/.gitattributes b/delivery/nextcloud-explicit-adoption/.gitattributes new file mode 100644 index 00000000..7bd03846 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/.gitattributes @@ -0,0 +1,2 @@ +# Preserve captured reports, screenshots and binary exports byte-for-byte. +evidence/** -text -diff diff --git a/delivery/nextcloud-explicit-adoption/.gitignore b/delivery/nextcloud-explicit-adoption/.gitignore new file mode 100644 index 00000000..37beecae --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/.gitignore @@ -0,0 +1 @@ +/artifacts/ diff --git a/delivery/nextcloud-explicit-adoption/README.md b/delivery/nextcloud-explicit-adoption/README.md new file mode 100644 index 00000000..25bb8555 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/README.md @@ -0,0 +1,34 @@ +# Explicit Notes adoption delivery + +The source implementation is committed. Candidate discovery only records evidence; +linking an uncertain draft requires authenticated fresh review and an explicit +user decision. The source archive and build artifacts are in `artifacts/`, with +commit, file and artifact hashes in its `manifest.json`. + +Run `python3 verify.py artifacts/manifest.json --run-tests` with Flutter 3.47.5 +on PATH to extract the committed archive, compare all recorded source bytes and +build inputs, audit discovery/adoption separation, and rerun the complete +Nextcloud regression set, including the top-level tests. + +The evidence includes full Flutter and focused test logs, pre-fix failing +regressions, live HTTPS Notes 6.0.1/6.1.0 and real 423 reports, native and strict +Snap application screenshots/state/server comparisons, real denied-network +proof, recipe build provenance, installed interface/payload verification, and +credential revocation. `selected-logs.json` identifies retained command logs. +Historical failures and the reverted renderer experiment are explicitly labelled. + +Release acceptance is **complete**. The same recipe-built strict Snap passed +installed X11 and Wayland visualization (23 checks each, repeated successfully) +in a disposable Ubuntu KVM desktop. Installed spelling passed 20 checks per +run, including refresh and denied-network restart. Browser/keyring restart, +offline durability, explicit adoption and attachment publication had already +passed against this identical package. See `evidence/installed-kvm/README.md` +for the desktop setup, commands and results. Earlier failures remain historical +evidence and are not counted as passes. + +Public CI publication was explicitly approved, but the GitHub integration +returned HTTP 403 and existing SSH authentication was unavailable. No branch +or PR was created. The authorized disposable VM completed installed acceptance. +Credentials and private VM/HTTPS fixture files are excluded. `artifacts/manifest.json` +identifies the final commit, current archives, exact build hashes and checks; +superseded archives are kept separately under `artifacts/historical/`. diff --git a/delivery/nextcloud-explicit-adoption/evidence/analyze-final.log b/delivery/nextcloud-explicit-adoption/evidence/analyze-final.log new file mode 100644 index 00000000..25270308 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/analyze-final.log @@ -0,0 +1,65 @@ +Resolving dependencies... +Downloading packages... + _fe_analyzer_shared 99.0.0 (109.0.0 available) + analyzer 12.1.0 (14.5.0 available) + animated_vector 0.2.2 (0.2.3 available) + animated_vector_annotations 0.2.2 (0.3.0 available) + archive 4.0.9 (4.3.0 available) + assorted_layout_widgets 11.0.0 (13.1.0 available) + clock 1.1.2 (1.1.3 available) + code_assets 1.2.1 (2.1.0 available) + cross_file 0.3.5+4 (0.4.0 available) + dbus 0.7.13 (0.8.0 available) + file_selector_android 0.5.2+8 (0.5.2+11 available) + file_selector_ios 0.5.3+5 (0.5.3+6 available) + file_selector_linux 0.9.4 (0.9.4+1 available) + file_selector_macos 0.9.5 (0.9.5+1 available) + file_selector_windows 0.9.3+5 (0.9.3+6 available) + flutter_riverpod 3.3.2 (3.4.3 available) + frontend_server_client 4.0.0 (4.1.0 available) + glob 2.1.3 (2.2.0 available) + go_router 17.3.0 (18.0.2 available) + gsettings 0.2.8 (0.2.9 available) + html 0.15.6 (0.15.7 available) + image 4.9.1 (4.10.1 available) + io 1.0.5 (1.1.0 available) + jni 1.0.0 (1.1.0 available) + jni_flutter 1.0.1 (1.0.4+1 available) + material_color_utilities 0.13.0 (0.13.1 available) + mime 2.0.0 (2.1.0 available) + native_toolchain_c 0.19.3 (0.19.5 available) + objective_c 9.4.1 (9.6.2 available) + package_config 2.2.0 (3.0.0 available) + package_info_plus 10.2.1 (10.2.2 available) + petitparser 7.0.2 (7.1.0 available) + platform 3.1.6 (3.2.0 available) + pool 1.5.2 (1.5.3 available) + posix 6.5.0 (6.5.2 available) + pub_semver 2.2.0 (2.2.1 available) + riverpod 3.3.2 (3.4.3 available) + source_maps 0.10.13 (0.10.14 available) + stack_trace 1.12.1 (1.12.2 available) + test 1.31.1 (1.32.0 available) + test_api 0.7.12 (0.7.14 available) + test_core 0.6.18 (0.6.20 available) + ubuntu_localizations 0.5.2+3 (0.5.2+4 available) + unorm_dart 0.3.2 (0.3.3 available) + url_launcher 6.3.2 (6.3.3 available) + url_launcher_android 6.3.32 (6.3.33 available) + url_launcher_ios 6.4.1 (6.4.2 available) + url_launcher_linux 3.2.2 (3.2.3 available) + url_launcher_macos 3.2.5 (3.2.6 available) + url_launcher_windows 3.1.5 (3.1.6 available) + vector_graphics 1.2.2 (1.2.3 available) + vector_graphics_compiler 1.2.6 (1.3.0 available) + vector_math 2.4.2 (2.4.3 available) + vm_service 15.2.0 (15.3.0 available) + win32 6.3.0 (6.4.0 available) + xml 7.0.1 (7.1.0 available) + yaml 3.1.3 (3.1.4 available) + yaru 10.2.0 (11.0.0 available) +Got dependencies! +58 packages have newer versions incompatible with dependency constraints. +Try `flutter pub outdated` for more information. +Analyzing busymark... +No issues found! (ran in 6.2s) diff --git a/delivery/nextcloud-explicit-adoption/evidence/analyze-initial.log b/delivery/nextcloud-explicit-adoption/evidence/analyze-initial.log new file mode 100644 index 00000000..b5af9036 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/analyze-initial.log @@ -0,0 +1,7 @@ +Analyzing busymark... + + info • Statements in an if should be enclosed in a block. Try wrapping the statement in a block • lib/src/nextcloud_notes/application/notes_repository.dart:425:7 • curly_braces_in_flow_control_structures + info • Statements in an if should be enclosed in a block. Try wrapping the statement in a block • lib/src/nextcloud_notes/application/notes_repository.dart:1300:13 • curly_braces_in_flow_control_structures + info • The 'children' argument should be last in widget constructor invocations. Try moving the argument to the end of the argument list • lib/src/nextcloud_notes/presentation/notes_sidebar.dart:732:9 • sort_child_properties_last + +3 issues found. (ran in 2.5s) diff --git a/delivery/nextcloud-explicit-adoption/evidence/analyze.log b/delivery/nextcloud-explicit-adoption/evidence/analyze.log new file mode 100644 index 00000000..2c92f220 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/analyze.log @@ -0,0 +1,2 @@ +Analyzing busymark... +No issues found! (ran in 3.9s) diff --git a/delivery/nextcloud-explicit-adoption/evidence/application-results.json b/delivery/nextcloud-explicit-adoption/evidence/application-results.json new file mode 100644 index 00000000..75d6d877 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/application-results.json @@ -0,0 +1,15 @@ +{ + "ok": true, + "native": { + "unresolved": "native-unresolved-checks.json", + "adoption": "native-adoption-checks.json", + "restart": "native-restart-checks.json" + }, + "strictSnap": { + "unresolved": "snap-unresolved-checks.json", + "adoption": "snap-adoption-checks.json", + "restart": "snap-restart-checks.json", + "networkConfinement": "snap-network-denials.log", + "browser": "snap-browser-login.log" + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/automatic-single.html b/delivery/nextcloud-explicit-adoption/evidence/automatic-single.html new file mode 100644 index 00000000..42430bb3 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/automatic-single.html @@ -0,0 +1,22 @@ + +Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
+
    +
  1. +

    A structured footnote with a return link.

    +

    ↩

    +
  2. +
+
diff --git a/delivery/nextcloud-explicit-adoption/evidence/boundary-debug.log b/delivery/nextcloud-explicit-adoption/evidence/boundary-debug.log new file mode 100644 index 00000000..aec29931 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/boundary-debug.log @@ -0,0 +1,88 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:06 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:06 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab [E] + Expected: 'unsaved candidate edit' + Actual: 'wire content' + Which: is different. + Expected: unsaved ca ... + Actual: wire conte ... + ^ + Differ at offset 0 + message=Close the downloaded candidate’s editor tabs after preserving their changes, then review again., repository=wire content, buffers=[(f0377467-dffb-4136-8993-60ec0c2cb2ad, wire content, false), (db4d7b63-c914-48d8-aa41-eb780d455c4d, wire content, false)] + + package:matcher expect + package:flutter_test/src/widget_tester.dart 473:18 expect + test/src/nextcloud_workspace_test.dart 85:7 main. + +00:08 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ +The following MissingPluginException was thrown running a test: +MissingPluginException(No implementation found for method state on channel yaru_window) + +When the exception was thrown, this was the stack: +#0 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:364:7) + +#1 MethodChannel.invokeMapMethod (package:flutter/src/services/platform_channel.dart:566:43) + +#2 YaruWindowMethodChannel._invokeMapMethod. (package:yaru_window_platform_interface/src/method_channel.dart:76:15) + +#3 YaruWindowState.YaruWindowState.fromJson (package:yaru_window_platform_interface/src/state.dart:22:3) + +#4 YaruWindowInstance.states (package:yaru_window/src/window.dart:216:11) + + +The test description was: + selecting and confirming candidate binds draft and retains newer edits +════════════════════════════════════════════════════════════════════════════════════════════════════ +00:08 +0 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] + Test failed. See exception logs above. + The test description was: selecting and confirming candidate binds draft and retains newer edits + +══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ +The following MissingPluginException was thrown running a test (but after the test had completed): +MissingPluginException(No implementation found for method state on channel yaru_window) + +When the exception was thrown, this was the stack: +#0 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:364:7) + +#1 MethodChannel.invokeMapMethod (package:flutter/src/services/platform_channel.dart:566:43) + +#2 YaruWindowMethodChannel._invokeMapMethod. (package:yaru_window_platform_interface/src/method_channel.dart:76:15) + +#3 YaruWindowState.YaruWindowState.fromJson (package:yaru_window_platform_interface/src/state.dart:22:3) + +#4 YaruWindowInstance.states (package:yaru_window/src/window.dart:216:11) + +════════════════════════════════════════════════════════════════════════════════════════════════════ + Test failed. See exception logs above. + The test description was: selecting and confirming candidate binds draft and retains newer edits + +══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ +The following TestFailure was thrown running a test (but after the test had completed): +Expected: <10> + Actual: +null + +When the exception was thrown, this was the stack: +#0 fail (package:matcher/src/expect/expect.dart:187:31) +#1 _expect (package:matcher/src/expect/expect.dart:182:3) +#2 expect (package:matcher/src/expect/expect.dart:65:3) +#3 expect (package:flutter_test/src/widget_tester.dart:473:18) +#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:807:7) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + + +(elided one frame from package:stack_trace) +════════════════════════════════════════════════════════════════════════════════════════════════════ + Test failed. See exception logs above. + The test description was: selecting and confirming candidate binds draft and retains newer edits + +00:08 +0 -2: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits + /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab diff --git a/delivery/nextcloud-explicit-adoption/evidence/boundary-debug2.log b/delivery/nextcloud-explicit-adoption/evidence/boundary-debug2.log new file mode 100644 index 00000000..949b41a6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/boundary-debug2.log @@ -0,0 +1,48 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:06 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:06 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab [E] + Expected: 'unsaved candidate edit' + Actual: 'wire content' + Which: is different. + Expected: unsaved ca ... + Actual: wire conte ... + ^ + Differ at offset 0 + trace=[[(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, true)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, true)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, wire content, 3, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, wire content, 3, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, wire content, 3, false)]], message=Close the downloaded candidate’s editor tabs after preserving their changes, then review again., repository=wire content, buffers=[(d52dc052-73e8-49dc-856f-12b696acab27, wire content, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, wire content, false)] + + package:matcher expect + package:flutter_test/src/widget_tester.dart 473:18 expect + test/src/nextcloud_workspace_test.dart 87:7 main. + +00:08 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ +The following TestFailure was thrown running a test: +Expected: <10> + Actual: +null + +When the exception was thrown, this was the stack: +#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:815:7) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + + +(elided one frame from package:stack_trace) + +This was caught by the test expectation on the following line: + file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart line 815 +The test description was: + selecting and confirming candidate binds draft and retains newer edits +════════════════════════════════════════════════════════════════════════════════════════════════════ +00:08 +0 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] + Test failed. See exception logs above. + The test description was: selecting and confirming candidate binds draft and retains newer edits + +00:08 +0 -2: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits + /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab diff --git a/delivery/nextcloud-explicit-adoption/evidence/boundary-debug3.log b/delivery/nextcloud-explicit-adoption/evidence/boundary-debug3.log new file mode 100644 index 00000000..2d8a8c77 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/boundary-debug3.log @@ -0,0 +1,32 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:12 +1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ +The following TestFailure was thrown running a test: +Expected: <10> + Actual: +null + +When the exception was thrown, this was the stack: +#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:826:7) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + + +(elided one frame from package:stack_trace) + +This was caught by the test expectation on the following line: + file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart line 826 +The test description was: + selecting and confirming candidate binds draft and retains newer edits +════════════════════════════════════════════════════════════════════════════════════════════════════ +00:15 +1 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] + Test failed. See exception logs above. + The test description was: selecting and confirming candidate binds draft and retains newer edits + +00:16 +1 -1: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits diff --git a/delivery/nextcloud-explicit-adoption/evidence/browser-login.json b/delivery/nextcloud-explicit-adoption/evidence/browser-login.json new file mode 100644 index 00000000..bcfcf2d4 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/browser-login.json @@ -0,0 +1,7 @@ +{ + "ok": true, + "externalBrowserOpened": true, + "pending404": true, + "browserGrant": true, + "success200Once": true +} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/candidate-tab-debug.log b/delivery/nextcloud-explicit-adoption/evidence/candidate-tab-debug.log new file mode 100644 index 00000000..4a948bd5 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/candidate-tab-debug.log @@ -0,0 +1,19 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +00:00 +0: an unsaved independently opened candidate blocks consolidation without orphaning its tab +00:00 +0 -1: an unsaved independently opened candidate blocks consolidation without orphaning its tab [E] + Expected: 'unsaved candidate edit' + Actual: 'wire content' + Which: is different. + Expected: unsaved ca ... + Actual: wire conte ... + ^ + Differ at offset 0 + + package:matcher expect + package:flutter_test/src/widget_tester.dart 473:18 expect + test/src/nextcloud_workspace_test.dart 85:7 main. + +00:00 +0 -1: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab diff --git a/delivery/nextcloud-explicit-adoption/evidence/confirmation-races-final.log b/delivery/nextcloud-explicit-adoption/evidence/confirmation-races-final.log new file mode 100644 index 00000000..d41d9e42 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/confirmation-races-final.log @@ -0,0 +1,35 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review +00:01 +1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab +00:02 +2: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes +00:02 +3: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save +00:02 +4: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) +00:02 +5: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) +00:02 +6: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) +00:02 +7: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) +00:02 +8: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart +00:03 +9: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation +00:03 +10: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox +00:03 +11: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit +00:03 +12: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session +00:03 +13: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart +00:05 +13: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +00:06 +14: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +00:06 +15: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft +00:06 +16: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +00:07 +17: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft +00:07 +18: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +00:07 +19: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work +00:07 +20: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work +00:07 +21: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work +00:07 +22: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work +00:08 +23: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work +00:08 +24: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET +00:08 +25: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET +00:08 +26: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET +00:08 +27: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit +00:08 +28: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment +00:08 +29: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor +00:08 +30: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity +00:09 +31: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement +00:09 +32: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/creation-policy.log b/delivery/nextcloud-explicit-adoption/evidence/creation-policy.log new file mode 100644 index 00000000..e01fec23 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/creation-policy.log @@ -0,0 +1,53 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart +00:00 +0: exact discovery across refresh reconnect and restart cannot bind or mutate draft +00:01 +0 -1: exact discovery across refresh reconnect and restart cannot bind or mutate draft [E] + Converting object to an encodable object failed: _Map len:1 + dart:convert jsonEncode + test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. + +00:01 +0 -1: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +00:01 +0 -2: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft [E] + Converting object to an encodable object failed: _Map len:1 + dart:convert jsonEncode + test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. + +00:01 +0 -2: multiple discovery across refresh reconnect and restart cannot bind or mutate draft +00:01 +0 -3: multiple discovery across refresh reconnect and restart cannot bind or mutate draft [E] + Converting object to an encodable object failed: _Map len:2 + dart:convert jsonEncode + test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. + +00:01 +0 -3: none discovery across refresh reconnect and restart cannot bind or mutate draft +00:01 +1 -3: empty discovery across refresh reconnect and restart cannot bind or mutate draft +00:01 +1 -4: empty discovery across refresh reconnect and restart cannot bind or mutate draft [E] + Converting object to an encodable object failed: _Map len:1 + dart:convert jsonEncode + test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. + +00:01 +1 -4: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +00:02 +1 -5: other actor discovery across refresh reconnect and restart cannot bind or mutate draft [E] + Converting object to an encodable object failed: _Map len:1 + dart:convert jsonEncode + test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. + +00:02 +1 -5: confirmation rejects content candidate and retains unresolved work +00:02 +2 -5: confirmation rejects readonly candidate and retains unresolved work +00:02 +3 -5: confirmation rejects error candidate and retains unresolved work +00:02 +4 -5: confirmation rejects deleted candidate and retains unresolved work +00:02 +5 -5: confirmation rejects unavailable candidate and retains unresolved work +00:02 +6 -5: confirmation revalidates local edit during authenticated GET +00:02 +7 -5: confirmation revalidates account removal during authenticated GET +00:02 +8 -5: confirmation revalidates repeat confirmation during authenticated GET +00:03 +9 -5: binding protects downloaded candidate with durable edit +00:03 +10 -5: binding protects downloaded candidate with pending attachment +00:03 +11 -5: binding protects downloaded candidate with open editor +00:03 +12 -5: failed adoption transaction rolls back binding and downloaded identity +00:03 +13 -5: separate-note decision is durable and repeated confirmation makes one replacement +00:03 +14 -5: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft + /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft + /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft + /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft + /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft diff --git a/delivery/nextcloud-explicit-adoption/evidence/credential-policy.log b/delivery/nextcloud-explicit-adoption/evidence/credential-policy.log new file mode 100644 index 00000000..e69de29b diff --git a/delivery/nextcloud-explicit-adoption/evidence/credential-revocation.json b/delivery/nextcloud-explicit-adoption/evidence/credential-revocation.json new file mode 100644 index 00000000..fb1aaf2e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/credential-revocation.json @@ -0,0 +1,15 @@ +{ + "ok": true, + "accounts": { + "6.1.0": { + "disposableAccountDeleted": true, + "allAccountGrantsRevoked": true, + "notesApiAfterRemoval": 401 + }, + "6.0.1": { + "disposableAccountDeleted": true, + "allAccountGrantsRevoked": true, + "notesApiAfterRemoval": 401 + } + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/customized.pdf b/delivery/nextcloud-explicit-adoption/evidence/customized.pdf new file mode 100644 index 0000000000000000000000000000000000000000..47ff331289424c4a594d89d46a16577b74a50dd1 GIT binary patch literal 72063 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/488e2153188474157043755ba66f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/488e2153188474157043755ba66f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg new file mode 100644 index 00000000..d79894e2 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/488e2153188474157043755ba66f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/4fe9a6f229ceb15e135a8b5795f55403dcb3dce2b04a0e8c6796d266009157de.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/4fe9a6f229ceb15e135a8b5795f55403dcb3dce2b04a0e8c6796d266009157de.svg new file mode 100644 index 00000000..1dfc4c93 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/4fe9a6f229ceb15e135a8b5795f55403dcb3dce2b04a0e8c6796d266009157de.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/5d7bd89ebd4399d5aa15ea380853fefa19817867c950e5d788f19f4cc63e1272.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/5d7bd89ebd4399d5aa15ea380853fefa19817867c950e5d788f19f4cc63e1272.svg new file mode 100644 index 00000000..2e5d08b6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/5d7bd89ebd4399d5aa15ea380853fefa19817867c950e5d788f19f4cc63e1272.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png new file mode 100644 index 0000000000000000000000000000000000000000..b69f50189d2e28fd0696393cdf0213835ebf83d5 GIT binary patch literal 10479 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
(Ecjv z-SAB%pA*xx{Qg82w6c*4c|k?Qcit!EP`Y++X)8hXRsQ(M=|If@O c4MW}_dz3p(Z-0#aBZH%=q@`H-#wzr`02XVqlmGw# literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg new file mode 100644 index 00000000..1ed6e56e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg @@ -0,0 +1 @@ +BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png new file mode 100644 index 0000000000000000000000000000000000000000..a1a64ca1f311b06e2effafd75d388116ab40b038 GIT binary patch literal 10868 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png new file mode 100644 index 0000000000000000000000000000000000000000..5807f943d68afc0e510b8fac8be4814486b7b817 GIT binary patch literal 8102 zcmdU!cTiK?yZ5mmiXcQls&EKLiZnrx4thug1dK?N-a!Z$dPzvILO=nL5{eK-dKKw4 zN{dp0fHdhKE%cTEX%~O@{PF%~-kE#noq6Y;JNu8d_OtdpdzHP{`aIt!`rchVc2)sa zCMG6!1AWkaCZ-cYOiU;3&z?NCtZc{{9~Wnw4fQ}wjNjM0=KMq^CJ`G0&@Hpjx9bxK zTl1int!)@r-Iph^9o3_%GbfTySASMAk?8LlPa0+SxLq+KwqPoe|Ba~RX<2>U#WdC~ zuLqtx{OX69uYfM%ueDsq56>c_Z_SJyH^EFZXjk!v8y-vO-^*7S?}F8d#w0B z-K1%&_4vA*D-uVFf6>7>fLU^!*1h=yf};MS^`G}}SRg*x^R=?E$tcEuZ_CjjgQ*&CC9rrz`3>RCKp7&PB$mEp8GWxJbq7D-za=lM3VR2=bXuVnzwOW9(5S~ z(}w;3GW(g>A}VB93k7v{ZvXm#F{5CqcZIIBG6KoDtU5Na)F0RNv_!>H4yPun;Ox3K zWOB~*B1Xo6Y(Oy36TxpZF^Dq?^i0NvQLP{;nJQX=z(i1wnl|iMEII-oi5#v@0)h9_ z8j*>1=EHzdZVNJO)BVOE+6J$jl2D&SRS%+PQ#l?8?3!z z2%){;xI3fhRJGcvS`^~Z{$rG*j;nB)@Mq3@Y0dO9N(~PmAvmhJ$uT1A3%$p9wG6lU z!ULPG(Nzp}u%l;4i=ZA^hLOjJ1yb4;rr~RjN5%5ung`g7k)E@|m$4rfU6bb@{@k${ z5m^(M|Ek*dy66JcX#sX)O-kjAnVW3a6e*lkQ+si^g|^b%Z#NFvu*HQh)aXXShVAXr zGfdJm5=e^!7@csZnw=SWaF5xNzdwTbNf^9;4|z?awt?bW+8qJ({6@4}K+@>E3F#A- zrZB5C^Fqyb;?pYprXu$hMH%s{Rr76$SXpds;CdD+(v=mBRWDktOk5#Pe=5;4IU~zF zjzW$%P+OMV`8bEvgpkmHN9033&X5q|Q8h%fKG4E;<{Ci3j@(|OoJdnA{S47L{G8_^ z8>vT$j1?5*T7fEhe?n~?;PS`J@DCc?knZO3vLBp*<2d(kA{z+J$)7G*scS%YThMC* zP&n6c3)ReMX*s4=jxn^cv83=qT*jzHURll4>){eWwgaYx%Y6{Eh5^bk2n3VxR$qCA z{po3ho8L#YewVJi*^+l}V2?5XWKf#uxNDS||?Xi}wKle1fb9ciDqMWIcK+wUF?oukTu~ z(4Fzu_V-7&4Q8s6k_dx$LBEz+u-t(WH)Lk}8Q$`DKu?#nDRX~KZ)6T(eWs`Tc;*~m zOwx{)Y&J7RJkF8M3-MpS`T&%pzWeM{q@mh$n4o<`OS2?k`=x!7cU@z#MruuE%j(x0 zWe8u3vT1l%b^!qr!?6H$XtDP~6W5HkL;5zf8->6&7Co_X_0VtWQ-)!rr%&&<<@fKp zpAo=HIL+=ys;{1B?NW~N%-a9)(|%Q?_eDK(q~}#%5;EXau8zb7p>=vBaS#(rRw*$! zf*>j=+2ut|MdcDVd9&47aP1z`Hd_b_knUY3iz7AWX$-a)bmeLd0R zP5Jq2`=j;_O{*P^7cnr#`^h>MYdHD5*rlrkL*Lf9kq|jJ@!l}0)JDZksE~N%X4ecG zO2qz|C(D}hc;=ncK=s~IL4`&1t2I>QVwR=xEhn07wA9^Gd5`}{oIO{n7n8xuLRPV2 zW-q-8Kd?nS#EtZ^BP@6sZdglRM13MY#%#L+0M>EL!D zE-o+Cx@!UP+b8=HGW@=OH@r#yA|4RWOy-J2loqw>YFW0ibVALjs%`m0RvE#hh+cj* zg&KsAtQtQ{2CWB$r0oI=14N4gJmtdWR?1jv1X7x);&S#6ZB2u#aKZuza(3!QtZcnJ zb#aoQa>9Hg93FHVNhW+Adzl}c)q3khCv)W7t6FW170!f)rx0O%xMn4eH?!}hoBhD) zd7}QJ3x_6Va?Cs+h%lUwUG3_D!3TOarnyOWko=Z64iaa2YbHGr5c{vbsB3jp4Gjb# zk;8k!L5{L{H^OPHq<(Nd`{aTv>WGDLvI)#X`U*anB2JnF|uYMR5F7qhH@k=F1MX+99;b{&Df1bb-t6De6$C4Z4^` z_k2!ngxA7ug464U;acCiHL&-0-<;I3CpQ#hY-{vtPcjrJZ}cewEu9 zM>9u1R-YZUxbP-CZm)*nZj5}K+E6(>+#?V7om*c5oH)nvh#o%3ziFUsY_kh;z|oK{ zDJ}HFl$?So#F0mqQtjGfDFm|BM6!DyUa)0UU zbpvb!){jn|yFb;PhQUtX6fSmrPB|!|O{*OM8c0mcIy*N6O-hkHKYDe}-@jF3U%wsAUg1 zAp@8#{U3vC|1E9_tAjIna47{v6-P0#@m=S6*R!52z%@Hh6m^vJYvbx%&$e!MUX$$h zwTwTht9uN4P4JEfmhp2&nCj~4dN`YERNXk48>5WYH>>M=AMeosS5;-H%_#hCgD~mj zm?8YPI`K~h-hW8ve+LKw`+ScLS&!G}zlaQuNsej4(q&}?f%ANQOnLL=zWWa%FS=jd z%ill1G%9}jv~xAHO!yn8uGuoAqhih-Q2zQm;BSMTo0VrX`ZVY?q5&?c%VzQ(7Sti( z4V)9axVTAt&!$Y(8e;Y;l_gAPBw`(GO>L%Sro{dN;-~z_*9^2!jW&$Ey>ZIjXf>y? zqhDxY9Lc6sgdS`doII%E|0ROzbsvqcy414$;3vQ%v}<#t-l(SwnzDaeG&%; zg%ltCT+@KXY^{b!=7y<-IUrpsv(zWAYNIZ7KY#9dKJPjECi3C7g9zeEpRhV54WA#S zk2JVz(V4|{#hm?Oy)R9R5Mr^ZIyJJ3XcxzY!;}Vx)hdocP6(7X)`VAm*a{@ah7Wp< z_v4yPA6PVc9SRwatnl8LZ+MKfQYN*9;bHN7BS?$kB^)-zZXrq9<^Dz*_drYOfW<8L z_SQ}?iZMjt7ZEOaNYwlp)|EnDNtv(tHADuHiA9C3kWLNkrJ-Ps-1jvll8q&jn_Ew# zOeJ3I8NDC2aN^y*7Jsc4g$voGM96t_0s!$)alNAb0>B#DLd0xf3su-oBdNn3&kGq*N$b>>GpLt(w$y>*yNeqG<#l zrb)=+YU`ctQj7(5IFe}8^nx_2SD0 zz+)9{Rfy!i0<0m`l(SXr`RPUm{897-Dnq5dWK965$i#50>@qv!vI;@5kmf?^Ij zsnlWg)DkYgV@@78;H@(>(Of++O!t4Z6?>i+v=@figFvmGp+jw2DfBab7PfTu2QE(b zs6@1?k3;z0Z4ru~cQSB}E4-6?kv}VR65TX0h}W6AKj(dExhE)9F0Ex zs%9@tQDqdO25xU#8{Gc>i3^_ra&52Mw%pfxmA7~s0N{YZ$~U$#=IFQk0|X2AW9RW# zl4_~!XH3}5kYJxmbgG2>_*OUigeCzM2(>oBAJx^mIXjG*ao0|Ndmz&c=K^?ERYU%u zzrU>Z!+dxY3_96LV5`%G=9XH3+9h%*orOQWju({UWiHOJkx(e(8mI$#SvjBO_3mw{ zF%XzFb?OlLsfm&mU~R~OQI1B#4%*8!t)X|M!JyVw3ZlQT+U4r`3!AHME^h@**ps62 z^U?Yrn(Oy%qk@b2B6MUw^sE5X*CQq?XHvH9fxUPV_m9l52VjF-Q_x?)BhATTGRow~ zpK}0px5$N8c7$Q=C};W6edA~71AIqFxn32nPDcBZVFV^Pe>`7tbB1#YtE382zGqMW zVh2bi7jv)K!!^URW!xzpw`!;77}Sx@`(yRl)5{Fd=f=z2}nua#R{wfUL(=W$Y> z5O#ovEv@*#Flh6BV;lcw4$U*da1FvJoo^0Hc4$7j9oM_!lt$ZSK?#J0;pb^(A9>fL zJ-v&9;<5ni(-r1LyJUCd$REPO_ss)8j;a9=f@UCco9u=w%h5Ym~wmeYq$yBjmoDuc4@bd2v86+jE zU=}w*l|!QZup#$!OYK^FfUzABaOlXk_;#HA77n($9b-0{6rEBcV}tD9XwB=NANRLyC$N!IZ>(qn>qu>U>h zl*5L$Z}yL2$B>xXP4w%ntph33M|>ixwxAsNW=cHCJld8Y7d}?)F}2NtpWw{e$9!6J zLBtR{9abfP_f4!fxDz-H4{|)aX|0vP;Z|nOA@Fp)=P%+jQS(U#fEHxDYv_Z4E}nUR z|KQ82Ce~pM22Ip*wrD;b1;54W5AgDC?A6K|T;0Ux)fZ^}Q6F6Rz2ICCxnk9!-)z*{ zhPP8gWBWOHBOnXH0yxx)j$+))zP;oo>F}>E?_0H!LYgqyIE;NQER8cADT-2)k-Yv&5CsoK)( znGMn8wr-&OFMeVBO9m#7o~Cu#san&gs|^s|JjTyLORlt2R`=5KoG``ltj|6hEyx+Q z$xUy4t^1-C+$J_J*@fgx7PPvyTXd)r$+l;*3uF6z^HM>W?E)rZ!|k2)r4mS;sQXp2 z;&-0&!x9sm*OSN982_qr{U246`VYHS6^_VOAHTz;JVJ}}m!szzE_wc@9uB{)nF^-$ z<#Y>~2Uy>L9*A!qfN>m)cVId19=(V5GHPja6&o}49$N;>BKb8{X4_b*O4*#>jK62C&_ zW!$VOW(l;=g;wdF|DB=fx;#2%w3e>4sA;)IoSkXqOxBRp@e11Kd>3{6Z<>C+$E%$mE3805_z*hka6+wL41d6azui7v zg8pcnX_g-`-n$6!`(f2xTx4?;@uo%fPKgBTG;;RIP-B;du4jeKOGOo(CPV~1e@>dV`B8VhY^BE~QN=yUOt@4ls{&P2?xbh1A-YjQ z=Rp&J{3&$`^YYRjuZ|~ha5?EmSZ7gDSFzl$dNBD_(u(Gl%u2rgV_?n!4_Lmt($%110RRGGBYy%FdxZD^Dgp3U(;baN3LRx(n{Cww=MpYEC`b-i(wS8PbeR6uoSwPHQJ^Du za|&;r@1NfU33$hNL^=KCy-DOTLpQO6b@(JC_veDTMw#6`!xTo$WJwi~#3;z65;>Uw literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f6f894eb8be03336e2e11b946d7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f6f894eb8be03336e2e11b946d7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg new file mode 100644 index 00000000..8112ef9d --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f6f894eb8be03336e2e11b946d7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.html b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.html new file mode 100644 index 00000000..21034d5c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.html @@ -0,0 +1,22 @@ + +Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
+
    +
  1. +

    A structured footnote with a return link.

    +

    ↩

    +
  2. +
+
diff --git a/delivery/nextcloud-explicit-adoption/evidence/dependency-lock.log b/delivery/nextcloud-explicit-adoption/evidence/dependency-lock.log new file mode 100644 index 00000000..2bb18ee4 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/dependency-lock.log @@ -0,0 +1,63 @@ +Resolving dependencies... +Downloading packages... + _fe_analyzer_shared 99.0.0 (109.0.0 available) + analyzer 12.1.0 (14.5.0 available) + animated_vector 0.2.2 (0.2.3 available) + animated_vector_annotations 0.2.2 (0.3.0 available) + archive 4.0.9 (4.3.0 available) + assorted_layout_widgets 11.0.0 (13.1.0 available) + clock 1.1.2 (1.1.3 available) + code_assets 1.2.1 (2.1.0 available) + cross_file 0.3.5+4 (0.4.0 available) + dbus 0.7.13 (0.8.0 available) + file_selector_android 0.5.2+8 (0.5.2+11 available) + file_selector_ios 0.5.3+5 (0.5.3+6 available) + file_selector_linux 0.9.4 (0.9.4+1 available) + file_selector_macos 0.9.5 (0.9.5+1 available) + file_selector_windows 0.9.3+5 (0.9.3+6 available) + flutter_riverpod 3.3.2 (3.4.3 available) + frontend_server_client 4.0.0 (4.1.0 available) + glob 2.1.3 (2.2.0 available) + go_router 17.3.0 (18.0.2 available) + gsettings 0.2.8 (0.2.9 available) + html 0.15.6 (0.15.7 available) + image 4.9.1 (4.10.1 available) + io 1.0.5 (1.1.0 available) + jni 1.0.0 (1.1.0 available) + jni_flutter 1.0.1 (1.0.4+1 available) + material_color_utilities 0.13.0 (0.13.1 available) + mime 2.0.0 (2.1.0 available) + native_toolchain_c 0.19.3 (0.19.5 available) + objective_c 9.4.1 (9.6.2 available) + package_config 2.2.0 (3.0.0 available) + package_info_plus 10.2.1 (10.2.2 available) + petitparser 7.0.2 (7.1.0 available) + platform 3.1.6 (3.2.0 available) + pool 1.5.2 (1.5.3 available) + posix 6.5.0 (6.5.2 available) + pub_semver 2.2.0 (2.2.1 available) + riverpod 3.3.2 (3.4.3 available) + source_maps 0.10.13 (0.10.14 available) + stack_trace 1.12.1 (1.12.2 available) + test 1.31.1 (1.32.0 available) + test_api 0.7.12 (0.7.14 available) + test_core 0.6.18 (0.6.20 available) + ubuntu_localizations 0.5.2+3 (0.5.2+4 available) + unorm_dart 0.3.2 (0.3.3 available) + url_launcher 6.3.2 (6.3.3 available) + url_launcher_android 6.3.32 (6.3.33 available) + url_launcher_ios 6.4.1 (6.4.2 available) + url_launcher_linux 3.2.2 (3.2.3 available) + url_launcher_macos 3.2.5 (3.2.6 available) + url_launcher_windows 3.1.5 (3.1.6 available) + vector_graphics 1.2.2 (1.2.3 available) + vector_graphics_compiler 1.2.6 (1.3.0 available) + vector_math 2.4.2 (2.4.3 available) + vm_service 15.2.0 (15.3.0 available) + win32 6.3.0 (6.4.0 available) + xml 7.0.1 (7.1.0 available) + yaml 3.1.3 (3.1.4 available) + yaru 10.2.0 (11.0.0 available) +Got dependencies! +58 packages have newer versions incompatible with dependency constraints. +Try `flutter pub outdated` for more information. diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused-before-renderer.log b/delivery/nextcloud-explicit-adoption/evidence/focused-before-renderer.log new file mode 100644 index 00000000..70439d01 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/focused-before-renderer.log @@ -0,0 +1,232 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +00:01 +1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +00:01 +2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft +00:01 +3: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +00:02 +4: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft +00:02 +5: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +00:02 +6: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work +00:02 +7: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work +00:03 +8: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work +00:03 +9: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work +00:03 +10: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work +00:03 +11: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET +00:03 +12: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET +00:03 +13: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET +00:03 +14: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit +00:04 +15: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment +00:04 +16: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor +00:04 +17: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity +00:04 +18: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement +00:04 +19: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart +00:05 +19: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt +00:06 +20: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption +00:06 +21: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +00:06 +22: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary +00:06 +23: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment +00:06 +24: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title +00:06 +25: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category +00:07 +26: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment +00:07 +27: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart +00:07 +28: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment +00:07 +29: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment +00:07 +30: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +00:07 +31: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +00:08 +32: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +00:08 +33: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +00:08 +34: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit +00:08 +35: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit +00:08 +36: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +00:08 +37: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice +00:08 +38: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note +00:08 +39: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +00:09 +40: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions +00:09 +41: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +00:09 +42: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:09 +43: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +00:09 +44: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:09 +45: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +00:09 +46: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +00:09 +47: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:10 +48: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:10 +49: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +00:10 +50: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +00:10 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +00:10 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +00:10 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +00:10 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +00:10 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +00:10 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +00:10 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +00:11 +58: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +00:11 +59: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +00:11 +60: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename +00:11 +61: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +00:11 +62: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +00:11 +63: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +00:12 +64: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +00:12 +65: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +00:12 +66: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +00:12 +67: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +00:12 +68: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +00:12 +69: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +00:12 +70: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +00:12 +71: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +00:13 +72: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +00:13 +73: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +00:13 +74: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +00:13 +75: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +00:13 +76: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +00:13 +77: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +00:13 +78: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +00:13 +79: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart +00:14 +79: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice +00:14 +80: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes +00:14 +81: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice +00:14 +82: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart +00:15 +82: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty +00:15 +83: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty +00:15 +84: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty +00:15 +85: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body +00:15 +86: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null +00:15 +87: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 +00:15 +88: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file +00:15 +89: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file +00:15 +90: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file +00:15 +91: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file +00:15 +92: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call +00:15 +93: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin +00:15 +94: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched +00:15 +95: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart +00:16 +95: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations +00:16 +96: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions +00:16 +97: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations +00:16 +98: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart +00:17 +98: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated +00:17 +99: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated +00:17 +100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated +00:17 +101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated +00:17 +102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated +00:17 +103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated +00:17 +104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated +00:17 +105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated +00:17 +106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request +00:17 +107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible +00:17 +108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content +00:17 +109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match +00:17 +110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted +00:17 +111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state +00:17 +112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility +00:17 +113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility +00:17 +114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility +00:17 +115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility +00:17 +116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility +00:17 +117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility +00:17 +118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility +00:17 +119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility +00:17 +120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects +00:17 +121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids +00:17 +122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body +00:17 +123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence +00:17 +124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path +00:17 +125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note +00:17 +126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials +00:17 +127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 +00:17 +128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references +00:17 +129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference +00:17 +130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update +00:17 +131: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart +00:18 +131: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields +00:18 +132: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 +00:18 +133: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 +00:18 +134: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 +00:18 +135: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 +00:18 +136: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null +00:18 +137: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version +00:18 +138: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed +00:18 +139: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 +00:18 +140: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately +00:18 +141: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers +00:18 +142: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin +00:18 +143: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 +00:18 +144: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart +00:19 +144: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:20 +145: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback +00:20 +146: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +00:20 +147: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error +00:20 +148: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token +00:20 +149: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails +00:20 +150: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache +00:20 +151: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox +00:20 +152: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret +00:20 +153: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry +00:20 +154: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart +00:21 +154: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication +00:21 +155: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path +00:21 +156: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content +00:21 +157: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document +00:21 +158: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart +00:22 +158: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:23 +159: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions +00:24 +160: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart +00:24 +160: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes +00:24 +161: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs +00:24 +162: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin +00:24 +163: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success +00:24 +164: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser +00:24 +165: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll +00:24 +166: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll +00:24 +167: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password +00:24 +168: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling +00:24 +169: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints +00:24 +170: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors +00:24 +171: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account +00:24 +172: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics +00:24 +173: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart +00:26 +173: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver +00:26 +174: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider +00:27 +175: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider +00:27 +176: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files +00:27 +177: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text +00:28 +178: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations +00:28 +179: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads +00:28 +180: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy +00:28 +181: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy +00:28 +182: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:29 +182: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:34 +183: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:37 +184: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones +00:38 +185: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +00:39 +186: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +00:39 +187: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +00:40 +188: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +00:40 +189: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +00:41 +190: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +00:42 +191: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +00:42 +192: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +00:43 +193: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +00:43 +194: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +00:43 +195: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:44 +196: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +00:44 +197: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +00:44 +198: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart +00:45 +198: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace +00:46 +199: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret +00:46 +200: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string +00:46 +201: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls +00:46 +202: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback +00:46 +203: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +00:48 +203: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review +00:48 +204: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab +00:48 +205: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes +00:48 +206: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save +00:49 +207: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) +00:49 +208: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) +00:49 +209: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) +00:49 +210: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) +00:49 +211: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart +00:49 +212: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation +00:49 +213: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox +00:50 +214: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit +00:50 +215: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session +00:50 +216: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused-final.log b/delivery/nextcloud-explicit-adoption/evidence/focused-final.log new file mode 100644 index 00000000..5b79843c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/focused-final.log @@ -0,0 +1,232 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +00:05 +1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +00:06 +2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft +00:06 +3: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +00:07 +4: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft +00:07 +5: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +00:07 +6: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work +00:07 +7: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work +00:08 +8: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work +00:08 +9: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work +00:08 +10: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work +00:08 +11: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET +00:08 +12: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET +00:08 +13: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET +00:09 +14: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit +00:09 +15: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment +00:09 +16: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor +00:09 +17: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity +00:09 +18: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement +00:09 +19: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart +00:10 +19: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt +00:11 +20: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption +00:12 +21: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +00:12 +22: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary +00:12 +23: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment +00:12 +24: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title +00:12 +25: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category +00:12 +26: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment +00:13 +27: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart +00:13 +28: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment +00:13 +29: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment +00:14 +30: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +00:14 +31: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +00:14 +32: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +00:14 +33: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +00:14 +34: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit +00:14 +35: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit +00:14 +36: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +00:14 +37: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice +00:15 +38: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note +00:15 +39: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +00:15 +40: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions +00:15 +41: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +00:15 +42: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:15 +43: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +00:15 +44: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:15 +45: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +00:15 +46: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +00:16 +47: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:16 +48: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:16 +49: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +00:16 +50: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +00:16 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +00:16 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +00:16 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +00:16 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +00:17 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +00:17 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +00:17 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +00:17 +58: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +00:17 +59: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +00:17 +60: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename +00:18 +61: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +00:18 +62: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +00:18 +63: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +00:18 +64: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +00:18 +65: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +00:18 +66: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +00:18 +67: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +00:18 +68: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +00:19 +69: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +00:19 +70: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +00:19 +71: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +00:19 +72: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +00:19 +73: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +00:20 +74: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +00:20 +75: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +00:20 +76: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +00:20 +77: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +00:20 +78: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +00:20 +79: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart +00:21 +79: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice +00:21 +80: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes +00:21 +81: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice +00:21 +82: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart +00:23 +82: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty +00:23 +83: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty +00:23 +84: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty +00:23 +85: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body +00:24 +86: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null +00:24 +87: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 +00:24 +88: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file +00:24 +89: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file +00:24 +90: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file +00:24 +91: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file +00:24 +92: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call +00:24 +93: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin +00:24 +94: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched +00:24 +95: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart +00:25 +95: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations +00:25 +96: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions +00:25 +97: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations +00:25 +98: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart +00:26 +98: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated +00:27 +99: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated +00:27 +100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated +00:27 +101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated +00:27 +102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated +00:27 +103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated +00:27 +104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated +00:28 +105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated +00:28 +106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request +00:28 +107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible +00:28 +108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content +00:28 +109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match +00:28 +110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted +00:28 +111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state +00:28 +112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility +00:28 +113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility +00:28 +114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility +00:28 +115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility +00:28 +116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility +00:28 +117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility +00:28 +118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility +00:28 +119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility +00:28 +120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects +00:28 +121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids +00:28 +122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body +00:28 +123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence +00:28 +124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path +00:28 +125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note +00:28 +126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials +00:28 +127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 +00:28 +128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references +00:28 +129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference +00:28 +130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update +00:28 +131: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart +00:29 +131: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields +00:29 +132: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 +00:29 +133: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 +00:29 +134: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 +00:29 +135: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 +00:29 +136: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null +00:29 +137: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version +00:29 +138: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed +00:29 +139: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 +00:29 +140: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately +00:29 +141: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers +00:29 +142: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin +00:29 +143: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 +00:29 +144: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart +00:29 +144: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:31 +145: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback +00:31 +146: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +00:31 +147: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error +00:31 +148: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token +00:32 +149: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails +00:32 +150: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache +00:32 +151: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox +00:32 +152: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret +00:32 +153: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry +00:32 +154: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart +00:34 +154: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication +00:34 +155: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path +00:34 +156: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content +00:34 +157: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document +00:34 +158: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart +00:36 +158: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:37 +159: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions +00:38 +160: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart +00:39 +160: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes +00:39 +161: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs +00:39 +162: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin +00:39 +163: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success +00:40 +164: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser +00:40 +165: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll +00:40 +166: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll +00:40 +167: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password +00:40 +168: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling +00:40 +169: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints +00:40 +170: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors +00:40 +171: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account +00:40 +172: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics +00:40 +173: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart +00:42 +173: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver +00:43 +174: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider +00:43 +175: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider +00:43 +176: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files +00:43 +177: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text +00:46 +178: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations +00:46 +179: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads +00:46 +180: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy +00:46 +181: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy +00:46 +182: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:50 +182: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:52 +183: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:56 +184: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones +00:57 +185: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +00:58 +186: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +00:58 +187: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +00:58 +188: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +00:59 +189: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +00:59 +190: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +01:00 +191: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +01:04 +192: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +01:04 +193: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +01:05 +194: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +01:05 +195: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +01:11 +196: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +01:11 +197: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +01:12 +198: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart +01:12 +198: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace +01:12 +199: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret +01:12 +200: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string +01:12 +201: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls +01:12 +202: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback +01:13 +203: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +01:15 +203: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review +01:17 +204: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab +01:17 +205: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes +01:17 +206: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save +01:17 +207: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) +01:17 +208: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) +01:17 +209: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) +01:18 +210: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) +01:18 +211: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart +01:18 +212: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation +01:18 +213: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox +01:18 +214: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit +01:18 +215: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session +01:18 +216: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused-initial.log b/delivery/nextcloud-explicit-adoption/evidence/focused-initial.log new file mode 100644 index 00000000..d7791699 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/focused-initial.log @@ -0,0 +1,258 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields +00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 +00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 +00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 +00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 +00:00 +5: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null +00:00 +6: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version +00:00 +7: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed +00:00 +8: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 +00:00 +9: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately +00:00 +10: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers +00:00 +11: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin +00:00 +12: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 +00:01 +13: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:04 +14: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:04 +15: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:04 +16: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:04 +17: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:11 +18: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:11 +19: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:11 +20: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:11 +21: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:11 +22: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:11 +23: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:11 +24: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:11 +25: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:11 +26: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:11 +27: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry +00:11 +28: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions +00:12 +29: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes +00:12 +30: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs +00:12 +31: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin +00:12 +32: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success +00:12 +33: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser +00:12 +34: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll +00:12 +35: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll +00:12 +36: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password +00:12 +37: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling +00:12 +38: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints +00:12 +39: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors +00:12 +40: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account +00:12 +41: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics +00:14 +42: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver +00:14 +43: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider +00:14 +44: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider +00:14 +45: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files +00:14 +46: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text +00:24 +47: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:24 +48: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:24 +49: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:24 +50: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:24 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:24 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:24 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:24 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:24 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:24 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:24 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:30 +57 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:30 +57 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab [E] + Expected: 'unsaved candidate edit' + Actual: 'wire content' + Which: is different. + Expected: unsaved ca ... + Actual: wire conte ... + ^ + Differ at offset 0 + + package:matcher expect + package:flutter_test/src/widget_tester.dart 473:18 expect + test/src/nextcloud_workspace_test.dart 83:7 main. + +00:31 +58 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:31 +59 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:31 +60 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:31 +61 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:31 +62 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:31 +63 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:31 +64 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:32 +65 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:32 +66 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:32 +67 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:32 +68 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:33 +69 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +00:33 +70 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones +00:33 +71 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +00:33 +72 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +00:34 +73 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +00:34 +74 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +00:34 +75 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +00:34 +76 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +00:34 +77 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +00:35 +78 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +00:35 +79 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +00:35 +80 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work +00:35 +81 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +00:35 +82 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +00:35 +83 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +00:35 +84 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +00:35 +85 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET +00:35 +86 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +00:36 +87 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +00:36 +88 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +00:36 +89 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit +00:36 +90 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +00:36 +91 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +00:36 +92 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +00:36 +93 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +00:36 +94 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement +00:36 +95 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +00:41 +96 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt +00:41 +97 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +00:41 +98 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +00:41 +99 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +00:42 +100 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +00:42 +101 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +00:42 +102 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment +00:42 +103 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +00:42 +104 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +00:42 +105 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category +00:42 +106 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:43 +107 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:43 +108 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:43 +109 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:43 +110 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:43 +111 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:43 +112 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:44 +113 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:44 +114 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:44 +115 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:44 +116 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ +The following TestFailure was thrown running a test: +Expected: <10> + Actual: + +When the exception was thrown, this was the stack: +#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:805:7) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + + +(elided one frame from package:stack_trace) + +This was caught by the test expectation on the following line: + file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart line 805 +The test description was: + selecting and confirming candidate binds draft and retains newer edits +════════════════════════════════════════════════════════════════════════════════════════════════════ +00:44 +116 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +00:44 +116 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] + Test failed. See exception logs above. + The test description was: selecting and confirming candidate binds draft and retains newer edits + +00:44 +117 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +00:44 +118 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +00:44 +119 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +00:44 +120 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +00:44 +121 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +00:45 +122 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +00:45 +123 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +00:45 +124 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:45 +125 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:45 +126 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:45 +127 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:47 +128 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:47 +129 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:47 +130 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:47 +131 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body +00:47 +132 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +00:47 +133 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +00:47 +134 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +00:47 +135 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file +00:47 +136 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:47 +137 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:47 +138 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:47 +139 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:47 +140 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:47 +141 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:47 +142 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:47 +143 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +00:48 +144 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +00:48 +145 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +00:48 +146 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +00:48 +147 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated +00:48 +148 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +00:48 +149 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +00:48 +150 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +00:48 +151 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +00:48 +152 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated +00:48 +153 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:48 +154 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +155 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +156 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +157 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +158 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +159 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +160 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +161 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +162 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +163 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +164 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +165 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:49 +166 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility +00:49 +167 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +168 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +169 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +170 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +171 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +172 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +173 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +174 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +175 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +176 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +177 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +178 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +179 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +180 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +181 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +182 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:49 +183 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +00:49 +184 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +00:49 +185 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +00:49 +186 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +00:49 +187 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +00:49 +188 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +00:49 +189 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +00:49 +190 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +00:49 +191 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +00:50 +192 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +00:50 +193 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +00:50 +194 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename +00:50 +195 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +00:50 +196 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +00:51 +197 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +00:51 +198 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +00:51 +199 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +00:51 +200 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +00:51 +201 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +00:51 +202 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +00:52 +203 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +00:52 +204 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +00:52 +205 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +00:52 +206 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +00:52 +207 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +00:52 +208 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +00:53 +209 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +00:53 +210 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +00:53 +211 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +00:53 +212 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +00:53 +213 -2: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits + /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused-serial.log b/delivery/nextcloud-explicit-adoption/evidence/focused-serial.log new file mode 100644 index 00000000..840efc6b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/focused-serial.log @@ -0,0 +1,494 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields +00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 +00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 +00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 +00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 +00:00 +5: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null +00:00 +6: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version +00:00 +7: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed +00:00 +8: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 +00:00 +9: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately +00:00 +10: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers +00:00 +11: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin +00:00 +12: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 +00:00 +13: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart +00:01 +13: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:05 +14: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback +00:05 +15: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +00:05 +16: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error +00:05 +17: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token +00:05 +18: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails +00:05 +19: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache +00:06 +20: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox +00:06 +21: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret +00:06 +22: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry +00:06 +23: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart +00:07 +23: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication +00:07 +24: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path +00:07 +25: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content +00:07 +26: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document +00:07 +27: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart +00:12 +27: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +00:13 +28: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions +00:13 +29: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart +00:14 +29: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes +00:14 +30: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs +00:14 +31: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin +00:14 +32: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success +00:14 +33: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser +00:14 +34: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll +00:14 +35: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll +00:14 +36: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password +00:14 +37: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling +00:14 +38: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints +00:14 +39: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors +00:14 +40: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account +00:14 +41: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics +00:14 +42: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart +00:16 +42: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver +00:20 +43: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider +00:20 +44: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider +00:20 +45: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files +00:20 +46: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text +00:21 +47: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations +00:21 +48: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads +00:21 +49: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy +00:21 +50: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy +00:21 +51: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:26 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:27 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +00:34 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones +00:35 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +00:36 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +00:36 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +00:37 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +00:38 +58: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +00:38 +59: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +00:40 +60: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +00:40 +61: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +00:41 +62: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +00:41 +63: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +00:41 +64: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +00:42 +65: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +00:42 +66: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +00:42 +67: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart +00:43 +67: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace +00:43 +68: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret +00:43 +69: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string +00:43 +70: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls +00:43 +71: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback +00:43 +72: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +00:44 +72: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab +00:50 +73: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes +00:52 +74: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save +00:52 +75: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) +00:52 +76: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) +00:53 +77: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) +00:53 +78: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) +00:53 +79: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart +00:53 +80: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation +00:53 +81: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox +00:53 +82: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit +00:53 +83: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session +00:54 +84: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart +00:54 +84: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +00:56 +85: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +00:57 +86: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft +00:57 +87: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +00:57 +88: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft +00:58 +89: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +00:58 +90: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work +00:58 +91: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work +00:58 +92: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work +00:58 +93: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work +00:58 +94: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work +00:58 +95: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET +00:59 +96: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET +00:59 +97: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET +00:59 +98: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit +00:59 +99: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment +00:59 +100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor +00:59 +101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity +00:59 +102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement +01:00 +103: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart +01:01 +103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt +01:07 +104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption +01:07 +105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +01:07 +106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary +01:07 +107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment +01:08 +108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title +01:08 +109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category +01:08 +110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment +01:08 +111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart +01:08 +112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment +01:09 +113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment +01:09 +114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:09 +115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +01:09 +116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:09 +117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +01:10 +118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit +01:10 +119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit +01:10 +120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +01:10 +121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice +01:10 +122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note +01:10 +123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +01:10 +124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions +01:11 +125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +01:11 +126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +01:11 +127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +01:11 +128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +01:11 +129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +01:11 +130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +01:11 +131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +01:11 +132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +01:12 +133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +01:12 +134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +01:12 +135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +01:12 +136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +01:12 +137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +01:12 +138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +01:12 +139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +01:12 +140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +01:12 +141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +01:13 +142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +01:13 +143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +01:13 +144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename +01:14 +145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +01:14 +146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +01:14 +147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +01:14 +148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +01:14 +149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +01:14 +150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +01:14 +151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +01:15 +152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +01:15 +153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +01:15 +154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +01:15 +155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +01:15 +156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +01:15 +157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +01:16 +158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +01:16 +159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +01:16 +160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +01:16 +161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +01:16 +162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +01:16 +163: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart +01:17 +163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice +01:17 +164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes +01:17 +165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice +01:17 +166: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart +01:18 +166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty +01:20 +167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty +01:20 +168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty +01:20 +169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body +01:20 +170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null +01:20 +171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 +01:20 +172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file +01:20 +173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file +01:20 +174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file +01:20 +175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file +01:20 +176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call +01:20 +177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin +01:20 +178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched +01:21 +179: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart +01:21 +179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations +01:21 +180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions +01:21 +181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations +01:21 +182: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart +01:22 +182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated +01:23 +183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated +01:23 +184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated +01:23 +185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated +01:23 +186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated +01:23 +187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated +01:23 +188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated +01:23 +189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated +01:23 +190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request +01:23 +191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible +01:23 +192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content +01:23 +193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match +01:23 +194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted +01:23 +195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state +01:23 +196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility +01:23 +197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility +01:23 +198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility +01:23 +199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility +01:23 +200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility +01:23 +201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility +01:23 +202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility +01:23 +203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility +01:23 +204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects +01:23 +205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids +01:23 +206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body +01:23 +207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence +01:23 +208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path +01:23 +209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note +01:23 +210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials +01:23 +211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 +01:23 +212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references +01:23 +213: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference +01:23 +214: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update +01:23 +215: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart +01:24 +215: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces +01:26 +216: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark +01:26 +217: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync +01:26 +218: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces +01:26 +219: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog +01:26 +220: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present +01:26 +221: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging +01:27 +222: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface +01:27 +223: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body +01:27 +224: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters +01:27 +225: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components +01:27 +226: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers +01:27 +227: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface +01:27 +228: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry +01:27 +229: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary +01:27 +230: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer +01:27 +231: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting +01:27 +232: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI +01:27 +233: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text +01:27 +234: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration +01:27 +235: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR +01:27 +236: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface +01:27 +237: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography +01:27 +238: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style +01:27 +239: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives +01:27 +240: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries +01:27 +241: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind +01:27 +242: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces +01:27 +243: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu +01:27 +244: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback +01:27 +245: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup +01:27 +246: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel +01:27 +247: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter +01:27 +248: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu +01:27 +249: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor +01:27 +250: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors +01:27 +251: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation +01:27 +252: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row +01:27 +253: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model +01:27 +254: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row +01:27 +255: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation +01:27 +256: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span +01:28 +257: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout +01:28 +258: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts +01:28 +259: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls +01:28 +260: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds +01:28 +261: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog +01:28 +262: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release +01:28 +263: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome +01:28 +264: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart +01:29 +264: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings +01:29 +265: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded +01:29 +266: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales +01:29 +267: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale +01:29 +268: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes +01:29 +269: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs +01:29 +270: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders +01:29 +271: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct +01:29 +272: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed +01:29 +272 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed [E] + Expected: empty + Actual: [ + 'lib/l10n/app_it.arb: nextcloudUseServerNote unexpectedly still matches English', + 'lib/l10n/app_it.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English', + 'lib/l10n/app_it.arb: nextcloudExactCandidate unexpectedly still matches English', + 'lib/l10n/app_it.arb: nextcloudPossibleCandidate unexpectedly still matches English', + 'lib/l10n/app_it.arb: nextcloudSelectCandidate unexpectedly still matches English', + 'lib/l10n/app_it.arb: nextcloudCreateSeparate unexpectedly still matches English', + 'lib/l10n/app_it.arb: nextcloudCreateSeparateWarning unexpectedly still matches English', + 'lib/l10n/app_nb.arb: nextcloudUseServerNote unexpectedly still matches English', + 'lib/l10n/app_nb.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English', + 'lib/l10n/app_nb.arb: nextcloudExactCandidate unexpectedly still matches English', + 'lib/l10n/app_nb.arb: nextcloudPossibleCandidate unexpectedly still matches English', + 'lib/l10n/app_nb.arb: nextcloudSelectCandidate unexpectedly still matches English', + 'lib/l10n/app_nb.arb: nextcloudCreateSeparate unexpectedly still matches English', + 'lib/l10n/app_nb.arb: nextcloudCreateSeparateWarning unexpectedly still matches English', + 'lib/l10n/app_id.arb: nextcloudUseServerNote unexpectedly still matches English', + 'lib/l10n/app_id.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English', + 'lib/l10n/app_id.arb: nextcloudExactCandidate unexpectedly still matches English', + 'lib/l10n/app_id.arb: nextcloudPossibleCandidate unexpectedly still matches English', + 'lib/l10n/app_id.arb: nextcloudSelectCandidate unexpectedly still matches English', + 'lib/l10n/app_id.arb: nextcloudCreateSeparate unexpectedly still matches English', + 'lib/l10n/app_id.arb: nextcloudCreateSeparateWarning unexpectedly still matches English', + 'lib/l10n/app_hi.arb: nextcloudUseServerNote unexpectedly still matches English', + 'lib/l10n/app_hi.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English', + 'lib/l10n/app_hi.arb: nextcloudExactCandidate unexpectedly still matches English', + ... + ] + lib/l10n/app_it.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_it.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_it.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_it.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_it.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_it.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_it.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_nb.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_nb.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_nb.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_nb.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_nb.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_nb.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_nb.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_id.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_id.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_id.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_id.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_id.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_id.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_id.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_hi.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_hi.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_hi.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_hi.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_hi.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_hi.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_hi.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_fa.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_fa.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_fa.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_fa.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_fa.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_fa.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_fa.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_de.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_de.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_de.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_de.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_de.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_de.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_de.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_zh_CN.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_zh_CN.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_zh_CN.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_zh_CN.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_zh_CN.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_zh_CN.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_zh_CN.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_ar.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_ar.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_ar.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_ar.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_ar.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_ar.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_ar.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_pt_BR.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_pt_BR.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_pt_BR.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_pt_BR.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_pt_BR.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_pt_BR.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_pt_BR.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_ru.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_ru.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_ru.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_ru.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_ru.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_ru.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_ru.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_vi.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_vi.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_vi.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_vi.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_vi.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_vi.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_vi.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_nl.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_nl.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_nl.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_nl.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_nl.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_nl.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_nl.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_fr.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_fr.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_fr.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_fr.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_fr.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_fr.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_fr.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_es.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_es.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_es.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_es.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_es.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_es.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_es.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_ko.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_ko.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_ko.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_ko.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_ko.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_ko.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_ko.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_pl.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_pl.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_pl.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_pl.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_pl.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_pl.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_pl.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_zh.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_zh.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_zh.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_zh.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_zh.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_zh.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_zh.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_tr.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_tr.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_tr.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_tr.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_tr.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_tr.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_tr.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_ja.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_ja.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_ja.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_ja.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_ja.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_ja.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_ja.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_et.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_et.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_et.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_et.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_et.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_et.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_et.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_pt.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_pt.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_pt.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_pt.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_pt.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_pt.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_pt.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + lib/l10n/app_uk.arb: nextcloudUseServerNote unexpectedly still matches English + lib/l10n/app_uk.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English + lib/l10n/app_uk.arb: nextcloudExactCandidate unexpectedly still matches English + lib/l10n/app_uk.arb: nextcloudPossibleCandidate unexpectedly still matches English + lib/l10n/app_uk.arb: nextcloudSelectCandidate unexpectedly still matches English + lib/l10n/app_uk.arb: nextcloudCreateSeparate unexpectedly still matches English + lib/l10n/app_uk.arb: nextcloudCreateSeparateWarning unexpectedly still matches English + + package:matcher expect + package:flutter_test/src/widget_tester.dart 473:18 expect + test/src/localization_audit_test.dart 339:5 main. + +01:29 +272 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys +01:29 +273 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale +01:29 +274 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose +01:29 +275 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches +01:29 +276 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form +01:29 +277 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural +01:29 +278 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology +01:29 +279 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations +01:29 +280 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits +01:29 +281 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English +01:29 +282 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog +01:30 +283 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args +01:30 +284 -1: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused.log b/delivery/nextcloud-explicit-adoption/evidence/focused.log new file mode 100644 index 00000000..50cdebd9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/focused.log @@ -0,0 +1,228 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields +00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 +00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 +00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 +00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 +00:00 +5: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null +00:00 +6: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version +00:00 +7: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed +00:00 +8: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 +00:00 +9: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately +00:00 +10: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers +00:00 +11: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin +00:00 +12: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 +00:03 +13: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:12 +14: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:12 +15: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:12 +16: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:12 +17: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:18 +18: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:18 +19: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +20: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +21: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +22: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +23: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +24: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +25: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +26: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +27: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +28: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +29: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +30: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +31: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:19 +32: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:27 +33: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:27 +34: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:27 +35: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:27 +36: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +00:28 +37: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text +00:29 +38: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback +00:29 +39: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback +00:29 +40: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads +00:29 +41: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +00:29 +42: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +00:29 +43: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +00:29 +44: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error +00:29 +45: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token +00:29 +46: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails +00:29 +47: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache +00:30 +48: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox +00:30 +49: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret +00:30 +50: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry +00:35 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:41 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:41 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:41 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:41 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +00:41 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +01:05 +56 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab +01:05 +56 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page [E] + TimeoutException after 0:00:30.000000: Test timed out after 30 seconds. See https://pub.dev/packages/test#timeouts + dart:isolate _RawReceivePort._handleMessage + + LateInitializationError: Local 'repository' has not been initialized. + dart:_internal LateError._throwLocalNotInitialized + test/src/nextcloud_notes_ui_test.dart main. + +01:13 +57 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:14 +58 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:14 +59 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:14 +60 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:14 +61 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:15 +62 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:15 +63 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:15 +64 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:16 +65 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:16 +66 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:16 +67 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:16 +68 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +01:19 +69 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +01:21 +70 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +01:21 +71 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +01:22 +72 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +01:22 +73 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +01:22 +74 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +01:23 +75 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +01:23 +76 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft +01:23 +77 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +01:23 +78 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +01:23 +79 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work +01:24 +80 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +01:24 +81 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +01:24 +82 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +01:24 +83 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +01:24 +84 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work +01:24 +85 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +01:25 +86 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +01:25 +87 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +01:25 +88 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET +01:25 +89 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +01:25 +90 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +01:25 +91 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +01:26 +92 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +01:26 +93 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity +01:26 +94 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +01:26 +95 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +01:26 +96 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +01:34 +97 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +01:35 +98 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +01:35 +99 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +01:35 +100 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +01:35 +101 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary +01:35 +102 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +01:36 +103 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +01:36 +104 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title +01:36 +105 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +01:36 +106 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +01:36 +107 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +01:36 +108 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart +01:37 +109 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +01:37 +110 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment +01:37 +111 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +01:38 +112 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment +01:38 +113 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:38 +114 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:38 +115 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:38 +116 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:41 +117 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:41 +118 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:41 +119 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:41 +120 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:42 +121 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:42 +122 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:42 +123 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:42 +124 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:42 +125 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:42 +126 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:42 +127 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:42 +128 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:42 +129 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +01:43 +130 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +01:44 +131 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +01:44 +132 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +01:44 +133 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +01:45 +134 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +01:45 +135 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +01:45 +136 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +01:46 +137 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +01:46 +138 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated +01:46 +139 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +140 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +141 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +142 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +143 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +144 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +145 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +146 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +147 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +148 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +149 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +150 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +151 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +152 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +153 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +154 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +155 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +156 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +157 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +158 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +159 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +160 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +161 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +162 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +163 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +164 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +01:46 +165 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references +01:46 +166 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +01:46 +167 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +01:46 +168 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +01:48 +169 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit +01:53 +170 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit +01:53 +171 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +01:54 +172 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice +01:54 +173 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note +01:54 +174 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +01:54 +175 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions +01:55 +176 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +01:55 +177 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +01:55 +178 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +01:55 +179 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +01:55 +180 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +01:56 +181 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +01:56 +182 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +01:56 +183 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +01:56 +184 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +01:56 +185 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +01:56 +186 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +01:57 +187 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +01:57 +188 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +01:57 +189 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +01:57 +190 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +01:57 +191 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +01:58 +192 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +01:58 +193 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +01:58 +194 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +01:59 +195 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename +01:59 +196 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +01:59 +197 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +01:59 +198 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +02:00 +199 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +02:00 +200 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +02:00 +201 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +02:00 +202 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +02:00 +203 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +02:01 +204 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +02:02 +205 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +02:02 +206 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +02:02 +207 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +02:02 +208 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +02:03 +209 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +02:03 +210 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +02:03 +211 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +02:03 +212 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +02:03 +213 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +02:04 +214 -1: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page diff --git a/delivery/nextcloud-explicit-adoption/evidence/format-final.log b/delivery/nextcloud-explicit-adoption/evidence/format-final.log new file mode 100644 index 00000000..0cb68adf --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/format-final.log @@ -0,0 +1 @@ +Formatted 544 files (0 changed) in 7.06 seconds. diff --git a/delivery/nextcloud-explicit-adoption/evidence/format-prepare.log b/delivery/nextcloud-explicit-adoption/evidence/format-prepare.log new file mode 100644 index 00000000..882a1fc6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/format-prepare.log @@ -0,0 +1,3 @@ +Formatted lib/src/nextcloud_notes/application/notes_repository.dart +Formatted test/src/nextcloud_notes_ui_test.dart +Formatted 544 files (2 changed) in 6.78 seconds. diff --git a/delivery/nextcloud-explicit-adoption/evidence/format.log b/delivery/nextcloud-explicit-adoption/evidence/format.log new file mode 100644 index 00000000..93ae2154 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/format.log @@ -0,0 +1,2 @@ +Formatted tools/nextcloud_notes_live_acceptance.dart +Formatted 544 files (1 changed) in 7.20 seconds. diff --git a/delivery/nextcloud-explicit-adoption/evidence/full-flutter-before-renderer.log b/delivery/nextcloud-explicit-adoption/evidence/full-flutter-before-renderer.log new file mode 100644 index 00000000..b849d0b3 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/full-flutter-before-renderer.log @@ -0,0 +1,4412 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver +00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider +00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider +00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files +00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text +00:00 +5: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations +00:00 +6: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads +00:01 +7: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy +00:01 +8: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy +00:01 +9: loading /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart +00:01 +9: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a complete subtree as the last child of an exact node +00:02 +10: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry after a root sibling +00:02 +11: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry to the end of the TOC root +00:02 +12: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry relative to itself without writing +00:02 +13: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry into its descendant without writing +00:02 +14: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: requires a destination for child and sibling placement +00:02 +15: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects invalid structural paths without writing +00:02 +16: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects stale paths whose expected TOC identities moved +00:02 +17: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a root entry and promotes its children in place +00:02 +18: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a nested entry and promotes its child before its sibling +00:02 +19: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes multiple entries atomically against one tree snapshot +00:02 +20: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: batch removal handles a selected descendant and ancestor +00:02 +21: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves multiple subtrees as an ordered group +00:02 +22: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a tree outside the guarded module root +00:02 +23: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a symlinked tree without mutating its target +00:02 +24: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: does not overwrite a tree changed before atomic publication +00:02 +25: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: atomic replacement preserves the tree POSIX mode +00:02 +26: loading /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart +00:05 +26: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal dialogs stop app and editor shortcuts +00:06 +27: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: Escape closes a modal without an initially focused control +00:06 +28: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal fallback does not steal a child autofocus request +00:06 +29: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: overlapping dialogs synchronize native modal depth +00:06 +30: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: serializes rapid manual native barrier transitions +00:06 +31: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: failed native barrier acquisition rolls back and can retry +00:06 +32: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal coordinator resolves the service from ProviderScope +00:06 +33: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: open modal barrier follows live theme changes +00:06 +34: loading /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart +00:10 +34: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: analysis finds every tree, topic link, include, and start page +00:11 +35: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove promotes children, updates usages, adds redirect, and keeps file +00:11 +36: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates all usages and removes every TOC occurrence +00:11 +37: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect to a promoted child is written to the promoted copy +00:11 +38: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed XML topics make usage analysis fail closed +00:11 +39: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: file-size-skipped topics make removal fail closed +00:11 +40: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: document-count-skipped topics make removal fail closed +00:12 +41: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: unreadable topic contents make removal fail closed +00:12 +42: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: topic-root traversal truncation makes removal fail closed +00:12 +43: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: incomplete project-module discovery makes removal fail closed +00:12 +44: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: tree directory enumeration failure makes removal fail closed +00:12 +45: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: single-quoted includes without element-id are found and removed +00:12 +46: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: variable-expanded links are analyzed and the variables file is stale-checked +00:12 +47: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: Safe Delete finds and unlinks authored HTML anchors without literal false positives +00:12 +48: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed authored HTML anchors are manual Safe Delete blockers +00:12 +49: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML variable hrefs are expanded and ambiguity blocks +00:12 +50: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML relevance follows its conditioned Markdown chapter +00:12 +51: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: automatic HTML unlinking permits project-wide orphan status +00:13 +52: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a surviving authored HTML link suppresses orphan status +00:13 +53: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: ambiguous references block deletion without changing any file +00:13 +54: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: old web file names follow Writerside normalization and exact overrides +00:13 +55: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: existing redirect rules block conflicting redirects +00:13 +56: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect preserves direct and rule-based accepted aliases +00:13 +57: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a transferred redirect alias collision fails before writes +00:13 +58: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect sources use each host instance web filename +00:13 +59: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remaining start-page and cross-instance usages prevent orphan status +00:13 +60: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove-from-instance relevance respects document conditions +00:13 +61: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: start-page and stale analyses fail closed without deleting the topic +00:13 +62: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: generic Files deletion cannot bypass Writerside Safe Delete +00:13 +63: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: project analysis finds origin links, includes, cards, and ref TOC nodes +00:13 +64: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored Markdown HTML anchors resolve origin project-wide +00:14 +65: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates automatic cross-module origin usages +00:14 +66: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: selected ref node uses removal workflow and promotes its children +00:14 +67: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: semantic tree scan includes hidden/build trees and excludes VCS metadata +00:14 +68: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a new module after analysis makes the reviewed plan stale +00:14 +69: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: cross-module failure rolls back BusyMark edits without overwriting a concurrent edit +00:14 +70: loading /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart +00:16 +70: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source paste preserves incoming nested blocks and returns its caret +00:16 +71: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves structural block kinds +00:16 +72: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: removing final formula leaves normal editing mode +00:16 +73: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits preserve nested list children +00:16 +74: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: descendant math does not put a plain list parent in source mode +00:16 +75: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first inline math insertion preserves unaffected inline AST +00:16 +76: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math edits retain explicit heading IDs +00:16 +77: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first math insertion recalculates a generated heading ID +00:16 +78: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion always emits reparsable source +00:16 +79: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: additional inline math uses the same reparsable insertion policy +00:16 +80: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion rejects multiline selections without mutation +00:16 +81: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves zero-width semantic inlines +00:16 +82: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table-cell source editing retains and removes semantic math +00:16 +83: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits cannot discard additional Markdown blocks +00:16 +84: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source editing preserves escaped literal dollars +00:16 +85: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves the intended inline position +00:16 +86: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math field source boundaries map to semantic text boundaries +00:16 +87: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: source-mode math insertion preserves the intended inline position +00:16 +88: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG renders math, edits exact source, and reparses without corruption +00:18 +89: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG toolbar inserts inline and display math source +00:18 +90: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math toolbar preserves existing inline structure +00:18 +91: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: rendered and focused math list items keep one marker +00:18 +92: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table math renders unfocused and edits delimiter source +00:18 +93: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: plain table cell treats typed Markdown as rich text +00:19 +94: loading /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart +00:21 +94: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery refresh preserves a valid second instance +00:21 +95: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: selected instance removed +00:21 +96: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: intentional selection +00:21 +97: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: another module +00:21 +98: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction incomplete observations are presentation only and reject changed reads +00:21 +99: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction limited inventory retains raw counts for excluded Git entries +00:21 +100: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: rejected source size remains an input to freshness checking +00:21 +101: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: bounded topic rejection detects recovery on the real worker +00:21 +102: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: oversized buffer overrides retain their consumed-input hash +00:21 +103: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: unreadable sources keep error diagnostics and invalidate on recovery +00:21 +104: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: real execution transfers results and propagates worker failures +00:22 +105: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: basic_project +00:22 +106: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: conformance_project +00:22 +107: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: markdown_export_compatibility +00:22 +108: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: malformed XML +00:22 +109: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: missing configured root +00:22 +110: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: unsafe include +00:22 +111: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: scan limit +00:22 +112: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: preparation consumes complete overlays once, then selects with zero loads +00:22 +113: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: reuse checks equal-size disk dependencies and added inputs +00:22 +114: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: planned path exclusions cannot hide a new colon-named dependency +00:22 +115: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: configuration overlay rediscovery retains symbols and diagnostics +00:22 +116: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: creation returns its typed publication result without reopening +00:22 +117: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal application shares one ownership-checked fresh project +00:22 +118: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects changed input before fingerprint collection +00:22 +119: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects added input before fingerprint collection +00:22 +120: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects removed input before fingerprint collection +00:23 +121: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects tree input before fingerprint collection +00:23 +122: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects configuration input before fingerprint collection +00:23 +123: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects disk dependency after fingerprint verification and before commit +00:23 +124: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects dirty affected buffer after fingerprint verification and before commit +00:23 +125: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: analysis is never reused across confirmation +00:23 +126: loading /home/albert/busystack/busymark/test/src/local_history_controller_test.dart +00:26 +126: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed opened baseline retries its original source without an edit +00:26 +127: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: baseline before edit preserves original and coalesces latest edit +00:26 +128: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: closed failures keep ownership and stale settlement cannot drop newer work +00:26 +129: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed protective capture survives refresh failure without recapture +00:26 +130: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: protective authorization is invalidated while committed refresh awaits +00:26 +131: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: disable cancels an in-flight baseline at the store boundary +00:26 +132: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: exclude cancels an in-flight baseline at the store boundary +00:26 +133: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed promotion stays associated when refresh fails +00:26 +134: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As binds destination even when list refresh fails +00:26 +135: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: settling one buffer resumes retries accepted by another buffer +00:26 +136: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear document cancels its failed unbound baseline +00:26 +137: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=true) +00:26 +138: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=false) +00:26 +139: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=false) +00:26 +140: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=true) +00:26 +141: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains a source identity established before later settlement fails +00:26 +142: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As refreshes a staged destination after its concurrent checkpoint +00:26 +143: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: abandoned and superseded moves retain the newest committed association +00:26 +144: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued edits share one retained baseline retry owner +00:26 +145: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: independent failures, permanent baselines and policy cancellation remain isolated +00:27 +146: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: cancelled failed baselines cannot be restored by delayed callbacks +00:27 +147: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: continuous typing captures latest text at fixed checkpoint interval +00:27 +148: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: inactive buffers receive independent checkpoint timers +00:27 +149: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first checkpoint attaches an empty untitled browsing scope and publishes it +00:27 +150: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file store checkpoint persists across reopen and clear stays authoritative +00:29 +151: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: active revision search follows matching and nonmatching captures +00:29 +152: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed automatic capture keeps pending source and retries without another edit +00:29 +153: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a newer edit accepted during a failed write wins the retry +00:29 +154: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: automatic checkpoint retries a transient first-save promotion failure +00:29 +155: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush waits behind queued observation and captures its latest source +00:29 +156: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear wins over an in-flight capture and later edits record normally +00:29 +157: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear Document records in the replacement lineage +00:29 +158: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document blocks replacement capture while its journal is pending +00:29 +159: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear All records in the replacement lineage +00:29 +160: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All blocks replacement capture while its journal is pending +00:29 +161: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an automatic checkpoint queued for an untitled draft +00:29 +162: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear Document +00:29 +163: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear All +00:29 +164: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clearing the displayed comparison closes it without a missing warning +00:29 +165: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an in-flight path capture for the same document +00:29 +166: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first edit after another controller clears a stale binding starts a new lineage +00:29 +167: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight buffer replacement protection +00:29 +168: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued buffer replacement protection +00:29 +169: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight path replacement protection +00:29 +170: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued path replacement protection +00:29 +171: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight buffer replacement protection +00:29 +172: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued buffer replacement protection +00:29 +173: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight path replacement protection +00:29 +174: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued path replacement protection +00:29 +175: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording off prevents baseline and checkpoints without deleting history +00:29 +176: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: store-wide find locates closed and deleted documents by path or content +00:29 +177: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: retained-document lookup is temporary and normal document selection resumes following +00:29 +178: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: panel construction preserves an explicit retained-document inspection +00:30 +179: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: delayed revision search cannot repopulate a newly selected document scope +00:30 +180: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision search failure finishes searching and remains in scope +00:30 +181: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Local History follows active tabs and clears the visible query without a document dropdown +00:31 +182: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision rows use local second-precision time, date groups, event metadata, and RTL +00:31 +183: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a delayed revision read cannot cross the selected document or leave loading stuck +00:31 +184: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As settles pending named and untitled checkpoints safely +00:32 +185: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: untitled overwrite Save As retains a failed source checkpoint +00:32 +186: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As source capture is idempotent after a lost result +00:32 +187: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As recovery never adopts unrelated same-content destination history +00:32 +188: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording-disabled first save promotes untitled history identity +00:32 +189: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: excluding a recovered first-save destination preserves its untitled source baseline +00:32 +190: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued committed Save As cannot recreate a newly excluded destination side +00:32 +191: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed first-save promotion is retried before a later capture +00:32 +192: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush retries a failed first-save promotion without another edit +00:32 +193: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush reports a content failure after successfully retrying promotion +00:32 +194: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: remap settles pending first-save promotions for files and directories +00:32 +195: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file and directory moves settle pending checkpoints before remap +00:32 +196: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed path reconciliation blocks affected captures but not unrelated documents +00:32 +197: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: successful path queue prefix is published before a later failure +00:32 +198: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path deletion warnings remain scoped to affected owners +00:32 +199: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed path operation is not replayed after refresh failure +00:32 +200: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: restored targetless executing reconciliation preserves its owner +00:32 +201: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) +00:32 +202: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/B.md) +00:32 +203: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/A.md, recursive: false, source: /workspace/C.md) +00:32 +204: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/B.md, recursive: false, source: /workspace/C.md) +00:32 +205: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirA/nested/C.md) +00:32 +206: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirB/nested/C.md) +00:32 +207: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: false, source: /workspace/C.md) +00:32 +208: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirB/nested/C.md, recursive: false, source: /workspace/C.md) +00:32 +209: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /other, recursive: false, source: /workspace) +00:32 +210: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace, recursive: false, source: /other) +00:32 +211: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/dirB-sibling/C.md, recursive: false, source: /workspace/dirA-sibling/C.md) +00:32 +212: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) +00:32 +213: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: true, source: /workspace/dirA/nested/C.md) +00:32 +214: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: true, source: /workspace/C.md) +00:32 +215: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /other, recursive: true, source: /workspace) +00:32 +216: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: true, source: /workspace/C.md) +00:32 +217: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) +00:32 +218: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) +00:32 +219: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses prepared target with different paths +00:32 +220: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses bound identity with different paths +00:32 +221: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses destination identity with different paths +00:32 +222: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency checks promotion destination identity at a different path +00:32 +223: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency settles only conflicting entries behind an unresolved head +00:32 +224: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=false) +00:32 +225: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=true) +00:32 +226: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency preserves transitive queue ordering +00:32 +227: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=false) +00:32 +228: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=true) +00:32 +229: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: staged path commit survives refresh failure until workspace acknowledgement +00:32 +230: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: external staged remap refreshes its bound target after checkpoint settlement +00:32 +231: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: definitive false staged result retires its executing journal +00:32 +232: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred deletion cannot delete replacement path history +00:32 +233: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document removes only its recursive reconciliation target +00:32 +234: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document preserves timer retry for remaining recursive target +00:32 +235: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: prepared remap rejects a checkpoint that changed its frozen target +00:32 +236: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: ownerless path failure is visible only in history presentation +00:32 +237: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: detached promotion capture is included in durable retained work +00:32 +238: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: live external retained owner is not replayed and Clear All retires it +00:32 +239: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a clear conflict cancels the old baseline retry owner +00:32 +240: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit after failed Clear waits and persists in the replacement lineage +00:32 +241: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: post-Clear edit uses committed epoch when reconciliation refresh fails +00:32 +242: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred remap cannot mutate replacement path history +00:32 +243: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed remap reserves source and destination paths until reconciliation +00:32 +244: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deletion remains ordered behind a retained path remap +00:32 +245: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first save waits for a reserved source path before promoting its history +00:32 +246: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path target discovery observes history written after cached load +00:32 +247: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear document +00:32 +248: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear all +00:32 +249: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after disposal +00:32 +250: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As transfers retained remap ownership with source work +00:32 +251: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flushBuffer reports retained remap work and retires closed owner +00:32 +252: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All cannot be undone by an in-flight path remap +00:32 +253: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path reconciliation resumes a newly opened destination owner +00:32 +254: loading /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart +00:34 +254: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: HTML retains complex Markdown and resolves both heading ID spellings +00:36 +255: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: PDF retains complex Markdown and resolved heading links +00:36 +256: loading /home/albert/busystack/busymark/test/src/math_widget_test.dart +00:38 +256: /home/albert/busystack/busymark/test/src/math_widget_test.dart: inline math applies MathJax baseline and surrounding text metrics +00:39 +257: /home/albert/busystack/busymark/test/src/math_widget_test.dart: wide display math scrolls horizontally without clipping +00:39 +258: /home/albert/busystack/busymark/test/src/math_widget_test.dart: failed formulas retain source and a localized explanation +00:39 +259: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart +00:41 +259: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: reduced fixture uses rendered offsets without Markdown delimiters or block separators +00:41 +260: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All: logical range and copy include styled suffixes and table +00:43 +261: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b0 BusyBlockKind.paragraph +00:43 +262: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b1 BusyBlockKind.paragraph +00:43 +263: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b2 BusyBlockKind.paragraph +00:44 +264: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b3 BusyBlockKind.unorderedListItem +00:45 +265: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b4 BusyBlockKind.unorderedListItem +00:45 +266: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b5 BusyBlockKind.unorderedListItem +00:45 +267: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b6 BusyBlockKind.paragraph +00:46 +268: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b17 BusyBlockKind.paragraph +00:46 +269: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table cells paint the same selected text as document copy +00:47 +270: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: repeated Select All keeps the entire document selected +00:47 +271: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: Before. + +| H | +| --- | +| Body! | + +00:47 +272: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: | H | +| --- | +| Body! | + +After. + +00:48 +273: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag endpoints use the styled rendered coordinate system +00:48 +274: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag from a paragraph into a table copies and selects its cells +00:48 +275: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across table cells selects the existing complete-table document block +00:49 +276: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 460.0 +00:49 +277: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 460.0 +00:49 +278: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 460.0 +00:49 +279: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 460.0 +00:50 +280: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 460.0 +00:50 +281: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 460.0 +00:50 +282: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 1000.0 +00:51 +283: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 1000.0 +00:51 +284: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 1000.0 +00:51 +285: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 1000.0 +00:51 +286: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 1000.0 +00:52 +287: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 1000.0 +00:52 +288: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=2 +00:52 +289: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=10 +00:52 +290: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=11 +00:52 +291: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=2 +00:52 +292: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=10 +00:52 +293: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=11 +00:52 +294: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=2 +00:52 +295: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=10 +00:52 +296: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=11 +00:53 +297: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=2 +00:53 +298: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=10 +00:53 +299: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=11 +00:53 +300: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=2 +00:53 +301: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=10 +00:53 +302: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=11 +00:53 +303: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=2 +00:53 +304: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=14 +00:53 +305: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=15 +00:53 +306: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 3, 29) includes the final rendered character +00:53 +307: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (4, 0, 4, 36) includes the final rendered character +00:54 +308: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 4, 36) includes the final rendered character +00:54 +309: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 4, 4, 36) includes the final rendered character +00:54 +310: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 6, 9) includes the final rendered character +00:54 +311: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 0, 6, 93) includes the final rendered character +00:54 +312: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (5, 0, 5, 29) includes the final rendered character +00:54 +313: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: mouse range across paragraph, list, table and paragraph equals Select All +00:55 +314: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All, mouse and keyboard ranges produce equivalent local selection geometry +00:55 +315: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: local table cell selection stays local; subsequent Select All expands to document +00:56 +316: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table to following paragraph retains complete selected rows +00:56 +317: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: document selection survives viewport scrolling and block recreation +00:56 +318: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: selected table text follows horizontal cell scrolling +00:57 +319: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across a viewport jump resolves the visible extent block (variant: TargetPlatform.linux) +00:57 +320: loading /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart +01:00 +320: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video card embeds a supported YouTube source in place +01:01 +321: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: mini-player embeds Vimeo with the reduced video ID +01:01 +322: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: local video player receives only a canonical media path +01:01 +323: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video dimensions preserve ratio and scale to available width +01:01 +324: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: failed native player leaves a usable poster fallback +01:01 +325: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: WYSIWYG renders a Writerside video without rewriting source +01:01 +326: loading /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart +01:04 +326: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: uses the native grouped modal-editor structure +01:06 +327: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shared report form remains directional in an Arabic UI +01:06 +328: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: dark route uses the shared dialog surface +01:06 +329: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows required-field validation without sending +01:06 +330: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: rejects an invalid optional reply email +01:06 +331: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: category can return to the unselected placeholder +01:06 +332: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: disables submit while a request is active +01:07 +333: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: clears the form and shows the server reference on success +01:07 +334: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows a distinct message when the server rejects the form +01:07 +335: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: keeps retry UUID until submitted content changes +01:07 +336: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: cannot dismiss the dialog while submission is active +01:08 +337: loading /home/albert/busystack/busymark/test/src/headless_chrome_test.dart +01:08 +337: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: evaluates the requested document after it becomes ready +01:08 +338: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: does not evaluate the initial about:blank target +01:08 +339: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: retries when navigation destroys the execution context +01:08 +340: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a silent open DevTools socket respects the readiness bound +01:09 +341: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: socket closure before a response fails deterministically +01:09 +342: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a DevTools error is not mistaken for navigation +01:09 +343: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a page that never becomes ready reports its last state +01:09 +344: loading /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart +01:11 +344: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in untitledMarkdown +01:11 +345: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in singleMarkdown +01:11 +346: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in markdownFolder +01:11 +347: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in writersideModule +01:11 +348: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in nextcloudNotes +01:11 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (setUpAll) +01:11 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered Markdown topic wins over generic file inventory +01:11 +350: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered XML topic resolves as a Writerside XML topic +01:11 +351: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution ordinary Markdown under the project is still CommonMark +01:11 +352: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution path fallback does not depend on workspace file inventory +01:11 +353: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (tearDownAll) +01:11 +353: loading /home/albert/busystack/busymark/test/src/html_export_test.dart +01:13 +353: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsaved Markdown is a complete styled document with stable semantic anchors +01:14 +354: /home/albert/busystack/busymark/test/src/html_export_test.dart: raw disclosures, definitions and spans survive with structural sanitization +01:14 +355: /home/albert/busystack/busymark/test/src/html_export_test.dart: explicit blank lines export as consecutive HTML breaks +01:14 +356: /home/albert/busystack/busymark/test/src/html_export_test.dart: content-addressed assets relocate, deduplicate and reject symlink escapes +01:14 +357: /home/albert/busystack/busymark/test/src/html_export_test.dart: home-relative images use the shared local-media path rules +01:14 +358: /home/albert/busystack/busymark/test/src/html_export_test.dart: untrusted metadata and data URLs cannot create active HTML +01:14 +359: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsafe SVG and CSS never reach exported assets +01:14 +360: /home/albert/busystack/busymark/test/src/html_export_test.dart: overwrite refusal, cancellation and rendering failure preserve previous HTML +01:14 +361: /home/albert/busystack/busymark/test/src/html_export_test.dart: metadata title remains separate from a formatted Markdown title heading +01:14 +362: /home/albert/busystack/busymark/test/src/html_export_test.dart: UTF-8 byte limits are enforced +01:14 +363: /home/albert/busystack/busymark/test/src/html_export_test.dart: Writerside produces linked pages, hidden topics, WIP and start copy +01:15 +364: /home/albert/busystack/busymark/test/src/html_export_test.dart: official conformance fixture exports as individual pages +01:15 +365: loading /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart +01:18 +365: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside blockquotes become typed admonitions and round-trip +01:18 +366: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown blockquotes do not acquire Writerside semantics +01:18 +367: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: semantic admonition elements include quote and preserve attributes +01:18 +368: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: admonition editing emits source that reparses semantically +01:18 +369: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: editing inside an existing admonition changes its outer type +01:18 +370: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: WYSIWYG Admonition menu applies the selected type +01:19 +371: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown does not show the Writerside editing menu +01:19 +372: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside .topic preview keeps content inside its admonition +01:19 +373: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: PDF export keeps admonitions semantic and quotes neutral +01:19 +374: loading /home/albert/busystack/busymark/test/src/d2_renderer_test.dart +01:22 +374: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy rejects imports and icon assets with source locations +01:22 +375: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy does not treat comments, quoted labels, or block strings as imports +01:22 +376: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: returns normalized vector SVG for browser-independent output +01:22 +377: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes foreignObject output at PDF resolution +01:22 +378: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes browser CSS that cannot be preserved in vector form +01:22 +379: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: maps D2 diagnostics and renderer limits to typed results +01:22 +380: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: locates only executable files at deterministic bundle paths +01:22 +381: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: bundled D2 CLI renders stdin to stdout without a shell +01:22 +382: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart +01:24 +382: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +01:25 +383: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions +01:26 +384: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart +01:27 +384: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: display images do not reserve a fixed-height letterbox +01:27 +385: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: quotes and admonitions use the existing callout presentation +01:27 +386: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF export ignores redundant blank lines between blocks +01:28 +387: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF payload preserves an explicit blank line as two breaks +01:28 +388: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders two explicit breaks as one blank PDF line +01:29 +389: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders redundant blank lines identically +01:29 +390: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template exports representative Markdown to a valid PDF +01:29 +391: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside video poster and link compile into a valid PDF +01:29 +392: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside admonitions compile into a valid PDF +01:29 +393: loading /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart +01:31 +393: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: data tables remain tables, including borderless and single-column data +01:31 +394: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: nested layout wrappers retain their inner data table and prose +01:31 +395: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: explicit presentation table keeps caption, cell order and direction +01:31 +396: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor preserves content inside a layout table +01:31 +397: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor plain paste ignores layout and rich content +01:31 +398: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource preserves content inside a layout table +01:31 +399: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource plain paste ignores layout and rich content +01:31 +400: loading /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart +01:34 +400: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: selects all candidates by default and disables OK for none +01:36 +401: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: successful import closes the dialog with selected list order +01:36 +402: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: failed import stays open and presents the localized error +01:36 +403: loading /home/albert/busystack/busymark/test/src/html_publication_test.dart +01:38 +403: /home/albert/busystack/busymark/test/src/html_publication_test.dart: single-file local video has a downloadable fallback +01:41 +404: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list starts and same-type boundaries survive HTML export +01:41 +405: /home/albert/busystack/busymark/test/src/html_publication_test.dart: repeated list includes export as separate HTML containers +01:41 +406: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list styles stay distinct across consecutive lists +01:42 +407: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside shares HTML appearance without changing TOC status or source +01:42 +408: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside module origins preserve includes, variables, file identity and nullable links +01:42 +409: /home/albert/busystack/busymark/test/src/html_publication_test.dart: definition lists preserve individual disclosure states and IDs +01:42 +410: /home/albert/busystack/busymark/test/src/html_publication_test.dart: web filename and index collisions identify both topics before publication +01:42 +411: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside publication uses canonical effective web filenames +01:42 +412: /home/albert/busystack/busymark/test/src/html_publication_test.dart: source and media are captured before progress or later editor changes +01:42 +413: /home/albert/busystack/busymark/test/src/html_publication_test.dart: publication failure retains previous HTML and referenced immutable assets +01:43 +414: /home/albert/busystack/busymark/test/src/html_publication_test.dart: duplicate explicit IDs warn, non-Latin footnotes and document IDs resolve +01:43 +415: loading /home/albert/busystack/busymark/test/src/spelling_service_test.dart +01:44 +415: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document kinds expose one authoritative spelling capability +01:44 +416: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: effective spelling language preserves document and project order +01:44 +417: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: session identity changes when a stable buffer is saved to a path +01:44 +418: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: downloaded dictionaries use revision-shared Snap storage +01:44 +419: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: first save and Save As republish source routing immediately +01:46 +420: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rereads and merges independent external changes +01:46 +421: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words coordinates writers in independent application processes +01:48 +422: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external edit injected after staging +01:48 +423: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external replacement after the atomic exchange +01:49 +424: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves a newer destination and the rejected displaced version +01:49 +425: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves case while merging canonical Unicode equivalents +01:49 +426: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rebuilds untrusted stored keys from validated display values +01:49 +427: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words case-distinct words survive restart into the native worker +01:49 +428: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words malformed storage is reported instead of overwritten +01:49 +429: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: staging validation accepts numeric header revisions and count drift +01:49 +430: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: dictionary import publishes a complete pair only after validation +01:49 +431: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation installs only one shared resource and reuses it by locale +01:49 +432: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation and checksum failure leave no installation +01:49 +433: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation observes the atomic publication commit point +01:49 +434: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale invalid record cannot remove a repaired installation +01:49 +435: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale valid descriptor cannot remove a replacement in another process +01:50 +436: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation catalog waits through a replacement publication gap +01:50 +437: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a late no-replace publisher cannot replace a completed installation +01:50 +438: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation independent process observes the published no-replace destination +01:51 +439: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation stalled response times out, cancels, and permits retry +01:51 +440: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation asynchronous output sink errors fail the receiver without zone leaks +01:51 +441: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed replacement cannot damage a working installation +01:51 +442: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed controller download exposes a working retry +01:51 +443: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller reserves an installation before coordinator startup +01:51 +444: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller releases installation ownership after setup failure +01:51 +445: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller cancellation remains with the reserved startup operation +01:51 +446: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: aliased imports remain selectable across collision, restart, and removal +01:52 +447: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: same-resource import collision is rejected before publication +01:52 +448: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an import does not impersonate the downloadable resource row +01:52 +449: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid imported installation is removable by exact record +01:52 +450: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid downloaded installation repairs through settings API +01:52 +451: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once keeps its authored anchor across editor modes +01:52 +452: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: source hit testing excludes formatting and link destination gaps +01:52 +453: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once follows one transaction across edit, undo, redo, and tabs +01:52 +454: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document ignores survive tab changes but not an actual close +01:52 +455: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed suggestion cannot revive after language changes +01:52 +456: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a manual request waits for its own result while a check runs +01:52 +457: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: checks in bounded batches and reuses unchanged run results +01:52 +458: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: cached runs cover the complete checked text across edits +01:52 +459: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a NUL suffix cannot complete checking and recovers after correction +01:52 +460: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project initialization publishes only the latest owner +01:53 +461: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older same-project Settings read cannot undo a newer snapshot +01:53 +462: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older project watcher read cannot undo Settings publication +01:53 +463: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project read begun during a mutation cannot undo its result +01:53 +464: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project conflict read preserves newer state and error +01:53 +465: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project watcher error cannot replace valid state +01:54 +466: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project watcher recovers after identical dictionary repair +01:54 +467: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project repair recovers a later failed preparation at latest revision +01:55 +468: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project reread does not clear an unrelated personal read failure +01:56 +469: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: failed personal initialization retries after repair and shares first load +01:56 +470: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: explicit checks and Settings refresh external personal words +01:56 +471: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: late personal refresh cannot undo a newer local mutation +01:56 +472: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: refresh begun during a personal mutation cannot undo its result +01:56 +473: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an older personal refresh cannot replace a newer publication +01:56 +474: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a superseded conflict read cannot replace a newer personal refresh +01:56 +475: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Settings holds a failed preparation until deliberate retry +01:58 +476: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm no-workspace Settings refreshes personal words once +01:59 +477: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm Settings observes an external dictionary removal once +01:59 +478: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: leaving Settings during preparation ignores its late completion +02:00 +479: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent first requests start exactly one worker +02:00 +480: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a project-word mutation cannot publish into a later project +02:01 +481: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: new input hides old results before preparation can fail +02:01 +482: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: external project-word edits refresh an open document +02:03 +483: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review dialog keeps one traversal through skip, back, correction, and persistence +02:06 +484: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review word-store conflict stays current and exposes preserved recovery path +02:07 +485: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: equivalent rebuild does not cancel session initialization +02:07 +486: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic session checks after an unresolved language is selected +02:07 +487: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an available but absent dictionary is not downloaded implicitly +02:07 +488: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: removing a downloaded pair keeps words and reports not installed +02:08 +489: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance refreshes external installation at explicit boundaries +02:08 +490: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance replaces an active imported dictionary fingerprint +02:08 +491: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent warm catalog preparations share one owned read +02:08 +492: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed catalog read cannot undo a local installation +02:08 +493: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a failed warm catalog refresh remains retryable +02:08 +494: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic checking rereads inventory after dictionary load fails +02:08 +495: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker catalog validation requires its resource-specific probe +02:08 +496: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projects source and rich snapshots through reusable messages +02:08 +497: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incrementally reuses unaffected plain Markdown runs +02:08 +498: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incremental Markdown projection agrees with a fresh structural parse +02:08 +499: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projection cache rebinds source targets after Save As +02:08 +500: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker project custom words do not leak between contexts +02:08 +501: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quoted corrections retain straight and curly punctuation +02:08 +502: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives projection and worker barriers +02:08 +503: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives a bounded worker chunk +02:09 +504: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker removing a custom exception does not forbid a base word +02:09 +505: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker prose around 64 KiB is checked across bounded chunks +02:09 +506: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker isolates encoding and oversized-token failures +02:09 +507: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker normal, large, and superseded checks stay bounded +spelling benchmark: normal=4ms large/latest=136ms suggestion=0ms +02:09 +508: loading /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart +02:11 +508: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: rapid navigation applies only monotonic complete configurations +02:11 +509: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: a new Dart session can restart native revisions from one +02:11 +510: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal depth is an atomic overlay on the latest page state +02:11 +511: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal barrier is retained before the first page publishes +02:11 +512: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: older runners fall back once to the ordered legacy protocol +02:11 +513: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: failed atomic apply keeps the last success and retries the same desired state +02:11 +514: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: theme map contains the native semantic visual roles +02:11 +515: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: native header labels expose only application-menu commands +02:11 +516: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart +02:11 +516: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces +02:13 +517: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark +02:13 +518: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync +02:13 +519: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces +02:13 +520: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog +02:14 +521: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present +02:14 +522: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging +02:14 +523: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface +02:14 +524: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body +02:14 +525: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters +02:14 +526: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components +02:14 +527: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers +02:14 +528: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface +02:14 +529: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry +02:14 +530: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary +02:14 +531: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer +02:14 +532: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting +02:14 +533: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI +02:14 +534: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text +02:14 +535: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration +02:14 +536: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR +02:14 +537: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface +02:14 +538: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography +02:14 +539: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style +02:14 +540: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives +02:14 +541: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries +02:14 +542: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind +02:14 +543: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces +02:14 +544: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu +02:14 +545: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback +02:14 +546: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup +02:15 +547: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel +02:15 +548: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter +02:15 +549: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu +02:15 +550: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor +02:15 +551: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors +02:15 +552: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation +02:15 +553: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row +02:15 +554: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model +02:15 +555: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row +02:15 +556: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation +02:15 +557: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span +02:15 +558: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout +02:15 +559: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts +02:15 +560: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls +02:15 +561: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds +02:15 +562: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog +02:15 +563: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release +02:15 +564: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome +02:15 +565: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart +02:16 +565: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings +02:16 +566: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded +02:16 +567: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales +02:16 +568: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale +02:16 +569: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes +02:16 +570: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs +02:16 +571: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders +02:17 +572: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct +02:17 +573: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed +02:17 +574: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys +02:17 +575: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale +02:17 +576: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose +02:17 +577: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches +02:17 +578: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form +02:17 +579: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural +02:17 +580: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology +02:17 +581: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations +02:17 +582: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits +02:17 +583: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English +02:17 +584: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog +02:17 +585: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args +02:17 +586: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart +02:22 +586: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks pasted rich content completely in both editors +02:25 +587: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: packaged catalog opens real regional and non-Latin dictionaries +Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff +02:32 +588: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks the general Markdown fixture completely +02:35 +589: loading /home/albert/busystack/busymark/test/src/command_registry_test.dart +02:36 +589: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog includes every editor command with an executable callback +02:36 +590: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog exposes stable unique IDs for all migrated shortcuts +02:36 +591: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects duplicate command IDs +02:36 +592: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects shortcut conflicts in the same command scope +02:36 +593: /home/albert/busystack/busymark/test/src/command_registry_test.dart: allows the same shortcut in distinct focus scopes +02:36 +594: /home/albert/busystack/busymark/test/src/command_registry_test.dart: executes only visible enabled bound commands +02:36 +595: /home/albert/busystack/busymark/test/src/command_registry_test.dart: contextual commands execute against the captured editor +02:36 +596: loading /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart +02:37 +596: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: Linux packages secure AI credential storage consistently +02:38 +597: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: real local AI qualification covers every shipped action +02:38 +598: loading /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart +02:39 +598: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: source line bounds treat offsets as insertion positions +02:39 +599: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: table cell spans respect meaningful outer pipes and escaping +02:39 +600: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: escaped terminal pipes remain in the final cell source span +02:39 +601: loading /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart +02:40 +601: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide preview fits identically through D2 and WebKit renderers +02:40 +602: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide PDF fits identically through D2 and WebKit renderers +02:40 +603: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: area-constrained PDF fits identically through D2 and WebKit renderers +02:40 +604: loading /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart +02:44 +604: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: real installed catalog has six default families and 22 bundled TGDP topics +02:45 +605: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: literal substitution is simultaneous, case-sensitive, XML-only escaped +02:45 +606: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save source matches installed first-match substring behavior +02:45 +607: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: TGDP brace escaping preserves attribute blocks and rewrites relative links +02:45 +608: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save, unique naming, restart, cancellation snapshot and stale edit rejection +02:45 +609: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: concurrent saves serialize without losing templates +02:45 +610: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: true) +02:45 +611: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: false) +02:45 +612: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: corrupt and symbolic-link stores are never replaced +02:45 +613: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: builtin overrides persist independently and reset reveals original source +02:45 +614: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: template bytes are published in the guarded creation transaction and rolled back on conflict +02:45 +615: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: invalid XML templates and colliding root IDs never publish a topic or TOC edit +02:45 +616: loading /home/albert/busystack/busymark/test/src/writerside_test.dart +02:46 +616: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses writerside.cfg directories and registered instances +02:46 +617: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented full writerside.cfg metadata +02:46 +618: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented config defaults +02:46 +619: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses attribute defaults for present config elements +02:46 +620: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented topic title overrides and web file names +02:46 +621: /home/albert/busystack/busymark/test/src/writerside_test.dart: Markdown web filename metadata ignores literal examples +02:46 +622: /home/albert/busystack/busymark/test/src/writerside_test.dart: XML topic metadata is scoped to direct topic children +02:46 +623: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses .tree metadata and TOC hierarchy +02:46 +624: /home/albert/busystack/busymark/test/src/writerside_test.dart: Writerside topic XML exposes semantic math to the shared preview +02:46 +625: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads basic Writerside project with topics and no missing topic diagnostics +02:46 +626: /home/albert/busystack/busymark/test/src/writerside_test.dart: does not parse a Writerside config above the byte limit +02:46 +627: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects configured paths outside the module root +02:46 +628: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a configured topic root reached through a symlink +02:46 +629: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a Writerside config file reached through a symlink +02:46 +630: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads project.ihp as an equivalent Writerside config file +02:46 +631: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads topics from multiple configured topic roots +02:46 +632: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves exact topic reference before basename fallback +02:46 +633: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports duplicate topic IDs in a help module +02:46 +634: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename fallback after exact matching misses +02:46 +635: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves Markdown links across configured topic roots +02:46 +636: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename topic references deterministically +02:46 +637: /home/albert/busystack/busymark/test/src/writerside_test.dart: broken Writerside project produces deterministic diagnostics +02:47 +638: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves basename images in nested Writerside image directories +02:47 +639: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves local images from secondary configured image roots +02:47 +640: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses the documented instance tree elements and attributes +02:47 +641: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects redirect-source attributes on empty TOC groups +02:47 +642: /home/albert/busystack/busymark/test/src/writerside_test.dart: module service retains empty-group redirect-source diagnostics +02:47 +643: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves registered TOC libraries, filters, groups, and cross-instance refs +02:47 +644: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports circular reusable tree includes without recursing +02:47 +645: /home/albert/busystack/busymark/test/src/writerside_test.dart: included content still requires a regular instance home page +02:47 +646: /home/albert/busystack/busymark/test/src/writerside_test.dart: ignores status-specific values for general instance settings +02:47 +647: /home/albert/busystack/busymark/test/src/writerside_test.dart: conformance fixture is a valid openable Writerside module +02:47 +648: loading /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart +02:48 +648: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: narrow title stays centered between the controls when resized +02:49 +649: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.rtl +02:50 +650: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.ltr +02:50 +651: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.rtl +02:50 +652: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.ltr +02:50 +653: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.dark seam paints the same subtle color across header and body +02:50 +654: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.light seam paints the same subtle color across header and body +02:50 +655: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: one viewport owns the full-height sidebar edge at every frame +02:50 +656: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: unrelated rebuild preserves partial progress and body state +02:50 +657: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: breakpoint settlement is immediate and retained state survives +02:50 +658: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: RTL and fractional device pixels share one snapped edge +02:50 +659: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: divider follows the snapped physical viewport while opening and closing +02:50 +660: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: animation setting settles a running reveal to its logical target +02:50 +661: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header receives only the presented system-control obstruction +02:50 +662: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: frame is the single owner of the full-height sidebar seam +02:50 +663: loading /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart +02:51 +663: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: tree-to-editor sync opens selected topic even with a .tree editor active +02:55 +664: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: editor-to-TOC sync resolves qualified identities and chooses breadth-first occurrence +02:58 +665: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: live removal dialog uses documented confirmation, redirect label and usage count +03:01 +666: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: New Topic surfaces expose local Markdown import only at root/sibling +03:02 +667: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty MD Topic creates an editable document when Reading mode is active, preserving other tabs +03:05 +668: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty XML Topic creates an editable document when Reading mode is active, preserving other tabs +03:08 +669: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Topic from Template... creates an editable document when Reading mode is active, preserving other tabs +03:11 +670: loading /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart +03:11 +670: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: header Escape preserves the query for the next search +03:12 +671: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: search fallback uses the normal Yaru-themed entry geometry +03:12 +672: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: focus request targets the themed text entry +03:12 +673: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: Escape clears the query and closes the owner +03:12 +674: loading /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart +03:14 +674: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: row titles, markers and included source identity use selected context +03:15 +675: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking retains source bytes and rejects a now-present candidate +03:15 +676: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: home reassignment preserves other instances and unrelated attributes +03:15 +677: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty instance +03:15 +678: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: groups only +03:15 +679: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing home +03:15 +680: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: library +03:15 +681: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty group insertion +03:16 +682: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing nested topic +03:16 +683: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: first linked topic and home assignment share the same publication guard +03:16 +684: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: title transaction rolls back both files on a concurrent dirty-buffer guard +03:16 +685: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: XML duplicate copies source, changes only root ID, adds basic sibling +03:16 +686: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: sort revalidates title dependencies before publishing the tree +03:16 +687: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: safe deletion rechecks dirty-buffer guard and rolls back earlier edits +03:16 +688: loading /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart +03:17 +688: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: repeated list includes restart numbering in the final PDF +03:19 +689: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF keeps alphabetic starts, separate decimal lists and procedure numbering +03:19 +690: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (unknown) +03:19 +691: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (shared-pdf) +03:19 +692: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=false +03:19 +693: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=true +03:19 +694: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=true) +03:19 +695: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=false) +03:20 +696: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: bundled Typst compiles semantic tables, anchors and glossary footnotes +03:20 +697: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF retains nested chapter bodies and resolves unique internal destinations +03:20 +698: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic links retain their PDF destinations +03:20 +699: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic blank lines remain explicit in Writerside PDF +03:20 +700: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native export composes the selected instance without a container runtime +03:20 +701: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: hidden topics remain content and toc-title stays navigation-only +03:20 +702: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: referenced diagrams keep resolved source and all tab panels reach PDF +03:20 +703: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: pre-cancelled native export never starts PDF compilation +03:20 +704: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unknown Writerside instance is rejected before compilation +03:20 +705: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: resolution errors prevent PDF compilation +03:20 +706: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation errors prevent PDF compilation +03:20 +707: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation warnings are returned to the caller +03:20 +708: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: nonfatal resolution diagnostics are returned as PDF warnings +03:20 +709: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native exporter failures use Writerside failure codes +03:20 +710: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native Writerside fixture compiles end to end with bundled Typst +03:20 +711: loading /home/albert/busystack/busymark/test/src/clipboard_history_test.dart +03:21 +711: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains newest first, deduplicates, removes, clears, and evicts by count +03:21 +712: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: accounts byte budget and rejects an oversized item without truncation +03:21 +713: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: collection off leaves existing entries and blocks new retention +03:21 +714: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external clipboard remains transient until explicitly retained +03:21 +715: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external HTML keeps its rich and interoperable text representations +03:21 +716: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current HTML-only clipboard is eligible without internal ownership +03:21 +717: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current source-only clipboard does not invent plain text +03:21 +718: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal visible text with different structure stays distinct +03:21 +719: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal relative markup from different origins stays distinct +03:21 +720: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains whitespace-only text and owns image bytes immutably +03:21 +721: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: a new provider session starts with no retained history +03:21 +722: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: insertion registry follows latest target and never retains disposed targets +03:21 +723: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: unknown token cannot recover rich data through equal plain text +03:21 +724: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: rich ownership is byte bounded and shares equivalent media +03:21 +725: loading /home/albert/busystack/busymark/test/src/ai_reliability_test.dart +03:24 +725: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator honors Retry-After and caps retry attempts +03:24 +726: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator never retries after partial output +03:24 +727: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator bounds all retries by one total deadline +03:24 +728: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: global permit pool limits requests across different targets +03:24 +729: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: request-id cancellation cannot cancel a newer request for the target +03:24 +730: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: model fallback stays inside the explicitly selected provider +03:24 +731: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Ollama uses an absolute deadline even while bytes keep arriving +03:24 +732: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: cancellation interrupts the preliminary Ollama model request +03:24 +733: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Retry-After supports seconds and HTTP dates without negatives +03:24 +734: loading /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart +03:27 +734: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: partially formatted URL source offsets and text atoms survive save and edit +03:28 +735: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: URL punctuation beside surrounding formatting retains literal and style boundaries +03:29 +736: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: surrounding formatting commits the same URL editing semantics as reopening +03:29 +737: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL trailing literal punctuation survives serialization and reparse +03:29 +738: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: © +03:29 +739: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: & +03:29 +740: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: &* +03:29 +741: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: © +03:29 +742: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: & +03:29 +743: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: &* +03:29 +744: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.commonMark +03:29 +745: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.writersideMarkdown +03:29 +746: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: descendant whitespace preservation prevents ancestor trimming +03:29 +747: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: ordinary and metadata inline emission are byte-identical +03:29 +748: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL offsets and text atoms stay exact through Enter, edit and save/reparse +03:29 +749: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare leaf links use raw URL positions and explicit equal-label links retain delimiters +03:29 +750: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: grouped breaks retain distinct source provenance in one traversal +03:29 +751: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: text-leaf atoms use interior spans and exclude delimiters +03:29 +752: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: table escaping translates leaf spans without changing source +03:29 +753: loading /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart +03:30 +753: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: semantic catalog uses the exact native GTK icon names +03:30 +754: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: initial load batches direction variants and preserves candidate order +03:30 +755: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: explicit Back role survives atomic theme and scale catalog replacement +03:30 +756: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart +03:32 +756: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +03:33 +757: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback +03:33 +758: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +03:33 +759: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error +03:33 +760: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token +03:33 +761: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails +03:33 +762: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache +03:34 +763: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox +03:34 +764: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret +03:34 +765: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry +03:34 +766: loading /home/albert/busystack/busymark/test/src/feedback_service_test.dart +03:35 +766: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: posts the serialized request and returns the server reference +03:35 +767: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps connection failures +03:35 +768: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps response timeouts +03:35 +769: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 429 and preserves Retry-After +03:35 +770: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 400 and 422 to rejected request failures +03:35 +771: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps server and malformed-response failures to server errors +03:35 +772: loading /home/albert/busystack/busymark/test/src/app_settings_test.dart +03:37 +772: /home/albert/busystack/busymark/test/src/app_settings_test.dart: hydration and redundant sidebar requests do not count as user transitions +03:37 +773: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior defaults protect unsaved changes +03:37 +774: /home/albert/busystack/busymark/test/src/app_settings_test.dart: reopen workspace setting is migration-safe +03:37 +775: /home/albert/busystack/busymark/test/src/app_settings_test.dart: document view mode defaults to editor +03:37 +776: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save defaults to enabled +03:37 +777: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings have bounded privacy-preserving defaults +03:37 +778: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings validate persisted ranges and absolute exclusions +03:37 +779: /home/albert/busystack/busymark/test/src/app_settings_test.dart: AI defaults disabled and provider settings never persist secrets +03:37 +780: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction defaults to horizontal +03:37 +781: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction round-trips through settings JSON +03:37 +782: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote images default to blocked +03:37 +783: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspaces default to untrusted +03:37 +784: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy preview visibility migrates to source mode when hidden +03:37 +785: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language defaults to system locale +03:37 +786: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language override persists as locale tag +03:37 +787: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy Norwegian locale tag migrates to Bokmal +03:37 +788: /home/albert/busystack/busymark/test/src/app_settings_test.dart: supported script variants canonicalize to the available catalog +03:37 +789: /home/albert/busystack/busymark/test/src/app_settings_test.dart: regional variants canonicalize and unsupported tags are discarded +03:37 +790: /home/albert/busystack/busymark/test/src/app_settings_test.dart: unused product settings are not persisted +03:37 +791: /home/albert/busystack/busymark/test/src/app_settings_test.dart: file settings store keeps the live JSON intact until publication +03:39 +792: /home/albert/busystack/busymark/test/src/app_settings_test.dart: failed settings publication preserves the previous valid JSON +03:39 +793: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior settings persist +03:39 +794: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save setting persists +03:39 +795: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction setting persists +03:39 +796: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Writerside instance selection and icon color persist across renames +03:39 +797: /home/albert/busystack/busymark/test/src/app_settings_test.dart: initial load preserves user actions made before it completes +03:39 +798: /home/albert/busystack/busymark/test/src/app_settings_test.dart: removing a recent workspace persists without affecting files +03:39 +799: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote image permissions persist globally and per workspace +03:39 +800: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust persists, normalizes, and can be cleared +03:39 +801: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust follows the canonical workspace identity +03:39 +802: /home/albert/busystack/busymark/test/src/app_settings_test.dart: stored Git trust does not follow a replaced canonical path +03:39 +803: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git trust preserves leading and trailing path whitespace +03:39 +804: loading /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart +03:40 +804: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: different live prose still reports incomplete instead of guessed mapping +03:40 +805: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: general Markdown fixture has complete Source and rich spelling mappings +03:41 +806: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: live HTML paste preserves prose and maps spelling before a reload +03:41 +807: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: pasted job maps tables, trailing HTML breaks and address barriers +03:41 +808: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: closing hashes are heading syntax only in an ATX heading +03:41 +809: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal unresolved and invalid apparent links checkable +03:41 +810: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection resolves only parser-recognized links and images across revisions +03:41 +811: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal trailing braces in paragraph and heading prose +03:41 +812: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection binds recognized images to their exact source occurrence +03:41 +813: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection orders formatting from image labels and surrounding body +03:41 +814: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognizes nested syntax inside exact image descriptions +03:41 +815: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes only trailing attributes recognized by the current mode +03:41 +816: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata does not split a surrounding Markdown word +03:41 +817: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection corrects a Markdown body word across independent metadata +03:41 +818: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps repeated and formatted prose without searching globally +03:41 +819: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps entities, escapes, links, and table cells source exact +03:41 +820: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps CRLF and repeated occurrence targets exact +03:41 +821: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses barriers around excluded authored syntax +03:41 +822: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes a fenced code block nested in a block quote +03:41 +823: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps quoted list fences across blank continuations +03:41 +824: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection counts tab columns in list fence continuations +03:41 +825: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps unmatched delimiters and removes only parsed formatting +03:41 +826: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps quoted HTML attribute values from quote boundaries +03:41 +827: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection preserves semantic HTML boundaries and multiline exclusions +03:41 +828: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps comparison prose and scans multiline HTML tags exactly +03:41 +829: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps escaped multiline tag-like prose checkable +03:41 +830: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection removes delimiters when a correction empties formatting +03:41 +831: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses parser-compatible percentages escapes and code spans +03:41 +832: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection retains complete formatting ancestors across opaque children +03:41 +833: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection validates formatting gaps in regional coordinates +03:41 +834: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection accepts canonically equivalent mapped replacement text +03:41 +835: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link titles use exact quote boundaries before trailing whitespace +03:41 +836: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized link and image titles use their authored boundaries +03:41 +837: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection destination-only links and images do not expose a false title +03:41 +838: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized multiline links consume one mapped occurrence +03:41 +839: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline link labels keep container prefixes out of prose +03:41 +840: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline mapped labels agree with rich prose and corrections +03:41 +841: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection inline HTML breaks in link labels agree with rich prose +03:41 +842: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection code-styled image alternative text agrees with rich image field +03:41 +843: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code and Markdown hard breaks retain image alt semantics +03:41 +844: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code hard-break corrections retain authored source +03:41 +845: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: list +03:41 +846: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: quote +03:41 +847: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: crlf-after-content +03:41 +848: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: combined-quote-list +03:41 +849: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: nested-image +03:42 +850: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-inner-spaces +03:42 +851: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-continuation-space +03:42 +852: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: literal-code-syntax +03:42 +853: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested image code inherits the enclosing container mapping +03:42 +854: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link title keeps literal inline-break markup as scalar text +03:42 +855: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline code inside a link label stays opaque +03:42 +856: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline nested-image destination stays outside outer prose +03:42 +857: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested label syntax owns its breaks before outer prose resumes +03:42 +858: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata scalar tag-like text remains checkable +03:42 +859: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection parenthesized title replacement escapes its own delimiter +03:42 +860: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection semantic leaf blocks define independent complete prose runs +03:42 +861: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection projects semantic HTML prose and trusts parser math nodes +03:42 +862: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection large formatting-heavy projection and correction stay bounded +03:42 +863: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps inline body words intact across readable attributes +03:42 +864: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection corrects XML body and encoded metadata independently +03:42 +865: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes visible addresses in encoded text and CDATA +03:42 +866: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps text, entities, CDATA, and positive attributes +03:42 +867: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection reports malformed XML as incomplete without guessed targets +03:42 +868: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection clips CDATA occurrences while preserving repeated surrounding text +03:42 +869: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps line breaks, excludes variables, and includes controls +03:42 +870: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes entity-encoded variables after XML decoding +03:42 +871: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps decomposed Unicode in XML and CDATA corrections +03:42 +872: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction nested image descriptions retain recursive spelling policy +03:42 +873: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed rich correction preserves images beside math +03:42 +874: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed table image and math correction preserves cell source +03:42 +875: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction neighboring prose in a math image field keeps exact source +03:42 +876: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image ownership continues across ordinary and math fields +03:42 +877: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image description spelling agrees across source and rich fields +03:42 +878: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich image spelling changes only the mapped source word +03:42 +879: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction container image code corrects after continuation in rich editor +03:42 +880: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction code-styled image alternative corrects through rich controller +03:42 +881: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image code punctuation correction retains literal code meaning +03:42 +882: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction multiline link label correction uses rich controller mapping +03:42 +883: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: # Introduction + +- [Overview](#overview) + - [Motivation](#motivation) +- [Discussion](#discussion) + + +## Overview + +helo **world** + +helo world + +03:42 +884: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - helo + - helo + +helo + +03:42 +885: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: + +helo + +03:42 +886: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction escaped comment prose is still an editable rich spelling field +03:42 +887: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps hard breaks by structural field identity +03:42 +888: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction removes a rich formatting container emptied by deletion +03:42 +889: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction retains current source anchors and source-only title targets +03:42 +890: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich links keep all title delimiters source-only +03:42 +891: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves formatting ownership across leaves +03:42 +892: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction keeps trailing formatting on its original leaf +03:42 +893: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves link destination and table structure +03:42 +894: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps and corrects a table-cell field containing inline math +03:42 +895: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects transformed prose in table math source fields +03:42 +896: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects formatted and encoded prose in math source fields +03:42 +897: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction owns every nested wrapper in paragraph math-source fields +03:42 +898: loading /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart +03:44 +898: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: validates availability, finite normalized RGB and payload shape +03:44 +899: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: attaches before snapshot and rejects a superseded snapshot +03:44 +900: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: replays current value, deduplicates and safely resubscribes +03:44 +901: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: missing channels are unavailable and cancellable +03:44 +902: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while snapshot is pending discards its result +03:44 +903: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: silent channels expire locally and unsuperseded late snapshot recovers +03:44 +904: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: new unavailable event invalidates older read and deadline +03:44 +905: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while both native calls pending rejects late errors +03:44 +906: loading /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart +03:45 +906: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project scaffold and loads without diagnostics +03:47 +907: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: derives the starter topic filename from its title +03:47 +908: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project with Unicode directory and instance ID +03:47 +909: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: escapes XML-sensitive project names in writerside.cfg +03:47 +910: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: sanitizes start topic title as plain Markdown heading text +03:47 +911: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects existing non-empty target directory and does not overwrite files +03:47 +912: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects an existing project target symlink without writing through it +03:47 +913: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: canonicalizes a project parent selected through a symlink +03:47 +914: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects unsafe create request names before writing files +03:47 +915: loading /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart +03:48 +915: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: cover edits survive toggling and format changes, validate, reset, and do not leak through preferences +03:51 +916: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: instance changes refresh automatic fields without replacing edited or cleared text +03:52 +917: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: settings without a document show only the reusable cover preference +03:52 +918: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Markdown forwards current defaults and export-owned text +03:53 +919: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Writerside forwards current defaults and export-owned text +03:54 +920: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Markdown forwards current defaults and export-owned text +03:54 +921: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Writerside forwards current defaults and export-owned text +03:55 +922: loading /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart +03:55 +922: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: README screenshot references resolve to checked-in images +03:56 +923: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: release metadata is consistent and production-grade +03:56 +924: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: web engines are exact, checksummed, licensed, and installed offline +03:56 +925: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: D2 is checksum pinned for amd64 and installed with notices +03:56 +926: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: Linux CI builds and exercises the bundled visualization stack +03:56 +927: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: only offscreen WebKit views disable hardware compositing +03:56 +928: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: WebKit host and harness disable persistence and external resources +03:56 +929: loading /home/albert/busystack/busymark/test/src/workspace_safety_test.dart +03:59 +929: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes dialog aborts destructive navigation on cancel +04:00 +930: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discarding unsaved changes prevents repeated prompts +04:00 +931: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: destructive dialog buttons stay readable on dark controls +04:00 +932: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes Discard action renders white in the dark dialog +04:00 +933: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overwrite confirmation stays pinned to the document being saved +04:00 +934: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overlapping manual saves write the newer requested revision +04:00 +935: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: save completes for its buffer when the active document changes +04:00 +936: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As stays pinned while the file picker is open +04:00 +937: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancel does not overwrite an existing normalized markdown path +04:00 +938: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As overwrites an existing normalized markdown path only after confirmation +04:00 +939: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancels when the document changes during path lookup +04:00 +940: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discard confirmation cannot discard a newly active document +04:00 +941: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: workspace continuation resolves inactive dirty documents too +04:00 +942: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can save it while another stays dirty +04:00 +943: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can discard it while another stays dirty +04:01 +944: loading /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart +04:01 +944: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar update retries native channel initialization after early miss +04:01 +945: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar forwards text direction updates +04:01 +946: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar action events preserve repeated identical clicks +04:01 +947: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: native search events and focus request keep semantic meaning +04:01 +948: loading /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart +04:06 +948: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source pastes a web layout table as a complete document +04:07 +949: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (current) +04:09 +950: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (find next) +04:10 +951: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (current) +04:10 +952: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (find next) +04:10 +953: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3 matches +04:11 +954: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3000 matches +04:12 +955: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search navigation retains a later window when unfolding +04:12 +956: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling review caret uses full offsets after an earlier fold +04:12 +957: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling reveal unfolds and retains the word selection +04:12 +958: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Markdown spelling painter ignores selection and tracks composition +04:12 +959: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Writerside Markdown spelling painter ignores selection and tracks composition +04:12 +960: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source XML spelling painter ignores selection and tracks composition +04:13 +961: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI action applies a selection through the editor path +04:13 +962: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu targets the pointer occurrence exactly +04:13 +963: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling language uses a checked native submenu without a dialog +04:13 +964: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu converts folded offsets to full source +04:13 +965: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI applies a user-selected insertion target +04:13 +966: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor remains LTR inside an Arabic interface +04:13 +967: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor shows large-file fallback status +04:34 +968: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor renders visible diagnostic gutter tooltip +04:34 +969: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search localizes an invalid regular expression +04:35 +970: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search reports no current match before navigation +04:35 +971: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source fold and search options use semantic icon buttons +04:35 +972: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace All is one editor operation +04:35 +973: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace and Find Next selects the logical next match +04:35 +974: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: shifted folded regions are persisted after edit debounce +04:35 +975: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source sessions ignore render notifications and coalesce scrolling +04:36 +976: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor gives glyphs, caret, and selection breathing room +04:36 +977: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading selections cover styled glyphs evenly +04:36 +978: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading caret advances after a typed space +04:36 +979: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source caret follows an immediate end-of-file contraction +04:36 +980: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Tab indents selected Source lines without replacing text +04:36 +981: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source symbol shortcuts dispatch the full source caret +04:36 +982: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Ctrl+Space opens project-aware source completion +04:36 +983: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: wordWrap false uses one horizontally scrollable layout +04:36 +984: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source input preserves an active IME composing range +04:36 +985: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Enter to the input method +04:36 +986: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Tab to the input method +04:36 +987: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers autocomplete Escape to the input method +04:36 +988: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers the autocomplete shortcut +04:37 +989: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: focused Source accepts authoritative parent text updates +04:37 +990: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source keyboard copy retains exact whitespace once +04:37 +991: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source normal HTML paste converts while plain paste uses text +04:37 +992: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source CRLF structured paste is one exact undo transaction +04:37 +993: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source plain paste keeps LF bytes in a CRLF document +04:37 +994: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste keeps surrounding text inline +04:37 +995: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured block paste adds Markdown boundaries +04:37 +996: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks keep boundaries at every position + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#f72f5(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#9a58d, undoController: UndoHistoryController#bf26d(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a0485(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#0a492]], state: _TextFieldState#bc8b8), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#e15b3 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#fe596@Offset(425.5, 300.0), RenderSemanticsAnnotations#ba7de@Offset(425.5, 300.0), RenderPointerListener#05f16@Offset(425.5, 300.0), RenderSemanticsGestureHandler#4f69a@Offset(425.5, 300.0), RenderExcludeSemantics#9e2cc@Offset(425.5, 300.0), RenderBlockSemantics#050a8@Offset(425.5, 300.0), RenderIgnorePointer#44f8a@Offset(425.5, 300.0), RenderSemanticsAnnotations#ccd13@Offset(425.5, 300.0), _RenderTheater#43232@Offset(425.5, 300.0), RenderAbsorbPointer#99813@Offset(425.5, 300.0), RenderPointerListener#3dee9@Offset(425.5, 300.0), RenderSemanticsAnnotations#56f4a@Offset(425.5, 300.0), RenderCustomPaint#39aa8@Offset(425.5, 300.0), RenderSemanticsAnnotations#10b3b@Offset(425.5, 300.0), RenderSemanticsAnnotations#161b2@Offset(425.5, 300.0), RenderSemanticsAnnotations#1d6f1@Offset(425.5, 300.0), RenderTapRegionSurface#60f36@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1790@Offset(425.5, 300.0), RenderSemanticsAnnotations#0ba03@Offset(425.5, 300.0), HitTestEntry#5a0d7(_ReusableRenderView#84f48), HitTestEntry#dcea7()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2597:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:37 +997: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete heading list and code blocks retain structure at every paragraph position + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#7f143(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#07120, undoController: UndoHistoryController#83d88(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#50440(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#6f402]], state: _TextFieldState#d438f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#6e197 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#c8e80@Offset(425.5, 300.0), RenderSemanticsAnnotations#21c40@Offset(425.5, 300.0), RenderPointerListener#17dda@Offset(425.5, 300.0), RenderSemanticsGestureHandler#fc8e1@Offset(425.5, 300.0), RenderExcludeSemantics#7e0d7@Offset(425.5, 300.0), RenderBlockSemantics#3a28a@Offset(425.5, 300.0), RenderIgnorePointer#7c9c8@Offset(425.5, 300.0), RenderSemanticsAnnotations#3ea76@Offset(425.5, 300.0), _RenderTheater#c6f28@Offset(425.5, 300.0), RenderAbsorbPointer#75d34@Offset(425.5, 300.0), RenderPointerListener#f6e8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#03ac5@Offset(425.5, 300.0), RenderCustomPaint#830f7@Offset(425.5, 300.0), RenderSemanticsAnnotations#c281d@Offset(425.5, 300.0), RenderSemanticsAnnotations#9b268@Offset(425.5, 300.0), RenderSemanticsAnnotations#eb36a@Offset(425.5, 300.0), RenderTapRegionSurface#6d18c@Offset(425.5, 300.0), RenderSemanticsAnnotations#888f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#d58f4@Offset(425.5, 300.0), HitTestEntry#457c7(_ReusableRenderView#84f48), HitTestEntry#afad0()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#7f143(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#07120, undoController: UndoHistoryController#83d88(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#50440(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#6f402]], state: _TextFieldState#d438f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#6e197 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#5ddce@Offset(425.5, 300.0), RenderSemanticsAnnotations#1e187@Offset(425.5, 300.0), RenderPointerListener#97cb2@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c220a@Offset(425.5, 300.0), RenderExcludeSemantics#e162d@Offset(425.5, 300.0), RenderBlockSemantics#074f9@Offset(425.5, 300.0), RenderIgnorePointer#ed152@Offset(425.5, 300.0), RenderSemanticsAnnotations#56fa6@Offset(425.5, 300.0), _RenderTheater#c6f28@Offset(425.5, 300.0), RenderAbsorbPointer#75d34@Offset(425.5, 300.0), RenderPointerListener#f6e8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#03ac5@Offset(425.5, 300.0), RenderCustomPaint#830f7@Offset(425.5, 300.0), RenderSemanticsAnnotations#c281d@Offset(425.5, 300.0), RenderSemanticsAnnotations#9b268@Offset(425.5, 300.0), RenderSemanticsAnnotations#eb36a@Offset(425.5, 300.0), RenderTapRegionSurface#6d18c@Offset(425.5, 300.0), RenderSemanticsAnnotations#888f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#d58f4@Offset(425.5, 300.0), HitTestEntry#7dc65(_ReusableRenderView#84f48), HitTestEntry#2a20b()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#7f143(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#07120, undoController: UndoHistoryController#83d88(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#50440(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#6f402]], state: _TextFieldState#d438f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#6e197 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#67086@Offset(425.5, 300.0), RenderSemanticsAnnotations#ac3c7@Offset(425.5, 300.0), RenderPointerListener#1e53b@Offset(425.5, 300.0), RenderSemanticsGestureHandler#9cf01@Offset(425.5, 300.0), RenderExcludeSemantics#49e0f@Offset(425.5, 300.0), RenderBlockSemantics#049b6@Offset(425.5, 300.0), RenderIgnorePointer#9b504@Offset(425.5, 300.0), RenderSemanticsAnnotations#151c1@Offset(425.5, 300.0), _RenderTheater#c6f28@Offset(425.5, 300.0), RenderAbsorbPointer#75d34@Offset(425.5, 300.0), RenderPointerListener#f6e8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#03ac5@Offset(425.5, 300.0), RenderCustomPaint#830f7@Offset(425.5, 300.0), RenderSemanticsAnnotations#c281d@Offset(425.5, 300.0), RenderSemanticsAnnotations#9b268@Offset(425.5, 300.0), RenderSemanticsAnnotations#eb36a@Offset(425.5, 300.0), RenderTapRegionSurface#6d18c@Offset(425.5, 300.0), RenderSemanticsAnnotations#888f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#d58f4@Offset(425.5, 300.0), HitTestEntry#8fc79(_ReusableRenderView#84f48), HitTestEntry#7c941()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:38 +998: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete-block split preserves styles caret and one-step Undo +04:38 +999: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source boundary-crossing replacements restore text selection and caret +04:38 +1000: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich inline paste composes with enclosing inline syntax + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#aa945(TextEditingValue(text: ┤[leftright](https://example.test)├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#c0c1c, undoController: UndoHistoryController#dba7f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#f72ca(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7aebf]], state: _TextFieldState#e279e), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#da211 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#d25e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#f6655@Offset(425.5, 300.0), RenderPointerListener#81eba@Offset(425.5, 300.0), RenderSemanticsGestureHandler#b7df0@Offset(425.5, 300.0), RenderExcludeSemantics#f14c0@Offset(425.5, 300.0), RenderBlockSemantics#93c55@Offset(425.5, 300.0), RenderIgnorePointer#3f76e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2d091@Offset(425.5, 300.0), _RenderTheater#dae4a@Offset(425.5, 300.0), RenderAbsorbPointer#6feea@Offset(425.5, 300.0), RenderPointerListener#40d8f@Offset(425.5, 300.0), RenderSemanticsAnnotations#edfda@Offset(425.5, 300.0), RenderCustomPaint#26172@Offset(425.5, 300.0), RenderSemanticsAnnotations#b5302@Offset(425.5, 300.0), RenderSemanticsAnnotations#bb8fe@Offset(425.5, 300.0), RenderSemanticsAnnotations#45995@Offset(425.5, 300.0), RenderTapRegionSurface#de342@Offset(425.5, 300.0), RenderSemanticsAnnotations#0d703@Offset(425.5, 300.0), RenderSemanticsAnnotations#1f003@Offset(425.5, 300.0), HitTestEntry#af8d2(_ReusableRenderView#84f48), HitTestEntry#72986()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2945:28) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2999:22) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:38 +1001: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline reconciliation ignores separate destination runs +04:38 +1002: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source adjacent-style reconciliation preserves literal code delimiters +04:39 +1003: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation preserves a partially consumed delimiter +04:39 +1004: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table inline reconciliation is confined to the selected cell +04:39 +1005: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table keeps multiple independent incoming style runs +04:39 +1006: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source does not treat multiple incoming bold runs as one wrapper +04:39 +1007: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences with paragraph context +04:39 +1008: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences inside table cells +04:39 +1009: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table sequence reconciliation retains authored delimiters +04:39 +1010: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation retains mixed nested styles +04:39 +1011: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves hyperlink semantics in table cells +04:39 +1012: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline mapping handles links multiline styles and literal syntax +04:40 +1013: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret mapping preserves literal bang before a following link +04:40 +1014: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits resolved reference links without changing definitions +04:40 +1015: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits multiline blockquote links without exposing prefixes +04:40 +1016: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves occurrence-specific hard-break provenance +04:40 +1017: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret remains between pasted and retained hard breaks +04:40 +1018: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste after an HTML break does not retain its layout newline +04:40 +1019: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste preserves enclosing inline HTML as one run +04:40 +1020: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source system and history rich paste map normalized HTML whitespace +04:40 +1021: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source syntax-only availability agrees with textual fallback execution +04:40 +1022: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source terminal structured failure blocks availability and text fallback +04:40 +1023: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste remaps generated grouped hard breaks +04:40 +1024: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source remaps reopened grouped breaks in a CRLF container +04:40 +1025: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps nested and reference links through container prefixes +04:41 +1026: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves autolink destination semantics +04:41 +1027: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: invalid email-like text does not invalidate another link target +04:41 +1028: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste distinguishes authored and generated URL content +04:41 +1029: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves parser-folded reference identity +04:41 +1030: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source same-destination paste preserves parser-folded reference identity +04:41 +1031: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste retains the provenance of surviving line breaks +04:41 +1032: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste keeps label break provenance independent of link titles +04:41 +1033: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: normalized code-span breaks do not shift surviving link provenance +04:41 +1034: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste combines folded references with surviving break provenance +04:41 +1035: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste tracks old and new breaks independently +04:42 +1036: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reference-link label replacement retains definitions +04:42 +1037: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps escaped brackets in collapsed and shortcut references +04:42 +1038: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links around unmatched and code-span backticks +04:42 +1039: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links with escaped and balanced label brackets +04:42 +1040: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline wrapper mapping stays bounded for paste and availability +04:43 +1041: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps all retained break offsets in one serialization traversal +04:44 +1042: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source AST boundary mapping stays linear for availability and paste +04:44 +1043: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table paste preserves multiline link titles +04:44 +1044: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table boundary paste preserves styles caret and one-step history +04:44 +1045: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste handles every line boundary +04:44 +1046: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline paste preserves unrelated syntax whitespace and caret + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#b33ca(TextEditingValue(text: ┤__leftright__├, selection: TextSelection.collapsed(offset: 10, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e621b, undoController: UndoHistoryController#943bb(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#0074e(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#06341]], state: _TextFieldState#66482), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#5b075 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#6db19@Offset(425.5, 300.0), RenderSemanticsAnnotations#d9f80@Offset(425.5, 300.0), RenderPointerListener#a870a@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c0ef0@Offset(425.5, 300.0), RenderExcludeSemantics#08ada@Offset(425.5, 300.0), RenderBlockSemantics#3e1a3@Offset(425.5, 300.0), RenderIgnorePointer#63f30@Offset(425.5, 300.0), RenderSemanticsAnnotations#71966@Offset(425.5, 300.0), _RenderTheater#a9712@Offset(425.5, 300.0), RenderAbsorbPointer#1312e@Offset(425.5, 300.0), RenderPointerListener#85c75@Offset(425.5, 300.0), RenderSemanticsAnnotations#a034c@Offset(425.5, 300.0), RenderCustomPaint#f3c29@Offset(425.5, 300.0), RenderSemanticsAnnotations#5c2f6@Offset(425.5, 300.0), RenderSemanticsAnnotations#8f76f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c2d9b@Offset(425.5, 300.0), RenderTapRegionSurface#82c80@Offset(425.5, 300.0), RenderSemanticsAnnotations#c5379@Offset(425.5, 300.0), RenderSemanticsAnnotations#20430@Offset(425.5, 300.0), HitTestEntry#0ac3c(_ReusableRenderView#84f48), HitTestEntry#69b77()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6908:28) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6936:20) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:44 +1047: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table cells reconcile surrounding inline styles +04:44 +1048: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciliation reuses table-normalized inline content +04:45 +1049: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source whole-block replacement differs from surviving table and code contexts + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#a1791(TextEditingValue(text: ┤```text + old + ``` + ├, selection: TextSelection.collapsed(offset: 16, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#7c10c, undoController: UndoHistoryController#b5f9d(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#7f06c(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#742f2]], state: _TextFieldState#d5e30), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#eafcd +The hit test result at that offset is: HitTestResult(RenderMouseRegion#ec7d2@Offset(425.5, 300.0), RenderSemanticsAnnotations#39348@Offset(425.5, 300.0), RenderPointerListener#0abfc@Offset(425.5, 300.0), RenderSemanticsGestureHandler#9d11b@Offset(425.5, 300.0), RenderExcludeSemantics#2768e@Offset(425.5, 300.0), RenderBlockSemantics#417ff@Offset(425.5, 300.0), RenderIgnorePointer#5575c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5ac6f@Offset(425.5, 300.0), _RenderTheater#47a6c@Offset(425.5, 300.0), RenderAbsorbPointer#9452e@Offset(425.5, 300.0), RenderPointerListener#11d7e@Offset(425.5, 300.0), RenderSemanticsAnnotations#6c451@Offset(425.5, 300.0), RenderCustomPaint#edde9@Offset(425.5, 300.0), RenderSemanticsAnnotations#bda68@Offset(425.5, 300.0), RenderSemanticsAnnotations#4a25c@Offset(425.5, 300.0), RenderSemanticsAnnotations#feec4@Offset(425.5, 300.0), RenderTapRegionSurface#ef43e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2dfa3@Offset(425.5, 300.0), RenderSemanticsAnnotations#b62f8@Offset(425.5, 300.0), HitTestEntry#d768a(_ReusableRenderView#84f48), HitTestEntry#ec217()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7158:25) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:45 +1050: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paragraph markers escape only at block starts + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#2ed98(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b93d1, undoController: UndoHistoryController#d0209(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#347d5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#de760]], state: _TextFieldState#197b9), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#2af69 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#54464@Offset(425.5, 300.0), RenderSemanticsAnnotations#fbf67@Offset(425.5, 300.0), RenderPointerListener#70eeb@Offset(425.5, 300.0), RenderSemanticsGestureHandler#a01de@Offset(425.5, 300.0), RenderExcludeSemantics#36714@Offset(425.5, 300.0), RenderBlockSemantics#cff25@Offset(425.5, 300.0), RenderIgnorePointer#6556f@Offset(425.5, 300.0), RenderSemanticsAnnotations#53ec2@Offset(425.5, 300.0), _RenderTheater#d478d@Offset(425.5, 300.0), RenderAbsorbPointer#6356e@Offset(425.5, 300.0), RenderPointerListener#cc65d@Offset(425.5, 300.0), RenderSemanticsAnnotations#8ffa0@Offset(425.5, 300.0), RenderCustomPaint#f372c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5975@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4b8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cf36@Offset(425.5, 300.0), RenderTapRegionSurface#18801@Offset(425.5, 300.0), RenderSemanticsAnnotations#010d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#11627@Offset(425.5, 300.0), HitTestEntry#84a39(_ReusableRenderView#84f48), HitTestEntry#1251c()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#2ed98(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b93d1, undoController: UndoHistoryController#d0209(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#347d5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#de760]], state: _TextFieldState#197b9), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#2af69 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#a6111@Offset(425.5, 300.0), RenderSemanticsAnnotations#dd0da@Offset(425.5, 300.0), RenderPointerListener#eb6ed@Offset(425.5, 300.0), RenderSemanticsGestureHandler#1cbb3@Offset(425.5, 300.0), RenderExcludeSemantics#d378a@Offset(425.5, 300.0), RenderBlockSemantics#e48bf@Offset(425.5, 300.0), RenderIgnorePointer#00e5e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ad1ec@Offset(425.5, 300.0), _RenderTheater#d478d@Offset(425.5, 300.0), RenderAbsorbPointer#6356e@Offset(425.5, 300.0), RenderPointerListener#cc65d@Offset(425.5, 300.0), RenderSemanticsAnnotations#8ffa0@Offset(425.5, 300.0), RenderCustomPaint#f372c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5975@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4b8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cf36@Offset(425.5, 300.0), RenderTapRegionSurface#18801@Offset(425.5, 300.0), RenderSemanticsAnnotations#010d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#11627@Offset(425.5, 300.0), HitTestEntry#35bd0(_ReusableRenderView#84f48), HitTestEntry#766e8()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#2ed98(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b93d1, undoController: UndoHistoryController#d0209(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#347d5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#de760]], state: _TextFieldState#197b9), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#2af69 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#5862a@Offset(425.5, 300.0), RenderSemanticsAnnotations#ac2f4@Offset(425.5, 300.0), RenderPointerListener#1f0ca@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c87bd@Offset(425.5, 300.0), RenderExcludeSemantics#8aad5@Offset(425.5, 300.0), RenderBlockSemantics#f8e70@Offset(425.5, 300.0), RenderIgnorePointer#8771b@Offset(425.5, 300.0), RenderSemanticsAnnotations#87137@Offset(425.5, 300.0), _RenderTheater#d478d@Offset(425.5, 300.0), RenderAbsorbPointer#6356e@Offset(425.5, 300.0), RenderPointerListener#cc65d@Offset(425.5, 300.0), RenderSemanticsAnnotations#8ffa0@Offset(425.5, 300.0), RenderCustomPaint#f372c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5975@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4b8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cf36@Offset(425.5, 300.0), RenderTapRegionSurface#18801@Offset(425.5, 300.0), RenderSemanticsAnnotations#010d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#11627@Offset(425.5, 300.0), HitTestEntry#b2639(_ReusableRenderView#84f48), HitTestEntry#1224d()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7247:24) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#2ed98(TextEditingValue(text: ┤- right├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b93d1, undoController: UndoHistoryController#d0209(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#347d5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#de760]], state: _TextFieldState#197b9), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#2af69 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#fc928@Offset(425.5, 300.0), RenderSemanticsAnnotations#f7aa4@Offset(425.5, 300.0), RenderPointerListener#6aa50@Offset(425.5, 300.0), RenderSemanticsGestureHandler#0f34b@Offset(425.5, 300.0), RenderExcludeSemantics#79eff@Offset(425.5, 300.0), RenderBlockSemantics#79250@Offset(425.5, 300.0), RenderIgnorePointer#1199d@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3823@Offset(425.5, 300.0), _RenderTheater#d478d@Offset(425.5, 300.0), RenderAbsorbPointer#6356e@Offset(425.5, 300.0), RenderPointerListener#cc65d@Offset(425.5, 300.0), RenderSemanticsAnnotations#8ffa0@Offset(425.5, 300.0), RenderCustomPaint#f372c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5975@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4b8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cf36@Offset(425.5, 300.0), RenderTapRegionSurface#18801@Offset(425.5, 300.0), RenderSemanticsAnnotations#010d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#11627@Offset(425.5, 300.0), HitTestEntry#8ac8d(_ReusableRenderView#84f48), HitTestEntry#07d1a()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7277:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:45 +1051: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native inline paste preserves edge and only whitespace + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#eae1d(TextEditingValue(text: ┤leftDELETEright├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#ab7ac, undoController: UndoHistoryController#b6409(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#62ef5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#ada55]], state: _TextFieldState#acd37), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#507e1 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#9dcf4@Offset(425.5, 300.0), RenderSemanticsAnnotations#0b822@Offset(425.5, 300.0), RenderPointerListener#93766@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bfa2f@Offset(425.5, 300.0), RenderExcludeSemantics#2785b@Offset(425.5, 300.0), RenderBlockSemantics#a0168@Offset(425.5, 300.0), RenderIgnorePointer#d6dd4@Offset(425.5, 300.0), RenderSemanticsAnnotations#0e7a0@Offset(425.5, 300.0), _RenderTheater#2e390@Offset(425.5, 300.0), RenderAbsorbPointer#4763e@Offset(425.5, 300.0), RenderPointerListener#3a832@Offset(425.5, 300.0), RenderSemanticsAnnotations#63e3a@Offset(425.5, 300.0), RenderCustomPaint#6c25c@Offset(425.5, 300.0), RenderSemanticsAnnotations#531f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#65130@Offset(425.5, 300.0), RenderSemanticsAnnotations#e6b02@Offset(425.5, 300.0), RenderTapRegionSurface#6a271@Offset(425.5, 300.0), RenderSemanticsAnnotations#780ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#92309@Offset(425.5, 300.0), HitTestEntry#7bbc5(_ReusableRenderView#84f48), HitTestEntry#99e0c()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7379:24) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:45 +1052: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native rich edge whitespace repeats and restores real Undo state +04:45 +1053: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paste respects table-cell semantics +04:45 +1054: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps a final table cell ending in an escaped pipe +04:45 +1055: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks preserve list and quote containers +04:45 +1056: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks remain in containers at every content boundary + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#d8861(TextEditingValue(text: ┤> item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#61130 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#e8e03@Offset(425.5, 300.0), RenderSemanticsAnnotations#97c26@Offset(425.5, 300.0), RenderPointerListener#442ab@Offset(425.5, 300.0), RenderSemanticsGestureHandler#19c5c@Offset(425.5, 300.0), RenderExcludeSemantics#db531@Offset(425.5, 300.0), RenderBlockSemantics#55686@Offset(425.5, 300.0), RenderIgnorePointer#fe967@Offset(425.5, 300.0), RenderSemanticsAnnotations#33c2a@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#b44ae(_ReusableRenderView#84f48), HitTestEntry#08beb()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#d8861(TextEditingValue(text: ┤> item + ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#61130 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#ae0b3@Offset(425.5, 300.0), RenderSemanticsAnnotations#a4bd5@Offset(425.5, 300.0), RenderPointerListener#5e24c@Offset(425.5, 300.0), RenderSemanticsGestureHandler#6e741@Offset(425.5, 300.0), RenderExcludeSemantics#bfbe4@Offset(425.5, 300.0), RenderBlockSemantics#05584@Offset(425.5, 300.0), RenderIgnorePointer#d34b5@Offset(425.5, 300.0), RenderSemanticsAnnotations#24c83@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#845e6(_ReusableRenderView#84f48), HitTestEntry#3f4a9()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#d8861(TextEditingValue(text: ┤- item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#61130 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#ff716@Offset(425.5, 300.0), RenderSemanticsAnnotations#e5b85@Offset(425.5, 300.0), RenderPointerListener#528ea@Offset(425.5, 300.0), RenderSemanticsGestureHandler#cb80f@Offset(425.5, 300.0), RenderExcludeSemantics#5b4ea@Offset(425.5, 300.0), RenderBlockSemantics#df741@Offset(425.5, 300.0), RenderIgnorePointer#ecb10@Offset(425.5, 300.0), RenderSemanticsAnnotations#78482@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#d7ba3(_ReusableRenderView#84f48), HitTestEntry#8441e()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#d8861(TextEditingValue(text: ┤- item + ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#61130 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#6ddde@Offset(425.5, 300.0), RenderSemanticsAnnotations#ee0a0@Offset(425.5, 300.0), RenderPointerListener#b9646@Offset(425.5, 300.0), RenderSemanticsGestureHandler#96a5d@Offset(425.5, 300.0), RenderExcludeSemantics#41e13@Offset(425.5, 300.0), RenderBlockSemantics#0e2b3@Offset(425.5, 300.0), RenderIgnorePointer#4dfcf@Offset(425.5, 300.0), RenderSemanticsAnnotations#0e49a@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#47dd2(_ReusableRenderView#84f48), HitTestEntry#d9df5()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#d8861(TextEditingValue(text: ┤> 3. item├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#61130 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#0609f@Offset(425.5, 300.0), RenderSemanticsAnnotations#41c50@Offset(425.5, 300.0), RenderPointerListener#5aa7e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#d4230@Offset(425.5, 300.0), RenderExcludeSemantics#2db0c@Offset(425.5, 300.0), RenderBlockSemantics#c0ab7@Offset(425.5, 300.0), RenderIgnorePointer#9fd6f@Offset(425.5, 300.0), RenderSemanticsAnnotations#1a098@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#e4650(_ReusableRenderView#84f48), HitTestEntry#7c780()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:46 +1057: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks retain continuation-line ancestors + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#c8104(TextEditingValue(text: ┤- first + leftright + ├, selection: TextSelection.collapsed(offset: 20, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#10642, undoController: UndoHistoryController#187cb(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#8b1f6(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#60853]], state: _TextFieldState#25a5b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#08158 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#ec667@Offset(425.5, 300.0), RenderSemanticsAnnotations#dbfc5@Offset(425.5, 300.0), RenderPointerListener#06bbc@Offset(425.5, 300.0), RenderSemanticsGestureHandler#2e0a6@Offset(425.5, 300.0), RenderExcludeSemantics#2154d@Offset(425.5, 300.0), RenderBlockSemantics#24919@Offset(425.5, 300.0), RenderIgnorePointer#e1973@Offset(425.5, 300.0), RenderSemanticsAnnotations#1da1b@Offset(425.5, 300.0), _RenderTheater#135c8@Offset(425.5, 300.0), RenderAbsorbPointer#bd6f0@Offset(425.5, 300.0), RenderPointerListener#cd283@Offset(425.5, 300.0), RenderSemanticsAnnotations#9548d@Offset(425.5, 300.0), RenderCustomPaint#24917@Offset(425.5, 300.0), RenderSemanticsAnnotations#91136@Offset(425.5, 300.0), RenderSemanticsAnnotations#29b38@Offset(425.5, 300.0), RenderSemanticsAnnotations#6ba8e@Offset(425.5, 300.0), RenderTapRegionSurface#a799b@Offset(425.5, 300.0), RenderSemanticsAnnotations#9515f@Offset(425.5, 300.0), RenderSemanticsAnnotations#3560b@Offset(425.5, 300.0), HitTestEntry#36c30(_ReusableRenderView#84f48), HitTestEntry#f17fd()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#c8104(TextEditingValue(text: ┤- first + + leftright + ├, selection: TextSelection.collapsed(offset: 21, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#10642, undoController: UndoHistoryController#187cb(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#8b1f6(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#60853]], state: _TextFieldState#25a5b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#08158 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#f5ecb@Offset(425.5, 300.0), RenderSemanticsAnnotations#f1b79@Offset(425.5, 300.0), RenderPointerListener#9ffac@Offset(425.5, 300.0), RenderSemanticsGestureHandler#8de17@Offset(425.5, 300.0), RenderExcludeSemantics#54d2f@Offset(425.5, 300.0), RenderBlockSemantics#bac69@Offset(425.5, 300.0), RenderIgnorePointer#09fa8@Offset(425.5, 300.0), RenderSemanticsAnnotations#22e11@Offset(425.5, 300.0), _RenderTheater#135c8@Offset(425.5, 300.0), RenderAbsorbPointer#bd6f0@Offset(425.5, 300.0), RenderPointerListener#cd283@Offset(425.5, 300.0), RenderSemanticsAnnotations#9548d@Offset(425.5, 300.0), RenderCustomPaint#24917@Offset(425.5, 300.0), RenderSemanticsAnnotations#91136@Offset(425.5, 300.0), RenderSemanticsAnnotations#29b38@Offset(425.5, 300.0), RenderSemanticsAnnotations#6ba8e@Offset(425.5, 300.0), RenderTapRegionSurface#a799b@Offset(425.5, 300.0), RenderSemanticsAnnotations#9515f@Offset(425.5, 300.0), RenderSemanticsAnnotations#3560b@Offset(425.5, 300.0), HitTestEntry#d4756(_ReusableRenderView#84f48), HitTestEntry#0b03e()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#c8104(TextEditingValue(text: ┤> first + leftright + ├, selection: TextSelection.collapsed(offset: 18, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#10642, undoController: UndoHistoryController#187cb(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#8b1f6(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#60853]], state: _TextFieldState#25a5b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#08158 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#fc5e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#52d5d@Offset(425.5, 300.0), RenderPointerListener#585da@Offset(425.5, 300.0), RenderSemanticsGestureHandler#be035@Offset(425.5, 300.0), RenderExcludeSemantics#d92a2@Offset(425.5, 300.0), RenderBlockSemantics#b7498@Offset(425.5, 300.0), RenderIgnorePointer#506c0@Offset(425.5, 300.0), RenderSemanticsAnnotations#480a3@Offset(425.5, 300.0), _RenderTheater#135c8@Offset(425.5, 300.0), RenderAbsorbPointer#bd6f0@Offset(425.5, 300.0), RenderPointerListener#cd283@Offset(425.5, 300.0), RenderSemanticsAnnotations#9548d@Offset(425.5, 300.0), RenderCustomPaint#24917@Offset(425.5, 300.0), RenderSemanticsAnnotations#91136@Offset(425.5, 300.0), RenderSemanticsAnnotations#29b38@Offset(425.5, 300.0), RenderSemanticsAnnotations#6ba8e@Offset(425.5, 300.0), RenderTapRegionSurface#a799b@Offset(425.5, 300.0), RenderSemanticsAnnotations#9515f@Offset(425.5, 300.0), RenderSemanticsAnnotations#3560b@Offset(425.5, 300.0), HitTestEntry#4640c(_ReusableRenderView#84f48), HitTestEntry#9efde()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:46 +1058: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source container recovery is bound to the actual nested ancestors +04:46 +1059: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks use list markers rather than task prefixes +04:46 +1060: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source task items keep block kinds at every content position +04:46 +1061: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source checked ordered nested and zero lists retain inserted block kinds +04:46 +1062: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source composes mixed and continuation container ancestors +04:47 +1063: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source protected contexts use the safe source fallback +04:47 +1064: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Writerside Source preserves a structured procedure block +04:47 +1065: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source delayed paste rejects a changed selection +04:47 +1066: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves composition before and during a read +04:47 +1067: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source failed cut keeps text and does not record history +04:47 +1068: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source delayed cut revalidates selection before deletion +04:47 +1069: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: history insertion follows the latest Source selection +04:47 +1070: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history rebases retained media into Source +04:47 +1071: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history restores a local video into Source +04:47 +1072: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: standalone image history ingests and inserts one undoable Source edit +04:47 +1073: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source local image path retains imported bytes once + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#c86ee(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#3dd13, undoController: UndoHistoryController#9ffd3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0df7(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#83c4d]], state: _TextFieldState#9928a), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#f1600 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#0d95b@Offset(425.5, 300.0), RenderSemanticsAnnotations#c5c46@Offset(425.5, 300.0), RenderPointerListener#46a0d@Offset(425.5, 300.0), RenderSemanticsGestureHandler#e1e3b@Offset(425.5, 300.0), RenderExcludeSemantics#7dc51@Offset(425.5, 300.0), RenderBlockSemantics#7ccd5@Offset(425.5, 300.0), RenderIgnorePointer#afee7@Offset(425.5, 300.0), RenderSemanticsAnnotations#39cd6@Offset(425.5, 300.0), _RenderTheater#9581f@Offset(425.5, 300.0), RenderAbsorbPointer#0f13e@Offset(425.5, 300.0), RenderPointerListener#6ee06@Offset(425.5, 300.0), RenderSemanticsAnnotations#19710@Offset(425.5, 300.0), RenderCustomPaint#0fc34@Offset(425.5, 300.0), RenderSemanticsAnnotations#242ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#c8fe1@Offset(425.5, 300.0), RenderSemanticsAnnotations#951c9@Offset(425.5, 300.0), RenderTapRegionSurface#41ad9@Offset(425.5, 300.0), RenderSemanticsAnnotations#090c3@Offset(425.5, 300.0), RenderSemanticsAnnotations#e06d3@Offset(425.5, 300.0), HitTestEntry#d00d8(_ReusableRenderView#84f48), HitTestEntry#6c96e()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..expectNormalReplay (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8934:7) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8956:5) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:49 +1074: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: unsafe local image candidates paste their original text + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#0b2df(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#18df5, undoController: UndoHistoryController#c2f7e(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#1e715(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#ccc9d]], state: _TextFieldState#79610), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#53297 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#ecb27@Offset(425.5, 300.0), RenderSemanticsAnnotations#9ee4f@Offset(425.5, 300.0), RenderPointerListener#b5c8a@Offset(425.5, 300.0), RenderSemanticsGestureHandler#87553@Offset(425.5, 300.0), RenderExcludeSemantics#14561@Offset(425.5, 300.0), RenderBlockSemantics#9ab42@Offset(425.5, 300.0), RenderIgnorePointer#32da4@Offset(425.5, 300.0), RenderSemanticsAnnotations#bc4d5@Offset(425.5, 300.0), _RenderTheater#74a2b@Offset(425.5, 300.0), RenderAbsorbPointer#454e5@Offset(425.5, 300.0), RenderPointerListener#53ef7@Offset(425.5, 300.0), RenderSemanticsAnnotations#98e06@Offset(425.5, 300.0), RenderCustomPaint#ba139@Offset(425.5, 300.0), RenderSemanticsAnnotations#cee50@Offset(425.5, 300.0), RenderSemanticsAnnotations#f04b2@Offset(425.5, 300.0), RenderSemanticsAnnotations#629fd@Offset(425.5, 300.0), RenderTapRegionSurface#28ddd@Offset(425.5, 300.0), RenderSemanticsAnnotations#8cf8d@Offset(425.5, 300.0), RenderSemanticsAnnotations#e6cf9@Offset(425.5, 300.0), HitTestEntry#b445b(_ReusableRenderView#84f48), HitTestEntry#6ec59()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9010:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:49 +1075: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: image history asks to save an untitled Source document +04:49 +1076: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: generic XML does not invent Writerside image syntax +04:49 +1077: loading /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart +04:51 +1077: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: reads the initial GTK animation setting +04:51 +1078: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: animation stream follows GTK setting changes +04:51 +1079: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: provider exposes the preloaded value before native events +04:51 +1080: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: missing GTK integration falls back without disabling motion +04:51 +1081: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: native GTK bridge observes and tears down animation preference state +04:51 +1082: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart +04:53 +1082: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +04:54 +1083: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +04:55 +1084: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft +04:55 +1085: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +04:55 +1086: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft +04:56 +1087: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +04:56 +1088: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work +04:56 +1089: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work +04:56 +1090: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work +04:57 +1091: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work +04:57 +1092: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work +04:57 +1093: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET +04:57 +1094: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET +04:57 +1095: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET +04:57 +1096: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit +04:58 +1097: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment +04:58 +1098: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor +04:58 +1099: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity +04:58 +1100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement +04:58 +1101: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart +04:59 +1101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt +04:59 +1102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption +04:59 +1103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +05:00 +1104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary +05:00 +1105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment +05:00 +1106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title +05:00 +1107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category +05:00 +1108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment +05:00 +1109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart +05:01 +1110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment +05:01 +1111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment +05:01 +1112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +05:01 +1113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +05:01 +1114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +05:02 +1115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +05:02 +1116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit +05:02 +1117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit +05:02 +1118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +05:02 +1119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice +05:02 +1120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note +05:02 +1121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +05:02 +1122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions +05:02 +1123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +05:03 +1124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +05:03 +1125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +05:03 +1126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +05:03 +1127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +05:03 +1128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +05:03 +1129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +05:03 +1130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +05:03 +1131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +05:03 +1132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +05:03 +1133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +05:04 +1134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +05:04 +1135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +05:04 +1136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +05:04 +1137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +05:04 +1138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +05:04 +1139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +05:04 +1140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +05:05 +1141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +05:05 +1142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename +05:05 +1143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +05:05 +1144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +05:05 +1145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +05:05 +1146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +05:05 +1147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +05:05 +1148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +05:06 +1149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +05:06 +1150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +05:06 +1151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +05:06 +1152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +05:06 +1153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +05:06 +1154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +05:06 +1155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +05:07 +1156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +05:07 +1157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +05:07 +1158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +05:07 +1159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +05:07 +1160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +05:07 +1161: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart +05:08 +1161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice +05:08 +1162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes +05:08 +1163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice +05:08 +1164: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart +05:08 +1164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty +05:08 +1165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty +05:09 +1166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty +05:09 +1167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body +05:09 +1168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null +05:09 +1169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 +05:09 +1170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file +05:09 +1171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file +05:09 +1172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file +05:09 +1173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file +05:09 +1174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call +05:09 +1175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin +05:09 +1176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched +05:09 +1177: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart +05:09 +1177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations +05:09 +1178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions +05:09 +1179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations +05:10 +1180: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart +05:11 +1180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated +05:11 +1181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated +05:11 +1182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated +05:11 +1183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated +05:12 +1184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated +05:12 +1185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated +05:12 +1186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated +05:12 +1187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated +05:12 +1188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request +05:12 +1189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible +05:12 +1190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content +05:12 +1191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match +05:12 +1192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted +05:12 +1193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state +05:12 +1194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility +05:12 +1195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility +05:12 +1196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility +05:12 +1197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility +05:12 +1198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility +05:12 +1199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility +05:12 +1200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility +05:12 +1201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility +05:12 +1202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects +05:12 +1203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids +05:12 +1204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body +05:12 +1205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence +05:12 +1206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path +05:12 +1207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note +05:12 +1208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials +05:12 +1209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 +05:12 +1210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references +05:12 +1211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference +05:12 +1212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update +05:12 +1213: loading /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart +05:13 +1213: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles default-a4 and preserves document data +05:16 +1214: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles letter-landscape and preserves document data +05:16 +1215: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles legal-serif and preserves document data +05:16 +1216: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles custom-sans and preserves document data +05:17 +1217: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles no-numbers and preserves document data +05:17 +1218: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles numbered-no-outline and preserves document data +05:18 +1219: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomLeft and preserves document data +05:18 +1220: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomCenter and preserves document data +05:18 +1221: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomRight and preserves document data +05:19 +1222: loading /home/albert/busystack/busymark/test/src/app_smoke_test.dart +05:22 +1222: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor shortcuts use documented cross-editor defaults +05:22 +1223: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace resize retains the sidebar and leaves room for header controls +05:24 +1224: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: document view shortcuts are distinct from existing commands +05:24 +1225: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace routes paste shortcuts only to editable document views +05:33 +1226: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace source history restores a pasted URL suffix through undo and redo +05:34 +1227: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app wires generated localization delegates and locales +05:35 +1228: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app boots to BusyMark welcome screen without login UI +05:35 +1229: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (0) +05:35 +1230: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (1) +05:36 +1231: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: false) +05:37 +1232: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: true) +05:38 +1233: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: main menu and F11 toggle full-screen mode +05:38 +1234: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Alt+Left activates the header Back command +05:38 +1235: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: restored capture failure stays owned across Back create discard create +05:40 +1236: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Escape closes header popup menus +05:40 +1237: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: report issue is in the shared main menu, not Settings content +05:40 +1238: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: global reference and settings shortcuts open targets +05:41 +1239: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings screen opens +05:43 +1240: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings uses the regular split sidebar at desktop width +05:43 +1241: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Spelling Dictionaries page groups downloadable and custom data +05:44 +1242: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt uses native controls and submits a trimmed ID +05:50 +1243: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt cancels and saves without redesign +05:55 +1244: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a default-language install keeps the previous selection +05:56 +1245: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: default language persists only after dictionary installation succeeds +06:03 +1246: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: failed dictionary install keeps the default language +06:05 +1247: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a project-language install keeps the previous selection +06:05 +1248: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings main surface matches the headerbar in light and dark +06:05 +1249: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: stored language override localizes app text +06:06 +1250: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: European Portuguese system locale renders the completed base catalog +06:06 +1251: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: language-only Chinese system locale renders the completed base catalog +06:06 +1252: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside project dialog syncs generated fields until edited +06:06 +1253: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts dialog opens from the header +06:07 +1254: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference categories expose supported authoring forms +06:08 +1255: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+Alt+M opens and Escape closes the syntax reference +06:08 +1256: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference remains usable in constrained RTL layout +06:08 +1257: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts tabs section title is localized +06:08 +1258: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: about dialog shows the BusyMark logo +unhandled element ; Picture key: Svg loader +06:09 +1259: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N chooses between Markdown and Writerside creation +06:09 +1260: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N keeps unsaved documents in independent tabs +06:10 +1261: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N creates real CommonMark inside a Writerside workspace +06:11 +1262: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions +06:19 +1263: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions with an available native host +06:24 +1264: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside topic rename uses Preview, Do Refactor, and shared entry points +06:25 +1265: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: topic rename saves every dirty Writerside project source before planning +06:26 +1266: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: tab keyboard shortcuts move and close editor tabs +06:27 +1267: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Git diff files are shown as separate editor tabs +06:28 +1268: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: File History comparison selector shares its row with match navigation +06:28 +1269: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: file tree disables Git file actions without a repository +06:28 +1270: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: sidebar view shortcuts select workspace sidebar tabs +06:30 +1271: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: real Source edits reach the visible Local History list on the fixed deadline +06:31 +1272: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: selected WYSIWYG formatting reaches Local History through workspace callbacks +06:31 +1273: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside sidebar shortcuts survive document view changes +06:34 +1274: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view colors entries by Git status +06:34 +1275: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view shows hidden, empty, and unsupported entries +06:35 +1276: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Arabic +06:35 +1277: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Persian +06:35 +1278: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Arabic untitled workspace stays RTL and diagnostic metadata stays LTR +06:35 +1279: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: RTL topic copy keeps bidi controls out of clipboard data +06:37 +1280: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Copy uses an inactive origin topic open buffer +06:37 +1281: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Paste reviews an inactive dirty tree before moving +06:38 +1282: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source undo cannot restore saved text from previous tab +06:38 +1283: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source groups typing and deletion undo with historical carets +06:38 +1284: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source remount starts a distinct undo group +06:38 +1285: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source view supports editor formatting shortcuts +06:39 +1286: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab and Shift+Tab update indentation in source view +06:39 +1287: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editing toolbar context menu changes persisted layout without toggling +06:40 +1288: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share a frame while Split stays fluid +06:40 +1289: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: rendered views ignore redundant blanks while Source preserves them +06:40 +1290: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: standalone HTML breaks preserve one blank line in every document view +06:40 +1291: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share task-list presentation and wrapping +06:40 +1292: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same quote shell geometry +06:41 +1293: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same code block presentation +06:41 +1294: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share professional heading hierarchy +06:41 +1295: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share admonition and image presentation +06:41 +1296: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Preview renders structured formatted and nested quotes +06:41 +1297: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor undo cannot restore saved text from previous tab +06:41 +1298: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab inserts a tab character in editor view paragraphs +06:42 +1299: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close still warns when active changes are unsaved +06:42 +1300: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close flushes autosave for saved files +06:42 +1301: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: startup path opens a Markdown file workspace +06:42 +1302: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline follows unsaved source headings without live validation +06:42 +1303: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline context menu edits complete heading sections +06:43 +1304: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline highlights the heading at the document viewport +06:45 +1305: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline navigates to a renamed unsaved editor heading +06:47 +1306: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: untitled outline navigates before the first save +06:47 +1307: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview tolerates duplicate heading anchors +06:47 +1308: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading opens an unindexed sibling document link +06:47 +1309: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading linked block and inline images open their targets +06:47 +1310: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: new empty document leaves remembered preview mode for editor +06:47 +1311: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: blocked remote image prompt allows the current workspace +06:47 +1312: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+O open chooser lists recent workspaces +06:48 +1313: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recent workspace menus support pointer and keyboard actions +06:48 +1314: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local images +06:48 +1315: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer blocks remote images by default +06:48 +1316: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths with spaces +06:48 +1317: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths outside workspace +06:48 +1318: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves Snap real-home paths +06:48 +1319: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local SVG images +06:48 +1320: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer rejects oversized local SVGs +06:48 +1321: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer sanitizes embedded SVG image data +06:49 +1322: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer renders generated SVG badges +06:49 +1323: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: header Search button toggles the expanded search field +06:50 +1324: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: native header Search action toggles search and Back visibility +06:50 +1325: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search awaits non-active file reads without blocking builds +06:50 +1326: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search native submit uses exact payload and selected sidebar occurrence +06:52 +1327: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search preserves query and lands on unopened destination +06:53 +1328: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search observes edits to inactive buffers +06:54 +1329: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search reports limits and continues into later files +06:55 +1330: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search exposes skipped files and regex diagnostics +06:56 +1331: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search cancels expensive regex while UI keeps building +06:57 +1332: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search replacement review loads an asynchronous plan +06:57 +1333: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search highlights preserve Unicode offsets +06:58 +1334: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: literal workspace search bounds malformed Markdown snippets around the match +06:58 +1335: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks move preview scroll repeatedly +06:58 +1336: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview lazily builds large documents +06:59 +1337: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks scroll to code block matches +06:59 +1338: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on paragraph after lists +06:59 +1339: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share ordered list styling and geometry +06:59 +1340: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders nested list children +06:59 +1341: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders raw HTML table as table cells +07:00 +1342: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading applies Markdown table column alignment +07:00 +1343: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on code block line +07:00 +1344: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S runs Save for the active workspace +07:00 +1345: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S saves source edits from an untitled Markdown document +07:00 +1346: loading /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart +07:04 +1346: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from preview +07:07 +1347: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from editor +07:09 +1348: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: an open Problems dialog updates its count and math rows +07:10 +1349: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: manual Validate supersedes queued automatic validation and presents once +07:13 +1350: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: failed and stale validation do not show Problems; concurrent clicks publish once +07:14 +1351: loading /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart +07:16 +1351: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside math forms use semantic math nodes and round-trip +07:16 +1352: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: ordinary Markdown does not reinterpret Writerside TeX forms +07:16 +1353: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside semantic and fenced diagrams share visualizers +07:16 +1354: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: referenced diagram source is constrained to the Writerside root +07:16 +1355: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside topic XML exposes TeX and diagrams to shared preview +07:17 +1356: loading /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart +07:19 +1356: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: view changes fade one live editor while ordinary data changes do not +07:19 +1357: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained destinations settle immediately under reduced motion +07:19 +1358: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained crossfade keeps two live pages and hides outgoing UI +07:19 +1359: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: keyed crossfade retains three semantic destinations +07:20 +1360: loading /home/albert/busystack/busymark/test/src/preview_builder_test.dart +07:20 +1360: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview uses one generic label and no compatibility banner +07:20 +1361: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview ignores redundant blank lines between blocks +07:20 +1362: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves an explicit blank line encoded with HTML breaks +07:20 +1363: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview headings carry parser anchors for outline navigation +07:20 +1364: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview blocks carry source locations for search navigation +07:20 +1365: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview source locations survive adjacent list items and code fences +07:20 +1366: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview list text removes Markdown markers +07:20 +1367: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves links inside list items +07:20 +1368: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves nested list children +07:20 +1369: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps ordered list numbering independent at each depth +07:20 +1370: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves inline Markdown semantics +07:20 +1371: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: inline autolinks only support launchable URI schemes +07:20 +1372: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities +07:21 +1373: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces +07:21 +1374: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities +07:21 +1375: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces +07:21 +1376: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview treats single newlines inside paragraphs as soft breaks +07:21 +1377: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview supports common Markdown block variants +07:21 +1378: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves structured and formatted quote children +07:21 +1379: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves source order for code and images +07:21 +1380: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview parses Writerside image attributes +07:21 +1381: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: front matter is skipped only at the top of the document +07:21 +1382: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML paragraph without literal tags +07:21 +1383: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table sections and inline cell formatting +07:21 +1384: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders direct rows under raw HTML table +07:21 +1385: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table captions before the table +07:21 +1386: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders inline raw HTML safely +07:21 +1387: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not make raw HTML links active without href +07:21 +1388: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects absolute local image paths in raw HTML +07:21 +1389: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects deeply nested raw HTML before conversion +07:21 +1390: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders safe raw HTML containers as child content +07:21 +1391: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders top-level raw HTML image as image block +07:21 +1392: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves raw HTML figure caption relationship +07:21 +1393: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview allows safe remote raw HTML links images and citations +07:21 +1394: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps unsafe raw HTML literal +07:21 +1395: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not parse Markdown inside raw HTML blocks +07:21 +1396: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps paired raw HTML blocks together across blank lines +07:21 +1397: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart +07:23 +1397: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields +07:23 +1398: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 +07:23 +1399: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 +07:23 +1400: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 +07:23 +1401: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 +07:23 +1402: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null +07:23 +1403: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version +07:23 +1404: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed +07:23 +1405: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 +07:23 +1406: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately +07:23 +1407: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers +07:23 +1408: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin +07:23 +1409: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 +07:23 +1410: loading /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart +07:24 +1410: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by file-size limits +07:24 +1411: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by document limits +07:24 +1412: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects topic discovery truncated by tree limits +07:24 +1413: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic-root directory listing failure +07:24 +1414: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: topic discovery traverses excluded and hidden directories but not VCS metadata +07:24 +1415: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves a Markdown reference under build +07:26 +1416: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves an XML reference under a hidden directory +07:26 +1417: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a discovered unreadable topic source +07:26 +1418: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates topic and start-page references in every tree +07:26 +1419: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename refactors links, includes, ref entries, and leaves unrelated text +07:26 +1420: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename ignores link-shaped text in image titles and HTML attributes +07:26 +1421: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds reference links outside image titles and HTML attributes +07:26 +1422: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds exact HTML hrefs outside Markdown link and image titles +07:27 +1423: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename follows origin across modules without touching a local namesake +07:27 +1424: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: project-wide rename includes an origin reference in a build module +07:27 +1425: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: renaming a local namesake preserves origin-qualified Markdown XML links +07:27 +1426: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports unquoted origin-qualified raw HTML links +07:27 +1427: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename keeps decoded whitespace safe in unquoted HTML hrefs +07:27 +1428: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates shared Markdown reference definitions once +07:28 +1429: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves escapes required by a Markdown destination +07:28 +1430: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rewrites an XML-encoded topic destination +07:28 +1431: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename escapes decoded XML attribute replacements +07:28 +1432: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates a matching XML topic root id +07:28 +1433: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: missing or mismatched XML root IDs block rename atomically +07:28 +1434: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: prepared rename is read-only and applies its exact captured changes +07:28 +1435: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: stale prepared rename fails before any partial write +07:28 +1436: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preflights collisions only in publishing instances +07:28 +1437: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: origin topic collisions block a project-wide prepared rename +07:28 +1438: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: Unicode Markdown and XML topic filenames rename safely +07:29 +1439: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports Writerside .markdown topics +07:29 +1440: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects duplicate targets and extension changes +07:29 +1441: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves a target created concurrently before exclusive create +07:29 +1442: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete reloads newly configured instances before start-page checks +07:29 +1443: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename does not claim a new same-basename nested reference +07:29 +1444: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename aborts when a concurrent topic changes basename resolution +07:29 +1445: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete aborts when a concurrent topic changes basename resolution +07:29 +1446: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename retains target when an applied tree cannot be rolled back +07:29 +1447: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: cross-module rollback retains a target after another module changes +07:30 +1448: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: clean rollback removes the harmless newly created target +07:30 +1449: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves topic and instance tree file modes +07:30 +1450: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete removes every TOC entry and promotes children in place +07:30 +1451: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic used as any instance start page +07:30 +1452: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects unsafe path components before writing +07:30 +1453: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic replaced by a symlink without touching its target +07:30 +1454: loading /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart +07:31 +1454: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic maps to full and visible line without folds +07:31 +1455: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic inside folded region is aggregated onto its fold header +07:31 +1456: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: folded layout geometry is reused for equal collapsed sets +07:31 +1457: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: incremental gutter layout matches a full measured layout +07:31 +1458: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart +07:34 +1458: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Duplicate Topic is serialized to the native dialog host +07:34 +1459: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Edit Title returns all native field values +07:34 +1460: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: native cancellation remains distinct from an unavailable host +07:35 +1461: loading /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart +07:36 +1461: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps a nested Writerside block to its source block +07:38 +1462: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps selected text when unsourced editor blocks exist +07:38 +1463: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI applies through canonical Markdown source +07:39 +1464: loading /home/albert/busystack/busymark/test/src/document_status_bar_test.dart +07:40 +1464: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: places interactive spelling at start and format at end +07:41 +1465: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: keeps passive format when spelling is unsupported +07:41 +1466: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: truncates a long one-line language without displacing format +07:41 +1467: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: uses directional start and end placement in RTL +07:41 +1468: loading /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart +07:42 +1468: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: detects and preserves UTF-8 BOM, CRLF, and final newline +07:42 +1469: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: preserves a missing final newline when saving edited text +07:42 +1470: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: requires an explicit normalization for mixed line endings +07:42 +1471: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: rejects invalid UTF-8 instead of replacing bytes +07:42 +1472: loading /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart +07:43 +1472: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: autocomplete prioritizes Writerside Markdown authoring suggestions +07:43 +1473: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion derives XML caret context and consumes the project index +07:43 +1474: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion suggests attributes legal for the element at the caret +07:43 +1475: loading /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart +07:47 +1475: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: reads the provider key through the native credential channel +07:47 +1476: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: trims a key before securely storing it +07:47 +1477: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: deletes only the selected provider key +07:47 +1478: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: surfaces the native credential-service failure +07:47 +1479: loading /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart +07:49 +1479: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pristine empty draft discards without protective storage +07:49 +1480: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace replacement retires settled bindings and retains failed baselines +07:49 +1481: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects nonempty content when history is unavailable +07:49 +1482: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects whitespace content when history is unavailable +07:49 +1483: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects edited-empty content when history is unavailable +07:49 +1484: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects recovered content when history is unavailable +07:49 +1485: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects file content when history is unavailable +07:49 +1486: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: background protective retry cannot execute a previously rejected discard +07:49 +1487: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=false) +07:49 +1488: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=true) +07:49 +1489: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=false) +07:50 +1490: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=true) +07:50 +1491: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save cannot adopt a deleted path lineage +07:50 +1492: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: vacant first save retires a stale active history owner +07:50 +1493: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save promotes an established untitled lineage over deleted history +07:51 +1494: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison uses unsaved editor source and whole restore is one undo step +07:51 +1495: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels queued restore protection +07:51 +1496: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All cancels queued restore protection +07:52 +1497: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: region restore is exact, undoable, and rejects stale ranges +07:52 +1498: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed protective capture leaves current document unchanged +07:52 +1499: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restoration rejects a revision from another history document +07:52 +1500: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled history compares and restores through stable identity +07:52 +1501: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing during a delayed reload cancels the stale replacement +07:52 +1502: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reload reparse cannot publish after another buffer becomes active +07:52 +1503: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delete skips binary and excluded history descendants +07:52 +1504: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deleted document restores through normal create flow without overwriting +07:52 +1505: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: missing history restores over an existing file without touching disk and undoes to its real source +07:52 +1506: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing open destination protects unsaved source as the restore undo baseline +07:52 +1507: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing destination restore stops when protection fails or the target changes +07:52 +1508: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: autosaved existing-destination recovery never publishes an empty file +07:52 +1509: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delayed explicit save records exactly the source that was written +07:52 +1510: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history failure cannot turn a successful save into a failure +07:52 +1511: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move keeps edits made during history remap on the destination +07:52 +1512: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reparse cannot publish after a newer edit +07:52 +1513: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move cannot remap a replacement created while loading target +07:52 +1514: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move completion cannot publish into a replacement workspace +07:52 +1515: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: monitor event emitted after invalidation cannot enter reopened workspace +07:52 +1516: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: file monitor lifecycle recovers after a failed stop +07:52 +1517: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing while monitor start is pending still enables workspace events +07:52 +1518: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: folder refresh while monitor start is pending still enables events +07:52 +1519: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed workspace ignores a delayed monitor start completion +07:52 +1520: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed file monitor cannot resume an overtaken start +07:52 +1521: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deferred monitor move cannot enter a replacement workspace +07:52 +1522: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move retains reconciliation when another process checkpoints the old identity +07:52 +1523: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move with no bound identity cannot remap replacement history +07:52 +1524: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion with no bound identity cannot delete replacement history +07:52 +1525: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection retries into the deleted lineage +07:52 +1526: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection survives restart as detached work +07:52 +1527: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move remaps nested open history +07:53 +1528: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move publishes every buffer after one decode failure +07:53 +1529: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closing a tab during an external directory move settles its journal +07:53 +1530: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory deletion marks nested open history deleted +07:53 +1531: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed recursive-delete protection survives restart on its lineage +07:53 +1532: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reconciles closed file history +07:53 +1533: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion reconciles closed file history +07:53 +1534: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce before history reconciliation +07:53 +1535: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce across an unrelated queued event +07:53 +1536: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closed source move cannot steal an open destination lineage +07:53 +1537: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external file move includes identity established by source settlement +07:53 +1538: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move includes identity established by source settlement +07:53 +1539: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: cancelled named Save As detaches source history and reopens separately +07:53 +1540: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recording disabled after first-save publication preserves untitled lineage +07:53 +1541: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, completed pending capture +07:53 +1542: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, failed pending capture +07:53 +1543: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, completed pending capture +07:54 +1544: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, failed pending capture +07:54 +1545: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, completed pending capture +07:54 +1546: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, failed pending capture +07:54 +1547: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As keeps edits made during destination capture out of source history +07:54 +1548: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot claim a dirty open buffer at a missing destination +07:54 +1549: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=false) +07:55 +1550: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=true) +07:55 +1551: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rename remaps a failed unbound baseline to the committed destination +07:55 +1552: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed prepared rename never reaches the filesystem without an execution journal +07:55 +1553: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels a prepared rename before filesystem publication +07:55 +1554: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document retains an executing rename journal across a crash +07:55 +1555: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All retains an executing rename journal across a crash +07:55 +1556: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: targetless executing rename owner survives an ambiguous restart +07:55 +1557: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: move remaps a deferred first-save destination before baseline recovery +07:55 +1558: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive folder move remaps retained baselines for every open descendant +07:56 +1559: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=false) +07:56 +1560: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=true) +07:56 +1561: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed move retries a failed history path reconciliation +07:56 +1562: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: shutdown retries first-save promotion without requiring another edit +07:56 +1563: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: second Save As preserves a failed first-save association as the source +07:56 +1564: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As partitions a failed source checkpoint +07:56 +1565: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As source checkpoint survives process restart +07:56 +1566: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As journals its source before the filesystem commit returns +07:56 +1567: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot publish a second owner when its destination opens in flight +07:56 +1568: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As rechecks destination ownership after opening its workspace +07:56 +1569: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As waits for an unbound live destination history owner +07:56 +1570: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed Save As cannot publish after losing its prepared journal owner +07:56 +1571: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As published after disposal leaves a committed recoverable journal +07:56 +1572: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As commit write failure after disposal uses the session fallback +07:56 +1573: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As publishes destination after a post-publish callback failure +07:57 +1574: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed rename reconciliation survives shutdown and restart +07:57 +1575: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: live owner keeps committed remap journal until its recovery can follow +07:57 +1576: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared rename journal repairs a crash after filesystem commit +07:57 +1577: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed deletion detaches recovery newer than stored history +07:57 +1578: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive deletion evidence cannot consume a sibling recovery +07:57 +1579: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All durably removes a previously persisted path journal +07:57 +1580: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup applies committed destination cleanup before Save As recovery +07:57 +1581: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup keeps untitled first-save source when another tab owns destination +07:57 +1582: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed Save As recovery cannot claim another process tab with the same buffer id +07:57 +1583: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session restore selects recovery by process owner before shared buffer id +07:57 +1584: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed startup reconstruction releases adopted recovery ownership +07:58 +1585: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history retry during slow failed startup cannot erase adopted recovery +07:58 +1586: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session identity restore waits for the authoritative history snapshot +07:58 +1587: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: renamed adopted recovery still honors its original path-operation owner +07:58 +1588: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: replayed durable Clear All preserves newer history +07:59 +1589: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup aborts until replayed clear refresh is authoritative +07:59 +1590: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared deletion journal repairs a crash after filesystem commit +07:59 +1591: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed deletion reconciliation survives shutdown and restart +07:59 +1592: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reopened tab adopts its unresolved first-save history association +07:59 +1593: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: unresolved shutdown promotion survives in session and retries on startup +07:59 +1594: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace rename settles a failed first-save promotion +07:59 +1595: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace directory move settles a nested failed first-save promotion +07:59 +1596: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison renders styled intraline spans without framework errors +08:00 +1597: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison restore actions wait for the current replacement result +08:00 +1598: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace refresh invalidates a completed comparison by source content +08:00 +1599: loading /home/albert/busystack/busymark/test/src/visualization_card_test.dart +08:01 +1599: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: full-screen diagram coordinates its modal and preserves pan/zoom +08:02 +1600: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: retains the last valid diagram and navigates new diagnostics +08:02 +1601: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: fits a small Mermaid diagram to the preview width +08:02 +1602: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: keeps a wide Mermaid diagram readable until fit is requested +08:02 +1603: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: shows searchable OpenAPI operations and opens the native reference +08:02 +1604: loading /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart +08:04 +1604: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: computes the diagnostic offset within fenced source +08:04 +1605: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: WYSIWYG diagnostic selects its actual source line +08:05 +1606: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +08:06 +1606: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +08:08 +1607: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +08:12 +1608: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones +08:13 +1609: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +08:13 +1610: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +08:14 +1611: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +08:14 +1612: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +08:15 +1613: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +08:15 +1614: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +08:16 +1615: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +08:16 +1616: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +08:17 +1617: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +08:17 +1618: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +08:18 +1619: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +08:18 +1620: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +08:18 +1621: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +08:19 +1622: loading /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart +08:20 +1622: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table pipes cannot bind across subsequent cells +08:20 +1623: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: a\|b | a|b +08:20 +1624: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b\|c | a|b|c | +08:20 +1625: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\\\|b | a\\|b | +08:20 +1626: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | a|b\ +08:20 +1627: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | +08:20 +1628: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | `a\|b` | a|b | +08:20 +1629: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped pipes in the table header retain diagnostic positions +08:20 +1630: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | a\|b | a|b | +08:20 +1631: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | `` a\|b | a| | +08:20 +1632: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in block context +08:20 +1633: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in inline context +08:20 +1634: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline caption attributes are checked before tree construction +08:20 +1635: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline colgroup attributes are checked before tree construction +08:20 +1636: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline col attributes are checked before tree construction +08:20 +1637: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline thead attributes are checked before tree construction +08:20 +1638: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tbody attributes are checked before tree construction +08:20 +1639: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tfoot attributes are checked before tree construction +08:20 +1640: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline th attributes are checked before tree construction +08:20 +1641: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline td attributes are checked before tree construction +08:20 +1642: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline URL attributes use HTML entity decoding +08:20 +1643: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text `
Cell
` +08:20 +1644: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text \\\\\
Cell\
+08:20 +1645: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: ```html +08:20 +1646: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe:
Cell
+08:20 +1647: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text
Cell
+08:20 +1648: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html +08:20 +1649: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: +08:20 +1650: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
+08:20 +1651: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
+08:20 +1652: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^unused]: +08:20 +1653: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^used]: +08:20 +1654: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - ```html +08:20 +1655: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` then +08:20 +1656: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` `` +08:20 +1657: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > ```html +08:20 +1658: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - Example +08:20 +1659: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > - `` then +08:20 +1660: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: --- +08:20 +1661: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html +08:20 +1662: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | Code | HTML | +08:20 +1663: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | One | +08:20 +1664: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `a ` +08:20 +1665: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: unsafe Markdown URLs are located at the link, after literal examples +08:20 +1666: loading /home/albert/busystack/busymark/test/src/window_control_service_test.dart +08:22 +1666: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: button and native close requests share one pending confirmation +08:22 +1667: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: initializes prevent-close interception +08:22 +1668: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: toggles full screen and tracks native window-state changes +08:22 +1669: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: no dirty documents closes without dialog +08:22 +1670: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation enabled show dialog +08:22 +1671: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation disabled close directly +08:22 +1672: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: discard closes after disabling prevent-close +08:22 +1673: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save closes only when saving succeeds +08:22 +1674: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save failure keeps the app open +08:22 +1675: loading /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart +08:25 +1675: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: terminal code block gets a non-serializing trailing paragraph +08:25 +1676: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter inserts a newline within one code block +08:25 +1677: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: a code block created by editing also retains a trailing paragraph +08:25 +1678: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: third terminal Enter exits code and removes the two empty lines +08:25 +1679: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: exiting before existing content inserts a transient paragraph +08:25 +1680: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter in the trailing paragraph records an intentional blank +08:25 +1681: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: code Enter stays in the multiline code field +08:26 +1682: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Ctrl+Enter exits into the trailing paragraph +08:27 +1683: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Arrow Down exits a terminal code block +08:28 +1684: loading /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart +08:30 +1684: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: shows only a compact line-ending label +08:30 +1685: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: makes BOM visible and keeps final-newline detail compact +08:30 +1686: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: uses a compact technical label for mixed line endings +08:30 +1687: loading /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart +08:31 +1687: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: ordinary WYSIWYG selection never suppresses spelling underlines +08:31 +1688: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: source spelling correction is one exact transaction +08:32 +1689: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: formatted rich correction preserves structure and publishes once +08:34 +1690: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich image spelling preserves source and one undo step +08:35 +1691: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested code and math spelling preserves source and undo +08:36 +1692: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested address and math spelling preserves source and undo +08:36 +1693: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table image spelling preserves authored cell syntax +08:37 +1694: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed rich image preparation refuses a newer revision +08:37 +1695: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed math image preparation refuses a newer revision +08:37 +1696: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich correction preserves entities and translates later anchors +08:37 +1697: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich hard-break correction keeps later source anchor +08:37 +1698: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table correction preserves encoded cell source +08:38 +1699: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table-cell correction preserves link and publishes sessions once +08:38 +1700: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich underline painter keeps confirmed helo visible at caret +08:38 +1701: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: table cell underline uses the live cell composing range +08:39 +1702: loading /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart +08:40 +1702: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: inlines safe generated CSS into a vector-only SVG +08:40 +1703: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: keeps sanitized foreignObject only in the browser raster input +08:40 +1704: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes SVG and CSS animations +08:40 +1705: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects remote, executable, and escaped CSS URLs +08:40 +1706: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: allows embedded D2-style fonts but rejects remote image attributes +08:40 +1707: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: requires rasterization for CSS the vector inliner cannot preserve +08:40 +1708: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: preserves safe browser-only inline CSS and rasterizes it +08:40 +1709: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes unsafe URLs from inline CSS +08:40 +1710: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: does not claim a vector result when CSS cascade resolution is needed +08:40 +1711: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects declarations, excessive complexity, and invalid dimensions +08:40 +1712: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: applies the size limit to UTF-8 bytes +08:40 +1713: loading /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart +08:41 +1713: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: remote requests reject existing local references before reading dependencies +08:42 +1714: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: resolves local files, hashes them, and terminates circular schemas +08:42 +1715: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: keeps internal-only references independent of a saved path +08:42 +1716: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: rejects remote, absolute, malformed, and unsupported references +08:42 +1717: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: reports an unsaved document that contains a local reference +08:42 +1718: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: converts traversal and symlink escapes into typed diagnostics +08:42 +1719: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: enforces dependency count and byte limits +08:42 +1720: loading /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart +08:43 +1720: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: platform host sends reduced source and geometry over one channel +08:43 +1721: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: Linux player keeps interactive media in a restricted WebKit host +08:44 +1722: loading /home/albert/busystack/busymark/test/src/export_options_test.dart +08:45 +1722: /home/albert/busystack/busymark/test/src/export_options_test.dart: defaults retain PDF geometry and independent HTML reading appearance +08:45 +1723: /home/albert/busystack/busymark/test/src/export_options_test.dart: every option persists and copies without losing unrelated fields +08:45 +1724: /home/albert/busystack/busymark/test/src/export_options_test.dart: absent and malformed persisted values fall back per field +08:45 +1725: /home/albert/busystack/busymark/test/src/export_options_test.dart: geometry resolves dimensions, orientation and four independent margins +08:45 +1726: /home/albert/busystack/busymark/test/src/export_options_test.dart: payload contains resolved geometry and every renderer option as data +08:45 +1727: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +08:48 +1727: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review +08:49 +1728: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab +08:49 +1729: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes +08:49 +1730: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save +08:50 +1731: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) +08:50 +1732: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) +08:50 +1733: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) +08:50 +1734: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) +08:50 +1735: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart +08:50 +1736: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation +08:50 +1737: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox +08:51 +1738: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit +08:51 +1739: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session +08:51 +1740: loading /home/albert/busystack/busymark/test/src/source_folding_test.dart +08:51 +1740: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line starts map to the following source line +08:51 +1741: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects sections lists quotes and code blocks +08:51 +1742: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding keeps shorter fence runs inside dynamic fences +08:51 +1743: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown structures inside fences do not create fold regions +08:51 +1744: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores tags inside multiline comments and CDATA +08:51 +1745: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores greater-than signs inside quoted attributes +08:51 +1746: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding scans opening tags across source lines +08:51 +1747: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding skips processing instructions and declarations +08:51 +1748: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding does not join separate indented code blocks +08:51 +1749: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsed gutter entries preserve source line numbers +08:51 +1750: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsing one repeated markdown subsection keeps peer sections visible +08:51 +1751: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding detects simple multiline tag blocks +08:51 +1752: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects nested headings task lists and blockquotes +08:51 +1753: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding handles nested same-name tags with a stack +08:51 +1754: /home/albert/busystack/busymark/test/src/source_folding_test.dart: malformed xml does not create unsafe fold ranges +08:51 +1755: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line info supports CRLF endings +08:51 +1756: loading /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart +08:52 +1756: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: shipped spelling catalog is metadata-only and revision pinned +08:53 +1757: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: ordinary Linux release does not prepare all-language pairs +08:53 +1758: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: committed spelling checksum inventory matches exact shipped bytes +08:53 +1759: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: native spelling notices are explicit installed artifacts +08:53 +1760: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: strict Snap smoke performs and verifies a local revision transition +08:53 +1761: loading /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart +08:53 +1761: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates and registers an empty instance with build settings +08:54 +1762: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates a non-publishing TOC library instance +08:54 +1763: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: imports selected Markdown and its referenced local media +08:54 +1764: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: renames an instance and refactors documented project references +08:54 +1765: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: first topic added to an empty instance becomes its home page +08:55 +1766: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: invalid project XML blocks an instance ID refactor without changing files +08:55 +1767: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: concurrent config change prevents every instance publication +08:55 +1768: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import copies selected topics, media, and inserts root entries in order +08:55 +1769: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import inserts several siblings after the exact reference in list order +08:55 +1770: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import initializes only the first imported topic as the start page +08:55 +1771: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects batch, existing-ID, target, and invalid-name conflicts +08:55 +1772: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import accepts a Unicode topic filename +08:55 +1773: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects a stale reference identity without publishing files +08:55 +1774: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import discovered-but-unparsed topic basename blocks import +08:55 +1775: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import fails closed when semantic topic discovery is incomplete +08:55 +1776: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import revalidates IDs before publishing and leaves no partial import +08:55 +1777: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import allows an unrelated topic created before publication +08:55 +1778: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects existing and selected-batch topic IDs +08:56 +1779: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects an invalid topic filename +08:56 +1780: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import fails closed on incomplete discovery +08:56 +1781: loading /home/albert/busystack/busymark/test/src/validation_consistency_test.dart +08:56 +1781: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: module load, topic validation, and config validation agree and clear fixes +08:56 +1782: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: editing a target refreshes diagnostics in the referencing topic +08:56 +1783: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variables, comments, interpolation controls and optional includes agree +08:57 +1784: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: interpolated includes agree across load, topic and config validation +08:57 +1785: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variable scope identity includes its declaring topic +08:57 +1786: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: cross-module includes refresh when their target changes +08:57 +1787: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: malformed glossary and keymap XML report the supporting file and clear after repair +08:57 +1788: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: Markdown validation preserves other files and scan warnings while clearing active errors +08:57 +1789: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: linked anchors use dirty buffers and canonical self-links, caching targets +08:57 +1790: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: large buffered targets parse asynchronously and missing saved targets use their buffers +08:58 +1791: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: front matter requires complete delimiter lines with LF and CRLF +08:58 +1792: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: HTML diagnostics exclude prose and literal code without relaxing rendering policy +08:58 +1793: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: location maps are reused within a parse and released between parses +08:58 +1794: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart +08:58 +1794: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes +08:58 +1795: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs +08:58 +1796: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin +08:58 +1797: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success +08:58 +1798: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser +08:58 +1799: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll +08:58 +1800: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll +08:58 +1801: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password +08:58 +1802: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling +08:58 +1803: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints +08:58 +1804: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors +08:58 +1805: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account +08:58 +1806: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics +08:58 +1807: loading /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart +08:59 +1807: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside Markdown collapsible chapter owns its section +08:59 +1808: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown keeps Writerside collapse syntax literal +08:59 +1809: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown does not assign semantic Writerside collapse +08:59 +1810: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside fenced code consumes its collapsible attribute line +08:59 +1811: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: edited collapsible blocks serialize valid Writerside attributes +08:59 +1812: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary fenced code does not consume a collapse attribute line +08:59 +1813: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: semantic collapsible elements become structured preview content +08:59 +1814: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside XML topic preview keeps collapsible content nested +08:59 +1815: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: shared collapse control honors default state and toggles +09:00 +1816: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: WYSIWYG collapses only Writerside chapter content +09:01 +1817: loading /home/albert/busystack/busymark/test/src/export_review_regression_test.dart +09:01 +1817: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside PDF retains percent-encoded non-ASCII footnote labels +09:02 +1818: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: included footnotes use separate document-occurrence namespaces +09:02 +1819: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=false) +09:02 +1820: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=true) +09:02 +1821: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: repeated includes receive distinct nested occurrence IDs +09:02 +1822: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: mapper cannot substitute a diagram for a colliding paragraph +09:02 +1823: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside rejects outside file URIs and symlinks while staging shared-module images +09:02 +1824: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=false) +09:02 +1825: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=true) +09:02 +1826: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=true) +09:02 +1827: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=true) +09:02 +1828: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=false) +09:02 +1829: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=false) +09:03 +1830: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: collapsible headings keep numbering and actual outline order +09:03 +1831: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false #%FF) +09:03 +1832: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false %FF.md) +09:03 +1833: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false file%FF.txt) +09:03 +1834: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true #%FF) +09:03 +1835: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true %FF.md) +09:03 +1836: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true file%FF.txt) +09:03 +1837: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: combined Writerside PDF keeps diagrams and scoped notes without reading an outside image +09:03 +1838: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: ordinary Markdown footnotes compile with retained definitions and repeated references +09:03 +1839: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart +09:04 +1839: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only committed newline and continued typing replace a table-ended selection +09:06 +1840: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table committed newline and continued typing replace a table-ended selection +09:06 +1841: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table committed newline and continued typing replace a table-ended selection +09:07 +1842: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables committed newline and continued typing replace a table-ended selection +09:07 +1843: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=false +09:08 +1844: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Up control=false +09:08 +1845: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=false +09:08 +1846: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Down control=false +09:08 +1847: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=true +09:09 +1848: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=true +09:09 +1849: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing commit uses real input +09:09 +1850: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing cancel uses real input +09:10 +1851: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=false +09:10 +1852: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Up control=false +09:10 +1853: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=false +09:10 +1854: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Down control=false +09:10 +1855: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=true +09:11 +1856: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=true +09:11 +1857: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing commit uses real input +09:11 +1858: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing cancel uses real input +09:11 +1859: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=false +09:12 +1860: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Up control=false +09:12 +1861: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=false +09:12 +1862: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Down control=false +09:12 +1863: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=true +09:13 +1864: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=true +09:13 +1865: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=false +09:13 +1866: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Up control=false +09:13 +1867: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=false +09:13 +1868: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Down control=false +09:14 +1869: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=true +09:14 +1870: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=true +09:14 +1871: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing commit uses real input +09:14 +1872: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing cancel uses real input +09:15 +1873: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=false +09:15 +1874: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Up control=false +09:15 +1875: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=false +09:15 +1876: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Down control=false +09:15 +1877: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=true +09:16 +1878: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=true +09:16 +1879: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing commit uses real input +09:16 +1880: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing cancel uses real input +09:16 +1881: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=false +09:16 +1882: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Up control=false +09:17 +1883: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=false +09:17 +1884: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Down control=false +09:17 +1885: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=true +09:17 +1886: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=true +09:17 +1887: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=false +09:18 +1888: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Up control=false +09:18 +1889: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=false +09:18 +1890: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Down control=false +09:18 +1891: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=true +09:18 +1892: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=true +09:19 +1893: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing commit uses real input +09:19 +1894: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing cancel uses real input +09:19 +1895: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=false +09:19 +1896: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Up control=false +09:20 +1897: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=false +09:20 +1898: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Down control=false +09:20 +1899: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=true +09:21 +1900: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=true +09:21 +1901: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing commit uses real input +09:21 +1902: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing cancel uses real input +09:21 +1903: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=false +09:21 +1904: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Up control=false +09:21 +1905: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=false +09:22 +1906: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Down control=false +09:22 +1907: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=true +09:22 +1908: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=true +09:22 +1909: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=false +09:22 +1910: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Up control=false +09:22 +1911: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=false +09:22 +1912: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Down control=false +09:23 +1913: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=true +09:23 +1914: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=true +09:23 +1915: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: false) +09:23 +1916: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: true) +09:23 +1917: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#80d00(keyId: "0x100000301", keyLabel: "Arrow Down", debugName: "Arrow Down"), previous: LogicalKeyboardKey#88515(keyId: "0x100000304", keyLabel: "Arrow Up", debugName: "Arrow Up"), word: false) +09:24 +1918: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after selection +09:24 +1919: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after document +09:24 +1920: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after same document source +09:24 +1921: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after disposal +09:24 +1922: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=false +09:25 +1923: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=true +09:25 +1924: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: clipboard history replaces selected table through document range +09:25 +1925: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: partial paragraph to table to paragraph replacement preserves outside text and undo +09:25 +1926: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell-local input cut paste and Tab remain local +09:26 +1927: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by up (variant: TargetPlatform.linux) +09:27 +1928: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by cancel (variant: TargetPlatform.linux) +09:27 +1929: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by document (variant: TargetPlatform.linux) +09:28 +1930: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by disposal (variant: TargetPlatform.linux) +09:29 +1931: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=false +09:29 +1932: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=true +09:29 +1933: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=false +09:30 +1934: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=true +09:30 +1935: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=false +09:30 +1936: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=true +09:31 +1937: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=false +09:31 +1938: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=true +09:31 +1939: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=false +09:32 +1940: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=true +09:32 +1941: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=false +09:32 +1942: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=true +09:33 +1943: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=false +09:33 +1944: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=true +09:33 +1945: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=false +09:34 +1946: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=true +09:34 +1947: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=false +09:34 +1948: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=true +09:35 +1949: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=false +09:35 +1950: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=true +09:35 +1951: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=false +09:36 +1952: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=true +09:36 +1953: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=false +09:36 +1954: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=true +09:37 +1955: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=false +09:37 +1956: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=true +09:38 +1957: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=false +09:38 +1958: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=true +09:38 +1959: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=false +09:39 +1960: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=true +09:39 +1961: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=false +09:39 +1962: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=true +09:40 +1963: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=false +09:40 +1964: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=true +09:41 +1965: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=false +09:41 +1966: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=true +09:42 +1967: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=false +09:42 +1968: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=true +09:43 +1969: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=false +09:43 +1970: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=true +09:44 +1971: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local paragraph accepts immediate Unicode input +09:44 +1972: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local cell accepts immediate Unicode input +09:44 +1973: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by caret before handoff +09:44 +1974: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by range before handoff +09:44 +1975: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by document before handoff +09:44 +1976: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by tab replacement before handoff +09:45 +1977: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by disposal before handoff +09:45 +1978: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input retains a scrolled viewport +09:45 +1979: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input uses clamped session offsets +09:45 +1980: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Backspace until committed input +09:46 +1981: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Delete until committed input +09:46 +1982: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Enter until committed input +09:46 +1983: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Left until committed input +09:47 +1984: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Right until committed input +09:47 +1985: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Up until committed input +09:47 +1986: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Down until committed input +09:47 +1987: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Home until committed input +09:47 +1988: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns End until committed input +09:48 +1989: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=false +09:48 +1990: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=true +09:48 +1991: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag up retains committed text input +09:48 +1992: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag cancel retains committed text input +09:48 +1993: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during clipboard preparation +09:49 +1994: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during open menu +09:49 +1995: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=false +09:50 +1996: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=true +09:50 +1997: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false switching a reused editor captures outgoing document selection +09:50 +1998: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true switching a reused editor captures outgoing document selection +09:51 +1999: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false switching a reused editor captures outgoing document selection +09:51 +2000: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true switching a reused editor captures outgoing document selection +09:51 +2001: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false switching a reused editor captures outgoing document selection +09:51 +2002: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true switching a reused editor captures outgoing document selection +09:52 +2003: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false switching a reused editor captures outgoing document selection +09:52 +2004: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true switching a reused editor captures outgoing document selection +09:52 +2005: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=false switching a reused editor captures outgoing document selection +09:53 +2006: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=true switching a reused editor captures outgoing document selection +09:53 +2007: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Cut edits only the selected table +09:53 +2008: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste edits only the selected table +09:54 +2009: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste as Plain Text edits only the selected table +09:54 +2010: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=false +09:54 +2011: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=true +09:54 +2012: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint up restores real typing +09:55 +2013: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint cancel restores real typing +09:55 +2014: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real Select All survives workspace session JSON and editor recreation +09:55 +2015: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real reverse drag survives workspace session JSON and editor recreation +09:55 +2016: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real Select All survives workspace session JSON and editor recreation +09:56 +2017: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real reverse drag survives workspace session JSON and editor recreation +09:56 +2018: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real Select All survives workspace session JSON and editor recreation +09:56 +2019: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real reverse drag survives workspace session JSON and editor recreation +09:56 +2020: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real Select All survives workspace session JSON and editor recreation +09:57 +2021: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real reverse drag survives workspace session JSON and editor recreation +09:57 +2022: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph local reverse selection restores locally +09:58 +2023: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell local reverse selection restores locally +09:58 +2024: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target removed uses current-document fallback +09:59 +2025: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed kind uses current-document fallback +09:59 +2026: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed text uses current-document fallback +09:59 +2027: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned block drag +10:00 +2028: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned cell drag +10:01 +2029: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=false +10:01 +2030: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=true +10:01 +2031: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=false +10:01 +2032: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=true +10:01 +2033: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Delete replaces the selected structured block and undoes +10:01 +2034: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Backspace replaces the selected structured block and undoes +10:02 +2035: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Cut replaces the selected structured block and undoes +10:02 +2036: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Enter replaces the selected structured block and undoes +10:02 +2037: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: plain paste replaces the selected structured block and undoes +10:03 +2038: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: structured paste replaces the selected structured block and undoes +10:03 +2039: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Delete replaces the selected structured block and undoes +10:03 +2040: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Backspace replaces the selected structured block and undoes +10:03 +2041: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Cut replaces the selected structured block and undoes +10:04 +2042: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Enter replaces the selected structured block and undoes +10:04 +2043: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: plain paste replaces the selected structured block and undoes +10:05 +2044: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: structured paste replaces the selected structured block and undoes +10:05 +2045: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Delete replaces the selected structured block and undoes +10:05 +2046: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Backspace replaces the selected structured block and undoes +10:05 +2047: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Cut replaces the selected structured block and undoes +10:06 +2048: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Enter replaces the selected structured block and undoes +10:06 +2049: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: plain paste replaces the selected structured block and undoes +10:06 +2050: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: structured paste replaces the selected structured block and undoes +10:06 +2051: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +10:07 +2052: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +10:07 +2053: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +10:07 +2054: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +10:07 +2055: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +10:07 +2056: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +10:07 +2057: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-ended selection accepts actual committed Unicode input once +10:07 +2058: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: captured table selection restores highlighting copy and mutation +10:08 +2059: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-block drag without changing its endpoint +10:08 +2060: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-cell drag without changing its endpoint +10:08 +2061: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated pointer cannot complete an owned document drag +10:08 +2062: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Delete cannot edit a local fallback +10:08 +2063: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Enter cannot edit a local fallback +10:08 +2064: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document plain paste cannot edit a local fallback +10:08 +2065: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document structured paste cannot edit a local fallback +10:09 +2066: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document typing cannot edit a local fallback +10:09 +2067: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: failed document deletion preserves redo history +10:09 +2068: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after failure +10:10 +2069: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after selection +10:10 +2070: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after document +10:10 +2071: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after disposal +10:10 +2072: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after failure +10:10 +2073: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after selection +10:11 +2074: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after document +10:11 +2075: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after disposal +10:11 +2076: loading /home/albert/busystack/busymark/test/src/busymark_toast_test.dart +10:12 +2076: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast works when hosted above the Navigator +10:13 +2077: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast appears at the bottom center and dismisses itself +10:13 +2078: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast action runs and dismisses the toast +10:13 +2079: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toasts queue instead of covering each other +10:13 +2080: loading /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart +10:14 +2080: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames normalizes runs, edges, case, and Unicode once +10:14 +2081: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames disabled preprocessing preserves established safe characters +10:14 +2082: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames resolves exact custom values per instance for Markdown and XML +10:14 +2083: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/default collision +10:14 +2084: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/custom collision +10:14 +2085: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses custom/custom collision +10:14 +2086: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics allows the same output name in disjoint instances +10:14 +2087: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics deduplicates repeated publication of one physical topic +10:14 +2088: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses a collision with an origin module topic +10:14 +2089: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics resolves conditioned names independently in each instance +10:14 +2090: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses invalid custom filenames before export +10:14 +2091: loading /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart +10:15 +2091: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover preference defaults off, serializes and copies independently +10:15 +2092: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover title and authors use the established metadata precedence +10:15 +2093: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: snapshot metadata, display text, explicit clears and plain JSON remain independent +10:15 +2094: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: instance title uses its display name and only known project metadata +10:15 +2095: loading /home/albert/busystack/busymark/test/src/path_utils_test.dart +10:17 +2095: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries cancels a wide directory listing at the limit +10:17 +2096: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries counts directories against the scan budget +10:17 +2097: /home/albert/busystack/busymark/test/src/path_utils_test.dart: directory listing failure marks traversal incomplete +10:18 +2098: /home/albert/busystack/busymark/test/src/path_utils_test.dart: display scan includes hidden and unsupported entries but not VCS data +10:18 +2099: loading /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart +10:21 +2099: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses multiple commits +10:21 +2100: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses merge commit with multiple parents +10:21 +2101: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: preserves author punctuation and separator-like subject text +10:21 +2102: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses empty history +10:21 +2103: loading /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart +10:22 +2103: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses clean repository status +10:22 +2104: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses modified tracked file +10:22 +2105: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged modification +10:22 +2106: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses unstaged modification +10:22 +2107: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged and unstaged same file +10:22 +2108: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: keeps staged addition and working-tree deletion separate +10:22 +2109: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: tracks rename state independently in each status column +10:22 +2110: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses untracked file +10:22 +2111: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses deleted file +10:22 +2112: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses renamed file +10:22 +2113: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses copied file +10:22 +2114: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses conflicted files +10:22 +2115: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses branch header and ahead behind counts +10:22 +2116: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses detached head header +10:22 +2117: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: preserves spaces, unicode, quotes, and newlines in filenames +10:22 +2118: loading /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart +10:25 +2118: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: process-backed Git gateway requires workspace trust +10:25 +2119: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: configures a repository author identity without terminal setup +10:26 +2120: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: runs core workflow in a temporary Git repository +10:27 +2121: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status lists every non-ignored hidden untracked file +10:27 +2122: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: resets the current branch with each explicit Git reset mode +10:28 +2123: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: refuses to reset while HEAD is detached +10:29 +2124: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: keeps staged and unstaged comparisons separate +10:29 +2125: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged rename diff and unstage preserve both paths +10:29 +2126: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: rollback restores both sides of a staged rename to HEAD +10:29 +2127: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged addition deleted from the working tree keeps separate diffs +10:30 +2128: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: preserves complete deleted content and restores a deleted version +10:30 +2129: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: failed historical blob read cannot delete the working file +10:30 +2130: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: constructs complete text and binary comparisons for untracked files +10:31 +2131: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: direct working-tree operations reject intermediate symlink escapes +10:31 +2132: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: fetch updates remote-tracking status without changing files +10:31 +2133: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: follows renames, compares complete versions, and restores one file +10:32 +2134: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: compares a merge commit with its first parent +10:32 +2135: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: switch treats an option-like branch name as an operand +10:33 +2136: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff and commit details preserve C-quoted UTF-8 paths +10:33 +2137: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: pushSetUpstream does not broaden an option-like branch to --all +10:33 +2138: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: detects conflicted files in a temporary Git repository +10:34 +2139: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status does not run a repository-configured filesystem monitor +10:34 +2140: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff APIs do not run a repository-configured textconv +10:35 +2141: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: commit details do not run a repository-configured textconv +10:35 +2142: loading /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart +10:36 +2142: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner closes child stdin so commands waiting for EOF can finish +10:36 +2143: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates commands that exceed the combined output limit +10:36 +2144: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: normal gateway commands always receive a finite timeout +10:36 +2145: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: gateway classifies a missing commit author identity +10:36 +2146: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap packages the Linux process-group launcher +10:36 +2147: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap Git uses bundled helpers, templates, and SSH +10:36 +2148: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap launcher never falls back to the confined host setsid +10:36 +2149: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves process launcher failures +10:36 +2150: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves a failed version probe result +10:36 +2151: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator reports not found for a genuinely missing command +10:36 +2152: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates descendant processes when a command times out +10:37 +2153: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: timeout covers descendants that outlive the direct child and hold stdio +10:39 +2154: loading /home/albert/busystack/busymark/test/src/git/git_widget_test.dart +10:40 +2154: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: hunk range text hides raw unified diff markers +10:40 +2155: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes are grouped correctly +10:41 +2156: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file checkboxes select files for commit +10:41 +2157: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: a path with staged and unstaged changes appears in both groups +10:41 +2158: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AD path shows staged addition and unstaged deletion without open action +10:41 +2159: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: staged rename preserves both paths and workspace scope +10:41 +2160: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: rename paths follow the selected Git status column +10:41 +2161: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit panel reports staged count and unsaved editor state +10:41 +2162: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message uses the grouped multiline form surface +10:41 +2163: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft is a secondary button immediately before Commit +10:41 +2164: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft replaces text, trims it, and moves the cursor +10:42 +2165: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history requires an active Markdown file +10:42 +2166: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file action menu does not contain commit selection actions +10:42 +2167: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untracked file menu uses an explicit delete action +10:42 +2168: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: unsupported untracked files remain stageable but cannot open +10:42 +2169: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit section colors files by Git status +10:42 +2170: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes view commit panel commits staged files with message +10:42 +2171: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit remains disabled without staged files +10:42 +2172: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: multiline commit message is retained and committed verbatim +10:42 +2173: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: failed commit preserves the commit message +10:42 +2174: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: committing disables actions and retains text until success +10:42 +2175: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message clears when repository or workspace changes +10:42 +2176: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: conflict group is visible +10:42 +2177: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: Git unavailable empty state is shown +10:43 +2178: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untrusted workspace shows repository trust prompt +10:43 +2179: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view shows no repository sync strip when clean +10:43 +2180: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not show branch dropdown +10:43 +2181: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not describe branch sync state +10:43 +2182: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history keeps comparison controls out of the sidebar +10:43 +2183: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history file rows show selected file diff +10:43 +2184: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history reset requires an explicit reset mode +10:43 +2185: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: dirty editor banner appears in diff viewer +10:43 +2186: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff hides duplicate file header but keeps open action +10:43 +2187: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action requires an explicit working-tree target +10:43 +2188: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action uses the explicit current path +10:43 +2189: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff keeps rename paths visible +10:43 +2190: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer renders patch rows with shared source view +10:43 +2191: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff can hide hunk headers and file action +10:43 +2192: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source uses full file snapshot when available +10:43 +2193: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: deleted diff shows the complete removed file snapshot +10:43 +2194: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer scrolls to the first source change on open +10:44 +2195: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source rows use configured editor font size +10:44 +2196: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff context lines show old and new number columns +10:44 +2197: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff line numbers use source gutter geometry +10:44 +2198: loading /home/albert/busystack/busymark/test/src/git/git_controller_test.dart +10:44 +2198: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: diff open target follows the current working-tree context +10:44 +2199: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: refreshes after workspace attach +10:45 +2200: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: does not expose repository Git for a single Markdown file +10:45 +2201: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust-required gateway does not inspect workspace before trust +10:45 +2202: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clearing trust immediately revokes repository access +10:45 +2203: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: status failure after trust retains the detected repository +10:45 +2204: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust is scoped to the attached workspace +10:45 +2205: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: Git executes with the canonical path that was trusted +10:45 +2206: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stage and unstage update state +10:45 +2207: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: loads only the selected change comparison and reconciles after stage +10:45 +2208: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: routes untracked selections to the untracked comparison +10:45 +2209: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: staged rename comparison preserves the original path +10:45 +2210: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: rollback forwards every validated rename path +10:45 +2211: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reactivates an open change comparison tab +10:45 +2212: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks empty message +10:45 +2213: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks when no files are staged +10:45 +2214: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: configures author identity through the active repository +10:45 +2215: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: AI staged-diff fingerprint rejects obsolete commit context +10:45 +2216: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: branch switch requires clean BusyMark editor state +10:45 +2217: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the active editor has unsaved content +10:45 +2218: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the current file is staged +10:45 +2219: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore protects a repository-relative file against the repository root +10:45 +2220: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset uses the selected commit and mode +10:45 +2221: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset is blocked by unsaved editor content +10:45 +2222: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: fetch refreshes repository status +10:45 +2223: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reports Git unavailable state +10:45 +2224: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stores operation failure state +10:45 +2225: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: exposes conflict state +10:45 +2226: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clears previous workspace Git state immediately on attach +10:45 +2227: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale refresh results after workspace switch +10:45 +2228: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: cancels set-upstream push when the workspace changes during remote lookup +10:45 +2229: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale history after a workspace switch +10:45 +2230: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: history tab reloads project history after workspace switch +10:45 +2231: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: current file history scopes selected commit details to the file +10:45 +2232: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file history switches between commit and working-tree comparisons +10:45 +2233: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history loads selected commit details without a file scope +10:45 +2234: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project commit details display the first changed file by default +10:45 +2235: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: selected commit file opens a project commit diff tab +10:45 +2236: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: closing a commit diff file tab activates the neighboring tab +10:45 +2237: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: deactivating a diff file keeps open diff tabs +10:45 +2238: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file and project history paginate and retain separate selections +10:45 +2239: loading /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart +10:46 +2239: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: Enter submits Git identity and preserves global scope +10:47 +2240: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: failed commit saves identity and retries the same commit +10:47 +2241: loading /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart +10:48 +2241: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses added file +10:48 +2242: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses deleted file +10:48 +2243: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses modified file with line numbers +10:48 +2244: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses renamed file +10:48 +2245: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted UTF-8 paths emitted by Git +10:48 +2246: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted rename metadata emitted by Git +10:48 +2247: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses binary file marker +10:48 +2248: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses multiple hunks +10:48 +2249: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: keeps no newline marker as header line +10:48 +2250: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: tolerates unknown diff header lines +10:48 +2251: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart +10:50 +2251: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export failure dialog exposes actionable detail +10:51 +2252: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export eligibility is limited to active regular Markdown +10:51 +2253: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: workspace PDF export accepts a Writerside module instance +10:51 +2254: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: atomic PDF publication never replaces without confirmation +10:51 +2255: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: service rejects compiler output that is not a PDF +10:51 +2256: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler locator prefers the explicit development override +10:51 +2257: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler cancellation force-stops an unresponsive process +10:52 +2258: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: asset staging accepts passive SVG and rejects external content +10:52 +2259: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: Linux packaging pins and installs the bundled Typst compiler +10:52 +2260: loading /home/albert/busystack/busymark/test/src/source_search_test.dart +10:52 +2260: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex uses Unicode code points and diagnoses zero-length matches +10:52 +2261: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace-style bounded matching stops after the sentinel match +10:52 +2262: /home/albert/busystack/busymark/test/src/source_search_test.dart: search worker terminates a running backtracking expression +10:52 +2263: /home/albert/busystack/busymark/test/src/source_search_test.dart: plain search finds case-insensitive matches by default +10:52 +2264: /home/albert/busystack/busymark/test/src/source_search_test.dart: case-sensitive and whole-word options constrain matches +10:52 +2265: /home/albert/busystack/busymark/test/src/source_search_test.dart: whole-word boundaries recognize Unicode letters and marks +10:52 +2266: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex search and invalid regex are safe +10:52 +2267: /home/albert/busystack/busymark/test/src/source_search_test.dart: navigation tracks current index and wraps +10:52 +2268: /home/albert/busystack/busymark/test/src/source_search_test.dart: matches inside folded content are marked hidden and revealable +10:52 +2269: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace search groups authoring content by file +10:52 +2270: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker cancels stale requests +10:52 +2271: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker bounds transferred high-match results +10:52 +2272: loading /home/albert/busystack/busymark/test/src/source_commands_test.dart +10:53 +2272: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab inserts spaces +10:53 +2273: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab indents selected lines without replacing their text +10:53 +2274: /home/albert/busystack/busymark/test/src/source_commands_test.dart: indent and outdent selected lines +10:53 +2275: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter continues unordered ordered task and blockquote lines +10:53 +2276: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter exits empty list item +10:53 +2277: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts for nested source lines +10:53 +2278: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts beneath each source parent +10:53 +2279: /home/albert/busystack/busymark/test/src/source_commands_test.dart: inline commands toggle bold italic code and links +10:53 +2280: /home/albert/busystack/busymark/test/src/source_commands_test.dart: code fence and image insertion keep source-specific placeholders +10:53 +2281: /home/albert/busystack/busymark/test/src/source_commands_test.dart: block insertion accepts localized default content +10:53 +2282: loading /home/albert/busystack/busymark/test/src/source_highlighter_test.dart +10:54 +2282: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: source highlighting bounds high-match span composition +10:55 +2283: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter colors editor syntax +10:55 +2284: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter formats fenced code +10:55 +2285: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter tracks dynamic fence delimiters +10:55 +2286: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter does not open on indented code +10:55 +2287: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: xml source highlighter colors tags attributes and strings +10:55 +2288: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: plain source highlighter keeps normal editor text color +10:55 +2289: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: controller can keep editable text transparent for custom render +10:55 +2290: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: transparent editing layout matches rendered Markdown layout +10:55 +2291: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions project body lines out of editable text +10:55 +2292: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: rendered folded regions hide collapsed header text +10:55 +2293: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions collapse measured editor height +10:55 +2294: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown editor keeps syntax markers visible while styling content +10:55 +2295: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown tracks dynamic fence delimiters +10:55 +2296: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges nested emphasis inside links +10:55 +2297: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps inline code inside list items +10:55 +2298: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges bold and italic nesting +10:55 +2299: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges links inside blockquotes +10:55 +2300: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps emphasis inside table cells +10:55 +2301: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter recognizes math without damaging code +10:55 +2302: loading /home/albert/busystack/busymark/test/src/html_export_options_test.dart +10:57 +2302: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: TOC and numbering use the semantic hierarchy and preserve anchor IDs +10:57 +2303: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.light emits complete color variables, responsive width and metadata +10:57 +2304: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.dark emits complete color variables, responsive width and metadata +10:57 +2305: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.automatic emits complete color variables, responsive width and metadata +10:57 +2306: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: custom CSS follows generated rules and is captured before processing +10:58 +2307: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF CSS hashes the text seen by the HTML parser +10:58 +2308: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF custom and built-in CSS apply in Chromium +11:01 +2309: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF CSS hashes the text seen by the HTML parser +11:01 +2310: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF custom and built-in CSS apply in Chromium +11:02 +2311: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR CSS hashes the text seen by the HTML parser +11:02 +2312: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR custom and built-in CSS apply in Chromium +11:03 +2313: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: single-file attachments retain download names and reject source data URLs +11:03 +2314: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CSS rejects unsafe URLs, imports, HTML, unreadable and oversized files +11:03 +2315: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: repeated embedded assets are bounded before publication and keep old output +11:03 +2316: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.singleFile packages validated assets without source paths or fetching +11:03 +2317: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.assetsDirectory packages validated assets without source paths or fetching +11:03 +2318: loading /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart +11:04 +2318: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: navigation glyphs resolve for both reading directions +11:04 +2319: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: editing glyphs resolve for both reading directions +11:04 +2320: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git branch glyph does not mirror with reading direction +11:04 +2321: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git action glyphs have native menu equivalents +11:04 +2322: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Arabic and Persian font fallbacks are available in the snap +11:04 +2323: loading /home/albert/busystack/busymark/test/src/source_comparison_test.dart +11:05 +2323: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: keeps separated edits as exact separate changes +11:05 +2324: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: handles repeated lines without losing exact offsets +11:05 +2325: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: refines Unicode intraline ranges on UTF-16 boundaries +11:05 +2326: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: distinguishes whitespace, final newline, empty, and XML changes +11:05 +2327: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: labels an unanchored expensive comparison as simplified +11:05 +2328: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: version identity detects stale comparison inputs +11:05 +2329: loading /home/albert/busystack/busymark/test/src/writerside_project_test.dart +11:07 +2329: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers modules, indexes symbols, and resolves origin references +11:08 +2330: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under build +11:08 +2331: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under a hidden directory +11:08 +2332: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: module discovery hard-excludes VCS metadata directories +11:08 +2333: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic ownership is project-wide and prefers the nested module +11:08 +2334: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace promotes a parent directory to a multi-module project +11:08 +2335: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic symbols cannot be renamed independently of their files +11:08 +2336: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace module and instance selection changes active context +11:08 +2337: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse overlays indexed symbols and preserves unrelated diagnostics +11:08 +2338: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of variables updates completion and resolution without reopening +11:08 +2339: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of an instance tree updates active project context +11:08 +2340: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: BusyMark matches the official builder semantic snapshot for the fixture +11:08 +2341: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: conformance fixture preserves source and resolves semantic content +11:08 +2342: loading /home/albert/busystack/busymark/test/src/math_renderer_test.dart +11:09 +2342: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: renders multiple expressions in one batch and isolates failure +11:09 +2343: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: coalesces a large page, caches successes, and rebases local IDs +11:09 +2344: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: deduplicates identical formulas pending in the same batch +11:09 +2345: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: discards an obsolete block revision +11:09 +2346: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: cancels WebKit work after a sole request is superseded +11:09 +2347: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: maps timeout and unavailable hosts to local math failures +11:09 +2348: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rejects oversized input before invoking WebKit +11:09 +2349: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: extracts baseline style and preserves vector-safe MathJax SVG +11:09 +2350: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: resolves currentColor without flattening explicit SVG colors +11:09 +2351: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rebases wide MathJax coordinates before secure normalization +11:09 +2352: loading /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart +11:10 +2352: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: stages vector/raster assets, maps OpenAPI, and preserves failed source +11:13 +2353: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: enforces the export block count without failing the document +11:13 +2354: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: loads a Writerside referenced diagram before PDF rendering +11:13 +2355: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: static OpenAPI export contains selectable reference sections +11:13 +2356: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: Typst exports generated vector/raster assets and falls back on failure +11:13 +2357: loading /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart +11:14 +2357: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: parses every GTK 3 decoration token in physical order +11:14 +2358: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: ignores unknown controls and actions safely +11:14 +2359: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: loads preferences and delegates the narrowly scoped lower action +11:14 +2360: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: window preference values have stable equality +11:14 +2361: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: null decoration layout uses the documented GTK 3 default +11:14 +2362: loading /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart +11:16 +2362: /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart: release smoke report path requires an explicit nonempty argument +11:16 +2363: loading /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart +11:18 +2363: /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart: spelling release smoke requires an explicit guarded report path +11:18 +2364: loading /home/albert/busystack/busymark/test/src/system_accent_test.dart +11:19 +2364: /home/albert/busystack/busymark/test/src/system_accent_test.dart: uses the native Yaru orange accent as the offline fallback +11:19 +2365: /home/albert/busystack/busymark/test/src/system_accent_test.dart: keeps exact RGB portal accent color values authoritative +11:19 +2366: /home/albert/busystack/busymark/test/src/system_accent_test.dart: maps Ubuntu accent names when RGB portal value is unavailable +11:19 +2367: /home/albert/busystack/busymark/test/src/system_accent_test.dart: falls back to RGB when the Ubuntu accent is unavailable +11:19 +2368: /home/albert/busystack/busymark/test/src/system_accent_test.dart: Yaru accent wins over a different generic portal RGB +11:19 +2369: /home/albert/busystack/busymark/test/src/system_accent_test.dart: a Yaru accent signal remains authoritative over generic RGB +11:19 +2370: /home/albert/busystack/busymark/test/src/system_accent_test.dart: an unavailable named accent releases the current generic RGB +11:19 +2371: /home/albert/busystack/busymark/test/src/system_accent_test.dart: portal subscribes before both reads and retains changes during reads +11:19 +2372: /home/albert/busystack/busymark/test/src/system_accent_test.dart: missing portal keys, malformed signals, cancellation and resubscription +11:19 +2373: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic portal initialization cannot overwrite a newer generic change +11:19 +2374: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=true; unavailability selects current portal +11:19 +2375: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=false; unavailability selects current portal +11:19 +2376: /home/albert/busystack/busymark/test/src/system_accent_test.dart: source errors remain independent and healthy native updates continue +11:19 +2377: /home/albert/busystack/busymark/test/src/system_accent_test.dart: startup changes supersede native snapshots, including unavailable changes +11:19 +2378: /home/albert/busystack/busymark/test/src/system_accent_test.dart: disposal completes pending startup and cancels each owned source once +11:19 +2379: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid GTK releases startup while portal reads stay pending +11:19 +2380: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic signal cannot resolve startup before pending named read +11:19 +2381: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid named portal releases startup without pending RGB +11:19 +2382: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending GTK blocks ready portal until GTK arrives before deadline +11:19 +2383: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on unavailable +11:19 +2384: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on failure +11:19 +2385: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on deadline +11:19 +2386: /home/albert/busystack/busymark/test/src/system_accent_test.dart: all silent sources time out to orange and late sources recover +11:19 +2387: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending initialization disposal cancels timers and portal session once +11:19 +2388: loading /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart +11:22 +2388: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=false section order and native links +11:22 +2389: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=true section order and native links +11:22 +2390: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=false section order and native links +11:23 +2391: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=true section order and native links +11:23 +2392: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=false section order and native links +11:23 +2393: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=true section order and native links +11:23 +2394: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=false section order and native links +11:23 +2395: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=true section order and native links +11:23 +2396: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: multipage native outline ends before any body paragraphs; links and page references stay correct +11:24 +2397: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=bottomCenter +11:24 +2398: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=off +11:24 +2399: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=bottomCenter +11:24 +2400: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=off +11:24 +2401: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif portrait margins +11:25 +2402: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif landscape margins +11:25 +2403: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif portrait margins +11:25 +2404: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif landscape margins +11:26 +2405: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: request defaults come from source metadata and native outline title stays localized +11:26 +2406: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: an oversized cover fails clearly and leaves the existing PDF untouched +11:26 +2407: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in sansSerif +11:26 +2408: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in serif +11:26 +2409: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+a0 fails without replacing the PDF +11:27 +2410: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+2060 fails without replacing the PDF +11:27 +2411: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within A4 cover bounds or fails without replacing the PDF +11:27 +2412: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within A4 cover bounds or fails without replacing the PDF +11:28 +2413: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within A4 cover bounds or fails without replacing the PDF +11:28 +2414: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within A4 cover bounds or fails without replacing the PDF +11:28 +2415: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within A4 cover bounds or fails without replacing the PDF +11:28 +2416: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within A4 cover bounds or fails without replacing the PDF +11:29 +2417: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within narrow custom cover bounds or fails without replacing the PDF +11:29 +2418: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within narrow custom cover bounds or fails without replacing the PDF +11:29 +2419: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within narrow custom cover bounds or fails without replacing the PDF +11:29 +2420: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within narrow custom cover bounds or fails without replacing the PDF +11:29 +2421: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within narrow custom cover bounds or fails without replacing the PDF +11:29 +2422: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within narrow custom cover bounds or fails without replacing the PDF +11:30 +2423: loading /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart +11:30 +2423: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: workspace spelling UI has no obsolete floating or Material chooser +11:30 +2424: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Writerside nested TOC and comment retain rich spelling through correction +11:36 +2425: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich image review preserves authored source through undo and redo +11:40 +2426: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested code image beside math through undo and redo +11:43 +2427: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested address image beside math through undo and redo +11:46 +2428: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Ctrl+N typing paints live spelling targets and corrects with undo +11:49 +2429: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: confirmed spelling underline survives continued typing +11:50 +2430: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo café + +wrld + +11:52 +2431: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo +world + +wrld + +11:55 +2432: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: | helo café | +| --- | +| hello | + +wrld + +11:58 +2433: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in editor +11:58 +2434: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in split +11:59 +2435: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: language-required state uses compact document status instead of a banner +12:00 +2436: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: general Markdown fixture finishes automatic rich spelling +12:05 +2437: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in editor +12:06 +2438: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in source +12:07 +2439: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new rich document checks spelling after choosing its language +12:09 +2440: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new source document checks spelling after choosing its language +12:10 +2441: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in editor mode +12:11 +2442: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in source mode +12:11 +2443: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in preview mode +12:12 +2444: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in split mode +12:13 +2445: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: spelling-off status remains an actionable language control +12:14 +2446: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: status initializes the chooser when automatic spelling is off +12:15 +2447: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: banner installs the required dictionary and then conceals +12:17 +2448: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed banner installation keeps the unresolved state +12:18 +2449: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: routine checking does not create persistent editor chrome +12:19 +2450: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic spelling failure is visible in the compact banner +12:19 +2451: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic incomplete projection is visible in the compact banner +12:20 +2452: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: native spelling submenu applies immediate language choices +12:21 +2453: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: cancelling document dictionary install preserves override +12:22 +2454: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: document language changes only after dictionary installation +12:25 +2455: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed document dictionary install preserves override +12:27 +2456: loading /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart +12:27 +2456: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: native fragment preserves formatting and structured blocks through JSON +12:28 +2457: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: single rich paragraphs preserve list descendants through source +12:28 +2458: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: fragment rejects invalid versions, ranges, kinds, and excessive nesting +12:28 +2459: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: relative links are rebased for another document +12:28 +2460: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: inline images retain their source media path between projects +12:28 +2461: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Writerside structure survives the fragment and insertion +12:28 +2462: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: styled table-cell insertion preserves emphasis and table structure +12:28 +2463: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard service serializes writes and reads the latest result +12:28 +2464: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard HTML carries headings, emphasis, tasks, tables, and code +12:28 +2465: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: external HTML blockquotes survive Editor serialization +12:28 +2466: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard fragment serializes its selected structure as Markdown +12:28 +2467: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: HTML normalization preserves supported CSS and checkbox state safely +12:28 +2468: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=false) +12:30 +2469: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=true) +12:30 +2470: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix < survives Enter, source reload and label edit +12:31 +2471: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix *< survives Enter, source reload and label edit +12:31 +2472: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix * survives Enter, source reload and label edit +12:31 +2473: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: © +12:32 +2474: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: & +12:32 +2475: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: &* +12:32 +2476: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=false) +12:32 +2477: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=true) +12:33 +2478: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard pasted URL retains live link coverage through split, Backspace and suffix formatting +12:33 +2479: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard fresh Editor restores system clipboard formatting and undo +12:33 +2480: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor pastes a web layout table as a complete document +12:34 +2481: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete heading list and code blocks retain structure at every paragraph position +12:35 +2482: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete blocks in list items preserve descendants and undo tree +12:36 +2483: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard single rich paragraph field replacement preserves every list subtree +12:36 +2484: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste keeps the committed caret and typing position +12:36 +2485: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard rich paste in math fields uses source coordinates +12:37 +2486: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste returns the committed block caret +12:37 +2487: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste preserves list descendants through Undo and Redo +12:37 +2488: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste persists intentional whitespace through history +12:38 +2489: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document paste preserves whitespace and heading replacement scope +12:38 +2490: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste restores table-cell focus and committed caret +12:38 +2491: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history multi-paragraph paste focuses the committed last paragraph +12:39 +2492: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copy all does not duplicate nested list children +12:39 +2493: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document copy preserves a structured blockquote +12:39 +2494: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard right-click opens the menu for a whole-document selection +12:39 +2495: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image-only clipboard context menu offers only normal Paste +12:39 +2496: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Copy Plain Text strips formatting in another Editor +12:40 +2497: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard document selection menu can copy plain text +12:40 +2498: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard partial inline copy keeps formatting inside another paragraph +12:40 +2499: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut transfers formatting before deleting the selection +12:40 +2500: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard malformed native fragment falls back to HTML +12:40 +2501: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML-only clipboard imports into a fresh Editor +12:40 +2502: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML clipboard plain paste inserts only its text +12:40 +2503: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard retained external HTML preserves structure on history paste +12:41 +2504: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard current HTML-only and malformed HTML use ordinary importer fallbacks +12:41 +2505: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard external image history retains the bytes ingested before its dialog +12:45 +2506: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history panel path paste has one editor-owned retention write +12:48 +2507: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copied local video can be pasted from history in Editor +12:49 +2508: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image paste cancellation is terminal and cleans new assets +12:53 +2509: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image picker alternatives stay provisional until acceptance +13:05 +2510: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image finalization failure preserves the inserted reference and file +13:07 +2511: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard native and history image filesystem failures are handled outcomes +13:07 +2512: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain history paste replaces a document selection ending at a non-field block +13:07 +2513: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image history follows table and multi-block destinations +13:09 +2514: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Ctrl+Shift+V pastes only interoperable plain text +13:10 +2515: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste never probes or ingests an existing image path +13:10 +2516: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard failed clipboard write leaves cut selection intact +13:10 +2517: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste does not edit a destination changed during the read +13:10 +2518: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor paste preserves composition before and during reads +13:10 +2519: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard table-cell paste shortcut is consumed during composition +13:10 +2520: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard composition starting during image ingestion invalidates and cleans paste +13:11 +2521: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut does not delete a selection changed during the write +13:11 +2522: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste is cancelled when the destination Editor is replaced +13:12 +2523: loading /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart +13:13 +2523: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed light surface palette +13:14 +2524: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed dark surface palette +13:14 +2525: loading /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart +13:16 +2525: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title edit preserves the resolved topic owner across modules +13:17 +2526: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ") +13:17 +2527: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ") +13:17 +2528: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ') +13:17 +2529: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ') +13:17 +2530: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ") +13:18 +2531: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ") +13:18 +2532: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ') +13:18 +2533: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ') +13:18 +2534: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: normalized title identity still rejects changed content and raw matching stays exact +13:18 +2535: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects missing attribute ranges before publication +13:18 +2536: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects corrupt attribute ranges before publication +13:18 +2537: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title publication rejects duplicate attributes in resulting XML +13:18 +2538: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (") +13:18 +2539: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (') +13:18 +2540: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: instance title save, reopen, unchanged OK, and edit keep one escaping layer +13:20 +2541: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: single-quoted Markdown override reopens decoded and edits without touching example +13:20 +2542: loading /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart +13:21 +2542: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: production provider consumes an older GTK accent without portals +13:21 +2543: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: non-Linux never creates platform listeners +13:21 +2544: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: missing native snapshot uses portal, then native events regain priority +13:21 +2545: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: GTK with silent portals +13:22 +2546: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: named with silent RGB +13:22 +2547: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK before deadline +13:22 +2548: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK at deadline +13:22 +2549: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes valid +13:22 +2550: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes unavailable +13:22 +2551: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named at deadline +13:22 +2552: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: all silent at deadline +13:22 +2553: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: application scope teardown cancels unresolved startup deadlines +13:22 +2554: loading /home/albert/busystack/busymark/test/src/markdown_parser_test.dart +13:23 +2554: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parsed formatting boundaries +13:23 +2555: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping locates partially consumed delimiter runs +13:23 +2556: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping retains escaped collapsed references +13:23 +2557: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping keeps original autolink semantics +13:23 +2558: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping preserves supported autolink variants +13:23 +2559: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parser case folding for references +13:23 +2560: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: ordinary reference parsing retains pinned sharp-S folding behavior +13:23 +2561: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: invalid email-like text cannot orphan a later mapped link +13:23 +2562: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects logical content to container source +13:23 +2563: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: positioned block mapping accepts a trailing empty logical line +13:23 +2564: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping ignores title and code-span source breaks +13:23 +2565: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping keeps each hard-break occurrence range +13:23 +2566: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping matches standalone HTML break layout +13:23 +2567: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects HTML break layout through containers +13:23 +2568: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: HTML break layout mapping preserves soft breaks and literal code +13:23 +2569: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts title, outline, links, images, and code fences +13:24 +2570: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts front matter title +13:24 +2571: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside Markdown title comes from H1, not front matter +13:24 +2572: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside front matter title does not satisfy missing H1 +13:24 +2573: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: parseAsync handles documents above the background threshold +13:24 +2574: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates Unicode heading anchors for supported languages +13:24 +2575: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deduplicates generated heading IDs in source order +13:24 +2576: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates heading IDs from semantic inline text +13:24 +2577: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: canonicalizes valid ATX and setext heading variants +13:24 +2578: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: retains Writerside title when complex list source needs fallback +13:24 +2579: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unresolved links, missing images, and missing alt text +13:24 +2580: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not validate schemed URIs as local references +13:24 +2581: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: resolves home-relative local image references +13:24 +2582: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: derives diagnostic links and images from Markdown AST semantics +13:24 +2583: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: normal Markdown image diagnostics stay within the workspace root +13:24 +2584: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local reference diagnostics allow absolute images but reject other escapes +13:24 +2585: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: cross-linked Markdown anchor validation does not recurse forever +13:24 +2586: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation stays inside the workspace root +13:24 +2587: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read unsupported anchor targets +13:24 +2588: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read oversized Markdown targets +13:25 +2589: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unsafe raw HTML +13:25 +2590: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe raw HTML does not produce unsafe diagnostics +13:25 +2591: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Markdown headings inside paired raw HTML are not outline headings +13:25 +2592: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML tags produce unsafe diagnostics +13:25 +2593: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML attributes produce unsafe diagnostics +13:25 +2594: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML URLs produce unsafe diagnostics +13:25 +2595: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deeply nested raw HTML produces unsafe diagnostic +13:25 +2596: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe HTML tags do not become Writerside XML blocks +13:25 +2597: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts Writerside Markdown XML blocks and variables +13:25 +2598: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: emits deterministic Markdown accessibility diagnostics +13:25 +2599: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not report populated table headers as empty +13:25 +2600: loading /home/albert/busystack/busymark/test/src/feedback_submission_test.dart +13:25 +2600: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator requires category and enforces subject and message bounds +13:25 +2601: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts inclusive subject and message boundaries +13:27 +2602: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects oversized fields and invalid optional email +13:27 +2603: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator counts Unicode code points at subject and message boundaries +13:27 +2604: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts practical valid email syntax +13:27 +2605: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects malformed email syntax and length boundaries +13:27 +2606: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes required metadata and omits unapproved details +13:27 +2607: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes only explicitly approved technical details +13:27 +2608: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission uses every declared category wire value +13:27 +2609: loading /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart +13:28 +2609: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter owns application chrome; native bridge carries no split geometry +13:28 +2610: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Workspace, Welcome and Settings use the shared full-height frame +13:28 +2611: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native clipboard, menus, Writerside media and rendering hosts remain registered +13:28 +2612: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Linux desktop identity uses the standard Snap launcher mapping +13:28 +2613: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: strict Snap keeps the GTK SVG loader ABI-aligned with GNOME +13:28 +2614: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder stages bundled Git tools +13:28 +2615: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local repack replaces clean-snap font links with new bundle fonts +13:28 +2616: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: confined dependency checks reject missing and wrong resolutions +13:29 +2617: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap reuses verified platform libraries and retains private tools +13:29 +2618: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder uses the project Flutter toolchain +13:29 +2619: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snapcraft pins the same Flutter release as the project +13:29 +2620: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder keeps compiler output off the system tmpfs +13:29 +2621: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter content menus use native GTK popup menu semantics +13:29 +2622: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native content menus clean up direct GTK popup sessions +13:29 +2623: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap packaging hooks consolidate resources and keep required fixes +13:29 +2624: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native GTK theme follows brightness without replacing a valid user theme +13:29 +2625: loading /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart +13:30 +2625: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: valid native fragment wins over HTML and text +13:30 +2626: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: malformed native fragment falls through to valid HTML +13:30 +2627: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: unusable HTML falls through to source and plain text +13:30 +2628: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: HTML-only blockquotes are usable through descendant content +13:30 +2629: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: mixed external HTML preserves every block for Editor and Markdown Source +13:30 +2630: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode uses only interoperable text +13:30 +2631: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode rejects source-only and image-only payloads +13:30 +2632: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: whitespace text is valid and empty text is unavailable +13:30 +2633: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: explicit image is first in normal mode +13:30 +2634: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: Editor and Source use their required textual fallback order +13:30 +2635: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: structured source serialization accepts the destination mode +13:30 +2636: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: native inline serialization preserves whitespace without a newline +13:30 +2637: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: table-cell fragment serialization escapes pipes and flattens lines +13:30 +2638: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: local image path detection is safe and rejects altered URI meaning +13:30 +2639: loading /home/albert/busystack/busymark/test/src/uri_utils_test.dart +13:32 +2639: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: external launch policy is an explicit safe-list +13:32 +2640: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: scheme detection remains broader than launch policy +13:32 +2641: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: remote resources only allow http and https +13:32 +2642: loading /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart +13:34 +2642: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger aggregates locally by month and provider +13:36 +2643: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger starts a clean aggregate in a new month +13:36 +2644: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: malformed ledger data is treated as empty, not surfaced +13:36 +2645: loading /home/albert/busystack/busymark/test/src/busymark_design_test.dart +13:37 +2645: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch suppresses state halos and preserves focus borders +13:38 +2646: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in dark +13:38 +2647: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in dark +13:38 +2648: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in light +13:38 +2649: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in light +13:38 +2650: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: disabled switch preserves inherited disabled styling +13:38 +2651: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch row owns its control and activates exactly once +13:38 +2652: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch preserves Yaru drag activation +13:38 +2653: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: radio suppresses state halos and preserves focus borders +13:38 +2654: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in dark +13:38 +2655: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in dark +13:38 +2656: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in light +13:38 +2657: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in light +13:38 +2658: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: informational dialog keeps the close control at the right edge +13:38 +2659: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: Split Preview stays fluid without copying Source-only chrome +13:38 +2660: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: document frame centers wide content and honors physical safe edges +13:38 +2661: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: toolbar clearance is applied only to the toolbar edge +13:38 +2662: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar header and list compose the shared vertical gap +13:38 +2663: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header controls delegate geometry and elevation to Yaru +13:39 +2664: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dark header menu delegates its tooltip to IconButton +13:39 +2665: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: settings dropdowns use the framework tooltip +13:39 +2666: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: desktop tooltips use one explicit natural-width geometry +13:39 +2667: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: popup menu rows show shortcuts without redundant hover tooltips +13:39 +2668: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup sends shortcuts and separators to GTK and maps selection +13:39 +2669: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: colored popup icons stay on the native menu path +13:39 +2670: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup preserves asynchronous menu loading +13:39 +2671: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic theme retains Yaru geometry, typography, and interaction +13:39 +2672: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: accent controls use the native Yaru foreground and fill roles +13:39 +2673: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic surfaces use one modern neutral Linux role ladder +13:39 +2674: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: equal-choice segmented selection stays neutral +13:39 +2675: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped cards use native boxed-list depth and roles +13:39 +2676: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped list headings use the native semantic heading style +13:39 +2677: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner uses semantic surfaces in light and dark +13:39 +2678: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner animates its mounted layout height +13:39 +2679: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner reveal honors reduced motion +13:40 +2680: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog grouped cards resolve the contextual native layer +13:40 +2681: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native dark hover role +13:40 +2682: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native light hover role +13:40 +2683: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped row subtitles use semantic native text roles +13:40 +2684: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog roles and popup selectors use real themed buttons +13:40 +2685: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in dark +13:40 +2686: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in light +13:40 +2687: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog actions wrap at narrow localized text widths +13:40 +2688: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: action rows use semantic destructive foreground in light and dark themes +13:41 +2689: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: shared text-entry group delegates fields to the framework +13:41 +2690: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry uses the native row-owned form surface +13:41 +2691: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry forwards readOnly without disabling input +13:41 +2692: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic standard icon button delegates to FilledButton.icon +13:41 +2693: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar surface owns one directional semantic boundary +13:41 +2694: loading /home/albert/busystack/busymark/test/src/source_document_test.dart +13:42 +2694: /home/albert/busystack/busymark/test/src/source_document_test.dart: empty document mapping is stable +13:42 +2695: /home/albert/busystack/busymark/test/src/source_document_test.dart: no-fold mapping preserves offsets and ranges +13:42 +2696: /home/albert/busystack/busymark/test/src/source_document_test.dart: single fold projects visible text and maps offsets +13:42 +2697: /home/albert/busystack/busymark/test/src/source_document_test.dart: fold-boundary selection mapping preserves direction, not coverage +13:42 +2698: /home/albert/busystack/busymark/test/src/source_document_test.dart: multiple adjacent and overlapping ranges normalize safely +13:42 +2699: /home/albert/busystack/busymark/test/src/source_document_test.dart: full and visible ranges report hidden clipping +13:42 +2700: /home/albert/busystack/busymark/test/src/source_document_test.dart: CRLF line endings keep line starts and projection correct +13:42 +2701: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits before and after folds preserve unrelated folds +13:42 +2702: /home/albert/busystack/busymark/test/src/source_document_test.dart: full editing values preserve composing through folded projection +13:42 +2703: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits incrementally retain unaffected line entries +13:42 +2704: /home/albert/busystack/busymark/test/src/source_document_test.dart: incremental line indexes match full indexes across line-break edits +13:42 +2705: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edit intersecting a fold unfolds only affected region +13:42 +2706: /home/albert/busystack/busymark/test/src/source_document_test.dart: collapsed-boundary insertion preserves hidden folded content +13:42 +2707: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible insertions before and after a fold keep hidden text +13:42 +2708: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible deletions near a fold keep hidden text +13:42 +2709: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible replacement spanning a fold replaces the hidden range +13:42 +2710: loading /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart +13:44 +2710: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: uses each heading level effective text size for inline math +13:46 +2711: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: custom typography and four margins control actual math jobs +13:46 +2712: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: prepares inline and display math as deterministic vector assets +13:46 +2713: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: footnote inline and display math retain surrounding semantics +13:46 +2714: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst compiles footnote math through the math renderer +13:46 +2715: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst keeps MathJax SVG inline and exports failed math visibly +13:46 +2716: loading /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart +13:47 +2716: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: tabs synchronize and support arrow, Home and End keys +13:48 +2717: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table sorting is numeric and excludes disabled columns +13:48 +2718: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Markdown table keeps empty columns equal width +13:48 +2719: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Writerside table preserves declared column width +13:48 +2720: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table spans preserve geometry and sticky header position +13:48 +2721: loading /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart +13:50 +2721: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: records balance a two-line source preview with visible metadata +13:51 +2722: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: large records use a short preview and do not create a tooltip +13:51 +2723: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: actions menu is right of search and owns refresh and clear +13:52 +2724: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: keyboard navigation keeps the selected history entry visible +13:54 +2725: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: Delete edits the focused search without removing history +13:54 +2726: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: unsupported payload disables paste for the destination +13:54 +2727: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: double-clicking a shared history row pastes the item +13:54 +2728: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain-text paste remains enabled when rich paste is unavailable +13:54 +2729: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: source-only payload has no plain-text action +13:54 +2730: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: image exposes plain paste only with real text +13:54 +2731: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed insertion reports visible feedback +13:54 +2732: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: cancelled insertion is terminal without an error toast +13:54 +2733: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: current external HTML is transient until panel insertion and remains reusable +13:55 +2734: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed current-item paste is not retained and plain paste stays explicit +13:55 +2735: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: successful external paste retains after the panel is disposed +13:55 +2736: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain source and Editor copies stay text and de-duplicate +13:55 +2737: loading /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart +13:56 +2737: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: loads version and build number from package metadata +13:56 +2738: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: uses zero when package build metadata is absent +13:56 +2739: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: rejects missing package version metadata +13:56 +2740: loading /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart +13:59 +2740: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates XML child topic and registers it under parent TOC node +13:59 +2741: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates Unicode Markdown and XML topic filenames +14:00 +2742: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source without a root ID before publication +14:00 +2743: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source whose root ID differs from filename +14:00 +2744: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: accepts custom XML source whose root ID matches filename +14:00 +2745: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: requires a reference for every non-root placement +14:00 +2746: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a child under an exact topic-less TOC node path +14:00 +2747: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: first real topic under an empty group becomes the home page +14:00 +2748: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: exact TOC path disambiguates sibling insertion +14:00 +2749: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects an exact TOC path whose expected node has moved +14:00 +2750: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: invalid exact TOC path does not fall back to topic reference +14:00 +2751: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects duplicate topic IDs before writing +14:00 +2752: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a missing nested topics directory +14:00 +2753: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects a symlinked topics directory without writing outside +14:00 +2754: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: does not overwrite a concurrently changed tree or leave an orphan topic +14:00 +2755: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rollback preserves a created topic changed by another writer +14:00 +2756: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: atomic tree publication preserves its POSIX mode +14:00 +2757: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID with a different extension +14:00 +2758: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in a different directory +14:00 +2759: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in another configured root +14:00 +2760: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation allows an unrelated concurrent topic ID +14:00 +2761: loading /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart +14:01 +2761: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.rtl +14:04 +2762: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.ltr +14:06 +2763: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation uses native master-detail controls and filters +14:08 +2764: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation opens both template editor entry points +14:11 +2765: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: catalog failure keeps BusyMark status and retry controls +14:12 +2766: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files editor stages new content, cancels and persists on OK +14:16 +2767: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: source surface exposes its label and focus boundary +14:17 +2768: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: New toolbar command stages an editable draft and Cancel drops it +14:18 +2769: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: custom XML template cannot publish a mismatching root ID +14:20 +2770: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: save-as-template appears under Custom; edit, duplicate and delete preserve cancel +14:22 +2771: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: stale settings reject OK and retain draft for recovery +14:24 +2772: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Internal reset is staged, cancellable, and publishable +14:27 +2773: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: true) +14:28 +2774: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: false) +14:30 +2775: loading /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart +14:30 +2775: /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart: tree exact reveal unfolds and line movement is one undoable full-source edit +14:32 +2776: loading /home/albert/busystack/busymark/test/src/math_parser_test.dart +14:32 +2776: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses several dollar formulas as semantic inline math +14:32 +2777: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses the GitHub dollar-backtick form without delimiters +14:32 +2778: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses single-line and multiline display math as blocks +14:32 +2779: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math scanner stays aligned around every neighboring block kind +14:32 +2780: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math and Writerside tex fences follow document compatibility +14:32 +2781: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math is inline and remains source-preserving +14:32 +2782: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math decodes XML entities but preserves source +14:32 +2783: /home/albert/busystack/busymark/test/src/math_parser_test.dart: escaped dollars, code, currency, empty and malformed forms stay text +14:32 +2784: /home/albert/busystack/busymark/test/src/math_parser_test.dart: inline math survives list, blockquote, and table structure +14:32 +2785: /home/albert/busystack/busymark/test/src/math_parser_test.dart: CRLF math input and every original form round-trip untouched +14:32 +2786: /home/albert/busystack/busymark/test/src/math_parser_test.dart: preview builder creates first-class inline and display math nodes +14:32 +2787: loading /home/albert/busystack/busymark/test/src/busymark_document_test.dart +14:35 +2787: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hit testing includes shared document surface borders +14:35 +2788: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: document image width resolution is bounded consistently +14:35 +2789: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: package markdown AST imports into BusyDocument core blocks +14:35 +2790: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: linked remote image paragraphs import as editable image blocks +14:35 +2791: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer emits Markdown source for edited semantic blocks +14:35 +2792: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unchanged raw blocks +14:35 +2793: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves safe raw HTML source byte for byte +14:35 +2794: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unsafe raw HTML source while preview remains raw +14:35 +2795: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer patches dirty blocks without canonicalizing unchanged source +14:35 +2796: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve unrelated block instances +14:35 +2797: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve source-only reference definitions +14:35 +2798: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: source-only definitions survive scanner and AST count mismatches +14:35 +2799: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preserved reference definitions still resolve after an edit +14:35 +2800: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve GFM footnote definitions +14:35 +2801: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: containers with nested definitions are source-protected +14:35 +2802: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: scanner mismatches conservatively protect nested definitions +14:35 +2803: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: opaque source IDs cannot collide with semantic heading IDs +14:35 +2804: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full list serialization preserves reference definitions +14:35 +2805: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full serialization omits generated footnote output +14:35 +2806: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: invalid reference-like prose remains a modeled block +14:35 +2807: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large inline-link documents do not create source-only blocks +14:36 +2808: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large adjacent definition sets stay distinct and preserved +14:37 +2809: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: destructive selections reject read-only source endpoints +14:37 +2810: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: list indentation cannot attach content to a protected item +14:37 +2811: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested list text edit updates Markdown source +14:37 +2812: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered list edits preserve nested children +14:37 +2813: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered task edits preserve marker and nested children +14:37 +2814: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested blockquote edit preserves surrounding source +14:37 +2815: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cross-block deletion prunes an emptied blockquote +14:37 +2816: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested inline edit updates Markdown source +14:37 +2817: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested block removal updates Markdown source +14:37 +2818: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser includes setext headings in heading metadata +14:37 +2819: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: live document outline follows top-level generated heading order +14:37 +2820: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: duplicate anchors retain distinct editor block identities +14:37 +2821: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preview and WYSIWYG use the same semantic document +14:37 +2822: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edit updates Markdown source +14:37 +2823: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG empty documents have one editable paragraph +14:37 +2824: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor accepts typing in an empty document +14:38 +2825: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG heading navigation skips across large documents +14:42 +2826: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders a blockquote around its editable text +14:42 +2827: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG uses one quote frame for multiple quote paragraphs +14:42 +2828: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG quote frame focuses its first editable child +14:42 +2829: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inherits RTL indentation inside a blockquote +14:42 +2830: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG keeps a generated leaf blockquote editable +14:42 +2831: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hides a definition-only source and preserves it +14:42 +2832: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor undo and redo restore document edits +14:43 +2833: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor replaces document when active file changes +14:43 +2834: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor applies heading keyboard shortcuts +14:43 +2835: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Ctrl+Shift+- inserts a thematic break +14:43 +2836: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Tab nests eligible list items and Shift+Tab lifts them +14:43 +2837: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG arrow keys move focus between paragraphs +14:43 +2838: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Arrow crosses paragraph boundaries +14:43 +2839: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Shift+Arrow extends into the next paragraph +14:44 +2840: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated arrow keys keep moving between paragraphs +14:44 +2841: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down selection continues character by character in the next paragraph +14:44 +2842: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated Shift+Arrow extends one selection +14:44 +2843: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG horizontal selection continues vertically into the next paragraph +14:44 +2844: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse Shift+Up selection continues left in the previous paragraph +14:44 +2845: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ignores redundant source blank lines +14:44 +2846: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: typing replaces a WYSIWYG selection across paragraphs +14:44 +2847: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: deleting a selected paragraph boundary merges paragraphs +14:44 +2848: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down follows visual lines before paragraphs +14:45 +2849: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Arrow selects whole grapheme clusters +14:45 +2850: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection can copy multiple paragraphs +14:45 +2851: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG click elsewhere clears previous block selection +14:45 +2852: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift click selects text across paragraphs +14:45 +2853: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag extends selection across paragraphs +14:45 +2854: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag from heading end hides native selection +14:45 +2855: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag updates selection on pointer up +14:45 +2856: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag aligns wrapped trailing word highlight +14:45 +2857: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+X cuts block selection +14:46 +2858: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves inline formatting +14:46 +2859: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves whole block formatting +14:46 +2860: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection preserves partial paragraph boundaries +14:46 +2861: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar bold applies to selected paragraphs +14:46 +2862: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar toggle stays vertically aligned when collapsed +14:46 +2863: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar reserves its document edge +14:47 +2864: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: restoring the first block does not duplicate the Editor top inset +14:48 +2865: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: vertical WYSIWYG toolbar is bounded and extends from its edge +14:48 +2866: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar corners remain physical in LTR and RTL +14:49 +2867: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar context menu changes placement and direction when shown or hidden +14:50 +2868: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar list applies to selected paragraphs +14:50 +2869: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders safe HTML blocks and edits raw source +14:50 +2870: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar inserts an HTML block +14:50 +2871: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after the active file changes +14:50 +2872: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after document generation changes +14:51 +2873: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs stop app-level tab navigation shortcuts +14:51 +2874: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs activate the native headerbar barrier +14:51 +2875: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves existing inline formatting +14:51 +2876: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Backspace at block start merges with previous block +14:51 +2877: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+A twice selects all text for deletion +14:52 +2878: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG select-all deletion preserves source-protected definitions +14:52 +2879: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline ranges do not duplicate formatted text +14:52 +2880: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands serialize bold italic and links +14:52 +2881: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG serializes italic nested at the end of bold text +14:52 +2882: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve inline ranges where possible +14:52 +2883: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve empty-alt inline images +14:52 +2884: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG edits preserve escaped literal punctuation semantics +14:52 +2885: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog submits with Enter +14:52 +2886: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when caret is inside it +14:52 +2887: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when its text is selected +14:52 +2888: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline command toggles selected mark without dropping links +14:52 +2889: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline code command serializes selected text +14:52 +2890: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer chooses inline code delimiters that preserve backticks +14:52 +2891: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link title backslashes use standards-safe character references +14:52 +2892: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: inline serialization distinguishes every hard-break run boundary +14:52 +2893: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link titles round-trip decoded punctuation and line endings +14:52 +2894: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table link titles retain multiline values without physical rows +14:52 +2895: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves fenced code delimiters and trailing whitespace +14:52 +2896: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser preserves meaningful trailing fenced-code whitespace +14:52 +2897: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser closes dynamic code fences only with a matching delimiter +14:52 +2898: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser does not treat indented code as a fenced block +14:52 +2899: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands preserve existing sibling formatting +14:52 +2900: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands apply to multiple selected blocks +14:52 +2901: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands apply to multiple selected blocks +14:52 +2902: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG image command serializes a real image block +14:52 +2903: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders Writerside images by basename +14:53 +2904: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders absolute local image paths +14:53 +2905: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders linked remote image blocks +14:53 +2906: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in commonMark +14:53 +2907: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in writersideMarkdown +14:53 +2908: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in gfm +14:53 +2909: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter uses parser URL boundaries without parsing other syntax +14:53 +2910: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter excludes code and keeps explicit equal-label links explicit +14:53 +2911: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: bare URL destinations follow edits and splits while explicit destinations stay authored +14:53 +2912: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: rejoining only extends existing bare URLs and preserves code and explicit links +14:53 +2913: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: structural URL slices update derived destinations and link editing authors an explicit destination +14:53 +2914: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter splits one block into separate Markdown paragraphs +14:53 +2915: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores an empty paragraph represented only by blanks +14:53 +2916: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores trailing blank lines +14:53 +2917: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG does not create blocks for redundant source whitespace +14:53 +2918: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in unordered list creates next item then exits list +14:53 +2919: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in ordered list creates next numbered item +14:53 +2920: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG thematic break inserts after current block +14:53 +2921: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter key creates a new paragraph block +14:53 +2922: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter carries active inline style to next paragraph +14:54 +2923: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter at paragraph end preserves inner bold span +14:54 +2924: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG newline text edit preserves inner bold span +14:54 +2925: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text input newlines become Markdown paragraphs +14:54 +2926: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves an existing hard break +14:54 +2927: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: hard-break toolbar command retains focus and advances caret +14:54 +2928: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: formatting toolbar command retains editor focus and selection +14:54 +2929: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Shift+Enter retains focus and advances past the hard break +14:54 +2930: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line toolbar command round-trips and remains one focused edit +14:55 +2931: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor lazily builds large documents +14:55 +2932: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG task checkbox toggles directly when clicked +14:55 +2933: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands serialize headings and lists +14:55 +2934: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG extended toolbar commands serialize Markdown +14:55 +2935: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line command keeps repeated terminal markers off the text line +14:55 +2936: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table and code language commands serialize Markdown +14:55 +2937: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cell pipes round-trip without shifting columns +14:55 +2938: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table escaping protects pipes inside formatted cell content +14:55 +2939: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table code preserves a backslash immediately before a pipe +14:55 +2940: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table row and column commands serialize Markdown +14:55 +2941: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table dialog validates and synchronizes its size grid +14:56 +2942: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table alignment survives parsing, edits, and structural changes +14:56 +2943: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table column alignment command supports all Markdown alignments +14:56 +2944: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells apply Markdown column alignment +14:56 +2945: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells are formatted and editable +14:56 +2946: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table overlay menus survive structural rebuilds +14:57 +2947: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Tab travels through WYSIWYG table cells and extends the table +14:57 +2948: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG list indent outdent and task toggle commands serialize +14:57 +2949: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation starts a nested list at one +14:57 +2950: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation preserves a top-level start value +14:57 +2951: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation numbers multiple nested siblings +14:57 +2952: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered outdent continues the parent list numbering +14:57 +2953: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts an unordered item to a valid ordered marker +14:57 +2954: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts selected nested items at each list depth +14:57 +2955: loading /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart +14:58 +2955: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: single rich paragraph repairs independently surviving endpoints +14:58 +2956: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: table cells repair independently formatted selection endpoints +14:58 +2957: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion replaces only a heading own prefix at content start +14:58 +2958: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion removes complete ATX and Setext heading syntax +14:58 +2959: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion retains literal paragraph hashes +14:58 +2960: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: whole heading replacement removes every authored marker +14:58 +2961: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: heading insertion at middle and end preserves only the leading heading +14:58 +2962: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequence removes nested heading marker at content start +14:58 +2963: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: external HTML blockquotes remain structured in Source +14:58 +2964: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: HTML break layout stays behind a caret after the semantic break +14:58 +2965: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: caret immediately before an HTML break keeps the break after paste +14:58 +2966: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection crossing an HTML break preserves both outside slices +14:58 +2967: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete inline HTML survives rich link insertion as one fragment +14:58 +2968: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native rich trailing space survives inherited HTML insertion +14:58 +2969: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native incoming edge whitespace survives inherited HTML styles +14:58 +2970: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection replacement retains native whitespace and link titles +14:58 +2971: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: multiple native inline runs retain text styles links and spaces +14:58 +2972: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: rich insertion maps collapsed HTML whitespace as content +14:58 +2973: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through supported raw HTML styles +14:58 +2974: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through a supported raw HTML link +14:58 +2975: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: supported content corpus always plans a rich insertion +14:58 +2976: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: repeated mapped siblings avoid fallback and preserve final paste +15:00 +2977: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete blocks split and preserve enclosing inline contexts +15:00 +2978: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph-only block sequences match Editor merge semantics +15:00 +2979: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block paste preserves independent formatted selection boundaries +15:00 +2980: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured paste spans partial first and last destination blocks +15:00 +2981: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequences retain destination block and container paths +15:00 +2982: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paste output is valid input for a second paste at returned caret +15:00 +2983: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: CRLF blockquote projection retains its authored prefixes +15:00 +2984: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured complete blocks generate only CRLF boundaries +15:00 +2985: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured inline hard breaks use destination CRLF +15:00 +2986: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: mapped and generated structured breaks retain CRLF and caret width +15:00 +2987: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: protected Source context explicitly permits textual fallback +15:00 +2988: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: syntax-only positions explicitly permit textual fallback +15:00 +2989: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: unmappable destination links stop rather than permit fallback +15:00 +2990: loading /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart +15:01 +2990: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: rejects a superseded render even when its engine finishes last +15:02 +2991: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: retains the last successful render after invalid source +15:02 +2992: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: limits concurrency and gives export work queue priority +15:03 +2993: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: reuses a successful content-addressed cache entry +15:03 +2994: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: validates concurrency and returns a typed unavailable result +15:03 +2995: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: bounds last-successful render retention with LRU eviction +15:03 +2996: loading /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart +15:03 +2996: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: source navigation distinguishes repeated references on one line +15:03 +2997: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: explicit synchronization follows installed breadth-first topic matching +15:03 +2998: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edits preserve other instances, content and occurrence +15:03 +2999: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edit changes H1 and preserves front matter title +15:03 +3000: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title round trip preserves ampersands and entity spellings +15:03 +3001: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: unchanged inherited values do not add overrides +15:03 +3002: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: XML title edits escape attributes and expand self-closing root +15:03 +3003: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: clearing overrides removes only the selected instance and occurrence +15:03 +3004: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: before-drop preserves complete subtrees and returns all moved paths +15:05 +3005: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: grouping uses source order and rejects cross-parent selections +15:05 +3006: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: line moves retain CRLF, caret, reversed selection and boundaries +15:05 +3007: loading /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart +15:06 +3007: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: section includes descendants and stops at the next sibling +15:06 +3008: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: move up and down swap complete sibling subtrees +15:06 +3009: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: promote and demote preserve descendant hierarchy +15:06 +3010: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: demote is unavailable when a descendant is already H6 +15:06 +3011: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: level changes preserve and convert Setext headings +15:06 +3012: loading /home/albert/busystack/busymark/test/src/visualization_models_test.dart +15:08 +3012: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization fence classification recognizes canonical names and aliases without changing spelling +15:08 +3013: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: preserves dependency diagnostic source locations +15:08 +3014: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys canonicalizes options and dependency order +15:08 +3015: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates on engine, source, theme, profile, option, and dependency +15:08 +3016: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates entries produced by the previous render pipeline +15:08 +3017: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache round-trips SVG, raster, and structured OpenAPI successes +15:09 +3018: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache does not persist failures and repairs malformed entries +15:09 +3019: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache derives the XDG cache path without changing the environment +15:09 +3020: loading /home/albert/busystack/busymark/test/src/writerside_video_test.dart +15:10 +3020: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside Markdown models video and preserves its exact source +15:10 +3021: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video remains blocked raw HTML outside Writerside Markdown +15:10 +3022: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: multiline Writerside video attributes remain one semantic block +15:10 +3023: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video markup inside an ordinary code fence is not interpreted +15:10 +3024: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside topic parser exposes video attributes +15:10 +3025: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside .topic preview creates a first-class video block +15:10 +3026: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: safe video resolver accepts documented hosts and local media +15:10 +3027: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside module reports invalid and incomplete video sources +15:10 +3028: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: local poster defaults to matching PNG and can be overridden +15:10 +3029: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: hosted video posters resolve from trusted provider sources +15:10 +3030: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Vimeo poster metadata cannot point images to another host +15:10 +3031: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: PDF export carries a first-class linked video poster +15:10 +3032: loading /home/albert/busystack/busymark/test/src/app_router_test.dart +15:12 +3032: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings return targets are explicit and validated +15:12 +3033: /home/albert/busystack/busymark/test/src/app_router_test.dart: opening Settings preserves a validated Settings origin +15:12 +3034: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings page routes are explicit and validated +15:12 +3035: /home/albert/busystack/busymark/test/src/app_router_test.dart: Settings opened from Welcome returns to Welcome with a stale workspace +15:14 +3036: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again +15:14 +3037: loading /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart +15:15 +3037: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: mixed Markdown protects fenced code and CDATA while preserving spans +15:16 +3038: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: lazy defaults respect caller arguments and percent escaping +15:16 +3039: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: empty links use the target title for the selected instance +15:16 +3040: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional chapter content and links follow the selected instance +15:16 +3041: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: malformed markup and unresolved reuse stay visible with diagnostics +15:16 +3042: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: Markdown IDs include whole chapters and retain mixed-content spans +15:16 +3043: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional globals and include arguments override snippet defaults +15:16 +3044: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: links resolve labels, separate anchors and nullable availability +15:16 +3045: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: included code uses its source topic and unsaved source overrides +15:16 +3046: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: summaries stay metadata and starting pages suppress outside content +15:16 +3047: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: configured shortcuts, glossary and binary resources have visible references +15:16 +3048: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: line and symbol selectors reject invalid selections +15:16 +3049: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart +15:17 +3049: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace +15:17 +3050: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret +15:17 +3051: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string +15:17 +3052: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls +15:17 +3053: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback +15:17 +3054: loading /home/albert/busystack/busymark/test/src/status_semantics_test.dart +15:18 +3054: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: status colors stay semantic across accents and brightness +15:19 +3055: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: workspace messages use semantic status roles +15:19 +3056: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: Git failures use window-level toasts +15:19 +3057: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: successful Git operations use window-level toasts +15:20 +3058: loading /home/albert/busystack/busymark/test/src/workspace_service_test.dart +15:20 +3058: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a single Markdown file workspace +15:20 +3059: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: resolves an unindexed sibling document within the workspace +15:20 +3060: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Markdown file from a file URI path +15:21 +3061: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a generic Markdown folder workspace +15:21 +3062: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: canonicalizes a workspace opened through a directory symlink +15:21 +3063: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects a workspace root replaced by a symlink after opening +15:21 +3064: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Writerside module workspace +15:21 +3065: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: untitled Markdown in Writerside reparses, previews, and outlines as CommonMark +15:21 +3066: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: genuine Writerside Markdown topic keeps Writerside semantics +15:21 +3067: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates and opens a Writerside starter project +15:21 +3068: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: reparses and previews Writerside Markdown without generic link validation +15:21 +3069: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a Writerside Markdown topic and registers it in the TOC +15:21 +3070: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: imports Markdown topics into the selected instance and opens the first +15:21 +3071: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Markdown import reloads stale UI inventory before planning +15:21 +3072: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation revalidates module IDs after its candidate is written +15:21 +3073: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a topic in the explicitly selected instance and TOC node +15:21 +3074: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: unparsed topic basename reserves its module-wide topic ID for creation +15:22 +3075: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under build reserves its module-wide ID for creation +15:22 +3076: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under a hidden directory reserves its module-wide ID for creation +15:22 +3077: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: duplicate topic cannot reuse an unparsed topic basename +15:22 +3078: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: template source cannot reuse an unparsed topic basename +15:22 +3079: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation refuses incomplete topic discovery +15:22 +3080: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects topic creation when the configured instance tree is outside the module +15:22 +3081: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename is stale when a new module is discovered +15:22 +3082: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic rename planning rejects incomplete project module discovery +15:22 +3083: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename rejects incomplete module discovery on apply +15:22 +3084: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: project module discovery reports directory listing failure +15:22 +3085: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: ordinary directory creation does not stale a prepared rename +15:22 +3086: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: normalizes portal-style document paths as filesystem paths +15:22 +3087: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText writes content and returns the saved file snapshot +15:22 +3088: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: file change detection ignores timestamp-only changes +15:22 +3089: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText writes a missing file and returns its snapshot +15:22 +3090: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText refuses an existing file without changing it +15:22 +3091: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not replace a file arriving before publication +15:22 +3092: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not write inside a directory arriving before publication +15:22 +3093: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveTextReplacingPath replaces a final symlink without following it +15:22 +3094: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement cannot overwrite a post-validation writer +15:22 +3095: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement validates a displaced relative symlink +15:22 +3096: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement detects a changed relative symlink target +15:22 +3097: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation directory +15:22 +3098: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation FIFO without reading +15:22 +3099: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText follows file symlinks and preserves target permissions +15:22 +3100: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: createFile rejects a directory reached through an intermediate symlink +15:22 +3101: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: renameEntity rejects a source reached through an intermediate symlink +15:22 +3102: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: moveEntity rejects a target reached through an intermediate symlink +15:22 +3103: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity rejects a directory reached through an intermediate symlink +15:22 +3104: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity removes a final symlink without deleting its target +15:22 +3105: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: generic deletion rejects topics and containing folders in a non-active module +15:22 +3106: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: an unparsed topic cannot bypass generic deletion +15:22 +3107: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: missing nested mutation paths keep domain-specific errors +15:22 +3108: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince treats deleted files as changed +15:22 +3109: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince detects content changes with unchanged modified time +15:22 +3110: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists all content except version-control metadata +15:22 +3111: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists unsupported legacy Markdown extensions +15:22 +3112: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: limited folder scan prefers shallow siblings before deep subtree +15:22 +3113: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: invalid UTF-8 Markdown does not fail the whole workspace +15:22 +3114: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Markdown files are listed but not parsed automatically +15:22 +3115: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Writerside topics are listed but not parsed automatically +15:22 +3116: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Writerside topic loading honors the document limit +15:22 +3117: loading /home/albert/busystack/busymark/test/src/ai_policy_test.dart +15:23 +3117: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: AI editing is enabled only for Markdown document kinds +15:23 +3118: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation accepts a prose-only replacement in the complete document +15:23 +3119: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation rejects swapped URL associations even when the URL set is equal +15:23 +3120: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation full-document validation catches edits made inside protected syntax +15:23 +3121: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects front matter, references, footnotes, tables, HTML and IDs +15:23 +3122: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects list and heading structure +15:23 +3123: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects implicit heading identifiers from prose rewrites +15:23 +3124: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: the prompt contains only the context explicitly selected by the user +15:23 +3125: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: instructions and direct prompts have explicit token budgets +15:23 +3126: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: token estimates are independent from UTF-8 transport bytes +15:23 +3127: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: generated-output byte limits are independent from provider tokens +15:23 +3128: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context selection target and block context remain independent +15:23 +3129: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context insert-after-block target can send no document context +15:23 +3130: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current block can use complete-document context +15:23 +3131: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current section includes descendants but not its sibling +15:23 +3132: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context complete-document target is explicit +15:23 +3133: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context partial protected selections are rejected instead of expanded +15:23 +3134: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context validation and application use the exact block insertion +15:23 +3135: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: commit proposals require a bounded subject and blank separator +15:23 +3136: loading /home/albert/busystack/busymark/test/src/linux_window_host_test.dart +15:24 +3136: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: dialogs cover application header actions while system Close uses the guarded service +15:25 +3137: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: icon uses its physical GTK side and contributes to the inset +unhandled element ; Picture key: Svg loader +15:26 +3138: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fallback application menu is absent while titlebar menu still works +15:26 +3139: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: window-state stream survives unrelated host rebuilds +15:26 +3140: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: normal maximize decoration has matching behavior +15:26 +3141: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: maximized maximize decoration has matching behavior +15:26 +3142: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen maximize decoration has matching behavior +15:26 +3143: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen titlebar double-click still restores +15:26 +3144: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: the document title itself handles titlebar double-click +15:26 +3145: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: live GTK layout removal retains each decoration identity +15:26 +3146: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=false) +15:26 +3147: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=true) +15:26 +3148: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK reduced motion settles window-control hover immediately +15:26 +3149: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion settles an in-flight window icon morph +15:26 +3150: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabled motion retains the normal active-window fade +15:26 +3151: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: Flutter reduced motion settles the host fade immediately +15:26 +3152: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK animation policy reaches the actual host overlay +15:26 +3153: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion stops a fade and later fades can run +15:26 +3154: loading /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart +15:27 +3154: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: source editor overlays use shared semantic surfaces +15:27 +3155: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: WYSIWYG content actions and table menus use shared controls +15:27 +3156: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: problems dialog delegates its list surface to shared grouping +15:27 +3157: loading /home/albert/busystack/busymark/test/src/writerside_document_test.dart +15:29 +3157: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=false) +15:29 +3158: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=true) +15:30 +3159: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside heading aliases prefer exact IDs and reject ambiguity +15:30 +3160: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: malformed semantic XML is still reported after a scanner mismatch +15:30 +3161: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: lossless XML nodes preserve exact duplicate ranges and generic markup +15:30 +3162: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside Markdown round-trips native and generic markup +15:30 +3163: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified semantic XML reconstructs equivalent escaped markup +15:30 +3164: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified conformance topic retains qualified namespace names +15:30 +3165: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver applies includes, filters, groups, variables, and cycles +15:30 +3166: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver negates the complete instance list +15:30 +3167: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML list type is inherited by every list item +15:30 +3168: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML lists retain numeric ordinals and their container identity +15:30 +3169: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: repeated list includes have distinct occurrence IDs and original source spans +15:30 +3170: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: workspace exposes resolver errors with exact source spans +15:30 +3171: loading /home/albert/busystack/busymark/test/src/writerside_api_test.dart +15:30 +3171: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: platform-backed API model remains on the host path and transfers complete semantics +15:31 +3172: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API tags select operations through the existing OpenAPI parser +15:31 +3173: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API child selectors inherit the specification and preserve sample overrides +15:31 +3174: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API schemas resolve references and honor nesting depth +15:31 +3175: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: schema and webhook elements are visible +15:31 +3176: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: invalid API selection has a visible fallback and source diagnostic +15:31 +3177: loading /home/albert/busystack/busymark/test/src/local_history_store_test.dart +15:32 +3177: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=false) +15:32 +3178: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=true) +15:32 +3179: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: real process contention waits and captures without a warning +15:39 +3180: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: lock timeout closes acquisition and queues recover without late capture +15:43 +3181: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: non-contention acquisition failure is prompt and closes the handle +15:43 +3182: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: body contention-shaped error never replays the transaction +15:43 +3183: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: independent production writers preserve both identities and revisions +15:49 +3184: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation cannot mutate process replacements +15:53 +3185: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation rejects an intervening process checkpoint +15:57 +3186: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=false) +15:57 +3187: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=true) +15:57 +3188: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists full revisions and stable document identity across restart +15:57 +3189: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists untitled first-save promotion without a new revision +15:57 +3190: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: untitled promotion refuses an already-owned destination path +15:57 +3191: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deleted paths never own promotion, lookup, or remap +15:57 +3192: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deduplicates only adjacent ordinary captures and preserves A-B-A +15:57 +3193: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: forced protective capture preserves an identical revision +15:57 +3194: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture identity makes a protective retry idempotent +15:57 +3195: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: idempotent capture stays complete after its lineage advances +15:58 +3196: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion retry accepts the same lineage after a later move +15:58 +3197: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: atomic path preflight accepts the same target already reconciled elsewhere +15:58 +3198: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clearing one identity does not poison another identity capture +15:58 +3199: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repairs a damaged index from intact independently checksummed records +15:58 +3200: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repair rejects a record associated with a different document +15:58 +3201: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: does not resurrect explicitly cleared revisions during repair +15:58 +3202: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rejects an unknown future index format without rewriting it +15:58 +3203: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention uses the injected capture time deterministically +15:58 +3204: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention is enforced when an idle store is reopened +15:58 +3205: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rename, directory move, delete, and per-document clearing retain lineage +15:58 +3206: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: ID-bound captures cannot implicitly move document paths +15:58 +3207: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: serializes concurrent captures without losing index entries +15:59 +3208: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: oversized capture cannot evict the previous revision +15:59 +3209: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: different paths with the same basename keep separate identities +15:59 +3210: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: an intentional empty revision after content is retained +15:59 +3211: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: missing and corrupt revision records do not damage intact entries +15:59 +3212: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: incomplete staging artifacts are never discovered as revisions +15:59 +3213: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: global clear tombstones prevent repair resurrection +15:59 +3214: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear All replay cannot erase post-clear history +16:00 +3215: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear Document replay cannot erase replacement history +16:00 +3216: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=false) +16:00 +3217: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=false) +16:00 +3218: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=true) +16:00 +3219: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=true) +16:00 +3220: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=false) +16:00 +3221: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=true) +16:00 +3222: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file capture rolls back cancellation during revision publication +16:00 +3223: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file dedup capture rolls back cancellation during index publication +16:00 +3224: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: multiple store instances coordinate concurrent index publication +16:00 +3225: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: storage permission failures surface without touching document data +16:00 +3226: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: path exclusions use injected Windows path semantics +16:00 +3227: loading /home/albert/busystack/busymark/test/src/web_render_host_test.dart +16:01 +3227: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends explicit request IDs and decodes a typed map response +16:01 +3228: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends a MathJax batch in one cancellable host request +16:01 +3229: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: scales the MathJax timeout for sequential batch conversion +16:01 +3230: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: applies the scaled timeout to a maximum accepted batch +16:01 +3231: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: cancels the matching native request and rejects a late success +16:01 +3232: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: times out and requests native cancellation +16:01 +3233: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: rejects an invalid native response shape +16:01 +3234: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: decodes OpenAPI references with source locations +16:01 +3235: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends PNG bytes to the native image clipboard +16:01 +3236: loading /home/albert/busystack/busymark/test/src/document_persistence_test.dart +16:03 +3236: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: file-backed edits update final-newline metadata +16:03 +3237: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session store keeps tab state and pending history identity without text +16:03 +3238: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session merge keys first-save promotions by durable operation owner +16:03 +3239: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery store distinguishes clean and unclean runs +16:03 +3240: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery keeps valid entries when another record is malformed +16:03 +3241: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery ownership keeps same buffer IDs isolated by process +16:04 +3242: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: restored dead-owner recovery is adopted and can be retired +16:04 +3243: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery state is written with private POSIX permissions +16:04 +3244: loading /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart +16:05 +3244: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: intrinsic width remeasures only edited source lines +16:05 +3245: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: large source width uses a bounded estimate +16:05 +3246: loading /home/albert/busystack/busymark/test/src/search_replace_service_test.dart +16:06 +3246: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: Unicode regex replacement preserves complete characters +16:06 +3247: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: zero-length replacement limitation survives worker transfer +16:06 +3248: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 4999 actual matches +16:06 +3249: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5000 actual matches +16:06 +3250: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5001 actual matches +16:06 +3251: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement cancels a running expensive regex +16:06 +3252: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace scope includes closed Writerside documents and ignores unrelated open files +16:08 +3253: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: previews and applies plain whole-word replacements +16:08 +3254: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: text replacement previews enforce their match limit +16:08 +3255: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker expands one accepted regex match +16:08 +3256: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker cancels stale plans +16:08 +3257: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: expands numbered and named regex capture groups +16:08 +3258: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: applies only selected preview matches +16:08 +3259: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace preview uses dirty buffers and writes closed files +16:08 +3260: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply skips stale dirty buffers +16:08 +3261: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: truncated workspace previews cannot be applied +16:08 +3262: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: stale later files abort before earlier files are changed +16:08 +3263: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: rollback preserves a concurrent edit and reports displaced content +16:08 +3264: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply revalidates open buffers after disk writes +16:08 +3265: loading /home/albert/busystack/busymark/test/src/export_options_editor_test.dart +16:09 +3265: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Escape closes Export before a control receives focus +16:10 +3266: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Export keeps breathing room below its final option +16:10 +3267: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown PDF loads confirmed settings and shares controls +16:11 +3268: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside PDF loads confirmed settings and shares controls +16:11 +3269: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown HTML loads confirmed settings and shares controls +16:12 +3270: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside HTML loads confirmed settings and shares controls +16:12 +3271: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: one Export modal switches between PDF and HTML +16:12 +3272: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: custom geometry controls, TOC enablement and invalid input at minimum size +16:13 +3273: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: cancelling settings does not confirm or persist edits +16:13 +3274: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: JSON settings store retains both format settings across controllers +16:13 +3275: loading /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart +16:14 +3275: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: existing-topic picker filters names and selects by keyboard +16:15 +3276: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: picker returns the supplied topic identity for duplicate names +16:15 +3277: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: Group keeps raw input and Enter-only acceptance +16:15 +3278: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: rename preserves validation and Preview/Refactor results +16:15 +3279: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.rtl +16:16 +3280: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.rtl +16:16 +3281: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.ltr +16:16 +3282: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.ltr +16:17 +3283: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart +16:17 +3283: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: Linux Writerside title and duplicate dialogs are GTK-owned +16:17 +3284: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: GTK Writerside contents follow application direction, filenames stay LTR +16:19 +3285: loading /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart +16:19 +3285: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw HTML preserves inherited and overridden block directions +16:19 +3286: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: preview model retains HTML direction for code and quotes +16:19 +3287: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML honors rtl, ltr, and auto directions +16:20 +3288: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: nested WYSIWYG blocks indent from the RTL start edge +16:20 +3289: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: English prose stays LTR in a Persian RTL UI and navigates LTR +16:21 +3290: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: Arabic prose stays RTL in an English UI and navigates RTL +16:21 +3291: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw Writerside technical blocks stay LTR with Arabic content +16:21 +3292: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered Arabic HTML without dir follows its content +16:21 +3293: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: WYSIWYG technical dialog inputs stay LTR in an RTL UI +16:22 +3294: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL horizontal arrows cross paragraph boundaries visually +16:22 +3295: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL Ctrl+Shift+Arrow extends word selection across paragraphs +16:22 +3296: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: code blocks stay LTR and use LTR boundary arrows in RTL UI +16:22 +3297: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML pre is LTR unless dir overrides it +16:22 +3298: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL prefix hit testing maps the text start at the right edge +16:22 +3299: loading /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart +16:23 +3299: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote source AI proposal applies with logical identity +16:28 +3300: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote WYSIWYG AI proposal applies with logical identity +16:29 +3301: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: document-only AI snapshot opens a usable configuration +16:29 +3302: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI configuration uses native rows without duplicate choices +16:29 +3303: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: Refine with AI sends the explicitly selected model +16:29 +3304: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI proposal uses an explicitly selected provider +16:29 +3305: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: provider chooser exposes only configured providers +16:29 +3306: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: configured local provider remains available when Gemini is default +16:29 +3307: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: fixed AI target cannot widen a sidebar selection +16:29 +3308: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: proposal Apply refuses stale external source content +16:30 +3309: loading /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart +16:30 +3309: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial prefix grows compatibly +16:30 +3310: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial becomes complete and clears marker +16:30 +3311: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations identical complete listings remain consistent +16:30 +3312: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations incompatible repeated listing rejects +16:30 +3313: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations known failed prefix recovers completely +16:30 +3314: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations failure without a known prefix cannot prove recovery +16:30 +3315: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations successful listing followed by failure rejects +16:30 +3316: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry replacement between complete reads rejects +16:30 +3317: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry removal between complete reads rejects +16:30 +3318: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter compatible scan keeps stronger proof +16:30 +3319: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete proof survives compatible limited rescan +16:30 +3320: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial rescan cannot erase a previous failure +16:30 +3321: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete recovery must retain failed-prefix entries +16:30 +3322: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter failed retry retains its consumed prefix +16:30 +3323: loading /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart +16:32 +3323: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: ingests workspace images with safe names and portable paths +16:33 +3324: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: reuses identical assets and resolves name collisions +16:33 +3325: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping identical publications keep the committed owner +16:33 +3326: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping different publications keep the committed owner +16:33 +3327: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect identical pending publications with equal filenames +16:36 +3328: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect different pending publications with equal filenames +16:39 +3329: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: failed publication releases only its own filesystem reservation +16:42 +3330: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: terminated provisional owner remains reserved across processes +16:45 +3331: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: rollback cannot delete an asset after its publication is committed +16:45 +3332: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: uses the configured Writerside images directory +16:45 +3333: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: restores retained Writerside video bytes without widening image paste +16:45 +3334: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: requires saving untitled documents and rejects non-images +16:45 +3335: loading /home/albert/busystack/busymark/test/src/ai_test.dart +16:46 +3335: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy allows literal loopback and localhost origins +16:46 +3336: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy rejects remote, credential-bearing, and path endpoints +16:46 +3337: /home/albert/busystack/busymark/test/src/ai_test.dart: prompt serializes untrusted document data as a JSON field +16:46 +3338: /home/albert/busystack/busymark/test/src/ai_test.dart: plain-text edit prompts never request Markdown +16:46 +3339: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard accepts prose edits that retain protected Markdown +16:46 +3340: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard rejects changed links and fenced code +16:46 +3341: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard protects fences with longer valid closing markers +16:46 +3342: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder handles UTF-8 and JSON split across arbitrary byte chunks +16:46 +3343: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder rejects malformed records and oversized responses +16:46 +3344: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider lists models and streams chat content and usage +16:46 +3345: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider stops at completion and ignores trailing stream records +16:46 +3346: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider uses the documented low thinking level for GPT-OSS +16:46 +3347: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider bounds the model-list response while reading it +16:46 +3348: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider rejects redirects without following them +16:46 +3349: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider does not list or run Ollama cloud models +16:46 +3350: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider cancellation interrupts a silent response stream +16:46 +3351: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator cancels the older request for the same target +16:46 +3352: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator rejects a provider stream without completion +16:46 +3353: loading /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart +16:49 +3353: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: formatting a URL suffix retains the complete live link and round trips +16:49 +3354: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter URL recognition preserves formatting, literal syntax, anchors, breaks and descendants +16:49 +3355: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter recognition preserves formatting within a URL and does not enter math fields +16:49 +3356: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: text whitespace preservation metadata follows pasted whitespace +16:49 +3357: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: paste-only whitespace keeps list descendants exactly once +16:49 +3358: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: plain whitespace paste keeps list descendants through Undo and Redo +16:52 +3359: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: replacement scope distinguishes a heading field from its document block +16:52 +3360: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete blocks inserted in list content retain every descendant +16:52 +3361: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: generic block commands cannot convert tables or preserved raw blocks +16:52 +3362: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: nested list-to-blockquote conversion preserves parent text +16:52 +3363: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: every admonition style preserves nested list parent text +16:52 +3364: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves the current list item descendants +16:52 +3365: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves descendants of an empty list item +16:52 +3366: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace rejects a merge that cannot represent descendants +16:52 +3367: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete clipboard snapshots reconstruct a table transactionally +16:52 +3368: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: same-editor cut and paste preserves complete tables +16:52 +3369: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits normalize every newline form before updating +16:52 +3370: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits preserve block-marker prefixes as literal text +16:52 +3371: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary table cell edits preserve formatting and links +16:52 +3372: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary cell edits retain toolbar-applied formatting +16:52 +3373: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve empty-alt inline images +16:52 +3374: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve existing hard line breaks +16:52 +3375: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing preserves a literal bang before an inline link +16:52 +3376: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing escapes block syntax at the start of a list item +16:52 +3377: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table field edits preserve rendered formatting and links +16:53 +3378: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields reject multiline input and reconcile the model +16:53 +3379: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields preserve block-marker-prefixed cell values +16:53 +3380: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source ranges select repeated text and table cells +16:54 +3381: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source navigation rebases spans after earlier edits +16:54 +3382: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: source navigation expands collapsed Writerside ancestors +16:54 +3383: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: outline navigation expands a collapsed heading ancestor +16:54 +3384: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cells own shortcuts, formatting, and restored selection +16:54 +3385: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external undo groups continuous typing but not transactions +16:54 +3386: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external history coalesces editor typing without local copies +16:54 +3387: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: undo controllers are disposed when blocks disappear +16:55 +3388: loading /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart +16:55 +3388: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: SSE decoder handles split UTF-8 frames and multiline data +16:55 +3389: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: OpenAI Responses adapter is stateless and maps text and usage +16:55 +3390: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini Interactions adapter uses stable v1 and text deltas only +16:55 +3391: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider never includes a secret in surfaced failures +16:55 +3392: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects malformed usage records +16:55 +3393: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini rejects an incomplete status update +16:55 +3394: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects EOF without a typed completion event +16:55 +3395: loading /home/albert/busystack/busymark/test/src/modal_barrier_test.dart +16:57 +3395: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.light modal barriers use the semantic shade role +16:58 +3396: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.dark modal barriers use the semantic shade role +16:58 +3397: loading /home/albert/busystack/busymark/test/src/native_menu_service_test.dart +17:00 +3397: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: show serializes native menu presentation and returns its selection +17:00 +3398: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: dismiss is scoped to the native menu session +17:00 +3399: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: missing native host reports unavailable for a themed fallback +17:00 +3400: loading /home/albert/busystack/busymark/test/src/workspace_controller_test.dart +17:01 +3400: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside tab preparation loads once and current activation loads zero +17:01 +3401: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: configuration preview does not reparse in a derived loop and closing all buffers relinquishes overlays +17:01 +3402: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all Writerside tabs completes override relinquishment +17:01 +3403: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closed-tab reconciliation rejects obsolete disk models and keeps tabs closed +17:02 +3404: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: active +17:02 +3405: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: inactive +17:02 +3406: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: closure +17:02 +3407: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: workspace +17:02 +3408: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: external +17:03 +3409: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: disposal +17:03 +3410: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: rapid Writerside activation keeps derived work bounded and publishes the latest request +17:03 +3411: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered creation notifications are acknowledged, external same-size writes remain visible +17:04 +3412: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: a failed mutation cannot acknowledge its write notifications +17:05 +3413: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: quarantine and duplicate delayed deletion events acknowledge incorporated absence +17:06 +3414: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: an external same-size write during acknowledgement invalidates the consumed fingerprint +17:06 +3415: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: anchor +17:07 +3416: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: disk +17:07 +3417: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered TOC removal notifications require no subsequent module processing +17:08 +3418: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=false +17:08 +3419: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=true +17:08 +3420: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=false +17:08 +3421: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=true +17:08 +3422: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=false +17:08 +3423: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=true +17:09 +3424: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects inactive edit after clean navigation +17:09 +3425: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects reopen after clean navigation +17:09 +3426: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects close all after clean navigation +17:09 +3427: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects dispose after clean navigation +17:10 +3428: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects disk input after clean navigation +17:10 +3429: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects inactive edit after clean navigation +17:10 +3430: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects reopen after clean navigation +17:10 +3431: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects close all after clean navigation +17:10 +3432: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects dispose after clean navigation +17:10 +3433: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects disk input after clean navigation +17:10 +3434: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects inactive edit after clean navigation +17:10 +3435: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects reopen after clean navigation +17:11 +3436: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects close all after clean navigation +17:11 +3437: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects dispose after clean navigation +17:11 +3438: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects disk input after clean navigation +17:11 +3439: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining resource discovery presents stable limited inputs +17:11 +3440: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects edit during verification +17:11 +3441: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects inactive edit during verification +17:11 +3442: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects workspace replacement during verification +17:12 +3443: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects same-project reopening during verification +17:12 +3444: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects edit during verification +17:12 +3445: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects inactive edit during verification +17:12 +3446: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects workspace replacement during verification +17:12 +3447: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects same-project reopening during verification +17:12 +3448: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects edit during verification +17:12 +3449: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects inactive edit during verification +17:12 +3450: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects workspace replacement during verification +17:12 +3451: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects same-project reopening during verification +17:12 +3452: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=false +17:13 +3453: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=true +17:13 +3454: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=false +17:13 +3455: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=true +17:13 +3456: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=false +17:13 +3457: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=true +17:13 +3458: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=false +17:13 +3459: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=true +17:13 +3460: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded inactive edit +17:13 +3461: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded configuration write +17:13 +3462: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction discovery refresh keeps the live selected instance through reconciliation +17:13 +3463: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=4 +17:14 +3464: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=2 +17:15 +3465: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome creation cannot overwrite an edit made during history flush +17:15 +3466: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: starting a Welcome workspace cannot discard a dirty buffer +17:15 +3467: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome replaces clean buffers but workspace New remains additive +17:15 +3468: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete closes the topic buffer, selects a survivor, and records history +17:15 +3469: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete journal removes the deleted tab after refresh failure restart +17:16 +3470: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC writes reject an inactive dirty tree without discarding either buffer +17:16 +3471: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC creation defers its monitor events until the new document is open +17:16 +3472: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown topic import opens its first topic in an editable buffer +17:17 +3473: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed Markdown import preserves the active document and workspace +17:17 +3474: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Validate publishes a valid table containing an escaped pipe +17:17 +3475: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation reports stale, busy and failed outcomes without publishing old results +17:17 +3476: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=false +17:17 +3477: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=true +17:17 +3478: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math callbacks from an older editor revision cannot republish errors +17:17 +3479: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown validation uses the unsaved linked tab snapshot +17:17 +3480: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=true +17:17 +3481: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=false +17:17 +3482: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside rename stages verified edits across unsaved tabs with undo +17:17 +3483: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened Markdown files by file path in recent workspaces +17:17 +3484: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened folders by folder path in recent workspaces +17:17 +3485: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace file operations refresh and preserve active moved files +17:17 +3486: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates an unsaved Markdown file without adding it to recent +17:17 +3487: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates CommonMark inside Writerside without replacing project or dirty topic +17:17 +3488: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: identical untitled buffers remain distinct by buffer id +17:17 +3489: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: delayed untitled preview cannot publish into another untitled tab +17:17 +3490: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files leave preview mode for editor mode +17:17 +3491: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files preserve non-preview view modes +17:17 +3492: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an untitled Markdown file clears the workspace +17:17 +3493: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding a saved file reloads disk text and clears dirty state +17:18 +3494: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside project and records it as recent +17:18 +3495: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside topic and opens it without changing recents +17:18 +3496: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: topic TOC actions refresh the workspace and preserve file state +17:18 +3497: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: reviewed topic rename is rejected after a project buffer becomes dirty +17:18 +3498: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as writes a new Markdown file and records it as recent +17:18 +3499: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown in Writerside keeps ordinary files CommonMark +17:18 +3500: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside refresh preserves saved Markdown outside the workspace root +17:18 +3501: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown into discovered topics reclassifies it +17:19 +3502: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving multiple untitled documents creates normal file buffers +17:19 +3503: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as refuses an existing file unless overwrite is explicit +17:19 +3504: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as explicit overwrite replaces the final symlink only +17:19 +3505: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves source edits for an untitled Markdown file +17:19 +3506: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while writing the file +17:19 +3507: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as completes against its buffer after switching tabs +17:19 +3508: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while reopening the file +17:19 +3509: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: switching active files reparses outline for the new file +17:19 +3510: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale validation after save and tab switch does not restore previous file +17:19 +3511: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation completing after save preserves the saved snapshot +17:19 +3512: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source defers preview work until a preview mode is visible +17:19 +3513: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source-only validation still runs when validate-on-edit is enabled +17:19 +3514: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale text update from previous file cannot dirty active tab +17:19 +3515: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: folder workspaces track open file tabs without duplicates +17:19 +3516: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All writes every dirty file-backed buffer +17:19 +3517: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All can be scoped without saving unrelated dirty buffers +17:19 +3518: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: selected dirty buffers can be discarded without changing tabs +17:19 +3519: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing active file tabs selects a neighboring tab +17:19 +3520: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: activating sibling file tabs wraps around the open tabs +17:19 +3521: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all file tabs clears the active editor state +17:20 +3522: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs aborts when a document changes during history flush +17:20 +3523: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs cannot clear workspace state replaced during flush +17:20 +3524: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed open clears stale workspace state +17:20 +3525: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math renderer failures become source-linked runtime diagnostics +17:20 +3526: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validate on edit setting controls live diagnostics only +17:20 +3527: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save waits for an idle delay before writing +17:21 +3528: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Undo and Redo reschedule autosave after the prior save settled +17:26 +3529: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: inactive document updates schedule autosave without changing tabs +17:28 +3530: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed workspace refresh restores eligible autosave scheduling +17:29 +3531: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disabled autosave stays disabled after a failed refresh +17:31 +3532: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save remains scheduled independently for inactive tabs +17:32 +3533: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save preserves dirty state when edits happen during save +17:32 +3534: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: overlapping manual save writes the newer requested revision +17:32 +3535: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save completes against its buffer after switching tabs +17:32 +3536: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing a buffer waits for its in-flight autosave +17:32 +3537: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard aborts when the document changes during protective history capture +17:32 +3538: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard waits for its buffer in-flight autosave +17:32 +3539: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save waits for an in-flight autosave of the same buffer +17:32 +3540: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All waits for an in-flight autosave of the same buffer +17:32 +3541: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save As waits for an in-flight autosave of the same buffer +17:32 +3542: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean shutdown waits for in-flight document writes +17:32 +3543: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: pending history from a closed clean tab prevents a clean shutdown marker +17:32 +3544: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save refuses to overwrite external file changes without force +17:32 +3545: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save treats a deleted active file as an external conflict +17:32 +3546: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save detects external rewrites with unchanged modified time +17:32 +3547: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving preserves a manually removed final newline +17:32 +3548: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: WYSIWYG list edits preserve a missing final newline +17:32 +3549: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: spelling correction undo and redo restore source and rich selections +17:33 +3550: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Keep Mine retains the conflict snapshot until explicit overwrite +17:33 +3551: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitor refresh waits for an active foreground refresh +17:33 +3552: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves an active edit and editor history made during reparse +17:33 +3553: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation reconciles edits accepted while its reparse is pending +17:33 +3554: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: opening a new tab preserves live edits and editor history in the visible document +17:33 +3555: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing the active tab aborts if it changes during next-tab activation +17:33 +3556: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: aborted discard close preserves dirty state after an editor-only change +17:33 +3557: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: aborted +17:33 +3558: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: closed +17:33 +3559: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: disabled +17:33 +3560: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: shutdown +17:33 +3561: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: replaced +17:33 +3562: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation does not resurrect another tab closed while waiting +17:33 +3563: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves inactive edits and does not resurrect a closed tab +17:33 +3564: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh rejects a disk load superseded by typing +17:33 +3565: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: external file moves remap the open document buffer +17:33 +3566: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitors saved standalone tabs outside the workspace root +17:33 +3567: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: standalone refresh preserves saved tabs in different directories +17:33 +3568: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup leaves a clean session closed unless reopening is enabled +17:33 +3569: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup restores an interrupted session without an opt-in +17:33 +3570: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored sessions retain tabs whose files are missing +17:33 +3571: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored standalone sessions retain a missing document +17:33 +3572: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: mixed untitled and saved session restores as a standalone workspace +17:33 +3573: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark active +17:34 +3574: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark inactive +17:34 +3575: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean marker cannot hide remaining recovery entries +17:34 +3576: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: recovery text remains restorable when the later session save fails +17:34 +3577: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: single-document session uses no workspace path after saved tabs close +17:34 +3578: loading /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart +17:34 +3578: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped image-description text follows Markdown image alt semantics +17:34 +3579: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: annotated parsing has ordinary semantics across supported corpus +17:34 +3580: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: image ranges identify only resolved source occurrences +17:34 +3581: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: positioned label breaks retain raw endings and container prefixes +17:34 +3582: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped link and image titles retain exact raw boundaries +17:34 +3583: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: destination-only links and images have no mapped title +17:34 +3584: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: position records do not change HTML or link semantics +17:34 +3585: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: selection endpoints crossing HTML retain one semantic fragment +17:34 +3586: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: supported HTML whitespace positions have complete position records +17:34 +3587: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: only operation-local markers are ignored +17:34 +3588: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: delimiter-only positions are explicitly incomplete +17:34 +3589: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: syntax-boundary probes retain the ordinary semantic oracle +17:34 +3590: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: deterministic inline combinations preserve annotated semantics +17:34 +3591: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: standalone HTML break ownership uses one indexed lookup per break +17:34 +3592: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: AST source boundary lookahead is linear and maps the final link +17:35 +3593: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: fallback mapping is bounded for entities repetitions and code spans +17:35 +3594: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: tag-looking attribute text does not claim break layout +17:35 +3595: loading /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart +17:36 +3595: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: restores WYSIWYG selection from document session state +17:37 +3596: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: reports the old document session before switching tabs +17:37 +3597: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: defers session provider updates until document rebuild ends +17:38 +3598: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: workspace mode delegates WYSIWYG undo to buffer history +17:38 +3599: loading /home/albert/busystack/busymark/test/src/writerside_identity_test.dart +17:38 +3599: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: anchor identity includes topic and all instances participate in usages +17:39 +3600: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: conditional globals and snippet variables have distinct scopes +17:39 +3601: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: completion filters context and target identity before limiting +17:39 +3602: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: validation uses relationships, typed values and current configuration syntax +17:39 +3603: loading /home/albert/busystack/busymark/test/src/html_export_ui_test.dart +17:40 +3603: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: one Export command retains Ctrl+Shift+E +17:40 +3604: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Flutter Main menu exposes document export +17:41 +3605: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: untitled active text stays captured while destination picker is open +17:43 +3606: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Cancel handling before instance selection +17:43 +3607: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Discard handling before instance selection +17:44 +3608: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Save handling before instance selection +17:45 +3609: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart +17:46 +3609: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication +17:46 +3610: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path +17:46 +3611: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content +17:46 +3612: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document +17:46 +3613: loading /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart +17:48 +3613: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Writerside numeric list starts and container boundaries reach PDF +17:48 +3614: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: list items and visualization replacements retain source anchors +17:48 +3615: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: maps Markdown semantics into renderer-neutral export blocks +17:48 +3616: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: omits reference definitions while preserving their resolved links +17:48 +3617: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Typst payload contains data but never raw local image paths +17:48 +3618: loading /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart +17:50 +3618: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: basic fixture uses a renderable OpenAPI fence +17:50 +3619: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: visualizer fences remain generic code and round-trip byte-for-byte +17:50 +3620: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: dedicated visualizer rules highlight comments, keys, and keywords +17:51 +3621: loading /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart +17:53 +3621: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-topic-create-10-100-0 +17:53 +3622: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-topic-create-10-100-0 +17:53 +3623: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-safe-delete-10-100-0 +17:53 +3624: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-safe-delete-10-100-0 +17:53 +3625: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 +17:53 +3626: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 +17:53 +3627: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: external moves, missing destinations and authored hidden names stay visible +17:53 +3628: loading /home/albert/busystack/busymark/test/src/html_rich_export_test.dart +17:55 +3628: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered mermaid retains a linked Writerside block ID +17:57 +3629: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered openapi retains a linked Writerside block ID +17:57 +3630: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: HTML uses unique occurrence jobs, standalone math and diagram/static API engines +17:57 +3631: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: custom HTML metrics and embedded rich assets stay self-contained +17:57 +3632: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: all diagram dependencies are captured before rendering begins +17:57 +3633: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: cancelling an active render retains existing output and removes staging +17:57 +3634: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: render timeout is bounded and cancellation interrupts a pending job +17:57 +3635: loading /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart +17:58 +3635: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: finds exact href and body spans for every supported quote form +17:58 +3636: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: ignores comments, fenced code, and inline code but keeps containers +17:58 +3637: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: multiline anchors are exact and malformed anchors remain manual +17:58 +3638: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/full-flutter-final.log b/delivery/nextcloud-explicit-adoption/evidence/full-flutter-final.log new file mode 100644 index 00000000..2fec0896 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/full-flutter-final.log @@ -0,0 +1,4412 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver +00:01 +1: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider +00:01 +2: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider +00:01 +3: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files +00:01 +4: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text +00:01 +5: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations +00:01 +6: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads +00:01 +7: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy +00:01 +8: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy +00:01 +9: loading /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart +00:02 +9: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a complete subtree as the last child of an exact node +00:04 +10: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry after a root sibling +00:04 +11: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry to the end of the TOC root +00:04 +12: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry relative to itself without writing +00:04 +13: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry into its descendant without writing +00:04 +14: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: requires a destination for child and sibling placement +00:04 +15: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects invalid structural paths without writing +00:04 +16: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects stale paths whose expected TOC identities moved +00:04 +17: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a root entry and promotes its children in place +00:04 +18: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a nested entry and promotes its child before its sibling +00:04 +19: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes multiple entries atomically against one tree snapshot +00:04 +20: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: batch removal handles a selected descendant and ancestor +00:04 +21: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves multiple subtrees as an ordered group +00:04 +22: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a tree outside the guarded module root +00:04 +23: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a symlinked tree without mutating its target +00:04 +24: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: does not overwrite a tree changed before atomic publication +00:04 +25: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: atomic replacement preserves the tree POSIX mode +00:04 +26: loading /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart +00:05 +26: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal dialogs stop app and editor shortcuts +00:05 +27: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: Escape closes a modal without an initially focused control +00:05 +28: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal fallback does not steal a child autofocus request +00:06 +29: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: overlapping dialogs synchronize native modal depth +00:06 +30: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: serializes rapid manual native barrier transitions +00:06 +31: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: failed native barrier acquisition rolls back and can retry +00:06 +32: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal coordinator resolves the service from ProviderScope +00:06 +33: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: open modal barrier follows live theme changes +00:06 +34: loading /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart +00:11 +34: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: analysis finds every tree, topic link, include, and start page +00:11 +35: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove promotes children, updates usages, adds redirect, and keeps file +00:12 +36: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates all usages and removes every TOC occurrence +00:12 +37: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect to a promoted child is written to the promoted copy +00:12 +38: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed XML topics make usage analysis fail closed +00:12 +39: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: file-size-skipped topics make removal fail closed +00:12 +40: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: document-count-skipped topics make removal fail closed +00:12 +41: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: unreadable topic contents make removal fail closed +00:12 +42: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: topic-root traversal truncation makes removal fail closed +00:12 +43: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: incomplete project-module discovery makes removal fail closed +00:12 +44: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: tree directory enumeration failure makes removal fail closed +00:12 +45: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: single-quoted includes without element-id are found and removed +00:13 +46: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: variable-expanded links are analyzed and the variables file is stale-checked +00:13 +47: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: Safe Delete finds and unlinks authored HTML anchors without literal false positives +00:13 +48: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed authored HTML anchors are manual Safe Delete blockers +00:13 +49: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML variable hrefs are expanded and ambiguity blocks +00:13 +50: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML relevance follows its conditioned Markdown chapter +00:13 +51: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: automatic HTML unlinking permits project-wide orphan status +00:13 +52: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a surviving authored HTML link suppresses orphan status +00:13 +53: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: ambiguous references block deletion without changing any file +00:13 +54: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: old web file names follow Writerside normalization and exact overrides +00:14 +55: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: existing redirect rules block conflicting redirects +00:14 +56: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect preserves direct and rule-based accepted aliases +00:14 +57: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a transferred redirect alias collision fails before writes +00:14 +58: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect sources use each host instance web filename +00:14 +59: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remaining start-page and cross-instance usages prevent orphan status +00:14 +60: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove-from-instance relevance respects document conditions +00:14 +61: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: start-page and stale analyses fail closed without deleting the topic +00:14 +62: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: generic Files deletion cannot bypass Writerside Safe Delete +00:14 +63: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: project analysis finds origin links, includes, cards, and ref TOC nodes +00:14 +64: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored Markdown HTML anchors resolve origin project-wide +00:14 +65: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates automatic cross-module origin usages +00:15 +66: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: selected ref node uses removal workflow and promotes its children +00:15 +67: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: semantic tree scan includes hidden/build trees and excludes VCS metadata +00:15 +68: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a new module after analysis makes the reviewed plan stale +00:15 +69: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: cross-module failure rolls back BusyMark edits without overwriting a concurrent edit +00:15 +70: loading /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart +00:16 +70: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source paste preserves incoming nested blocks and returns its caret +00:16 +71: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves structural block kinds +00:16 +72: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: removing final formula leaves normal editing mode +00:16 +73: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits preserve nested list children +00:16 +74: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: descendant math does not put a plain list parent in source mode +00:16 +75: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first inline math insertion preserves unaffected inline AST +00:16 +76: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math edits retain explicit heading IDs +00:16 +77: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first math insertion recalculates a generated heading ID +00:16 +78: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion always emits reparsable source +00:16 +79: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: additional inline math uses the same reparsable insertion policy +00:16 +80: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion rejects multiline selections without mutation +00:16 +81: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves zero-width semantic inlines +00:16 +82: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table-cell source editing retains and removes semantic math +00:16 +83: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits cannot discard additional Markdown blocks +00:16 +84: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source editing preserves escaped literal dollars +00:16 +85: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves the intended inline position +00:16 +86: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math field source boundaries map to semantic text boundaries +00:16 +87: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: source-mode math insertion preserves the intended inline position +00:16 +88: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG renders math, edits exact source, and reparses without corruption +00:17 +89: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG toolbar inserts inline and display math source +00:18 +90: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math toolbar preserves existing inline structure +00:18 +91: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: rendered and focused math list items keep one marker +00:18 +92: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table math renders unfocused and edits delimiter source +00:19 +93: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: plain table cell treats typed Markdown as rich text +00:19 +94: loading /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart +00:20 +94: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery refresh preserves a valid second instance +00:21 +95: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: selected instance removed +00:21 +96: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: intentional selection +00:22 +97: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: another module +00:22 +98: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction incomplete observations are presentation only and reject changed reads +00:22 +99: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction limited inventory retains raw counts for excluded Git entries +00:22 +100: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: rejected source size remains an input to freshness checking +00:22 +101: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: bounded topic rejection detects recovery on the real worker +00:22 +102: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: oversized buffer overrides retain their consumed-input hash +00:22 +103: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: unreadable sources keep error diagnostics and invalidate on recovery +00:22 +104: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: real execution transfers results and propagates worker failures +00:22 +105: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: basic_project +00:22 +106: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: conformance_project +00:22 +107: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: markdown_export_compatibility +00:23 +108: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: malformed XML +00:23 +109: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: missing configured root +00:23 +110: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: unsafe include +00:23 +111: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: scan limit +00:23 +112: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: preparation consumes complete overlays once, then selects with zero loads +00:23 +113: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: reuse checks equal-size disk dependencies and added inputs +00:23 +114: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: planned path exclusions cannot hide a new colon-named dependency +00:23 +115: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: configuration overlay rediscovery retains symbols and diagnostics +00:23 +116: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: creation returns its typed publication result without reopening +00:23 +117: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal application shares one ownership-checked fresh project +00:23 +118: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects changed input before fingerprint collection +00:23 +119: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects added input before fingerprint collection +00:23 +120: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects removed input before fingerprint collection +00:23 +121: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects tree input before fingerprint collection +00:23 +122: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects configuration input before fingerprint collection +00:23 +123: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects disk dependency after fingerprint verification and before commit +00:23 +124: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects dirty affected buffer after fingerprint verification and before commit +00:23 +125: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: analysis is never reused across confirmation +00:24 +126: loading /home/albert/busystack/busymark/test/src/local_history_controller_test.dart +00:25 +126: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed opened baseline retries its original source without an edit +00:25 +127: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: baseline before edit preserves original and coalesces latest edit +00:25 +128: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: closed failures keep ownership and stale settlement cannot drop newer work +00:25 +129: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed protective capture survives refresh failure without recapture +00:25 +130: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: protective authorization is invalidated while committed refresh awaits +00:25 +131: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: disable cancels an in-flight baseline at the store boundary +00:25 +132: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: exclude cancels an in-flight baseline at the store boundary +00:25 +133: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed promotion stays associated when refresh fails +00:25 +134: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As binds destination even when list refresh fails +00:25 +135: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: settling one buffer resumes retries accepted by another buffer +00:25 +136: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear document cancels its failed unbound baseline +00:25 +137: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=true) +00:25 +138: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=false) +00:25 +139: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=false) +00:25 +140: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=true) +00:25 +141: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains a source identity established before later settlement fails +00:25 +142: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As refreshes a staged destination after its concurrent checkpoint +00:25 +143: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: abandoned and superseded moves retain the newest committed association +00:25 +144: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued edits share one retained baseline retry owner +00:25 +145: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: independent failures, permanent baselines and policy cancellation remain isolated +00:25 +146: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: cancelled failed baselines cannot be restored by delayed callbacks +00:25 +147: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: continuous typing captures latest text at fixed checkpoint interval +00:25 +148: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: inactive buffers receive independent checkpoint timers +00:25 +149: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first checkpoint attaches an empty untitled browsing scope and publishes it +00:25 +150: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file store checkpoint persists across reopen and clear stays authoritative +00:30 +151: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: active revision search follows matching and nonmatching captures +00:30 +152: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed automatic capture keeps pending source and retries without another edit +00:30 +153: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a newer edit accepted during a failed write wins the retry +00:30 +154: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: automatic checkpoint retries a transient first-save promotion failure +00:30 +155: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush waits behind queued observation and captures its latest source +00:30 +156: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear wins over an in-flight capture and later edits record normally +00:30 +157: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear Document records in the replacement lineage +00:30 +158: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document blocks replacement capture while its journal is pending +00:30 +159: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear All records in the replacement lineage +00:30 +160: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All blocks replacement capture while its journal is pending +00:30 +161: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an automatic checkpoint queued for an untitled draft +00:30 +162: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear Document +00:30 +163: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear All +00:30 +164: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clearing the displayed comparison closes it without a missing warning +00:30 +165: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an in-flight path capture for the same document +00:30 +166: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first edit after another controller clears a stale binding starts a new lineage +00:30 +167: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight buffer replacement protection +00:30 +168: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued buffer replacement protection +00:30 +169: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight path replacement protection +00:30 +170: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued path replacement protection +00:30 +171: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight buffer replacement protection +00:30 +172: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued buffer replacement protection +00:30 +173: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight path replacement protection +00:30 +174: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued path replacement protection +00:30 +175: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording off prevents baseline and checkpoints without deleting history +00:30 +176: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: store-wide find locates closed and deleted documents by path or content +00:30 +177: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: retained-document lookup is temporary and normal document selection resumes following +00:30 +178: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: panel construction preserves an explicit retained-document inspection +00:31 +179: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: delayed revision search cannot repopulate a newly selected document scope +00:31 +180: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision search failure finishes searching and remains in scope +00:31 +181: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Local History follows active tabs and clears the visible query without a document dropdown +00:32 +182: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision rows use local second-precision time, date groups, event metadata, and RTL +00:32 +183: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a delayed revision read cannot cross the selected document or leave loading stuck +00:32 +184: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As settles pending named and untitled checkpoints safely +00:32 +185: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: untitled overwrite Save As retains a failed source checkpoint +00:32 +186: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As source capture is idempotent after a lost result +00:32 +187: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As recovery never adopts unrelated same-content destination history +00:32 +188: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording-disabled first save promotes untitled history identity +00:32 +189: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: excluding a recovered first-save destination preserves its untitled source baseline +00:32 +190: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued committed Save As cannot recreate a newly excluded destination side +00:32 +191: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed first-save promotion is retried before a later capture +00:32 +192: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush retries a failed first-save promotion without another edit +00:32 +193: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush reports a content failure after successfully retrying promotion +00:32 +194: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: remap settles pending first-save promotions for files and directories +00:32 +195: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file and directory moves settle pending checkpoints before remap +00:32 +196: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed path reconciliation blocks affected captures but not unrelated documents +00:32 +197: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: successful path queue prefix is published before a later failure +00:32 +198: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path deletion warnings remain scoped to affected owners +00:32 +199: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed path operation is not replayed after refresh failure +00:32 +200: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: restored targetless executing reconciliation preserves its owner +00:32 +201: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) +00:32 +202: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/B.md) +00:32 +203: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/A.md, recursive: false, source: /workspace/C.md) +00:32 +204: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/B.md, recursive: false, source: /workspace/C.md) +00:32 +205: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirA/nested/C.md) +00:32 +206: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirB/nested/C.md) +00:32 +207: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: false, source: /workspace/C.md) +00:32 +208: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirB/nested/C.md, recursive: false, source: /workspace/C.md) +00:32 +209: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /other, recursive: false, source: /workspace) +00:32 +210: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace, recursive: false, source: /other) +00:32 +211: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/dirB-sibling/C.md, recursive: false, source: /workspace/dirA-sibling/C.md) +00:32 +212: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) +00:32 +213: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: true, source: /workspace/dirA/nested/C.md) +00:32 +214: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: true, source: /workspace/C.md) +00:32 +215: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /other, recursive: true, source: /workspace) +00:32 +216: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: true, source: /workspace/C.md) +00:32 +217: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) +00:32 +218: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) +00:32 +219: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses prepared target with different paths +00:32 +220: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses bound identity with different paths +00:32 +221: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses destination identity with different paths +00:32 +222: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency checks promotion destination identity at a different path +00:32 +223: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency settles only conflicting entries behind an unresolved head +00:32 +224: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=false) +00:32 +225: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=true) +00:32 +226: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency preserves transitive queue ordering +00:32 +227: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=false) +00:32 +228: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=true) +00:32 +229: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: staged path commit survives refresh failure until workspace acknowledgement +00:32 +230: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: external staged remap refreshes its bound target after checkpoint settlement +00:32 +231: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: definitive false staged result retires its executing journal +00:32 +232: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred deletion cannot delete replacement path history +00:32 +233: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document removes only its recursive reconciliation target +00:32 +234: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document preserves timer retry for remaining recursive target +00:32 +235: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: prepared remap rejects a checkpoint that changed its frozen target +00:32 +236: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: ownerless path failure is visible only in history presentation +00:32 +237: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: detached promotion capture is included in durable retained work +00:32 +238: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: live external retained owner is not replayed and Clear All retires it +00:32 +239: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a clear conflict cancels the old baseline retry owner +00:32 +240: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit after failed Clear waits and persists in the replacement lineage +00:32 +241: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: post-Clear edit uses committed epoch when reconciliation refresh fails +00:32 +242: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred remap cannot mutate replacement path history +00:32 +243: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed remap reserves source and destination paths until reconciliation +00:32 +244: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deletion remains ordered behind a retained path remap +00:32 +245: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first save waits for a reserved source path before promoting its history +00:32 +246: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path target discovery observes history written after cached load +00:32 +247: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear document +00:32 +248: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear all +00:32 +249: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after disposal +00:32 +250: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As transfers retained remap ownership with source work +00:32 +251: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flushBuffer reports retained remap work and retires closed owner +00:32 +252: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All cannot be undone by an in-flight path remap +00:32 +253: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path reconciliation resumes a newly opened destination owner +00:32 +254: loading /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart +00:33 +254: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: HTML retains complex Markdown and resolves both heading ID spellings +00:35 +255: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: PDF retains complex Markdown and resolved heading links +00:36 +256: loading /home/albert/busystack/busymark/test/src/math_widget_test.dart +00:36 +256: /home/albert/busystack/busymark/test/src/math_widget_test.dart: inline math applies MathJax baseline and surrounding text metrics +00:37 +257: /home/albert/busystack/busymark/test/src/math_widget_test.dart: wide display math scrolls horizontally without clipping +00:38 +258: /home/albert/busystack/busymark/test/src/math_widget_test.dart: failed formulas retain source and a localized explanation +00:38 +259: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart +00:39 +259: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: reduced fixture uses rendered offsets without Markdown delimiters or block separators +00:39 +260: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All: logical range and copy include styled suffixes and table +00:41 +261: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b0 BusyBlockKind.paragraph +00:41 +262: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b1 BusyBlockKind.paragraph +00:42 +263: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b2 BusyBlockKind.paragraph +00:42 +264: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b3 BusyBlockKind.unorderedListItem +00:42 +265: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b4 BusyBlockKind.unorderedListItem +00:43 +266: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b5 BusyBlockKind.unorderedListItem +00:43 +267: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b6 BusyBlockKind.paragraph +00:43 +268: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b17 BusyBlockKind.paragraph +00:44 +269: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table cells paint the same selected text as document copy +00:44 +270: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: repeated Select All keeps the entire document selected +00:44 +271: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: Before. + +| H | +| --- | +| Body! | + +00:44 +272: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: | H | +| --- | +| Body! | + +After. + +00:45 +273: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag endpoints use the styled rendered coordinate system +00:45 +274: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag from a paragraph into a table copies and selects its cells +00:45 +275: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across table cells selects the existing complete-table document block +00:46 +276: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 460.0 +00:46 +277: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 460.0 +00:46 +278: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 460.0 +00:46 +279: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 460.0 +00:47 +280: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 460.0 +00:47 +281: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 460.0 +00:47 +282: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 1000.0 +00:47 +283: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 1000.0 +00:48 +284: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 1000.0 +00:48 +285: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 1000.0 +00:48 +286: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 1000.0 +00:48 +287: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 1000.0 +00:48 +288: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=2 +00:48 +289: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=10 +00:49 +290: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=11 +00:49 +291: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=2 +00:49 +292: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=10 +00:49 +293: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=11 +00:49 +294: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=2 +00:49 +295: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=10 +00:49 +296: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=11 +00:49 +297: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=2 +00:49 +298: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=10 +00:49 +299: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=11 +00:49 +300: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=2 +00:50 +301: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=10 +00:50 +302: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=11 +00:50 +303: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=2 +00:50 +304: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=14 +00:50 +305: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=15 +00:50 +306: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 3, 29) includes the final rendered character +00:50 +307: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (4, 0, 4, 36) includes the final rendered character +00:50 +308: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 4, 36) includes the final rendered character +00:50 +309: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 4, 4, 36) includes the final rendered character +00:51 +310: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 6, 9) includes the final rendered character +00:51 +311: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 0, 6, 93) includes the final rendered character +00:51 +312: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (5, 0, 5, 29) includes the final rendered character +00:51 +313: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: mouse range across paragraph, list, table and paragraph equals Select All +00:51 +314: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All, mouse and keyboard ranges produce equivalent local selection geometry +00:52 +315: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: local table cell selection stays local; subsequent Select All expands to document +00:53 +316: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table to following paragraph retains complete selected rows +00:53 +317: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: document selection survives viewport scrolling and block recreation +00:53 +318: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: selected table text follows horizontal cell scrolling +00:53 +319: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across a viewport jump resolves the visible extent block (variant: TargetPlatform.linux) +00:54 +320: loading /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart +00:55 +320: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video card embeds a supported YouTube source in place +00:55 +321: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: mini-player embeds Vimeo with the reduced video ID +00:56 +322: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: local video player receives only a canonical media path +00:56 +323: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video dimensions preserve ratio and scale to available width +00:56 +324: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: failed native player leaves a usable poster fallback +00:56 +325: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: WYSIWYG renders a Writerside video without rewriting source +00:56 +326: loading /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart +00:57 +326: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: uses the native grouped modal-editor structure +00:58 +327: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shared report form remains directional in an Arabic UI +00:58 +328: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: dark route uses the shared dialog surface +00:59 +329: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows required-field validation without sending +00:59 +330: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: rejects an invalid optional reply email +00:59 +331: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: category can return to the unselected placeholder +00:59 +332: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: disables submit while a request is active +00:59 +333: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: clears the form and shows the server reference on success +01:00 +334: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows a distinct message when the server rejects the form +01:00 +335: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: keeps retry UUID until submitted content changes +01:00 +336: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: cannot dismiss the dialog while submission is active +01:00 +337: loading /home/albert/busystack/busymark/test/src/headless_chrome_test.dart +01:01 +337: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: evaluates the requested document after it becomes ready +01:01 +338: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: does not evaluate the initial about:blank target +01:01 +339: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: retries when navigation destroys the execution context +01:01 +340: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a silent open DevTools socket respects the readiness bound +01:01 +341: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: socket closure before a response fails deterministically +01:01 +342: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a DevTools error is not mistaken for navigation +01:01 +343: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a page that never becomes ready reports its last state +01:01 +344: loading /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart +01:02 +344: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in untitledMarkdown +01:02 +345: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in singleMarkdown +01:02 +346: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in markdownFolder +01:02 +347: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in writersideModule +01:02 +348: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in nextcloudNotes +01:02 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (setUpAll) +01:03 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered Markdown topic wins over generic file inventory +01:03 +350: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered XML topic resolves as a Writerside XML topic +01:03 +351: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution ordinary Markdown under the project is still CommonMark +01:03 +352: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution path fallback does not depend on workspace file inventory +01:03 +353: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (tearDownAll) +01:03 +353: loading /home/albert/busystack/busymark/test/src/html_export_test.dart +01:04 +353: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsaved Markdown is a complete styled document with stable semantic anchors +01:06 +354: /home/albert/busystack/busymark/test/src/html_export_test.dart: raw disclosures, definitions and spans survive with structural sanitization +01:06 +355: /home/albert/busystack/busymark/test/src/html_export_test.dart: explicit blank lines export as consecutive HTML breaks +01:06 +356: /home/albert/busystack/busymark/test/src/html_export_test.dart: content-addressed assets relocate, deduplicate and reject symlink escapes +01:06 +357: /home/albert/busystack/busymark/test/src/html_export_test.dart: home-relative images use the shared local-media path rules +01:06 +358: /home/albert/busystack/busymark/test/src/html_export_test.dart: untrusted metadata and data URLs cannot create active HTML +01:06 +359: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsafe SVG and CSS never reach exported assets +01:06 +360: /home/albert/busystack/busymark/test/src/html_export_test.dart: overwrite refusal, cancellation and rendering failure preserve previous HTML +01:06 +361: /home/albert/busystack/busymark/test/src/html_export_test.dart: metadata title remains separate from a formatted Markdown title heading +01:06 +362: /home/albert/busystack/busymark/test/src/html_export_test.dart: UTF-8 byte limits are enforced +01:06 +363: /home/albert/busystack/busymark/test/src/html_export_test.dart: Writerside produces linked pages, hidden topics, WIP and start copy +01:07 +364: /home/albert/busystack/busymark/test/src/html_export_test.dart: official conformance fixture exports as individual pages +01:07 +365: loading /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart +01:08 +365: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside blockquotes become typed admonitions and round-trip +01:08 +366: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown blockquotes do not acquire Writerside semantics +01:08 +367: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: semantic admonition elements include quote and preserve attributes +01:08 +368: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: admonition editing emits source that reparses semantically +01:08 +369: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: editing inside an existing admonition changes its outer type +01:08 +370: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: WYSIWYG Admonition menu applies the selected type +01:09 +371: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown does not show the Writerside editing menu +01:09 +372: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside .topic preview keeps content inside its admonition +01:10 +373: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: PDF export keeps admonitions semantic and quotes neutral +01:10 +374: loading /home/albert/busystack/busymark/test/src/d2_renderer_test.dart +01:11 +374: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy rejects imports and icon assets with source locations +01:11 +375: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy does not treat comments, quoted labels, or block strings as imports +01:11 +376: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: returns normalized vector SVG for browser-independent output +01:11 +377: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes foreignObject output at PDF resolution +01:11 +378: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes browser CSS that cannot be preserved in vector form +01:11 +379: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: maps D2 diagnostics and renderer limits to typed results +01:11 +380: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: locates only executable files at deterministic bundle paths +01:11 +381: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: bundled D2 CLI renders stdin to stdout without a shell +01:11 +382: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart +01:12 +382: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +01:13 +383: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions +01:14 +384: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart +01:17 +384: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: display images do not reserve a fixed-height letterbox +01:17 +385: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: quotes and admonitions use the existing callout presentation +01:17 +386: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF export ignores redundant blank lines between blocks +01:18 +387: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF payload preserves an explicit blank line as two breaks +01:18 +388: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders two explicit breaks as one blank PDF line +01:18 +389: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders redundant blank lines identically +01:18 +390: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template exports representative Markdown to a valid PDF +01:18 +391: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside video poster and link compile into a valid PDF +01:18 +392: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside admonitions compile into a valid PDF +01:19 +393: loading /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart +01:20 +393: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: data tables remain tables, including borderless and single-column data +01:20 +394: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: nested layout wrappers retain their inner data table and prose +01:20 +395: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: explicit presentation table keeps caption, cell order and direction +01:20 +396: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor preserves content inside a layout table +01:20 +397: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor plain paste ignores layout and rich content +01:20 +398: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource preserves content inside a layout table +01:20 +399: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource plain paste ignores layout and rich content +01:20 +400: loading /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart +01:22 +400: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: selects all candidates by default and disables OK for none +01:23 +401: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: successful import closes the dialog with selected list order +01:23 +402: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: failed import stays open and presents the localized error +01:23 +403: loading /home/albert/busystack/busymark/test/src/html_publication_test.dart +01:27 +403: /home/albert/busystack/busymark/test/src/html_publication_test.dart: single-file local video has a downloadable fallback +01:27 +404: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list starts and same-type boundaries survive HTML export +01:27 +405: /home/albert/busystack/busymark/test/src/html_publication_test.dart: repeated list includes export as separate HTML containers +01:27 +406: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list styles stay distinct across consecutive lists +01:27 +407: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside shares HTML appearance without changing TOC status or source +01:27 +408: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside module origins preserve includes, variables, file identity and nullable links +01:28 +409: /home/albert/busystack/busymark/test/src/html_publication_test.dart: definition lists preserve individual disclosure states and IDs +01:28 +410: /home/albert/busystack/busymark/test/src/html_publication_test.dart: web filename and index collisions identify both topics before publication +01:28 +411: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside publication uses canonical effective web filenames +01:28 +412: /home/albert/busystack/busymark/test/src/html_publication_test.dart: source and media are captured before progress or later editor changes +01:28 +413: /home/albert/busystack/busymark/test/src/html_publication_test.dart: publication failure retains previous HTML and referenced immutable assets +01:28 +414: /home/albert/busystack/busymark/test/src/html_publication_test.dart: duplicate explicit IDs warn, non-Latin footnotes and document IDs resolve +01:28 +415: loading /home/albert/busystack/busymark/test/src/spelling_service_test.dart +01:29 +415: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document kinds expose one authoritative spelling capability +01:29 +416: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: effective spelling language preserves document and project order +01:29 +417: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: session identity changes when a stable buffer is saved to a path +01:29 +418: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: downloaded dictionaries use revision-shared Snap storage +01:29 +419: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: first save and Save As republish source routing immediately +01:30 +420: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rereads and merges independent external changes +01:31 +421: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words coordinates writers in independent application processes +01:33 +422: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external edit injected after staging +01:34 +423: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external replacement after the atomic exchange +01:34 +424: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves a newer destination and the rejected displaced version +01:34 +425: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves case while merging canonical Unicode equivalents +01:34 +426: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rebuilds untrusted stored keys from validated display values +01:34 +427: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words case-distinct words survive restart into the native worker +01:34 +428: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words malformed storage is reported instead of overwritten +01:34 +429: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: staging validation accepts numeric header revisions and count drift +01:34 +430: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: dictionary import publishes a complete pair only after validation +01:34 +431: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation installs only one shared resource and reuses it by locale +01:34 +432: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation and checksum failure leave no installation +01:34 +433: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation observes the atomic publication commit point +01:34 +434: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale invalid record cannot remove a repaired installation +01:34 +435: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale valid descriptor cannot remove a replacement in another process +01:35 +436: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation catalog waits through a replacement publication gap +01:35 +437: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a late no-replace publisher cannot replace a completed installation +01:35 +438: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation independent process observes the published no-replace destination +01:36 +439: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation stalled response times out, cancels, and permits retry +01:36 +440: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation asynchronous output sink errors fail the receiver without zone leaks +01:36 +441: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed replacement cannot damage a working installation +01:36 +442: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed controller download exposes a working retry +01:36 +443: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller reserves an installation before coordinator startup +01:36 +444: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller releases installation ownership after setup failure +01:36 +445: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller cancellation remains with the reserved startup operation +01:36 +446: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: aliased imports remain selectable across collision, restart, and removal +01:37 +447: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: same-resource import collision is rejected before publication +01:37 +448: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an import does not impersonate the downloadable resource row +01:37 +449: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid imported installation is removable by exact record +01:37 +450: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid downloaded installation repairs through settings API +01:37 +451: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once keeps its authored anchor across editor modes +01:37 +452: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: source hit testing excludes formatting and link destination gaps +01:37 +453: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once follows one transaction across edit, undo, redo, and tabs +01:37 +454: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document ignores survive tab changes but not an actual close +01:37 +455: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed suggestion cannot revive after language changes +01:37 +456: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a manual request waits for its own result while a check runs +01:37 +457: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: checks in bounded batches and reuses unchanged run results +01:37 +458: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: cached runs cover the complete checked text across edits +01:37 +459: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a NUL suffix cannot complete checking and recovers after correction +01:37 +460: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project initialization publishes only the latest owner +01:38 +461: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older same-project Settings read cannot undo a newer snapshot +01:38 +462: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older project watcher read cannot undo Settings publication +01:38 +463: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project read begun during a mutation cannot undo its result +01:38 +464: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project conflict read preserves newer state and error +01:38 +465: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project watcher error cannot replace valid state +01:39 +466: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project watcher recovers after identical dictionary repair +01:39 +467: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project repair recovers a later failed preparation at latest revision +01:40 +468: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project reread does not clear an unrelated personal read failure +01:40 +469: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: failed personal initialization retries after repair and shares first load +01:41 +470: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: explicit checks and Settings refresh external personal words +01:41 +471: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: late personal refresh cannot undo a newer local mutation +01:41 +472: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: refresh begun during a personal mutation cannot undo its result +01:41 +473: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an older personal refresh cannot replace a newer publication +01:41 +474: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a superseded conflict read cannot replace a newer personal refresh +01:41 +475: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Settings holds a failed preparation until deliberate retry +01:43 +476: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm no-workspace Settings refreshes personal words once +01:44 +477: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm Settings observes an external dictionary removal once +01:44 +478: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: leaving Settings during preparation ignores its late completion +01:44 +479: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent first requests start exactly one worker +01:45 +480: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a project-word mutation cannot publish into a later project +01:45 +481: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: new input hides old results before preparation can fail +01:46 +482: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: external project-word edits refresh an open document +01:48 +483: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review dialog keeps one traversal through skip, back, correction, and persistence +01:50 +484: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review word-store conflict stays current and exposes preserved recovery path +01:51 +485: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: equivalent rebuild does not cancel session initialization +01:52 +486: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic session checks after an unresolved language is selected +01:52 +487: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an available but absent dictionary is not downloaded implicitly +01:52 +488: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: removing a downloaded pair keeps words and reports not installed +01:52 +489: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance refreshes external installation at explicit boundaries +01:52 +490: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance replaces an active imported dictionary fingerprint +01:52 +491: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent warm catalog preparations share one owned read +01:52 +492: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed catalog read cannot undo a local installation +01:52 +493: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a failed warm catalog refresh remains retryable +01:52 +494: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic checking rereads inventory after dictionary load fails +01:53 +495: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker catalog validation requires its resource-specific probe +01:53 +496: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projects source and rich snapshots through reusable messages +01:53 +497: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incrementally reuses unaffected plain Markdown runs +01:53 +498: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incremental Markdown projection agrees with a fresh structural parse +01:53 +499: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projection cache rebinds source targets after Save As +01:53 +500: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker project custom words do not leak between contexts +01:53 +501: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quoted corrections retain straight and curly punctuation +01:53 +502: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives projection and worker barriers +01:53 +503: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives a bounded worker chunk +01:53 +504: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker removing a custom exception does not forbid a base word +01:53 +505: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker prose around 64 KiB is checked across bounded chunks +01:53 +506: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker isolates encoding and oversized-token failures +01:53 +507: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker normal, large, and superseded checks stay bounded +spelling benchmark: normal=4ms large/latest=155ms suggestion=0ms +01:53 +508: loading /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart +01:54 +508: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: rapid navigation applies only monotonic complete configurations +01:54 +509: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: a new Dart session can restart native revisions from one +01:54 +510: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal depth is an atomic overlay on the latest page state +01:54 +511: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal barrier is retained before the first page publishes +01:54 +512: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: older runners fall back once to the ordered legacy protocol +01:54 +513: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: failed atomic apply keeps the last success and retries the same desired state +01:54 +514: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: theme map contains the native semantic visual roles +01:54 +515: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: native header labels expose only application-menu commands +01:54 +516: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart +01:56 +516: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces +01:58 +517: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark +01:58 +518: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync +01:58 +519: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces +01:58 +520: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog +01:58 +521: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present +01:58 +522: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging +01:59 +523: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface +01:59 +524: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body +01:59 +525: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters +01:59 +526: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components +01:59 +527: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers +01:59 +528: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface +01:59 +529: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry +01:59 +530: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary +01:59 +531: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer +01:59 +532: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting +01:59 +533: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI +01:59 +534: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text +01:59 +535: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration +01:59 +536: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR +01:59 +537: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface +01:59 +538: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography +01:59 +539: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style +01:59 +540: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives +01:59 +541: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries +01:59 +542: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind +01:59 +543: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces +01:59 +544: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu +01:59 +545: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback +01:59 +546: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup +01:59 +547: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel +01:59 +548: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter +01:59 +549: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu +01:59 +550: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor +01:59 +551: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors +01:59 +552: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation +01:59 +553: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row +01:59 +554: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model +01:59 +555: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row +01:59 +556: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation +01:59 +557: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span +01:59 +558: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout +01:59 +559: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts +01:59 +560: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls +01:59 +561: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds +01:59 +562: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog +01:59 +563: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release +01:59 +564: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome +01:59 +565: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart +02:00 +565: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings +02:00 +566: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded +02:00 +567: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales +02:00 +568: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale +02:00 +569: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes +02:00 +570: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs +02:00 +571: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders +02:01 +572: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct +02:01 +573: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed +02:01 +574: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys +02:01 +575: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale +02:01 +576: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose +02:01 +577: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches +02:01 +578: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form +02:01 +579: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural +02:01 +580: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology +02:01 +581: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations +02:01 +582: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits +02:01 +583: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English +02:01 +584: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog +02:01 +585: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args +02:01 +586: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart +02:03 +586: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks pasted rich content completely in both editors +02:06 +587: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: packaged catalog opens real regional and non-Latin dictionaries +Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff +02:13 +588: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks the general Markdown fixture completely +02:17 +589: loading /home/albert/busystack/busymark/test/src/command_registry_test.dart +02:18 +589: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog includes every editor command with an executable callback +02:18 +590: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog exposes stable unique IDs for all migrated shortcuts +02:18 +591: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects duplicate command IDs +02:18 +592: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects shortcut conflicts in the same command scope +02:18 +593: /home/albert/busystack/busymark/test/src/command_registry_test.dart: allows the same shortcut in distinct focus scopes +02:18 +594: /home/albert/busystack/busymark/test/src/command_registry_test.dart: executes only visible enabled bound commands +02:18 +595: /home/albert/busystack/busymark/test/src/command_registry_test.dart: contextual commands execute against the captured editor +02:18 +596: loading /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart +02:19 +596: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: Linux packages secure AI credential storage consistently +02:19 +597: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: real local AI qualification covers every shipped action +02:19 +598: loading /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart +02:20 +598: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: source line bounds treat offsets as insertion positions +02:20 +599: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: table cell spans respect meaningful outer pipes and escaping +02:20 +600: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: escaped terminal pipes remain in the final cell source span +02:20 +601: loading /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart +02:21 +601: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide preview fits identically through D2 and WebKit renderers +02:21 +602: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide PDF fits identically through D2 and WebKit renderers +02:21 +603: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: area-constrained PDF fits identically through D2 and WebKit renderers +02:21 +604: loading /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart +02:25 +604: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: real installed catalog has six default families and 22 bundled TGDP topics +02:26 +605: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: literal substitution is simultaneous, case-sensitive, XML-only escaped +02:26 +606: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save source matches installed first-match substring behavior +02:26 +607: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: TGDP brace escaping preserves attribute blocks and rewrites relative links +02:26 +608: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save, unique naming, restart, cancellation snapshot and stale edit rejection +02:26 +609: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: concurrent saves serialize without losing templates +02:26 +610: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: true) +02:26 +611: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: false) +02:26 +612: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: corrupt and symbolic-link stores are never replaced +02:26 +613: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: builtin overrides persist independently and reset reveals original source +02:26 +614: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: template bytes are published in the guarded creation transaction and rolled back on conflict +02:26 +615: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: invalid XML templates and colliding root IDs never publish a topic or TOC edit +02:26 +616: loading /home/albert/busystack/busymark/test/src/writerside_test.dart +02:27 +616: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses writerside.cfg directories and registered instances +02:27 +617: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented full writerside.cfg metadata +02:27 +618: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented config defaults +02:27 +619: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses attribute defaults for present config elements +02:27 +620: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented topic title overrides and web file names +02:27 +621: /home/albert/busystack/busymark/test/src/writerside_test.dart: Markdown web filename metadata ignores literal examples +02:27 +622: /home/albert/busystack/busymark/test/src/writerside_test.dart: XML topic metadata is scoped to direct topic children +02:27 +623: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses .tree metadata and TOC hierarchy +02:27 +624: /home/albert/busystack/busymark/test/src/writerside_test.dart: Writerside topic XML exposes semantic math to the shared preview +02:27 +625: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads basic Writerside project with topics and no missing topic diagnostics +02:27 +626: /home/albert/busystack/busymark/test/src/writerside_test.dart: does not parse a Writerside config above the byte limit +02:27 +627: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects configured paths outside the module root +02:27 +628: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a configured topic root reached through a symlink +02:27 +629: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a Writerside config file reached through a symlink +02:27 +630: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads project.ihp as an equivalent Writerside config file +02:27 +631: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads topics from multiple configured topic roots +02:27 +632: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves exact topic reference before basename fallback +02:27 +633: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports duplicate topic IDs in a help module +02:27 +634: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename fallback after exact matching misses +02:27 +635: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves Markdown links across configured topic roots +02:27 +636: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename topic references deterministically +02:27 +637: /home/albert/busystack/busymark/test/src/writerside_test.dart: broken Writerside project produces deterministic diagnostics +02:28 +638: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves basename images in nested Writerside image directories +02:28 +639: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves local images from secondary configured image roots +02:28 +640: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses the documented instance tree elements and attributes +02:28 +641: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects redirect-source attributes on empty TOC groups +02:28 +642: /home/albert/busystack/busymark/test/src/writerside_test.dart: module service retains empty-group redirect-source diagnostics +02:28 +643: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves registered TOC libraries, filters, groups, and cross-instance refs +02:28 +644: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports circular reusable tree includes without recursing +02:28 +645: /home/albert/busystack/busymark/test/src/writerside_test.dart: included content still requires a regular instance home page +02:28 +646: /home/albert/busystack/busymark/test/src/writerside_test.dart: ignores status-specific values for general instance settings +02:28 +647: /home/albert/busystack/busymark/test/src/writerside_test.dart: conformance fixture is a valid openable Writerside module +02:28 +648: loading /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart +02:29 +648: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: narrow title stays centered between the controls when resized +02:29 +649: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.rtl +02:29 +650: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.ltr +02:29 +651: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.rtl +02:29 +652: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.ltr +02:29 +653: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.dark seam paints the same subtle color across header and body +02:30 +654: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.light seam paints the same subtle color across header and body +02:30 +655: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: one viewport owns the full-height sidebar edge at every frame +02:30 +656: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: unrelated rebuild preserves partial progress and body state +02:30 +657: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: breakpoint settlement is immediate and retained state survives +02:30 +658: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: RTL and fractional device pixels share one snapped edge +02:30 +659: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: divider follows the snapped physical viewport while opening and closing +02:30 +660: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: animation setting settles a running reveal to its logical target +02:30 +661: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header receives only the presented system-control obstruction +02:30 +662: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: frame is the single owner of the full-height sidebar seam +02:30 +663: loading /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart +02:32 +663: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: tree-to-editor sync opens selected topic even with a .tree editor active +02:37 +664: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: editor-to-TOC sync resolves qualified identities and chooses breadth-first occurrence +02:40 +665: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: live removal dialog uses documented confirmation, redirect label and usage count +02:43 +666: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: New Topic surfaces expose local Markdown import only at root/sibling +02:44 +667: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty MD Topic creates an editable document when Reading mode is active, preserving other tabs +02:47 +668: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty XML Topic creates an editable document when Reading mode is active, preserving other tabs +02:50 +669: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Topic from Template... creates an editable document when Reading mode is active, preserving other tabs +02:53 +670: loading /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart +02:54 +670: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: header Escape preserves the query for the next search +02:55 +671: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: search fallback uses the normal Yaru-themed entry geometry +02:55 +672: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: focus request targets the themed text entry +02:56 +673: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: Escape clears the query and closes the owner +02:56 +674: loading /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart +02:56 +674: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: row titles, markers and included source identity use selected context +02:57 +675: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking retains source bytes and rejects a now-present candidate +02:57 +676: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: home reassignment preserves other instances and unrelated attributes +02:57 +677: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty instance +02:57 +678: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: groups only +02:57 +679: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing home +02:57 +680: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: library +02:58 +681: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty group insertion +02:58 +682: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing nested topic +02:58 +683: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: first linked topic and home assignment share the same publication guard +02:58 +684: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: title transaction rolls back both files on a concurrent dirty-buffer guard +02:58 +685: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: XML duplicate copies source, changes only root ID, adds basic sibling +02:58 +686: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: sort revalidates title dependencies before publishing the tree +02:58 +687: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: safe deletion rechecks dirty-buffer guard and rolls back earlier edits +02:59 +688: loading /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart +03:00 +688: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: repeated list includes restart numbering in the final PDF +03:01 +689: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF keeps alphabetic starts, separate decimal lists and procedure numbering +03:01 +690: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (unknown) +03:01 +691: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (shared-pdf) +03:01 +692: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=false +03:01 +693: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=true +03:01 +694: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=true) +03:02 +695: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=false) +03:02 +696: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: bundled Typst compiles semantic tables, anchors and glossary footnotes +03:02 +697: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF retains nested chapter bodies and resolves unique internal destinations +03:02 +698: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic links retain their PDF destinations +03:02 +699: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic blank lines remain explicit in Writerside PDF +03:02 +700: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native export composes the selected instance without a container runtime +03:02 +701: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: hidden topics remain content and toc-title stays navigation-only +03:02 +702: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: referenced diagrams keep resolved source and all tab panels reach PDF +03:02 +703: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: pre-cancelled native export never starts PDF compilation +03:02 +704: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unknown Writerside instance is rejected before compilation +03:02 +705: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: resolution errors prevent PDF compilation +03:02 +706: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation errors prevent PDF compilation +03:02 +707: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation warnings are returned to the caller +03:02 +708: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: nonfatal resolution diagnostics are returned as PDF warnings +03:03 +709: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native exporter failures use Writerside failure codes +03:03 +710: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native Writerside fixture compiles end to end with bundled Typst +03:03 +711: loading /home/albert/busystack/busymark/test/src/clipboard_history_test.dart +03:04 +711: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains newest first, deduplicates, removes, clears, and evicts by count +03:04 +712: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: accounts byte budget and rejects an oversized item without truncation +03:04 +713: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: collection off leaves existing entries and blocks new retention +03:04 +714: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external clipboard remains transient until explicitly retained +03:04 +715: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external HTML keeps its rich and interoperable text representations +03:04 +716: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current HTML-only clipboard is eligible without internal ownership +03:04 +717: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current source-only clipboard does not invent plain text +03:04 +718: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal visible text with different structure stays distinct +03:04 +719: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal relative markup from different origins stays distinct +03:04 +720: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains whitespace-only text and owns image bytes immutably +03:04 +721: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: a new provider session starts with no retained history +03:04 +722: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: insertion registry follows latest target and never retains disposed targets +03:04 +723: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: unknown token cannot recover rich data through equal plain text +03:04 +724: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: rich ownership is byte bounded and shares equivalent media +03:04 +725: loading /home/albert/busystack/busymark/test/src/ai_reliability_test.dart +03:06 +725: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator honors Retry-After and caps retry attempts +03:06 +726: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator never retries after partial output +03:06 +727: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator bounds all retries by one total deadline +03:06 +728: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: global permit pool limits requests across different targets +03:06 +729: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: request-id cancellation cannot cancel a newer request for the target +03:06 +730: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: model fallback stays inside the explicitly selected provider +03:06 +731: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Ollama uses an absolute deadline even while bytes keep arriving +03:06 +732: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: cancellation interrupts the preliminary Ollama model request +03:06 +733: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Retry-After supports seconds and HTTP dates without negatives +03:06 +734: loading /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart +03:07 +734: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: partially formatted URL source offsets and text atoms survive save and edit +03:08 +735: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: URL punctuation beside surrounding formatting retains literal and style boundaries +03:08 +736: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: surrounding formatting commits the same URL editing semantics as reopening +03:09 +737: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL trailing literal punctuation survives serialization and reparse +03:09 +738: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: © +03:09 +739: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: & +03:09 +740: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: &* +03:09 +741: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: © +03:09 +742: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: & +03:09 +743: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: &* +03:09 +744: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.commonMark +03:09 +745: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.writersideMarkdown +03:09 +746: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: descendant whitespace preservation prevents ancestor trimming +03:09 +747: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: ordinary and metadata inline emission are byte-identical +03:09 +748: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL offsets and text atoms stay exact through Enter, edit and save/reparse +03:09 +749: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare leaf links use raw URL positions and explicit equal-label links retain delimiters +03:09 +750: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: grouped breaks retain distinct source provenance in one traversal +03:09 +751: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: text-leaf atoms use interior spans and exclude delimiters +03:09 +752: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: table escaping translates leaf spans without changing source +03:10 +753: loading /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart +03:10 +753: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: semantic catalog uses the exact native GTK icon names +03:10 +754: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: initial load batches direction variants and preserves candidate order +03:10 +755: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: explicit Back role survives atomic theme and scale catalog replacement +03:11 +756: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart +03:12 +756: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +03:12 +757: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback +03:13 +758: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +03:13 +759: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error +03:13 +760: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token +03:13 +761: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails +03:13 +762: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache +03:13 +763: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox +03:13 +764: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret +03:13 +765: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry +03:13 +766: loading /home/albert/busystack/busymark/test/src/feedback_service_test.dart +03:14 +766: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: posts the serialized request and returns the server reference +03:16 +767: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps connection failures +03:16 +768: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps response timeouts +03:16 +769: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 429 and preserves Retry-After +03:16 +770: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 400 and 422 to rejected request failures +03:16 +771: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps server and malformed-response failures to server errors +03:16 +772: loading /home/albert/busystack/busymark/test/src/app_settings_test.dart +03:16 +772: /home/albert/busystack/busymark/test/src/app_settings_test.dart: hydration and redundant sidebar requests do not count as user transitions +03:16 +773: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior defaults protect unsaved changes +03:16 +774: /home/albert/busystack/busymark/test/src/app_settings_test.dart: reopen workspace setting is migration-safe +03:16 +775: /home/albert/busystack/busymark/test/src/app_settings_test.dart: document view mode defaults to editor +03:16 +776: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save defaults to enabled +03:16 +777: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings have bounded privacy-preserving defaults +03:16 +778: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings validate persisted ranges and absolute exclusions +03:16 +779: /home/albert/busystack/busymark/test/src/app_settings_test.dart: AI defaults disabled and provider settings never persist secrets +03:16 +780: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction defaults to horizontal +03:16 +781: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction round-trips through settings JSON +03:16 +782: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote images default to blocked +03:16 +783: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspaces default to untrusted +03:16 +784: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy preview visibility migrates to source mode when hidden +03:16 +785: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language defaults to system locale +03:16 +786: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language override persists as locale tag +03:16 +787: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy Norwegian locale tag migrates to Bokmal +03:16 +788: /home/albert/busystack/busymark/test/src/app_settings_test.dart: supported script variants canonicalize to the available catalog +03:16 +789: /home/albert/busystack/busymark/test/src/app_settings_test.dart: regional variants canonicalize and unsupported tags are discarded +03:16 +790: /home/albert/busystack/busymark/test/src/app_settings_test.dart: unused product settings are not persisted +03:16 +791: /home/albert/busystack/busymark/test/src/app_settings_test.dart: file settings store keeps the live JSON intact until publication +03:18 +792: /home/albert/busystack/busymark/test/src/app_settings_test.dart: failed settings publication preserves the previous valid JSON +03:18 +793: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior settings persist +03:18 +794: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save setting persists +03:18 +795: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction setting persists +03:18 +796: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Writerside instance selection and icon color persist across renames +03:18 +797: /home/albert/busystack/busymark/test/src/app_settings_test.dart: initial load preserves user actions made before it completes +03:18 +798: /home/albert/busystack/busymark/test/src/app_settings_test.dart: removing a recent workspace persists without affecting files +03:18 +799: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote image permissions persist globally and per workspace +03:18 +800: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust persists, normalizes, and can be cleared +03:18 +801: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust follows the canonical workspace identity +03:18 +802: /home/albert/busystack/busymark/test/src/app_settings_test.dart: stored Git trust does not follow a replaced canonical path +03:18 +803: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git trust preserves leading and trailing path whitespace +03:18 +804: loading /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart +03:19 +804: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: different live prose still reports incomplete instead of guessed mapping +03:19 +805: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: general Markdown fixture has complete Source and rich spelling mappings +03:20 +806: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: live HTML paste preserves prose and maps spelling before a reload +03:20 +807: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: pasted job maps tables, trailing HTML breaks and address barriers +03:20 +808: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: closing hashes are heading syntax only in an ATX heading +03:20 +809: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal unresolved and invalid apparent links checkable +03:20 +810: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection resolves only parser-recognized links and images across revisions +03:20 +811: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal trailing braces in paragraph and heading prose +03:20 +812: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection binds recognized images to their exact source occurrence +03:20 +813: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection orders formatting from image labels and surrounding body +03:20 +814: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognizes nested syntax inside exact image descriptions +03:20 +815: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes only trailing attributes recognized by the current mode +03:20 +816: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata does not split a surrounding Markdown word +03:20 +817: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection corrects a Markdown body word across independent metadata +03:20 +818: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps repeated and formatted prose without searching globally +03:20 +819: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps entities, escapes, links, and table cells source exact +03:20 +820: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps CRLF and repeated occurrence targets exact +03:20 +821: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses barriers around excluded authored syntax +03:20 +822: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes a fenced code block nested in a block quote +03:20 +823: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps quoted list fences across blank continuations +03:20 +824: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection counts tab columns in list fence continuations +03:20 +825: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps unmatched delimiters and removes only parsed formatting +03:20 +826: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps quoted HTML attribute values from quote boundaries +03:20 +827: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection preserves semantic HTML boundaries and multiline exclusions +03:20 +828: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps comparison prose and scans multiline HTML tags exactly +03:20 +829: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps escaped multiline tag-like prose checkable +03:20 +830: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection removes delimiters when a correction empties formatting +03:20 +831: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses parser-compatible percentages escapes and code spans +03:20 +832: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection retains complete formatting ancestors across opaque children +03:20 +833: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection validates formatting gaps in regional coordinates +03:20 +834: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection accepts canonically equivalent mapped replacement text +03:20 +835: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link titles use exact quote boundaries before trailing whitespace +03:20 +836: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized link and image titles use their authored boundaries +03:20 +837: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection destination-only links and images do not expose a false title +03:20 +838: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized multiline links consume one mapped occurrence +03:20 +839: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline link labels keep container prefixes out of prose +03:20 +840: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline mapped labels agree with rich prose and corrections +03:20 +841: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection inline HTML breaks in link labels agree with rich prose +03:20 +842: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection code-styled image alternative text agrees with rich image field +03:20 +843: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code and Markdown hard breaks retain image alt semantics +03:20 +844: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code hard-break corrections retain authored source +03:21 +845: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: list +03:21 +846: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: quote +03:21 +847: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: crlf-after-content +03:21 +848: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: combined-quote-list +03:21 +849: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: nested-image +03:21 +850: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-inner-spaces +03:21 +851: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-continuation-space +03:21 +852: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: literal-code-syntax +03:21 +853: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested image code inherits the enclosing container mapping +03:21 +854: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link title keeps literal inline-break markup as scalar text +03:21 +855: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline code inside a link label stays opaque +03:21 +856: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline nested-image destination stays outside outer prose +03:21 +857: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested label syntax owns its breaks before outer prose resumes +03:21 +858: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata scalar tag-like text remains checkable +03:21 +859: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection parenthesized title replacement escapes its own delimiter +03:21 +860: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection semantic leaf blocks define independent complete prose runs +03:21 +861: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection projects semantic HTML prose and trusts parser math nodes +03:21 +862: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection large formatting-heavy projection and correction stay bounded +03:22 +863: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps inline body words intact across readable attributes +03:22 +864: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection corrects XML body and encoded metadata independently +03:22 +865: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes visible addresses in encoded text and CDATA +03:22 +866: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps text, entities, CDATA, and positive attributes +03:22 +867: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection reports malformed XML as incomplete without guessed targets +03:22 +868: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection clips CDATA occurrences while preserving repeated surrounding text +03:22 +869: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps line breaks, excludes variables, and includes controls +03:22 +870: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes entity-encoded variables after XML decoding +03:22 +871: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps decomposed Unicode in XML and CDATA corrections +03:22 +872: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction nested image descriptions retain recursive spelling policy +03:22 +873: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed rich correction preserves images beside math +03:22 +874: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed table image and math correction preserves cell source +03:22 +875: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction neighboring prose in a math image field keeps exact source +03:22 +876: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image ownership continues across ordinary and math fields +03:22 +877: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image description spelling agrees across source and rich fields +03:22 +878: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich image spelling changes only the mapped source word +03:22 +879: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction container image code corrects after continuation in rich editor +03:22 +880: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction code-styled image alternative corrects through rich controller +03:22 +881: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image code punctuation correction retains literal code meaning +03:22 +882: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction multiline link label correction uses rich controller mapping +03:22 +883: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: # Introduction + +- [Overview](#overview) + - [Motivation](#motivation) +- [Discussion](#discussion) + + +## Overview + +helo **world** + +helo world + +03:22 +884: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - helo + - helo + +helo + +03:22 +885: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: + +helo + +03:22 +886: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction escaped comment prose is still an editable rich spelling field +03:22 +887: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps hard breaks by structural field identity +03:22 +888: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction removes a rich formatting container emptied by deletion +03:22 +889: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction retains current source anchors and source-only title targets +03:22 +890: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich links keep all title delimiters source-only +03:22 +891: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves formatting ownership across leaves +03:22 +892: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction keeps trailing formatting on its original leaf +03:22 +893: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves link destination and table structure +03:22 +894: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps and corrects a table-cell field containing inline math +03:22 +895: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects transformed prose in table math source fields +03:22 +896: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects formatted and encoded prose in math source fields +03:22 +897: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction owns every nested wrapper in paragraph math-source fields +03:22 +898: loading /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart +03:23 +898: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: validates availability, finite normalized RGB and payload shape +03:25 +899: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: attaches before snapshot and rejects a superseded snapshot +03:25 +900: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: replays current value, deduplicates and safely resubscribes +03:25 +901: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: missing channels are unavailable and cancellable +03:25 +902: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while snapshot is pending discards its result +03:25 +903: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: silent channels expire locally and unsuperseded late snapshot recovers +03:25 +904: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: new unavailable event invalidates older read and deadline +03:25 +905: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while both native calls pending rejects late errors +03:26 +906: loading /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart +03:26 +906: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project scaffold and loads without diagnostics +03:27 +907: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: derives the starter topic filename from its title +03:27 +908: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project with Unicode directory and instance ID +03:27 +909: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: escapes XML-sensitive project names in writerside.cfg +03:27 +910: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: sanitizes start topic title as plain Markdown heading text +03:27 +911: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects existing non-empty target directory and does not overwrite files +03:27 +912: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects an existing project target symlink without writing through it +03:27 +913: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: canonicalizes a project parent selected through a symlink +03:27 +914: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects unsafe create request names before writing files +03:27 +915: loading /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart +03:28 +915: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: cover edits survive toggling and format changes, validate, reset, and do not leak through preferences +03:32 +916: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: instance changes refresh automatic fields without replacing edited or cleared text +03:33 +917: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: settings without a document show only the reusable cover preference +03:34 +918: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Markdown forwards current defaults and export-owned text +03:35 +919: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Writerside forwards current defaults and export-owned text +03:37 +920: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Markdown forwards current defaults and export-owned text +03:37 +921: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Writerside forwards current defaults and export-owned text +03:39 +922: loading /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart +03:39 +922: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: README screenshot references resolve to checked-in images +03:39 +923: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: release metadata is consistent and production-grade +03:39 +924: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: web engines are exact, checksummed, licensed, and installed offline +03:39 +925: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: D2 is checksum pinned for amd64 and installed with notices +03:39 +926: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: Linux CI builds and exercises the bundled visualization stack +03:39 +927: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: only offscreen WebKit views disable hardware compositing +03:39 +928: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: WebKit host and harness disable persistence and external resources +03:39 +929: loading /home/albert/busystack/busymark/test/src/workspace_safety_test.dart +03:40 +929: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes dialog aborts destructive navigation on cancel +03:42 +930: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discarding unsaved changes prevents repeated prompts +03:42 +931: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: destructive dialog buttons stay readable on dark controls +03:42 +932: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes Discard action renders white in the dark dialog +03:42 +933: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overwrite confirmation stays pinned to the document being saved +03:43 +934: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overlapping manual saves write the newer requested revision +03:43 +935: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: save completes for its buffer when the active document changes +03:43 +936: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As stays pinned while the file picker is open +03:43 +937: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancel does not overwrite an existing normalized markdown path +03:43 +938: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As overwrites an existing normalized markdown path only after confirmation +03:43 +939: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancels when the document changes during path lookup +03:43 +940: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discard confirmation cannot discard a newly active document +03:43 +941: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: workspace continuation resolves inactive dirty documents too +03:43 +942: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can save it while another stays dirty +03:43 +943: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can discard it while another stays dirty +03:43 +944: loading /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart +03:44 +944: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar update retries native channel initialization after early miss +03:44 +945: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar forwards text direction updates +03:44 +946: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar action events preserve repeated identical clicks +03:44 +947: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: native search events and focus request keep semantic meaning +03:44 +948: loading /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart +03:45 +948: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source pastes a web layout table as a complete document +03:47 +949: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (current) +03:47 +950: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (find next) +03:47 +951: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (current) +03:48 +952: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (find next) +03:48 +953: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3 matches +03:49 +954: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3000 matches +03:50 +955: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search navigation retains a later window when unfolding +03:50 +956: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling review caret uses full offsets after an earlier fold +03:50 +957: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling reveal unfolds and retains the word selection +03:51 +958: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Markdown spelling painter ignores selection and tracks composition +03:51 +959: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Writerside Markdown spelling painter ignores selection and tracks composition +03:51 +960: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source XML spelling painter ignores selection and tracks composition +03:51 +961: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI action applies a selection through the editor path +03:51 +962: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu targets the pointer occurrence exactly +03:51 +963: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling language uses a checked native submenu without a dialog +03:51 +964: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu converts folded offsets to full source +03:51 +965: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI applies a user-selected insertion target +03:51 +966: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor remains LTR inside an Arabic interface +03:51 +967: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor shows large-file fallback status +04:07 +968: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor renders visible diagnostic gutter tooltip +04:07 +969: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search localizes an invalid regular expression +04:08 +970: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search reports no current match before navigation +04:08 +971: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source fold and search options use semantic icon buttons +04:08 +972: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace All is one editor operation +04:08 +973: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace and Find Next selects the logical next match +04:08 +974: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: shifted folded regions are persisted after edit debounce +04:08 +975: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source sessions ignore render notifications and coalesce scrolling +04:08 +976: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor gives glyphs, caret, and selection breathing room +04:08 +977: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading selections cover styled glyphs evenly +04:09 +978: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading caret advances after a typed space +04:09 +979: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source caret follows an immediate end-of-file contraction +04:09 +980: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Tab indents selected Source lines without replacing text +04:09 +981: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source symbol shortcuts dispatch the full source caret +04:09 +982: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Ctrl+Space opens project-aware source completion +04:09 +983: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: wordWrap false uses one horizontally scrollable layout +04:09 +984: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source input preserves an active IME composing range +04:09 +985: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Enter to the input method +04:09 +986: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Tab to the input method +04:09 +987: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers autocomplete Escape to the input method +04:09 +988: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers the autocomplete shortcut +04:09 +989: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: focused Source accepts authoritative parent text updates +04:09 +990: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source keyboard copy retains exact whitespace once +04:09 +991: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source normal HTML paste converts while plain paste uses text +04:09 +992: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source CRLF structured paste is one exact undo transaction +04:09 +993: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source plain paste keeps LF bytes in a CRLF document +04:09 +994: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste keeps surrounding text inline +04:09 +995: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured block paste adds Markdown boundaries +04:09 +996: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks keep boundaries at every position + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#ecc71(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#abb10, undoController: UndoHistoryController#78a1a(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a23ca(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#4ddc7]], state: _TextFieldState#f0b97), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#e0026 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#51762@Offset(425.5, 300.0), RenderSemanticsAnnotations#b82bc@Offset(425.5, 300.0), RenderPointerListener#078c2@Offset(425.5, 300.0), RenderSemanticsGestureHandler#aa13f@Offset(425.5, 300.0), RenderExcludeSemantics#8bfb0@Offset(425.5, 300.0), RenderBlockSemantics#e325c@Offset(425.5, 300.0), RenderIgnorePointer#15441@Offset(425.5, 300.0), RenderSemanticsAnnotations#ef159@Offset(425.5, 300.0), _RenderTheater#85fc6@Offset(425.5, 300.0), RenderAbsorbPointer#b4571@Offset(425.5, 300.0), RenderPointerListener#41c2f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c8d1b@Offset(425.5, 300.0), RenderCustomPaint#61594@Offset(425.5, 300.0), RenderSemanticsAnnotations#c795f@Offset(425.5, 300.0), RenderSemanticsAnnotations#5f3c9@Offset(425.5, 300.0), RenderSemanticsAnnotations#cff8e@Offset(425.5, 300.0), RenderTapRegionSurface#73ec5@Offset(425.5, 300.0), RenderSemanticsAnnotations#98c6c@Offset(425.5, 300.0), RenderSemanticsAnnotations#20ce6@Offset(425.5, 300.0), HitTestEntry#50e60(_ReusableRenderView#fce4f), HitTestEntry#72f05()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2597:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:10 +997: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete heading list and code blocks retain structure at every paragraph position + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#8f82b(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#18722, undoController: UndoHistoryController#d171f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ffbff(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#1bd9d]], state: _TextFieldState#3b105), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#2554a +The hit test result at that offset is: HitTestResult(RenderMouseRegion#873cf@Offset(425.5, 300.0), RenderSemanticsAnnotations#ed441@Offset(425.5, 300.0), RenderPointerListener#bcafe@Offset(425.5, 300.0), RenderSemanticsGestureHandler#8af76@Offset(425.5, 300.0), RenderExcludeSemantics#cdba6@Offset(425.5, 300.0), RenderBlockSemantics#41b8f@Offset(425.5, 300.0), RenderIgnorePointer#5a6cd@Offset(425.5, 300.0), RenderSemanticsAnnotations#25a56@Offset(425.5, 300.0), _RenderTheater#532c1@Offset(425.5, 300.0), RenderAbsorbPointer#c8b26@Offset(425.5, 300.0), RenderPointerListener#a25b7@Offset(425.5, 300.0), RenderSemanticsAnnotations#a6a8e@Offset(425.5, 300.0), RenderCustomPaint#51ffb@Offset(425.5, 300.0), RenderSemanticsAnnotations#aff38@Offset(425.5, 300.0), RenderSemanticsAnnotations#4b3e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#ad9a1@Offset(425.5, 300.0), RenderTapRegionSurface#332d4@Offset(425.5, 300.0), RenderSemanticsAnnotations#38b37@Offset(425.5, 300.0), RenderSemanticsAnnotations#40c4e@Offset(425.5, 300.0), HitTestEntry#f2d24(_ReusableRenderView#fce4f), HitTestEntry#052b0()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#8f82b(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#18722, undoController: UndoHistoryController#d171f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ffbff(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#1bd9d]], state: _TextFieldState#3b105), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#2554a +The hit test result at that offset is: HitTestResult(RenderMouseRegion#dcb33@Offset(425.5, 300.0), RenderSemanticsAnnotations#f0648@Offset(425.5, 300.0), RenderPointerListener#b22c0@Offset(425.5, 300.0), RenderSemanticsGestureHandler#f7dae@Offset(425.5, 300.0), RenderExcludeSemantics#4656d@Offset(425.5, 300.0), RenderBlockSemantics#35d97@Offset(425.5, 300.0), RenderIgnorePointer#27c31@Offset(425.5, 300.0), RenderSemanticsAnnotations#19699@Offset(425.5, 300.0), _RenderTheater#532c1@Offset(425.5, 300.0), RenderAbsorbPointer#c8b26@Offset(425.5, 300.0), RenderPointerListener#a25b7@Offset(425.5, 300.0), RenderSemanticsAnnotations#a6a8e@Offset(425.5, 300.0), RenderCustomPaint#51ffb@Offset(425.5, 300.0), RenderSemanticsAnnotations#aff38@Offset(425.5, 300.0), RenderSemanticsAnnotations#4b3e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#ad9a1@Offset(425.5, 300.0), RenderTapRegionSurface#332d4@Offset(425.5, 300.0), RenderSemanticsAnnotations#38b37@Offset(425.5, 300.0), RenderSemanticsAnnotations#40c4e@Offset(425.5, 300.0), HitTestEntry#81a3d(_ReusableRenderView#fce4f), HitTestEntry#943c7()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#8f82b(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#18722, undoController: UndoHistoryController#d171f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ffbff(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#1bd9d]], state: _TextFieldState#3b105), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#2554a +The hit test result at that offset is: HitTestResult(RenderMouseRegion#5800e@Offset(425.5, 300.0), RenderSemanticsAnnotations#634b5@Offset(425.5, 300.0), RenderPointerListener#e87ad@Offset(425.5, 300.0), RenderSemanticsGestureHandler#89e28@Offset(425.5, 300.0), RenderExcludeSemantics#4afda@Offset(425.5, 300.0), RenderBlockSemantics#c67bd@Offset(425.5, 300.0), RenderIgnorePointer#77682@Offset(425.5, 300.0), RenderSemanticsAnnotations#fdb44@Offset(425.5, 300.0), _RenderTheater#532c1@Offset(425.5, 300.0), RenderAbsorbPointer#c8b26@Offset(425.5, 300.0), RenderPointerListener#a25b7@Offset(425.5, 300.0), RenderSemanticsAnnotations#a6a8e@Offset(425.5, 300.0), RenderCustomPaint#51ffb@Offset(425.5, 300.0), RenderSemanticsAnnotations#aff38@Offset(425.5, 300.0), RenderSemanticsAnnotations#4b3e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#ad9a1@Offset(425.5, 300.0), RenderTapRegionSurface#332d4@Offset(425.5, 300.0), RenderSemanticsAnnotations#38b37@Offset(425.5, 300.0), RenderSemanticsAnnotations#40c4e@Offset(425.5, 300.0), HitTestEntry#0ff55(_ReusableRenderView#fce4f), HitTestEntry#9c248()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:10 +998: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete-block split preserves styles caret and one-step Undo +04:10 +999: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source boundary-crossing replacements restore text selection and caret +04:10 +1000: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich inline paste composes with enclosing inline syntax + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#b1048(TextEditingValue(text: ┤[leftright](https://example.test)├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b44f3, undoController: UndoHistoryController#cbb9d(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#4b8eb(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#74d0e]], state: _TextFieldState#3d1b0), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#6b743 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#5a213@Offset(425.5, 300.0), RenderSemanticsAnnotations#e1f55@Offset(425.5, 300.0), RenderPointerListener#26151@Offset(425.5, 300.0), RenderSemanticsGestureHandler#96233@Offset(425.5, 300.0), RenderExcludeSemantics#7d610@Offset(425.5, 300.0), RenderBlockSemantics#7b3dd@Offset(425.5, 300.0), RenderIgnorePointer#f9574@Offset(425.5, 300.0), RenderSemanticsAnnotations#f5313@Offset(425.5, 300.0), _RenderTheater#51bde@Offset(425.5, 300.0), RenderAbsorbPointer#31b0a@Offset(425.5, 300.0), RenderPointerListener#6cf1f@Offset(425.5, 300.0), RenderSemanticsAnnotations#59393@Offset(425.5, 300.0), RenderCustomPaint#9ca19@Offset(425.5, 300.0), RenderSemanticsAnnotations#27f92@Offset(425.5, 300.0), RenderSemanticsAnnotations#cfe81@Offset(425.5, 300.0), RenderSemanticsAnnotations#c7980@Offset(425.5, 300.0), RenderTapRegionSurface#65e68@Offset(425.5, 300.0), RenderSemanticsAnnotations#75d9c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a812f@Offset(425.5, 300.0), HitTestEntry#70924(_ReusableRenderView#fce4f), HitTestEntry#2dca9()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2945:28) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2999:22) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:10 +1001: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline reconciliation ignores separate destination runs +04:10 +1002: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source adjacent-style reconciliation preserves literal code delimiters +04:11 +1003: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation preserves a partially consumed delimiter +04:11 +1004: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table inline reconciliation is confined to the selected cell +04:11 +1005: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table keeps multiple independent incoming style runs +04:11 +1006: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source does not treat multiple incoming bold runs as one wrapper +04:11 +1007: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences with paragraph context +04:11 +1008: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences inside table cells +04:11 +1009: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table sequence reconciliation retains authored delimiters +04:11 +1010: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation retains mixed nested styles +04:11 +1011: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves hyperlink semantics in table cells +04:11 +1012: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline mapping handles links multiline styles and literal syntax +04:11 +1013: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret mapping preserves literal bang before a following link +04:12 +1014: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits resolved reference links without changing definitions +04:12 +1015: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits multiline blockquote links without exposing prefixes +04:12 +1016: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves occurrence-specific hard-break provenance +04:12 +1017: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret remains between pasted and retained hard breaks +04:12 +1018: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste after an HTML break does not retain its layout newline +04:12 +1019: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste preserves enclosing inline HTML as one run +04:12 +1020: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source system and history rich paste map normalized HTML whitespace +04:12 +1021: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source syntax-only availability agrees with textual fallback execution +04:12 +1022: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source terminal structured failure blocks availability and text fallback +04:12 +1023: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste remaps generated grouped hard breaks +04:12 +1024: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source remaps reopened grouped breaks in a CRLF container +04:12 +1025: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps nested and reference links through container prefixes +04:12 +1026: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves autolink destination semantics +04:13 +1027: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: invalid email-like text does not invalidate another link target +04:13 +1028: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste distinguishes authored and generated URL content +04:13 +1029: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves parser-folded reference identity +04:13 +1030: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source same-destination paste preserves parser-folded reference identity +04:13 +1031: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste retains the provenance of surviving line breaks +04:13 +1032: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste keeps label break provenance independent of link titles +04:13 +1033: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: normalized code-span breaks do not shift surviving link provenance +04:13 +1034: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste combines folded references with surviving break provenance +04:13 +1035: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste tracks old and new breaks independently +04:13 +1036: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reference-link label replacement retains definitions +04:14 +1037: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps escaped brackets in collapsed and shortcut references +04:14 +1038: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links around unmatched and code-span backticks +04:14 +1039: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links with escaped and balanced label brackets +04:14 +1040: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline wrapper mapping stays bounded for paste and availability +04:15 +1041: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps all retained break offsets in one serialization traversal +04:15 +1042: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source AST boundary mapping stays linear for availability and paste +04:15 +1043: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table paste preserves multiline link titles +04:15 +1044: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table boundary paste preserves styles caret and one-step history +04:16 +1045: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste handles every line boundary +04:16 +1046: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline paste preserves unrelated syntax whitespace and caret + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#923ff(TextEditingValue(text: ┤__leftright__├, selection: TextSelection.collapsed(offset: 10, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#95de4, undoController: UndoHistoryController#eef17(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#440f7(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#35f0d]], state: _TextFieldState#6de20), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#d667a +The hit test result at that offset is: HitTestResult(RenderMouseRegion#6afce@Offset(425.5, 300.0), RenderSemanticsAnnotations#37d37@Offset(425.5, 300.0), RenderPointerListener#a7c26@Offset(425.5, 300.0), RenderSemanticsGestureHandler#828ad@Offset(425.5, 300.0), RenderExcludeSemantics#cdae0@Offset(425.5, 300.0), RenderBlockSemantics#67edb@Offset(425.5, 300.0), RenderIgnorePointer#b6cee@Offset(425.5, 300.0), RenderSemanticsAnnotations#d927b@Offset(425.5, 300.0), _RenderTheater#47b14@Offset(425.5, 300.0), RenderAbsorbPointer#54d0d@Offset(425.5, 300.0), RenderPointerListener#03a45@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f829@Offset(425.5, 300.0), RenderCustomPaint#4a600@Offset(425.5, 300.0), RenderSemanticsAnnotations#fce25@Offset(425.5, 300.0), RenderSemanticsAnnotations#54d2a@Offset(425.5, 300.0), RenderSemanticsAnnotations#81ddb@Offset(425.5, 300.0), RenderTapRegionSurface#eb5f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#dac49@Offset(425.5, 300.0), RenderSemanticsAnnotations#9ee6e@Offset(425.5, 300.0), HitTestEntry#59dff(_ReusableRenderView#fce4f), HitTestEntry#3c11e()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6908:28) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6936:20) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:16 +1047: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table cells reconcile surrounding inline styles +04:16 +1048: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciliation reuses table-normalized inline content +04:16 +1049: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source whole-block replacement differs from surviving table and code contexts + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#38430(TextEditingValue(text: ┤```text + old + ``` + ├, selection: TextSelection.collapsed(offset: 16, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#95e73, undoController: UndoHistoryController#ccfa5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ba8f1(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#e9c7f]], state: _TextFieldState#40b67), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#8c38d +The hit test result at that offset is: HitTestResult(RenderMouseRegion#6e861@Offset(425.5, 300.0), RenderSemanticsAnnotations#c58d8@Offset(425.5, 300.0), RenderPointerListener#9628e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#f29bb@Offset(425.5, 300.0), RenderExcludeSemantics#c77aa@Offset(425.5, 300.0), RenderBlockSemantics#92120@Offset(425.5, 300.0), RenderIgnorePointer#1ba54@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1881@Offset(425.5, 300.0), _RenderTheater#9a391@Offset(425.5, 300.0), RenderAbsorbPointer#f8991@Offset(425.5, 300.0), RenderPointerListener#a6178@Offset(425.5, 300.0), RenderSemanticsAnnotations#e173c@Offset(425.5, 300.0), RenderCustomPaint#ec33c@Offset(425.5, 300.0), RenderSemanticsAnnotations#9d296@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc126@Offset(425.5, 300.0), RenderSemanticsAnnotations#ff194@Offset(425.5, 300.0), RenderTapRegionSurface#01e77@Offset(425.5, 300.0), RenderSemanticsAnnotations#15792@Offset(425.5, 300.0), RenderSemanticsAnnotations#57212@Offset(425.5, 300.0), HitTestEntry#2afd0(_ReusableRenderView#fce4f), HitTestEntry#fb9ac()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7158:25) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:16 +1050: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paragraph markers escape only at block starts + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#029ae(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e235f, undoController: UndoHistoryController#af272(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9144a(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#cf158]], state: _TextFieldState#88dc3), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#3d32a +The hit test result at that offset is: HitTestResult(RenderMouseRegion#5e0b8@Offset(425.5, 300.0), RenderSemanticsAnnotations#54bd3@Offset(425.5, 300.0), RenderPointerListener#592e6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#6c7c4@Offset(425.5, 300.0), RenderExcludeSemantics#b0024@Offset(425.5, 300.0), RenderBlockSemantics#12061@Offset(425.5, 300.0), RenderIgnorePointer#c3762@Offset(425.5, 300.0), RenderSemanticsAnnotations#8b8ea@Offset(425.5, 300.0), _RenderTheater#3b228@Offset(425.5, 300.0), RenderAbsorbPointer#ed6d9@Offset(425.5, 300.0), RenderPointerListener#8796b@Offset(425.5, 300.0), RenderSemanticsAnnotations#67d08@Offset(425.5, 300.0), RenderCustomPaint#91f05@Offset(425.5, 300.0), RenderSemanticsAnnotations#94f20@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc384@Offset(425.5, 300.0), RenderSemanticsAnnotations#982af@Offset(425.5, 300.0), RenderTapRegionSurface#8834b@Offset(425.5, 300.0), RenderSemanticsAnnotations#49865@Offset(425.5, 300.0), RenderSemanticsAnnotations#71561@Offset(425.5, 300.0), HitTestEntry#bd2d5(_ReusableRenderView#fce4f), HitTestEntry#7b01c()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#029ae(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e235f, undoController: UndoHistoryController#af272(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9144a(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#cf158]], state: _TextFieldState#88dc3), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#3d32a +The hit test result at that offset is: HitTestResult(RenderMouseRegion#e2dfc@Offset(425.5, 300.0), RenderSemanticsAnnotations#cc9af@Offset(425.5, 300.0), RenderPointerListener#5dd15@Offset(425.5, 300.0), RenderSemanticsGestureHandler#54542@Offset(425.5, 300.0), RenderExcludeSemantics#e742b@Offset(425.5, 300.0), RenderBlockSemantics#9b59d@Offset(425.5, 300.0), RenderIgnorePointer#61176@Offset(425.5, 300.0), RenderSemanticsAnnotations#4bf9c@Offset(425.5, 300.0), _RenderTheater#3b228@Offset(425.5, 300.0), RenderAbsorbPointer#ed6d9@Offset(425.5, 300.0), RenderPointerListener#8796b@Offset(425.5, 300.0), RenderSemanticsAnnotations#67d08@Offset(425.5, 300.0), RenderCustomPaint#91f05@Offset(425.5, 300.0), RenderSemanticsAnnotations#94f20@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc384@Offset(425.5, 300.0), RenderSemanticsAnnotations#982af@Offset(425.5, 300.0), RenderTapRegionSurface#8834b@Offset(425.5, 300.0), RenderSemanticsAnnotations#49865@Offset(425.5, 300.0), RenderSemanticsAnnotations#71561@Offset(425.5, 300.0), HitTestEntry#3e0e5(_ReusableRenderView#fce4f), HitTestEntry#52f24()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#029ae(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e235f, undoController: UndoHistoryController#af272(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9144a(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#cf158]], state: _TextFieldState#88dc3), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#3d32a +The hit test result at that offset is: HitTestResult(RenderMouseRegion#a1d75@Offset(425.5, 300.0), RenderSemanticsAnnotations#b551d@Offset(425.5, 300.0), RenderPointerListener#1465d@Offset(425.5, 300.0), RenderSemanticsGestureHandler#19826@Offset(425.5, 300.0), RenderExcludeSemantics#c659e@Offset(425.5, 300.0), RenderBlockSemantics#49e4f@Offset(425.5, 300.0), RenderIgnorePointer#c2975@Offset(425.5, 300.0), RenderSemanticsAnnotations#0699f@Offset(425.5, 300.0), _RenderTheater#3b228@Offset(425.5, 300.0), RenderAbsorbPointer#ed6d9@Offset(425.5, 300.0), RenderPointerListener#8796b@Offset(425.5, 300.0), RenderSemanticsAnnotations#67d08@Offset(425.5, 300.0), RenderCustomPaint#91f05@Offset(425.5, 300.0), RenderSemanticsAnnotations#94f20@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc384@Offset(425.5, 300.0), RenderSemanticsAnnotations#982af@Offset(425.5, 300.0), RenderTapRegionSurface#8834b@Offset(425.5, 300.0), RenderSemanticsAnnotations#49865@Offset(425.5, 300.0), RenderSemanticsAnnotations#71561@Offset(425.5, 300.0), HitTestEntry#d6454(_ReusableRenderView#fce4f), HitTestEntry#f2878()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7247:24) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#029ae(TextEditingValue(text: ┤- right├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e235f, undoController: UndoHistoryController#af272(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9144a(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#cf158]], state: _TextFieldState#88dc3), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#3d32a +The hit test result at that offset is: HitTestResult(RenderMouseRegion#3687a@Offset(425.5, 300.0), RenderSemanticsAnnotations#fc8cc@Offset(425.5, 300.0), RenderPointerListener#6bb78@Offset(425.5, 300.0), RenderSemanticsGestureHandler#6a621@Offset(425.5, 300.0), RenderExcludeSemantics#ac24c@Offset(425.5, 300.0), RenderBlockSemantics#a5be9@Offset(425.5, 300.0), RenderIgnorePointer#2aa4b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f12db@Offset(425.5, 300.0), _RenderTheater#3b228@Offset(425.5, 300.0), RenderAbsorbPointer#ed6d9@Offset(425.5, 300.0), RenderPointerListener#8796b@Offset(425.5, 300.0), RenderSemanticsAnnotations#67d08@Offset(425.5, 300.0), RenderCustomPaint#91f05@Offset(425.5, 300.0), RenderSemanticsAnnotations#94f20@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc384@Offset(425.5, 300.0), RenderSemanticsAnnotations#982af@Offset(425.5, 300.0), RenderTapRegionSurface#8834b@Offset(425.5, 300.0), RenderSemanticsAnnotations#49865@Offset(425.5, 300.0), RenderSemanticsAnnotations#71561@Offset(425.5, 300.0), HitTestEntry#ba023(_ReusableRenderView#fce4f), HitTestEntry#5bf4a()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7277:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:17 +1051: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native inline paste preserves edge and only whitespace + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#fdbd6(TextEditingValue(text: ┤leftDELETEright├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#c24c2, undoController: UndoHistoryController#26de9(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ad844(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#0a218]], state: _TextFieldState#4368b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#c5200 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#60c72@Offset(425.5, 300.0), RenderSemanticsAnnotations#ed589@Offset(425.5, 300.0), RenderPointerListener#98ee3@Offset(425.5, 300.0), RenderSemanticsGestureHandler#57fc0@Offset(425.5, 300.0), RenderExcludeSemantics#acbe4@Offset(425.5, 300.0), RenderBlockSemantics#23a8b@Offset(425.5, 300.0), RenderIgnorePointer#344c6@Offset(425.5, 300.0), RenderSemanticsAnnotations#aa789@Offset(425.5, 300.0), _RenderTheater#5c484@Offset(425.5, 300.0), RenderAbsorbPointer#39618@Offset(425.5, 300.0), RenderPointerListener#5ee36@Offset(425.5, 300.0), RenderSemanticsAnnotations#b079f@Offset(425.5, 300.0), RenderCustomPaint#03ae0@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5b18@Offset(425.5, 300.0), RenderSemanticsAnnotations#122fc@Offset(425.5, 300.0), RenderSemanticsAnnotations#8fb8e@Offset(425.5, 300.0), RenderTapRegionSurface#06562@Offset(425.5, 300.0), RenderSemanticsAnnotations#75f30@Offset(425.5, 300.0), RenderSemanticsAnnotations#94539@Offset(425.5, 300.0), HitTestEntry#abdbd(_ReusableRenderView#fce4f), HitTestEntry#be901()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7379:24) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:17 +1052: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native rich edge whitespace repeats and restores real Undo state +04:17 +1053: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paste respects table-cell semantics +04:17 +1054: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps a final table cell ending in an escaped pipe +04:17 +1055: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks preserve list and quote containers +04:17 +1056: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks remain in containers at every content boundary + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#eed69(TextEditingValue(text: ┤> item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#8a07d +The hit test result at that offset is: HitTestResult(RenderMouseRegion#4a7a6@Offset(425.5, 300.0), RenderSemanticsAnnotations#6b0ae@Offset(425.5, 300.0), RenderPointerListener#5a1a2@Offset(425.5, 300.0), RenderSemanticsGestureHandler#2882c@Offset(425.5, 300.0), RenderExcludeSemantics#6aa5a@Offset(425.5, 300.0), RenderBlockSemantics#562d4@Offset(425.5, 300.0), RenderIgnorePointer#7d063@Offset(425.5, 300.0), RenderSemanticsAnnotations#e242b@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#262ff(_ReusableRenderView#fce4f), HitTestEntry#e0bd8()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#eed69(TextEditingValue(text: ┤> item + ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#8a07d +The hit test result at that offset is: HitTestResult(RenderMouseRegion#4d1da@Offset(425.5, 300.0), RenderSemanticsAnnotations#a0c71@Offset(425.5, 300.0), RenderPointerListener#f0313@Offset(425.5, 300.0), RenderSemanticsGestureHandler#ec430@Offset(425.5, 300.0), RenderExcludeSemantics#5e3eb@Offset(425.5, 300.0), RenderBlockSemantics#84bd2@Offset(425.5, 300.0), RenderIgnorePointer#2725d@Offset(425.5, 300.0), RenderSemanticsAnnotations#4ccd1@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#a9fe2(_ReusableRenderView#fce4f), HitTestEntry#30177()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#eed69(TextEditingValue(text: ┤- item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#8a07d +The hit test result at that offset is: HitTestResult(RenderMouseRegion#5f3cf@Offset(425.5, 300.0), RenderSemanticsAnnotations#40240@Offset(425.5, 300.0), RenderPointerListener#6a9d9@Offset(425.5, 300.0), RenderSemanticsGestureHandler#3eb5e@Offset(425.5, 300.0), RenderExcludeSemantics#a7eea@Offset(425.5, 300.0), RenderBlockSemantics#0a82e@Offset(425.5, 300.0), RenderIgnorePointer#1abaa@Offset(425.5, 300.0), RenderSemanticsAnnotations#9dd9a@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#cca6e(_ReusableRenderView#fce4f), HitTestEntry#dad1d()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#eed69(TextEditingValue(text: ┤- item + ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#8a07d +The hit test result at that offset is: HitTestResult(RenderMouseRegion#e1330@Offset(425.5, 300.0), RenderSemanticsAnnotations#8561e@Offset(425.5, 300.0), RenderPointerListener#deab9@Offset(425.5, 300.0), RenderSemanticsGestureHandler#9f5fb@Offset(425.5, 300.0), RenderExcludeSemantics#b086a@Offset(425.5, 300.0), RenderBlockSemantics#b8a62@Offset(425.5, 300.0), RenderIgnorePointer#639c4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2d509@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#3fcb3(_ReusableRenderView#fce4f), HitTestEntry#5f602()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#eed69(TextEditingValue(text: ┤> 3. item├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#8a07d +The hit test result at that offset is: HitTestResult(RenderMouseRegion#42007@Offset(425.5, 300.0), RenderSemanticsAnnotations#9e1e5@Offset(425.5, 300.0), RenderPointerListener#d9610@Offset(425.5, 300.0), RenderSemanticsGestureHandler#a72c5@Offset(425.5, 300.0), RenderExcludeSemantics#16e6f@Offset(425.5, 300.0), RenderBlockSemantics#438c1@Offset(425.5, 300.0), RenderIgnorePointer#4b19c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a2cfe@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#7c159(_ReusableRenderView#fce4f), HitTestEntry#c472f()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:18 +1057: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks retain continuation-line ancestors + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#c685b(TextEditingValue(text: ┤- first + leftright + ├, selection: TextSelection.collapsed(offset: 20, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#3e6ea, undoController: UndoHistoryController#5e8d3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a3827(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b02a7]], state: _TextFieldState#f472b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#50086 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#d17d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#b989b@Offset(425.5, 300.0), RenderPointerListener#f517e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#67ea4@Offset(425.5, 300.0), RenderExcludeSemantics#5b994@Offset(425.5, 300.0), RenderBlockSemantics#7491f@Offset(425.5, 300.0), RenderIgnorePointer#dabf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#fefb6@Offset(425.5, 300.0), _RenderTheater#b5ba0@Offset(425.5, 300.0), RenderAbsorbPointer#e1ca1@Offset(425.5, 300.0), RenderPointerListener#b7527@Offset(425.5, 300.0), RenderSemanticsAnnotations#bd2d9@Offset(425.5, 300.0), RenderCustomPaint#ad13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#d29dc@Offset(425.5, 300.0), RenderSemanticsAnnotations#f35f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#05abe@Offset(425.5, 300.0), RenderTapRegionSurface#0dce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#1213f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c0848@Offset(425.5, 300.0), HitTestEntry#3af40(_ReusableRenderView#fce4f), HitTestEntry#11ab8()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#c685b(TextEditingValue(text: ┤- first + + leftright + ├, selection: TextSelection.collapsed(offset: 21, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#3e6ea, undoController: UndoHistoryController#5e8d3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a3827(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b02a7]], state: _TextFieldState#f472b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#50086 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#b8d77@Offset(425.5, 300.0), RenderSemanticsAnnotations#762eb@Offset(425.5, 300.0), RenderPointerListener#dff5e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#1ae88@Offset(425.5, 300.0), RenderExcludeSemantics#32fd3@Offset(425.5, 300.0), RenderBlockSemantics#5e339@Offset(425.5, 300.0), RenderIgnorePointer#298a2@Offset(425.5, 300.0), RenderSemanticsAnnotations#23686@Offset(425.5, 300.0), _RenderTheater#b5ba0@Offset(425.5, 300.0), RenderAbsorbPointer#e1ca1@Offset(425.5, 300.0), RenderPointerListener#b7527@Offset(425.5, 300.0), RenderSemanticsAnnotations#bd2d9@Offset(425.5, 300.0), RenderCustomPaint#ad13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#d29dc@Offset(425.5, 300.0), RenderSemanticsAnnotations#f35f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#05abe@Offset(425.5, 300.0), RenderTapRegionSurface#0dce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#1213f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c0848@Offset(425.5, 300.0), HitTestEntry#dd596(_ReusableRenderView#fce4f), HitTestEntry#4d8b0()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#c685b(TextEditingValue(text: ┤> first + leftright + ├, selection: TextSelection.collapsed(offset: 18, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#3e6ea, undoController: UndoHistoryController#5e8d3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a3827(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b02a7]], state: _TextFieldState#f472b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#50086 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#f6ef5@Offset(425.5, 300.0), RenderSemanticsAnnotations#024dc@Offset(425.5, 300.0), RenderPointerListener#a3854@Offset(425.5, 300.0), RenderSemanticsGestureHandler#d68e8@Offset(425.5, 300.0), RenderExcludeSemantics#7fc39@Offset(425.5, 300.0), RenderBlockSemantics#75584@Offset(425.5, 300.0), RenderIgnorePointer#239ac@Offset(425.5, 300.0), RenderSemanticsAnnotations#f0e09@Offset(425.5, 300.0), _RenderTheater#b5ba0@Offset(425.5, 300.0), RenderAbsorbPointer#e1ca1@Offset(425.5, 300.0), RenderPointerListener#b7527@Offset(425.5, 300.0), RenderSemanticsAnnotations#bd2d9@Offset(425.5, 300.0), RenderCustomPaint#ad13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#d29dc@Offset(425.5, 300.0), RenderSemanticsAnnotations#f35f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#05abe@Offset(425.5, 300.0), RenderTapRegionSurface#0dce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#1213f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c0848@Offset(425.5, 300.0), HitTestEntry#08411(_ReusableRenderView#fce4f), HitTestEntry#1b3ca()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:18 +1058: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source container recovery is bound to the actual nested ancestors +04:18 +1059: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks use list markers rather than task prefixes +04:18 +1060: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source task items keep block kinds at every content position +04:19 +1061: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source checked ordered nested and zero lists retain inserted block kinds +04:19 +1062: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source composes mixed and continuation container ancestors +04:19 +1063: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source protected contexts use the safe source fallback +04:19 +1064: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Writerside Source preserves a structured procedure block +04:19 +1065: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source delayed paste rejects a changed selection +04:19 +1066: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves composition before and during a read +04:19 +1067: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source failed cut keeps text and does not record history +04:19 +1068: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source delayed cut revalidates selection before deletion +04:19 +1069: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: history insertion follows the latest Source selection +04:19 +1070: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history rebases retained media into Source +04:19 +1071: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history restores a local video into Source +04:19 +1072: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: standalone image history ingests and inserts one undoable Source edit +04:20 +1073: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source local image path retains imported bytes once + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#90609(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#62223, undoController: UndoHistoryController#1f465(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#f994a(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#77e0b]], state: _TextFieldState#a01ec), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#80609 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#8c8d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#2a53d@Offset(425.5, 300.0), RenderPointerListener#f4e53@Offset(425.5, 300.0), RenderSemanticsGestureHandler#65744@Offset(425.5, 300.0), RenderExcludeSemantics#c750b@Offset(425.5, 300.0), RenderBlockSemantics#da601@Offset(425.5, 300.0), RenderIgnorePointer#4c34c@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0148@Offset(425.5, 300.0), _RenderTheater#a3fae@Offset(425.5, 300.0), RenderAbsorbPointer#b2760@Offset(425.5, 300.0), RenderPointerListener#14db5@Offset(425.5, 300.0), RenderSemanticsAnnotations#db9d8@Offset(425.5, 300.0), RenderCustomPaint#e5c89@Offset(425.5, 300.0), RenderSemanticsAnnotations#e7176@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ce8b@Offset(425.5, 300.0), RenderSemanticsAnnotations#b5d59@Offset(425.5, 300.0), RenderTapRegionSurface#478b9@Offset(425.5, 300.0), RenderSemanticsAnnotations#46626@Offset(425.5, 300.0), RenderSemanticsAnnotations#2f912@Offset(425.5, 300.0), HitTestEntry#12f7a(_ReusableRenderView#fce4f), HitTestEntry#0d3a4()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..expectNormalReplay (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8934:7) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8956:5) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:21 +1074: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: unsafe local image candidates paste their original text + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#cae1c(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#d5390, undoController: UndoHistoryController#ca014(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#24f57(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#12455]], state: _TextFieldState#5a3dc), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#995d0 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#82178@Offset(425.5, 300.0), RenderSemanticsAnnotations#3377b@Offset(425.5, 300.0), RenderPointerListener#c73e3@Offset(425.5, 300.0), RenderSemanticsGestureHandler#f01d2@Offset(425.5, 300.0), RenderExcludeSemantics#1f273@Offset(425.5, 300.0), RenderBlockSemantics#f3ad1@Offset(425.5, 300.0), RenderIgnorePointer#7d21e@Offset(425.5, 300.0), RenderSemanticsAnnotations#9252b@Offset(425.5, 300.0), _RenderTheater#f9bbe@Offset(425.5, 300.0), RenderAbsorbPointer#d849a@Offset(425.5, 300.0), RenderPointerListener#a63a8@Offset(425.5, 300.0), RenderSemanticsAnnotations#9dff5@Offset(425.5, 300.0), RenderCustomPaint#6b37d@Offset(425.5, 300.0), RenderSemanticsAnnotations#eca88@Offset(425.5, 300.0), RenderSemanticsAnnotations#2d4d2@Offset(425.5, 300.0), RenderSemanticsAnnotations#c4f1c@Offset(425.5, 300.0), RenderTapRegionSurface#572e7@Offset(425.5, 300.0), RenderSemanticsAnnotations#d940f@Offset(425.5, 300.0), RenderSemanticsAnnotations#582d8@Offset(425.5, 300.0), HitTestEntry#2b388(_ReusableRenderView#fce4f), HitTestEntry#56192()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9010:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:22 +1075: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: image history asks to save an untitled Source document +04:22 +1076: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: generic XML does not invent Writerside image syntax +04:22 +1077: loading /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart +04:22 +1077: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: reads the initial GTK animation setting +04:22 +1078: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: animation stream follows GTK setting changes +04:22 +1079: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: provider exposes the preloaded value before native events +04:22 +1080: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: missing GTK integration falls back without disabling motion +04:22 +1081: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: native GTK bridge observes and tears down animation preference state +04:22 +1082: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart +04:26 +1082: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +04:26 +1083: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +04:27 +1084: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft +04:27 +1085: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +04:27 +1086: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft +04:28 +1087: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +04:28 +1088: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work +04:28 +1089: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work +04:28 +1090: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work +04:28 +1091: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work +04:28 +1092: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work +04:28 +1093: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET +04:29 +1094: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET +04:29 +1095: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET +04:29 +1096: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit +04:29 +1097: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment +04:29 +1098: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor +04:29 +1099: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity +04:29 +1100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement +04:29 +1101: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart +04:30 +1101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt +04:31 +1102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption +04:31 +1103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +04:31 +1104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary +04:31 +1105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment +04:31 +1106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title +04:32 +1107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category +04:32 +1108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment +04:32 +1109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart +04:32 +1110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment +04:32 +1111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment +04:33 +1112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +04:33 +1113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +04:33 +1114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +04:33 +1115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +04:33 +1116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit +04:33 +1117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit +04:33 +1118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +04:33 +1119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice +04:33 +1120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note +04:34 +1121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +04:34 +1122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions +04:34 +1123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +04:34 +1124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +04:34 +1125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +04:34 +1126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +04:34 +1127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +04:34 +1128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +04:34 +1129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +04:35 +1130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +04:35 +1131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +04:35 +1132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +04:35 +1133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +04:35 +1134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +04:35 +1135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +04:35 +1136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +04:35 +1137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +04:35 +1138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +04:36 +1139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +04:36 +1140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +04:36 +1141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +04:36 +1142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename +04:36 +1143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +04:37 +1144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +04:37 +1145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +04:37 +1146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +04:37 +1147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +04:37 +1148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +04:37 +1149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +04:37 +1150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +04:38 +1151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +04:38 +1152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +04:38 +1153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +04:38 +1154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +04:38 +1155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +04:38 +1156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +04:39 +1157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +04:39 +1158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +04:39 +1159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +04:39 +1160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +04:39 +1161: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart +04:40 +1161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice +04:40 +1162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes +04:40 +1163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice +04:40 +1164: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart +04:41 +1164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty +04:42 +1165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty +04:42 +1166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty +04:42 +1167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body +04:42 +1168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null +04:42 +1169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 +04:43 +1170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file +04:43 +1171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file +04:43 +1172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file +04:43 +1173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file +04:43 +1174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call +04:43 +1175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin +04:43 +1176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched +04:43 +1177: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart +04:43 +1177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations +04:44 +1178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions +04:44 +1179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations +04:44 +1180: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart +04:45 +1180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated +04:46 +1181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated +04:46 +1182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated +04:46 +1183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated +04:46 +1184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated +04:46 +1185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated +04:46 +1186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated +04:46 +1187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated +04:46 +1188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request +04:46 +1189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible +04:46 +1190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content +04:46 +1191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match +04:46 +1192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted +04:46 +1193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state +04:46 +1194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility +04:46 +1195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility +04:46 +1196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility +04:46 +1197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility +04:46 +1198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility +04:46 +1199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility +04:46 +1200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility +04:46 +1201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility +04:46 +1202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects +04:46 +1203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids +04:46 +1204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body +04:46 +1205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence +04:46 +1206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path +04:46 +1207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note +04:46 +1208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials +04:46 +1209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 +04:46 +1210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references +04:46 +1211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference +04:46 +1212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update +04:46 +1213: loading /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart +04:47 +1213: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles default-a4 and preserves document data +04:48 +1214: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles letter-landscape and preserves document data +04:48 +1215: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles legal-serif and preserves document data +04:48 +1216: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles custom-sans and preserves document data +04:48 +1217: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles no-numbers and preserves document data +04:49 +1218: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles numbered-no-outline and preserves document data +04:49 +1219: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomLeft and preserves document data +04:49 +1220: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomCenter and preserves document data +04:49 +1221: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomRight and preserves document data +04:50 +1222: loading /home/albert/busystack/busymark/test/src/app_smoke_test.dart +04:51 +1222: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor shortcuts use documented cross-editor defaults +04:51 +1223: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace resize retains the sidebar and leaves room for header controls +04:53 +1224: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: document view shortcuts are distinct from existing commands +04:53 +1225: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace routes paste shortcuts only to editable document views +04:56 +1226: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace source history restores a pasted URL suffix through undo and redo +04:57 +1227: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app wires generated localization delegates and locales +04:57 +1228: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app boots to BusyMark welcome screen without login UI +04:57 +1229: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (0) +04:57 +1230: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (1) +04:58 +1231: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: false) +04:58 +1232: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: true) +04:59 +1233: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: main menu and F11 toggle full-screen mode +04:59 +1234: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Alt+Left activates the header Back command +05:00 +1235: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: restored capture failure stays owned across Back create discard create +05:01 +1236: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Escape closes header popup menus +05:01 +1237: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: report issue is in the shared main menu, not Settings content +05:01 +1238: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: global reference and settings shortcuts open targets +05:02 +1239: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings screen opens +05:04 +1240: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings uses the regular split sidebar at desktop width +05:04 +1241: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Spelling Dictionaries page groups downloadable and custom data +05:04 +1242: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt uses native controls and submits a trimmed ID +05:10 +1243: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt cancels and saves without redesign +05:16 +1244: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a default-language install keeps the previous selection +05:16 +1245: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: default language persists only after dictionary installation succeeds +05:23 +1246: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: failed dictionary install keeps the default language +05:25 +1247: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a project-language install keeps the previous selection +05:27 +1248: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings main surface matches the headerbar in light and dark +05:28 +1249: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: stored language override localizes app text +05:28 +1250: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: European Portuguese system locale renders the completed base catalog +05:28 +1251: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: language-only Chinese system locale renders the completed base catalog +05:28 +1252: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside project dialog syncs generated fields until edited +05:29 +1253: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts dialog opens from the header +05:30 +1254: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference categories expose supported authoring forms +05:31 +1255: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+Alt+M opens and Escape closes the syntax reference +05:31 +1256: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference remains usable in constrained RTL layout +05:31 +1257: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts tabs section title is localized +05:32 +1258: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: about dialog shows the BusyMark logo +unhandled element ; Picture key: Svg loader +05:32 +1259: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N chooses between Markdown and Writerside creation +05:32 +1260: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N keeps unsaved documents in independent tabs +05:33 +1261: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N creates real CommonMark inside a Writerside workspace +05:35 +1262: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions +05:43 +1263: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions with an available native host +05:48 +1264: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside topic rename uses Preview, Do Refactor, and shared entry points +05:49 +1265: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: topic rename saves every dirty Writerside project source before planning +05:50 +1266: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: tab keyboard shortcuts move and close editor tabs +05:51 +1267: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Git diff files are shown as separate editor tabs +05:52 +1268: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: File History comparison selector shares its row with match navigation +05:52 +1269: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: file tree disables Git file actions without a repository +05:52 +1270: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: sidebar view shortcuts select workspace sidebar tabs +05:55 +1271: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: real Source edits reach the visible Local History list on the fixed deadline +05:55 +1272: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: selected WYSIWYG formatting reaches Local History through workspace callbacks +05:55 +1273: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside sidebar shortcuts survive document view changes +05:58 +1274: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view colors entries by Git status +05:58 +1275: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view shows hidden, empty, and unsupported entries +05:58 +1276: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Arabic +05:58 +1277: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Persian +05:59 +1278: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Arabic untitled workspace stays RTL and diagnostic metadata stays LTR +05:59 +1279: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: RTL topic copy keeps bidi controls out of clipboard data +05:59 +1280: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Copy uses an inactive origin topic open buffer +06:00 +1281: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Paste reviews an inactive dirty tree before moving +06:01 +1282: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source undo cannot restore saved text from previous tab +06:01 +1283: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source groups typing and deletion undo with historical carets +06:01 +1284: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source remount starts a distinct undo group +06:01 +1285: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source view supports editor formatting shortcuts +06:01 +1286: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab and Shift+Tab update indentation in source view +06:02 +1287: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editing toolbar context menu changes persisted layout without toggling +06:02 +1288: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share a frame while Split stays fluid +06:02 +1289: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: rendered views ignore redundant blanks while Source preserves them +06:03 +1290: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: standalone HTML breaks preserve one blank line in every document view +06:03 +1291: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share task-list presentation and wrapping +06:03 +1292: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same quote shell geometry +06:03 +1293: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same code block presentation +06:04 +1294: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share professional heading hierarchy +06:04 +1295: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share admonition and image presentation +06:04 +1296: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Preview renders structured formatted and nested quotes +06:04 +1297: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor undo cannot restore saved text from previous tab +06:05 +1298: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab inserts a tab character in editor view paragraphs +06:05 +1299: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close still warns when active changes are unsaved +06:05 +1300: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close flushes autosave for saved files +06:05 +1301: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: startup path opens a Markdown file workspace +06:05 +1302: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline follows unsaved source headings without live validation +06:06 +1303: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline context menu edits complete heading sections +06:06 +1304: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline highlights the heading at the document viewport +06:09 +1305: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline navigates to a renamed unsaved editor heading +06:11 +1306: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: untitled outline navigates before the first save +06:11 +1307: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview tolerates duplicate heading anchors +06:11 +1308: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading opens an unindexed sibling document link +06:11 +1309: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading linked block and inline images open their targets +06:11 +1310: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: new empty document leaves remembered preview mode for editor +06:11 +1311: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: blocked remote image prompt allows the current workspace +06:12 +1312: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+O open chooser lists recent workspaces +06:12 +1313: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recent workspace menus support pointer and keyboard actions +06:12 +1314: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local images +06:12 +1315: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer blocks remote images by default +06:12 +1316: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths with spaces +06:12 +1317: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths outside workspace +06:12 +1318: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves Snap real-home paths +06:12 +1319: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local SVG images +06:13 +1320: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer rejects oversized local SVGs +06:13 +1321: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer sanitizes embedded SVG image data +06:13 +1322: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer renders generated SVG badges +06:13 +1323: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: header Search button toggles the expanded search field +06:14 +1324: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: native header Search action toggles search and Back visibility +06:14 +1325: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search awaits non-active file reads without blocking builds +06:15 +1326: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search native submit uses exact payload and selected sidebar occurrence +06:16 +1327: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search preserves query and lands on unopened destination +06:16 +1328: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search observes edits to inactive buffers +06:17 +1329: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search reports limits and continues into later files +06:18 +1330: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search exposes skipped files and regex diagnostics +06:19 +1331: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search cancels expensive regex while UI keeps building +06:20 +1332: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search replacement review loads an asynchronous plan +06:21 +1333: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search highlights preserve Unicode offsets +06:21 +1334: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: literal workspace search bounds malformed Markdown snippets around the match +06:22 +1335: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks move preview scroll repeatedly +06:22 +1336: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview lazily builds large documents +06:23 +1337: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks scroll to code block matches +06:23 +1338: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on paragraph after lists +06:24 +1339: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share ordered list styling and geometry +06:24 +1340: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders nested list children +06:24 +1341: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders raw HTML table as table cells +06:24 +1342: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading applies Markdown table column alignment +06:24 +1343: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on code block line +06:25 +1344: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S runs Save for the active workspace +06:25 +1345: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S saves source edits from an untitled Markdown document +06:26 +1346: loading /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart +06:27 +1346: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from preview +06:31 +1347: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from editor +06:33 +1348: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: an open Problems dialog updates its count and math rows +06:34 +1349: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: manual Validate supersedes queued automatic validation and presents once +06:36 +1350: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: failed and stale validation do not show Problems; concurrent clicks publish once +06:39 +1351: loading /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart +06:39 +1351: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside math forms use semantic math nodes and round-trip +06:40 +1352: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: ordinary Markdown does not reinterpret Writerside TeX forms +06:40 +1353: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside semantic and fenced diagrams share visualizers +06:40 +1354: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: referenced diagram source is constrained to the Writerside root +06:40 +1355: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside topic XML exposes TeX and diagrams to shared preview +06:40 +1356: loading /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart +06:42 +1356: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: view changes fade one live editor while ordinary data changes do not +06:44 +1357: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained destinations settle immediately under reduced motion +06:44 +1358: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained crossfade keeps two live pages and hides outgoing UI +06:44 +1359: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: keyed crossfade retains three semantic destinations +06:44 +1360: loading /home/albert/busystack/busymark/test/src/preview_builder_test.dart +06:45 +1360: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview uses one generic label and no compatibility banner +06:45 +1361: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview ignores redundant blank lines between blocks +06:45 +1362: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves an explicit blank line encoded with HTML breaks +06:45 +1363: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview headings carry parser anchors for outline navigation +06:45 +1364: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview blocks carry source locations for search navigation +06:45 +1365: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview source locations survive adjacent list items and code fences +06:46 +1366: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview list text removes Markdown markers +06:46 +1367: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves links inside list items +06:46 +1368: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves nested list children +06:46 +1369: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps ordered list numbering independent at each depth +06:46 +1370: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves inline Markdown semantics +06:46 +1371: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: inline autolinks only support launchable URI schemes +06:46 +1372: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities +06:46 +1373: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces +06:46 +1374: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities +06:46 +1375: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces +06:46 +1376: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview treats single newlines inside paragraphs as soft breaks +06:46 +1377: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview supports common Markdown block variants +06:46 +1378: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves structured and formatted quote children +06:46 +1379: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves source order for code and images +06:46 +1380: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview parses Writerside image attributes +06:46 +1381: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: front matter is skipped only at the top of the document +06:46 +1382: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML paragraph without literal tags +06:46 +1383: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table sections and inline cell formatting +06:46 +1384: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders direct rows under raw HTML table +06:46 +1385: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table captions before the table +06:46 +1386: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders inline raw HTML safely +06:46 +1387: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not make raw HTML links active without href +06:46 +1388: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects absolute local image paths in raw HTML +06:46 +1389: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects deeply nested raw HTML before conversion +06:46 +1390: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders safe raw HTML containers as child content +06:46 +1391: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders top-level raw HTML image as image block +06:46 +1392: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves raw HTML figure caption relationship +06:46 +1393: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview allows safe remote raw HTML links images and citations +06:46 +1394: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps unsafe raw HTML literal +06:46 +1395: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not parse Markdown inside raw HTML blocks +06:46 +1396: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps paired raw HTML blocks together across blank lines +06:46 +1397: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart +06:47 +1397: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields +06:47 +1398: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 +06:47 +1399: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 +06:47 +1400: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 +06:47 +1401: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 +06:47 +1402: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null +06:47 +1403: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version +06:47 +1404: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed +06:47 +1405: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 +06:47 +1406: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately +06:47 +1407: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers +06:47 +1408: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin +06:47 +1409: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 +06:47 +1410: loading /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart +06:49 +1410: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by file-size limits +06:49 +1411: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by document limits +06:49 +1412: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects topic discovery truncated by tree limits +06:49 +1413: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic-root directory listing failure +06:49 +1414: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: topic discovery traverses excluded and hidden directories but not VCS metadata +06:49 +1415: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves a Markdown reference under build +06:50 +1416: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves an XML reference under a hidden directory +06:50 +1417: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a discovered unreadable topic source +06:50 +1418: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates topic and start-page references in every tree +06:51 +1419: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename refactors links, includes, ref entries, and leaves unrelated text +06:51 +1420: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename ignores link-shaped text in image titles and HTML attributes +06:51 +1421: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds reference links outside image titles and HTML attributes +06:51 +1422: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds exact HTML hrefs outside Markdown link and image titles +06:51 +1423: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename follows origin across modules without touching a local namesake +06:52 +1424: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: project-wide rename includes an origin reference in a build module +06:52 +1425: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: renaming a local namesake preserves origin-qualified Markdown XML links +06:52 +1426: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports unquoted origin-qualified raw HTML links +06:52 +1427: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename keeps decoded whitespace safe in unquoted HTML hrefs +06:52 +1428: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates shared Markdown reference definitions once +06:53 +1429: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves escapes required by a Markdown destination +06:53 +1430: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rewrites an XML-encoded topic destination +06:53 +1431: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename escapes decoded XML attribute replacements +06:53 +1432: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates a matching XML topic root id +06:53 +1433: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: missing or mismatched XML root IDs block rename atomically +06:53 +1434: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: prepared rename is read-only and applies its exact captured changes +06:53 +1435: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: stale prepared rename fails before any partial write +06:53 +1436: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preflights collisions only in publishing instances +06:53 +1437: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: origin topic collisions block a project-wide prepared rename +06:54 +1438: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: Unicode Markdown and XML topic filenames rename safely +06:54 +1439: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports Writerside .markdown topics +06:54 +1440: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects duplicate targets and extension changes +06:54 +1441: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves a target created concurrently before exclusive create +06:54 +1442: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete reloads newly configured instances before start-page checks +06:54 +1443: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename does not claim a new same-basename nested reference +06:54 +1444: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename aborts when a concurrent topic changes basename resolution +06:54 +1445: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete aborts when a concurrent topic changes basename resolution +06:54 +1446: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename retains target when an applied tree cannot be rolled back +06:54 +1447: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: cross-module rollback retains a target after another module changes +06:55 +1448: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: clean rollback removes the harmless newly created target +06:55 +1449: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves topic and instance tree file modes +06:55 +1450: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete removes every TOC entry and promotes children in place +06:55 +1451: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic used as any instance start page +06:55 +1452: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects unsafe path components before writing +06:55 +1453: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic replaced by a symlink without touching its target +06:55 +1454: loading /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart +06:56 +1454: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic maps to full and visible line without folds +06:56 +1455: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic inside folded region is aggregated onto its fold header +06:56 +1456: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: folded layout geometry is reused for equal collapsed sets +06:56 +1457: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: incremental gutter layout matches a full measured layout +06:56 +1458: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart +07:00 +1458: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Duplicate Topic is serialized to the native dialog host +07:00 +1459: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Edit Title returns all native field values +07:00 +1460: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: native cancellation remains distinct from an unavailable host +07:00 +1461: loading /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart +07:00 +1461: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps a nested Writerside block to its source block +07:02 +1462: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps selected text when unsourced editor blocks exist +07:02 +1463: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI applies through canonical Markdown source +07:02 +1464: loading /home/albert/busystack/busymark/test/src/document_status_bar_test.dart +07:04 +1464: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: places interactive spelling at start and format at end +07:05 +1465: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: keeps passive format when spelling is unsupported +07:05 +1466: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: truncates a long one-line language without displacing format +07:05 +1467: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: uses directional start and end placement in RTL +07:05 +1468: loading /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart +07:06 +1468: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: detects and preserves UTF-8 BOM, CRLF, and final newline +07:06 +1469: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: preserves a missing final newline when saving edited text +07:06 +1470: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: requires an explicit normalization for mixed line endings +07:06 +1471: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: rejects invalid UTF-8 instead of replacing bytes +07:06 +1472: loading /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart +07:08 +1472: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: autocomplete prioritizes Writerside Markdown authoring suggestions +07:08 +1473: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion derives XML caret context and consumes the project index +07:08 +1474: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion suggests attributes legal for the element at the caret +07:08 +1475: loading /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart +07:12 +1475: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: reads the provider key through the native credential channel +07:12 +1476: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: trims a key before securely storing it +07:12 +1477: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: deletes only the selected provider key +07:12 +1478: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: surfaces the native credential-service failure +07:12 +1479: loading /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart +07:14 +1479: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pristine empty draft discards without protective storage +07:14 +1480: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace replacement retires settled bindings and retains failed baselines +07:14 +1481: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects nonempty content when history is unavailable +07:14 +1482: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects whitespace content when history is unavailable +07:14 +1483: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects edited-empty content when history is unavailable +07:14 +1484: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects recovered content when history is unavailable +07:14 +1485: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects file content when history is unavailable +07:14 +1486: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: background protective retry cannot execute a previously rejected discard +07:14 +1487: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=false) +07:14 +1488: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=true) +07:14 +1489: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=false) +07:14 +1490: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=true) +07:15 +1491: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save cannot adopt a deleted path lineage +07:15 +1492: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: vacant first save retires a stale active history owner +07:15 +1493: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save promotes an established untitled lineage over deleted history +07:15 +1494: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison uses unsaved editor source and whole restore is one undo step +07:15 +1495: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels queued restore protection +07:15 +1496: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All cancels queued restore protection +07:15 +1497: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: region restore is exact, undoable, and rejects stale ranges +07:15 +1498: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed protective capture leaves current document unchanged +07:15 +1499: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restoration rejects a revision from another history document +07:15 +1500: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled history compares and restores through stable identity +07:15 +1501: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing during a delayed reload cancels the stale replacement +07:15 +1502: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reload reparse cannot publish after another buffer becomes active +07:15 +1503: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delete skips binary and excluded history descendants +07:15 +1504: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deleted document restores through normal create flow without overwriting +07:15 +1505: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: missing history restores over an existing file without touching disk and undoes to its real source +07:15 +1506: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing open destination protects unsaved source as the restore undo baseline +07:15 +1507: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing destination restore stops when protection fails or the target changes +07:15 +1508: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: autosaved existing-destination recovery never publishes an empty file +07:15 +1509: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delayed explicit save records exactly the source that was written +07:15 +1510: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history failure cannot turn a successful save into a failure +07:15 +1511: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move keeps edits made during history remap on the destination +07:15 +1512: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reparse cannot publish after a newer edit +07:15 +1513: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move cannot remap a replacement created while loading target +07:15 +1514: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move completion cannot publish into a replacement workspace +07:15 +1515: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: monitor event emitted after invalidation cannot enter reopened workspace +07:15 +1516: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: file monitor lifecycle recovers after a failed stop +07:15 +1517: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing while monitor start is pending still enables workspace events +07:15 +1518: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: folder refresh while monitor start is pending still enables events +07:15 +1519: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed workspace ignores a delayed monitor start completion +07:15 +1520: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed file monitor cannot resume an overtaken start +07:15 +1521: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deferred monitor move cannot enter a replacement workspace +07:16 +1522: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move retains reconciliation when another process checkpoints the old identity +07:16 +1523: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move with no bound identity cannot remap replacement history +07:16 +1524: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion with no bound identity cannot delete replacement history +07:16 +1525: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection retries into the deleted lineage +07:16 +1526: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection survives restart as detached work +07:16 +1527: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move remaps nested open history +07:16 +1528: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move publishes every buffer after one decode failure +07:16 +1529: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closing a tab during an external directory move settles its journal +07:16 +1530: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory deletion marks nested open history deleted +07:16 +1531: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed recursive-delete protection survives restart on its lineage +07:16 +1532: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reconciles closed file history +07:16 +1533: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion reconciles closed file history +07:16 +1534: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce before history reconciliation +07:16 +1535: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce across an unrelated queued event +07:16 +1536: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closed source move cannot steal an open destination lineage +07:16 +1537: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external file move includes identity established by source settlement +07:16 +1538: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move includes identity established by source settlement +07:16 +1539: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: cancelled named Save As detaches source history and reopens separately +07:16 +1540: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recording disabled after first-save publication preserves untitled lineage +07:17 +1541: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, completed pending capture +07:17 +1542: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, failed pending capture +07:17 +1543: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, completed pending capture +07:17 +1544: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, failed pending capture +07:17 +1545: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, completed pending capture +07:18 +1546: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, failed pending capture +07:18 +1547: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As keeps edits made during destination capture out of source history +07:18 +1548: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot claim a dirty open buffer at a missing destination +07:18 +1549: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=false) +07:18 +1550: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=true) +07:18 +1551: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rename remaps a failed unbound baseline to the committed destination +07:19 +1552: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed prepared rename never reaches the filesystem without an execution journal +07:19 +1553: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels a prepared rename before filesystem publication +07:19 +1554: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document retains an executing rename journal across a crash +07:19 +1555: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All retains an executing rename journal across a crash +07:19 +1556: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: targetless executing rename owner survives an ambiguous restart +07:19 +1557: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: move remaps a deferred first-save destination before baseline recovery +07:19 +1558: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive folder move remaps retained baselines for every open descendant +07:19 +1559: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=false) +07:19 +1560: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=true) +07:19 +1561: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed move retries a failed history path reconciliation +07:20 +1562: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: shutdown retries first-save promotion without requiring another edit +07:20 +1563: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: second Save As preserves a failed first-save association as the source +07:20 +1564: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As partitions a failed source checkpoint +07:20 +1565: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As source checkpoint survives process restart +07:20 +1566: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As journals its source before the filesystem commit returns +07:20 +1567: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot publish a second owner when its destination opens in flight +07:20 +1568: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As rechecks destination ownership after opening its workspace +07:20 +1569: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As waits for an unbound live destination history owner +07:20 +1570: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed Save As cannot publish after losing its prepared journal owner +07:20 +1571: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As published after disposal leaves a committed recoverable journal +07:20 +1572: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As commit write failure after disposal uses the session fallback +07:20 +1573: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As publishes destination after a post-publish callback failure +07:20 +1574: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed rename reconciliation survives shutdown and restart +07:20 +1575: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: live owner keeps committed remap journal until its recovery can follow +07:21 +1576: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared rename journal repairs a crash after filesystem commit +07:21 +1577: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed deletion detaches recovery newer than stored history +07:21 +1578: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive deletion evidence cannot consume a sibling recovery +07:21 +1579: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All durably removes a previously persisted path journal +07:21 +1580: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup applies committed destination cleanup before Save As recovery +07:21 +1581: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup keeps untitled first-save source when another tab owns destination +07:21 +1582: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed Save As recovery cannot claim another process tab with the same buffer id +07:21 +1583: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session restore selects recovery by process owner before shared buffer id +07:21 +1584: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed startup reconstruction releases adopted recovery ownership +07:21 +1585: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history retry during slow failed startup cannot erase adopted recovery +07:22 +1586: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session identity restore waits for the authoritative history snapshot +07:22 +1587: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: renamed adopted recovery still honors its original path-operation owner +07:22 +1588: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: replayed durable Clear All preserves newer history +07:22 +1589: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup aborts until replayed clear refresh is authoritative +07:22 +1590: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared deletion journal repairs a crash after filesystem commit +07:22 +1591: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed deletion reconciliation survives shutdown and restart +07:22 +1592: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reopened tab adopts its unresolved first-save history association +07:22 +1593: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: unresolved shutdown promotion survives in session and retries on startup +07:22 +1594: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace rename settles a failed first-save promotion +07:22 +1595: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace directory move settles a nested failed first-save promotion +07:22 +1596: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison renders styled intraline spans without framework errors +07:23 +1597: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison restore actions wait for the current replacement result +07:23 +1598: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace refresh invalidates a completed comparison by source content +07:23 +1599: loading /home/albert/busystack/busymark/test/src/visualization_card_test.dart +07:24 +1599: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: full-screen diagram coordinates its modal and preserves pan/zoom +07:25 +1600: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: retains the last valid diagram and navigates new diagnostics +07:26 +1601: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: fits a small Mermaid diagram to the preview width +07:26 +1602: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: keeps a wide Mermaid diagram readable until fit is requested +07:26 +1603: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: shows searchable OpenAPI operations and opens the native reference +07:26 +1604: loading /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart +07:27 +1604: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: computes the diagnostic offset within fenced source +07:27 +1605: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: WYSIWYG diagnostic selects its actual source line +07:28 +1606: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +07:30 +1606: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +07:32 +1607: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +07:35 +1608: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones +07:36 +1609: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +07:37 +1610: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +07:37 +1611: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +07:38 +1612: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +07:38 +1613: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +07:38 +1614: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +07:39 +1615: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +07:39 +1616: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +07:40 +1617: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +07:40 +1618: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +07:40 +1619: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +07:41 +1620: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +07:41 +1621: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +07:41 +1622: loading /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart +07:42 +1622: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table pipes cannot bind across subsequent cells +07:42 +1623: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: a\|b | a|b +07:42 +1624: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b\|c | a|b|c | +07:42 +1625: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\\\|b | a\\|b | +07:42 +1626: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | a|b\ +07:42 +1627: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | +07:42 +1628: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | `a\|b` | a|b | +07:42 +1629: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped pipes in the table header retain diagnostic positions +07:42 +1630: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | a\|b | a|b | +07:42 +1631: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | `` a\|b | a| | +07:42 +1632: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in block context +07:42 +1633: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in inline context +07:42 +1634: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline caption attributes are checked before tree construction +07:42 +1635: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline colgroup attributes are checked before tree construction +07:42 +1636: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline col attributes are checked before tree construction +07:42 +1637: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline thead attributes are checked before tree construction +07:42 +1638: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tbody attributes are checked before tree construction +07:42 +1639: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tfoot attributes are checked before tree construction +07:42 +1640: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline th attributes are checked before tree construction +07:42 +1641: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline td attributes are checked before tree construction +07:42 +1642: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline URL attributes use HTML entity decoding +07:42 +1643: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text `
Cell
` +07:42 +1644: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text \\\\\
Cell\
+07:42 +1645: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: ```html +07:42 +1646: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe:
Cell
+07:42 +1647: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text
Cell
+07:42 +1648: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html +07:42 +1649: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: +07:42 +1650: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
+07:42 +1651: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
+07:42 +1652: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^unused]: +07:42 +1653: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^used]: +07:42 +1654: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - ```html +07:42 +1655: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` then +07:42 +1656: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` `` +07:42 +1657: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > ```html +07:42 +1658: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - Example +07:42 +1659: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > - `` then +07:42 +1660: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: --- +07:42 +1661: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html +07:42 +1662: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | Code | HTML | +07:42 +1663: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | One | +07:42 +1664: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `a ` +07:42 +1665: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: unsafe Markdown URLs are located at the link, after literal examples +07:42 +1666: loading /home/albert/busystack/busymark/test/src/window_control_service_test.dart +07:44 +1666: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: button and native close requests share one pending confirmation +07:44 +1667: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: initializes prevent-close interception +07:44 +1668: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: toggles full screen and tracks native window-state changes +07:44 +1669: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: no dirty documents closes without dialog +07:44 +1670: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation enabled show dialog +07:44 +1671: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation disabled close directly +07:44 +1672: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: discard closes after disabling prevent-close +07:44 +1673: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save closes only when saving succeeds +07:44 +1674: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save failure keeps the app open +07:44 +1675: loading /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart +07:48 +1675: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: terminal code block gets a non-serializing trailing paragraph +07:48 +1676: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter inserts a newline within one code block +07:48 +1677: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: a code block created by editing also retains a trailing paragraph +07:48 +1678: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: third terminal Enter exits code and removes the two empty lines +07:48 +1679: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: exiting before existing content inserts a transient paragraph +07:48 +1680: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter in the trailing paragraph records an intentional blank +07:48 +1681: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: code Enter stays in the multiline code field +07:49 +1682: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Ctrl+Enter exits into the trailing paragraph +07:50 +1683: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Arrow Down exits a terminal code block +07:50 +1684: loading /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart +07:52 +1684: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: shows only a compact line-ending label +07:53 +1685: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: makes BOM visible and keeps final-newline detail compact +07:53 +1686: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: uses a compact technical label for mixed line endings +07:53 +1687: loading /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart +07:54 +1687: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: ordinary WYSIWYG selection never suppresses spelling underlines +07:54 +1688: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: source spelling correction is one exact transaction +07:55 +1689: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: formatted rich correction preserves structure and publishes once +07:56 +1690: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich image spelling preserves source and one undo step +07:57 +1691: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested code and math spelling preserves source and undo +07:57 +1692: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested address and math spelling preserves source and undo +07:58 +1693: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table image spelling preserves authored cell syntax +07:58 +1694: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed rich image preparation refuses a newer revision +07:58 +1695: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed math image preparation refuses a newer revision +07:58 +1696: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich correction preserves entities and translates later anchors +07:59 +1697: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich hard-break correction keeps later source anchor +07:59 +1698: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table correction preserves encoded cell source +07:59 +1699: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table-cell correction preserves link and publishes sessions once +07:59 +1700: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich underline painter keeps confirmed helo visible at caret +07:59 +1701: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: table cell underline uses the live cell composing range +07:59 +1702: loading /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart +08:00 +1702: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: inlines safe generated CSS into a vector-only SVG +08:00 +1703: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: keeps sanitized foreignObject only in the browser raster input +08:00 +1704: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes SVG and CSS animations +08:00 +1705: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects remote, executable, and escaped CSS URLs +08:00 +1706: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: allows embedded D2-style fonts but rejects remote image attributes +08:00 +1707: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: requires rasterization for CSS the vector inliner cannot preserve +08:00 +1708: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: preserves safe browser-only inline CSS and rasterizes it +08:00 +1709: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes unsafe URLs from inline CSS +08:00 +1710: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: does not claim a vector result when CSS cascade resolution is needed +08:00 +1711: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects declarations, excessive complexity, and invalid dimensions +08:00 +1712: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: applies the size limit to UTF-8 bytes +08:00 +1713: loading /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart +08:02 +1713: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: remote requests reject existing local references before reading dependencies +08:03 +1714: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: resolves local files, hashes them, and terminates circular schemas +08:03 +1715: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: keeps internal-only references independent of a saved path +08:03 +1716: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: rejects remote, absolute, malformed, and unsupported references +08:03 +1717: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: reports an unsaved document that contains a local reference +08:03 +1718: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: converts traversal and symlink escapes into typed diagnostics +08:03 +1719: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: enforces dependency count and byte limits +08:03 +1720: loading /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart +08:04 +1720: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: platform host sends reduced source and geometry over one channel +08:04 +1721: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: Linux player keeps interactive media in a restricted WebKit host +08:05 +1722: loading /home/albert/busystack/busymark/test/src/export_options_test.dart +08:09 +1722: /home/albert/busystack/busymark/test/src/export_options_test.dart: defaults retain PDF geometry and independent HTML reading appearance +08:09 +1723: /home/albert/busystack/busymark/test/src/export_options_test.dart: every option persists and copies without losing unrelated fields +08:09 +1724: /home/albert/busystack/busymark/test/src/export_options_test.dart: absent and malformed persisted values fall back per field +08:09 +1725: /home/albert/busystack/busymark/test/src/export_options_test.dart: geometry resolves dimensions, orientation and four independent margins +08:09 +1726: /home/albert/busystack/busymark/test/src/export_options_test.dart: payload contains resolved geometry and every renderer option as data +08:09 +1727: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +08:10 +1727: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review +08:11 +1728: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab +08:11 +1729: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes +08:11 +1730: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save +08:11 +1731: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) +08:11 +1732: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) +08:11 +1733: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) +08:11 +1734: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) +08:12 +1735: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart +08:12 +1736: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation +08:12 +1737: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox +08:12 +1738: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit +08:12 +1739: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session +08:12 +1740: loading /home/albert/busystack/busymark/test/src/source_folding_test.dart +08:13 +1740: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line starts map to the following source line +08:13 +1741: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects sections lists quotes and code blocks +08:13 +1742: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding keeps shorter fence runs inside dynamic fences +08:13 +1743: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown structures inside fences do not create fold regions +08:13 +1744: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores tags inside multiline comments and CDATA +08:13 +1745: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores greater-than signs inside quoted attributes +08:13 +1746: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding scans opening tags across source lines +08:13 +1747: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding skips processing instructions and declarations +08:13 +1748: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding does not join separate indented code blocks +08:13 +1749: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsed gutter entries preserve source line numbers +08:13 +1750: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsing one repeated markdown subsection keeps peer sections visible +08:13 +1751: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding detects simple multiline tag blocks +08:13 +1752: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects nested headings task lists and blockquotes +08:13 +1753: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding handles nested same-name tags with a stack +08:13 +1754: /home/albert/busystack/busymark/test/src/source_folding_test.dart: malformed xml does not create unsafe fold ranges +08:13 +1755: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line info supports CRLF endings +08:13 +1756: loading /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart +08:16 +1756: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: shipped spelling catalog is metadata-only and revision pinned +08:16 +1757: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: ordinary Linux release does not prepare all-language pairs +08:16 +1758: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: committed spelling checksum inventory matches exact shipped bytes +08:16 +1759: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: native spelling notices are explicit installed artifacts +08:16 +1760: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: strict Snap smoke performs and verifies a local revision transition +08:16 +1761: loading /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart +08:16 +1761: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates and registers an empty instance with build settings +08:17 +1762: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates a non-publishing TOC library instance +08:17 +1763: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: imports selected Markdown and its referenced local media +08:17 +1764: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: renames an instance and refactors documented project references +08:17 +1765: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: first topic added to an empty instance becomes its home page +08:17 +1766: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: invalid project XML blocks an instance ID refactor without changing files +08:17 +1767: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: concurrent config change prevents every instance publication +08:18 +1768: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import copies selected topics, media, and inserts root entries in order +08:18 +1769: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import inserts several siblings after the exact reference in list order +08:18 +1770: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import initializes only the first imported topic as the start page +08:18 +1771: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects batch, existing-ID, target, and invalid-name conflicts +08:18 +1772: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import accepts a Unicode topic filename +08:18 +1773: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects a stale reference identity without publishing files +08:18 +1774: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import discovered-but-unparsed topic basename blocks import +08:18 +1775: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import fails closed when semantic topic discovery is incomplete +08:18 +1776: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import revalidates IDs before publishing and leaves no partial import +08:18 +1777: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import allows an unrelated topic created before publication +08:18 +1778: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects existing and selected-batch topic IDs +08:18 +1779: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects an invalid topic filename +08:18 +1780: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import fails closed on incomplete discovery +08:18 +1781: loading /home/albert/busystack/busymark/test/src/validation_consistency_test.dart +08:19 +1781: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: module load, topic validation, and config validation agree and clear fixes +08:20 +1782: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: editing a target refreshes diagnostics in the referencing topic +08:20 +1783: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variables, comments, interpolation controls and optional includes agree +08:20 +1784: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: interpolated includes agree across load, topic and config validation +08:20 +1785: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variable scope identity includes its declaring topic +08:20 +1786: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: cross-module includes refresh when their target changes +08:20 +1787: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: malformed glossary and keymap XML report the supporting file and clear after repair +08:20 +1788: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: Markdown validation preserves other files and scan warnings while clearing active errors +08:20 +1789: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: linked anchors use dirty buffers and canonical self-links, caching targets +08:20 +1790: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: large buffered targets parse asynchronously and missing saved targets use their buffers +08:20 +1791: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: front matter requires complete delimiter lines with LF and CRLF +08:20 +1792: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: HTML diagnostics exclude prose and literal code without relaxing rendering policy +08:20 +1793: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: location maps are reused within a parse and released between parses +08:20 +1794: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart +08:21 +1794: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes +08:21 +1795: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs +08:21 +1796: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin +08:21 +1797: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success +08:21 +1798: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser +08:21 +1799: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll +08:21 +1800: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll +08:21 +1801: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password +08:21 +1802: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling +08:21 +1803: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints +08:21 +1804: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors +08:21 +1805: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account +08:21 +1806: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics +08:21 +1807: loading /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart +08:23 +1807: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside Markdown collapsible chapter owns its section +08:23 +1808: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown keeps Writerside collapse syntax literal +08:23 +1809: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown does not assign semantic Writerside collapse +08:23 +1810: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside fenced code consumes its collapsible attribute line +08:23 +1811: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: edited collapsible blocks serialize valid Writerside attributes +08:23 +1812: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary fenced code does not consume a collapse attribute line +08:23 +1813: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: semantic collapsible elements become structured preview content +08:23 +1814: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside XML topic preview keeps collapsible content nested +08:23 +1815: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: shared collapse control honors default state and toggles +08:24 +1816: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: WYSIWYG collapses only Writerside chapter content +08:25 +1817: loading /home/albert/busystack/busymark/test/src/export_review_regression_test.dart +08:25 +1817: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside PDF retains percent-encoded non-ASCII footnote labels +08:26 +1818: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: included footnotes use separate document-occurrence namespaces +08:26 +1819: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=false) +08:26 +1820: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=true) +08:26 +1821: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: repeated includes receive distinct nested occurrence IDs +08:26 +1822: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: mapper cannot substitute a diagram for a colliding paragraph +08:26 +1823: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside rejects outside file URIs and symlinks while staging shared-module images +08:26 +1824: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=false) +08:26 +1825: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=true) +08:26 +1826: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=true) +08:26 +1827: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=true) +08:26 +1828: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=false) +08:26 +1829: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=false) +08:26 +1830: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: collapsible headings keep numbering and actual outline order +08:27 +1831: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false #%FF) +08:27 +1832: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false %FF.md) +08:27 +1833: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false file%FF.txt) +08:27 +1834: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true #%FF) +08:27 +1835: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true %FF.md) +08:27 +1836: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true file%FF.txt) +08:27 +1837: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: combined Writerside PDF keeps diagrams and scoped notes without reading an outside image +08:27 +1838: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: ordinary Markdown footnotes compile with retained definitions and repeated references +08:27 +1839: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart +08:28 +1839: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only committed newline and continued typing replace a table-ended selection +08:29 +1840: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table committed newline and continued typing replace a table-ended selection +08:30 +1841: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table committed newline and continued typing replace a table-ended selection +08:30 +1842: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables committed newline and continued typing replace a table-ended selection +08:31 +1843: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=false +08:31 +1844: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Up control=false +08:31 +1845: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=false +08:32 +1846: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Down control=false +08:32 +1847: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=true +08:32 +1848: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=true +08:33 +1849: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing commit uses real input +08:33 +1850: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing cancel uses real input +08:33 +1851: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=false +08:33 +1852: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Up control=false +08:34 +1853: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=false +08:34 +1854: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Down control=false +08:34 +1855: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=true +08:34 +1856: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=true +08:35 +1857: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing commit uses real input +08:35 +1858: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing cancel uses real input +08:35 +1859: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=false +08:35 +1860: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Up control=false +08:36 +1861: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=false +08:36 +1862: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Down control=false +08:36 +1863: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=true +08:37 +1864: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=true +08:37 +1865: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=false +08:37 +1866: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Up control=false +08:37 +1867: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=false +08:37 +1868: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Down control=false +08:38 +1869: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=true +08:38 +1870: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=true +08:38 +1871: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing commit uses real input +08:39 +1872: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing cancel uses real input +08:39 +1873: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=false +08:39 +1874: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Up control=false +08:39 +1875: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=false +08:39 +1876: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Down control=false +08:40 +1877: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=true +08:40 +1878: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=true +08:40 +1879: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing commit uses real input +08:40 +1880: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing cancel uses real input +08:40 +1881: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=false +08:41 +1882: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Up control=false +08:41 +1883: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=false +08:41 +1884: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Down control=false +08:41 +1885: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=true +08:41 +1886: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=true +08:42 +1887: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=false +08:42 +1888: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Up control=false +08:42 +1889: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=false +08:42 +1890: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Down control=false +08:43 +1891: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=true +08:43 +1892: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=true +08:43 +1893: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing commit uses real input +08:43 +1894: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing cancel uses real input +08:44 +1895: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=false +08:44 +1896: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Up control=false +08:44 +1897: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=false +08:44 +1898: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Down control=false +08:45 +1899: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=true +08:45 +1900: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=true +08:45 +1901: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing commit uses real input +08:46 +1902: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing cancel uses real input +08:46 +1903: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=false +08:46 +1904: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Up control=false +08:46 +1905: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=false +08:46 +1906: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Down control=false +08:46 +1907: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=true +08:46 +1908: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=true +08:47 +1909: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=false +08:47 +1910: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Up control=false +08:47 +1911: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=false +08:47 +1912: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Down control=false +08:47 +1913: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=true +08:47 +1914: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=true +08:47 +1915: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: false) +08:48 +1916: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: true) +08:48 +1917: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#80d00(keyId: "0x100000301", keyLabel: "Arrow Down", debugName: "Arrow Down"), previous: LogicalKeyboardKey#88515(keyId: "0x100000304", keyLabel: "Arrow Up", debugName: "Arrow Up"), word: false) +08:49 +1918: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after selection +08:49 +1919: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after document +08:49 +1920: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after same document source +08:49 +1921: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after disposal +08:50 +1922: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=false +08:50 +1923: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=true +08:50 +1924: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: clipboard history replaces selected table through document range +08:51 +1925: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: partial paragraph to table to paragraph replacement preserves outside text and undo +08:51 +1926: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell-local input cut paste and Tab remain local +08:51 +1927: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by up (variant: TargetPlatform.linux) +08:52 +1928: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by cancel (variant: TargetPlatform.linux) +08:53 +1929: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by document (variant: TargetPlatform.linux) +08:54 +1930: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by disposal (variant: TargetPlatform.linux) +08:54 +1931: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=false +08:55 +1932: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=true +08:55 +1933: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=false +08:55 +1934: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=true +08:56 +1935: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=false +08:56 +1936: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=true +08:56 +1937: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=false +08:57 +1938: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=true +08:57 +1939: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=false +08:57 +1940: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=true +08:58 +1941: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=false +08:58 +1942: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=true +08:58 +1943: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=false +08:59 +1944: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=true +08:59 +1945: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=false +09:00 +1946: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=true +09:00 +1947: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=false +09:00 +1948: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=true +09:01 +1949: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=false +09:01 +1950: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=true +09:01 +1951: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=false +09:02 +1952: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=true +09:02 +1953: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=false +09:02 +1954: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=true +09:03 +1955: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=false +09:03 +1956: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=true +09:03 +1957: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=false +09:04 +1958: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=true +09:04 +1959: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=false +09:04 +1960: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=true +09:05 +1961: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=false +09:05 +1962: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=true +09:06 +1963: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=false +09:06 +1964: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=true +09:07 +1965: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=false +09:07 +1966: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=true +09:08 +1967: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=false +09:09 +1968: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=true +09:10 +1969: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=false +09:10 +1970: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=true +09:11 +1971: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local paragraph accepts immediate Unicode input +09:11 +1972: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local cell accepts immediate Unicode input +09:12 +1973: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by caret before handoff +09:12 +1974: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by range before handoff +09:12 +1975: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by document before handoff +09:12 +1976: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by tab replacement before handoff +09:12 +1977: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by disposal before handoff +09:13 +1978: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input retains a scrolled viewport +09:14 +1979: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input uses clamped session offsets +09:14 +1980: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Backspace until committed input +09:14 +1981: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Delete until committed input +09:14 +1982: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Enter until committed input +09:15 +1983: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Left until committed input +09:15 +1984: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Right until committed input +09:15 +1985: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Up until committed input +09:16 +1986: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Down until committed input +09:16 +1987: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Home until committed input +09:16 +1988: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns End until committed input +09:16 +1989: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=false +09:16 +1990: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=true +09:17 +1991: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag up retains committed text input +09:17 +1992: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag cancel retains committed text input +09:17 +1993: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during clipboard preparation +09:17 +1994: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during open menu +09:18 +1995: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=false +09:18 +1996: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=true +09:19 +1997: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false switching a reused editor captures outgoing document selection +09:19 +1998: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true switching a reused editor captures outgoing document selection +09:19 +1999: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false switching a reused editor captures outgoing document selection +09:20 +2000: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true switching a reused editor captures outgoing document selection +09:20 +2001: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false switching a reused editor captures outgoing document selection +09:20 +2002: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true switching a reused editor captures outgoing document selection +09:21 +2003: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false switching a reused editor captures outgoing document selection +09:21 +2004: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true switching a reused editor captures outgoing document selection +09:21 +2005: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=false switching a reused editor captures outgoing document selection +09:21 +2006: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=true switching a reused editor captures outgoing document selection +09:22 +2007: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Cut edits only the selected table +09:23 +2008: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste edits only the selected table +09:23 +2009: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste as Plain Text edits only the selected table +09:24 +2010: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=false +09:24 +2011: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=true +09:25 +2012: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint up restores real typing +09:25 +2013: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint cancel restores real typing +09:25 +2014: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real Select All survives workspace session JSON and editor recreation +09:26 +2015: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real reverse drag survives workspace session JSON and editor recreation +09:26 +2016: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real Select All survives workspace session JSON and editor recreation +09:27 +2017: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real reverse drag survives workspace session JSON and editor recreation +09:27 +2018: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real Select All survives workspace session JSON and editor recreation +09:27 +2019: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real reverse drag survives workspace session JSON and editor recreation +09:28 +2020: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real Select All survives workspace session JSON and editor recreation +09:28 +2021: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real reverse drag survives workspace session JSON and editor recreation +09:29 +2022: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph local reverse selection restores locally +09:29 +2023: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell local reverse selection restores locally +09:29 +2024: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target removed uses current-document fallback +09:29 +2025: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed kind uses current-document fallback +09:30 +2026: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed text uses current-document fallback +09:30 +2027: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned block drag +09:31 +2028: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned cell drag +09:31 +2029: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=false +09:31 +2030: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=true +09:31 +2031: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=false +09:31 +2032: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=true +09:31 +2033: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Delete replaces the selected structured block and undoes +09:32 +2034: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Backspace replaces the selected structured block and undoes +09:32 +2035: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Cut replaces the selected structured block and undoes +09:33 +2036: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Enter replaces the selected structured block and undoes +09:33 +2037: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: plain paste replaces the selected structured block and undoes +09:33 +2038: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: structured paste replaces the selected structured block and undoes +09:33 +2039: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Delete replaces the selected structured block and undoes +09:34 +2040: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Backspace replaces the selected structured block and undoes +09:34 +2041: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Cut replaces the selected structured block and undoes +09:34 +2042: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Enter replaces the selected structured block and undoes +09:35 +2043: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: plain paste replaces the selected structured block and undoes +09:35 +2044: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: structured paste replaces the selected structured block and undoes +09:35 +2045: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Delete replaces the selected structured block and undoes +09:36 +2046: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Backspace replaces the selected structured block and undoes +09:36 +2047: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Cut replaces the selected structured block and undoes +09:36 +2048: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Enter replaces the selected structured block and undoes +09:37 +2049: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: plain paste replaces the selected structured block and undoes +09:37 +2050: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: structured paste replaces the selected structured block and undoes +09:37 +2051: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +09:37 +2052: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +09:37 +2053: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +09:38 +2054: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +09:38 +2055: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +09:38 +2056: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +09:38 +2057: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-ended selection accepts actual committed Unicode input once +09:38 +2058: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: captured table selection restores highlighting copy and mutation +09:39 +2059: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-block drag without changing its endpoint +09:39 +2060: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-cell drag without changing its endpoint +09:39 +2061: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated pointer cannot complete an owned document drag +09:39 +2062: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Delete cannot edit a local fallback +09:39 +2063: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Enter cannot edit a local fallback +09:39 +2064: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document plain paste cannot edit a local fallback +09:39 +2065: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document structured paste cannot edit a local fallback +09:39 +2066: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document typing cannot edit a local fallback +09:40 +2067: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: failed document deletion preserves redo history +09:40 +2068: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after failure +09:40 +2069: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after selection +09:40 +2070: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after document +09:40 +2071: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after disposal +09:40 +2072: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after failure +09:41 +2073: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after selection +09:41 +2074: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after document +09:42 +2075: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after disposal +09:42 +2076: loading /home/albert/busystack/busymark/test/src/busymark_toast_test.dart +09:42 +2076: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast works when hosted above the Navigator +09:43 +2077: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast appears at the bottom center and dismisses itself +09:43 +2078: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast action runs and dismisses the toast +09:43 +2079: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toasts queue instead of covering each other +09:43 +2080: loading /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart +09:45 +2080: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames normalizes runs, edges, case, and Unicode once +09:45 +2081: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames disabled preprocessing preserves established safe characters +09:45 +2082: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames resolves exact custom values per instance for Markdown and XML +09:45 +2083: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/default collision +09:45 +2084: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/custom collision +09:45 +2085: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses custom/custom collision +09:45 +2086: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics allows the same output name in disjoint instances +09:45 +2087: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics deduplicates repeated publication of one physical topic +09:45 +2088: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses a collision with an origin module topic +09:45 +2089: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics resolves conditioned names independently in each instance +09:45 +2090: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses invalid custom filenames before export +09:45 +2091: loading /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart +09:46 +2091: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover preference defaults off, serializes and copies independently +09:46 +2092: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover title and authors use the established metadata precedence +09:46 +2093: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: snapshot metadata, display text, explicit clears and plain JSON remain independent +09:46 +2094: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: instance title uses its display name and only known project metadata +09:46 +2095: loading /home/albert/busystack/busymark/test/src/path_utils_test.dart +09:48 +2095: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries cancels a wide directory listing at the limit +09:48 +2096: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries counts directories against the scan budget +09:48 +2097: /home/albert/busystack/busymark/test/src/path_utils_test.dart: directory listing failure marks traversal incomplete +09:48 +2098: /home/albert/busystack/busymark/test/src/path_utils_test.dart: display scan includes hidden and unsupported entries but not VCS data +09:48 +2099: loading /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart +09:50 +2099: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses multiple commits +09:50 +2100: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses merge commit with multiple parents +09:50 +2101: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: preserves author punctuation and separator-like subject text +09:50 +2102: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses empty history +09:50 +2103: loading /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart +09:52 +2103: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses clean repository status +09:52 +2104: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses modified tracked file +09:52 +2105: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged modification +09:52 +2106: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses unstaged modification +09:52 +2107: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged and unstaged same file +09:52 +2108: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: keeps staged addition and working-tree deletion separate +09:52 +2109: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: tracks rename state independently in each status column +09:52 +2110: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses untracked file +09:52 +2111: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses deleted file +09:52 +2112: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses renamed file +09:52 +2113: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses copied file +09:52 +2114: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses conflicted files +09:52 +2115: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses branch header and ahead behind counts +09:52 +2116: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses detached head header +09:52 +2117: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: preserves spaces, unicode, quotes, and newlines in filenames +09:52 +2118: loading /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart +09:55 +2118: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: process-backed Git gateway requires workspace trust +09:55 +2119: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: configures a repository author identity without terminal setup +09:58 +2120: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: runs core workflow in a temporary Git repository +09:58 +2121: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status lists every non-ignored hidden untracked file +09:58 +2122: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: resets the current branch with each explicit Git reset mode +09:59 +2123: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: refuses to reset while HEAD is detached +10:00 +2124: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: keeps staged and unstaged comparisons separate +10:00 +2125: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged rename diff and unstage preserve both paths +10:00 +2126: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: rollback restores both sides of a staged rename to HEAD +10:01 +2127: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged addition deleted from the working tree keeps separate diffs +10:01 +2128: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: preserves complete deleted content and restores a deleted version +10:02 +2129: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: failed historical blob read cannot delete the working file +10:02 +2130: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: constructs complete text and binary comparisons for untracked files +10:02 +2131: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: direct working-tree operations reject intermediate symlink escapes +10:03 +2132: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: fetch updates remote-tracking status without changing files +10:03 +2133: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: follows renames, compares complete versions, and restores one file +10:04 +2134: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: compares a merge commit with its first parent +10:04 +2135: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: switch treats an option-like branch name as an operand +10:05 +2136: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff and commit details preserve C-quoted UTF-8 paths +10:05 +2137: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: pushSetUpstream does not broaden an option-like branch to --all +10:05 +2138: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: detects conflicted files in a temporary Git repository +10:06 +2139: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status does not run a repository-configured filesystem monitor +10:06 +2140: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff APIs do not run a repository-configured textconv +10:07 +2141: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: commit details do not run a repository-configured textconv +10:07 +2142: loading /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart +10:08 +2142: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner closes child stdin so commands waiting for EOF can finish +10:08 +2143: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates commands that exceed the combined output limit +10:08 +2144: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: normal gateway commands always receive a finite timeout +10:08 +2145: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: gateway classifies a missing commit author identity +10:08 +2146: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap packages the Linux process-group launcher +10:08 +2147: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap Git uses bundled helpers, templates, and SSH +10:08 +2148: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap launcher never falls back to the confined host setsid +10:08 +2149: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves process launcher failures +10:08 +2150: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves a failed version probe result +10:08 +2151: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator reports not found for a genuinely missing command +10:08 +2152: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates descendant processes when a command times out +10:10 +2153: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: timeout covers descendants that outlive the direct child and hold stdio +10:11 +2154: loading /home/albert/busystack/busymark/test/src/git/git_widget_test.dart +10:12 +2154: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: hunk range text hides raw unified diff markers +10:12 +2155: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes are grouped correctly +10:13 +2156: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file checkboxes select files for commit +10:13 +2157: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: a path with staged and unstaged changes appears in both groups +10:14 +2158: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AD path shows staged addition and unstaged deletion without open action +10:14 +2159: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: staged rename preserves both paths and workspace scope +10:14 +2160: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: rename paths follow the selected Git status column +10:14 +2161: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit panel reports staged count and unsaved editor state +10:14 +2162: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message uses the grouped multiline form surface +10:14 +2163: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft is a secondary button immediately before Commit +10:15 +2164: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft replaces text, trims it, and moves the cursor +10:15 +2165: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history requires an active Markdown file +10:15 +2166: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file action menu does not contain commit selection actions +10:15 +2167: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untracked file menu uses an explicit delete action +10:15 +2168: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: unsupported untracked files remain stageable but cannot open +10:15 +2169: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit section colors files by Git status +10:16 +2170: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes view commit panel commits staged files with message +10:16 +2171: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit remains disabled without staged files +10:16 +2172: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: multiline commit message is retained and committed verbatim +10:16 +2173: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: failed commit preserves the commit message +10:16 +2174: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: committing disables actions and retains text until success +10:16 +2175: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message clears when repository or workspace changes +10:16 +2176: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: conflict group is visible +10:17 +2177: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: Git unavailable empty state is shown +10:17 +2178: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untrusted workspace shows repository trust prompt +10:17 +2179: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view shows no repository sync strip when clean +10:17 +2180: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not show branch dropdown +10:17 +2181: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not describe branch sync state +10:17 +2182: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history keeps comparison controls out of the sidebar +10:17 +2183: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history file rows show selected file diff +10:17 +2184: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history reset requires an explicit reset mode +10:17 +2185: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: dirty editor banner appears in diff viewer +10:17 +2186: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff hides duplicate file header but keeps open action +10:17 +2187: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action requires an explicit working-tree target +10:17 +2188: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action uses the explicit current path +10:17 +2189: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff keeps rename paths visible +10:17 +2190: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer renders patch rows with shared source view +10:18 +2191: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff can hide hunk headers and file action +10:18 +2192: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source uses full file snapshot when available +10:18 +2193: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: deleted diff shows the complete removed file snapshot +10:18 +2194: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer scrolls to the first source change on open +10:18 +2195: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source rows use configured editor font size +10:18 +2196: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff context lines show old and new number columns +10:18 +2197: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff line numbers use source gutter geometry +10:18 +2198: loading /home/albert/busystack/busymark/test/src/git/git_controller_test.dart +10:19 +2198: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: diff open target follows the current working-tree context +10:19 +2199: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: refreshes after workspace attach +10:20 +2200: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: does not expose repository Git for a single Markdown file +10:20 +2201: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust-required gateway does not inspect workspace before trust +10:20 +2202: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clearing trust immediately revokes repository access +10:20 +2203: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: status failure after trust retains the detected repository +10:20 +2204: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust is scoped to the attached workspace +10:20 +2205: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: Git executes with the canonical path that was trusted +10:20 +2206: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stage and unstage update state +10:20 +2207: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: loads only the selected change comparison and reconciles after stage +10:20 +2208: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: routes untracked selections to the untracked comparison +10:20 +2209: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: staged rename comparison preserves the original path +10:20 +2210: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: rollback forwards every validated rename path +10:20 +2211: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reactivates an open change comparison tab +10:20 +2212: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks empty message +10:20 +2213: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks when no files are staged +10:20 +2214: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: configures author identity through the active repository +10:20 +2215: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: AI staged-diff fingerprint rejects obsolete commit context +10:20 +2216: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: branch switch requires clean BusyMark editor state +10:20 +2217: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the active editor has unsaved content +10:20 +2218: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the current file is staged +10:20 +2219: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore protects a repository-relative file against the repository root +10:20 +2220: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset uses the selected commit and mode +10:20 +2221: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset is blocked by unsaved editor content +10:20 +2222: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: fetch refreshes repository status +10:20 +2223: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reports Git unavailable state +10:20 +2224: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stores operation failure state +10:20 +2225: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: exposes conflict state +10:20 +2226: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clears previous workspace Git state immediately on attach +10:20 +2227: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale refresh results after workspace switch +10:20 +2228: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: cancels set-upstream push when the workspace changes during remote lookup +10:20 +2229: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale history after a workspace switch +10:20 +2230: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: history tab reloads project history after workspace switch +10:20 +2231: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: current file history scopes selected commit details to the file +10:20 +2232: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file history switches between commit and working-tree comparisons +10:20 +2233: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history loads selected commit details without a file scope +10:20 +2234: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project commit details display the first changed file by default +10:20 +2235: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: selected commit file opens a project commit diff tab +10:20 +2236: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: closing a commit diff file tab activates the neighboring tab +10:20 +2237: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: deactivating a diff file keeps open diff tabs +10:20 +2238: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file and project history paginate and retain separate selections +10:21 +2239: loading /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart +10:21 +2239: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: Enter submits Git identity and preserves global scope +10:23 +2240: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: failed commit saves identity and retries the same commit +10:24 +2241: loading /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart +10:24 +2241: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses added file +10:24 +2242: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses deleted file +10:24 +2243: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses modified file with line numbers +10:24 +2244: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses renamed file +10:24 +2245: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted UTF-8 paths emitted by Git +10:24 +2246: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted rename metadata emitted by Git +10:24 +2247: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses binary file marker +10:24 +2248: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses multiple hunks +10:24 +2249: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: keeps no newline marker as header line +10:24 +2250: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: tolerates unknown diff header lines +10:25 +2251: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart +10:27 +2251: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export failure dialog exposes actionable detail +10:27 +2252: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export eligibility is limited to active regular Markdown +10:28 +2253: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: workspace PDF export accepts a Writerside module instance +10:28 +2254: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: atomic PDF publication never replaces without confirmation +10:28 +2255: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: service rejects compiler output that is not a PDF +10:28 +2256: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler locator prefers the explicit development override +10:28 +2257: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler cancellation force-stops an unresponsive process +10:29 +2258: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: asset staging accepts passive SVG and rejects external content +10:29 +2259: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: Linux packaging pins and installs the bundled Typst compiler +10:29 +2260: loading /home/albert/busystack/busymark/test/src/source_search_test.dart +10:29 +2260: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex uses Unicode code points and diagnoses zero-length matches +10:29 +2261: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace-style bounded matching stops after the sentinel match +10:29 +2262: /home/albert/busystack/busymark/test/src/source_search_test.dart: search worker terminates a running backtracking expression +10:29 +2263: /home/albert/busystack/busymark/test/src/source_search_test.dart: plain search finds case-insensitive matches by default +10:29 +2264: /home/albert/busystack/busymark/test/src/source_search_test.dart: case-sensitive and whole-word options constrain matches +10:29 +2265: /home/albert/busystack/busymark/test/src/source_search_test.dart: whole-word boundaries recognize Unicode letters and marks +10:29 +2266: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex search and invalid regex are safe +10:29 +2267: /home/albert/busystack/busymark/test/src/source_search_test.dart: navigation tracks current index and wraps +10:29 +2268: /home/albert/busystack/busymark/test/src/source_search_test.dart: matches inside folded content are marked hidden and revealable +10:29 +2269: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace search groups authoring content by file +10:29 +2270: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker cancels stale requests +10:29 +2271: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker bounds transferred high-match results +10:29 +2272: loading /home/albert/busystack/busymark/test/src/source_commands_test.dart +10:31 +2272: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab inserts spaces +10:31 +2273: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab indents selected lines without replacing their text +10:31 +2274: /home/albert/busystack/busymark/test/src/source_commands_test.dart: indent and outdent selected lines +10:31 +2275: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter continues unordered ordered task and blockquote lines +10:31 +2276: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter exits empty list item +10:31 +2277: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts for nested source lines +10:31 +2278: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts beneath each source parent +10:31 +2279: /home/albert/busystack/busymark/test/src/source_commands_test.dart: inline commands toggle bold italic code and links +10:31 +2280: /home/albert/busystack/busymark/test/src/source_commands_test.dart: code fence and image insertion keep source-specific placeholders +10:31 +2281: /home/albert/busystack/busymark/test/src/source_commands_test.dart: block insertion accepts localized default content +10:31 +2282: loading /home/albert/busystack/busymark/test/src/source_highlighter_test.dart +10:33 +2282: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: source highlighting bounds high-match span composition +10:34 +2283: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter colors editor syntax +10:34 +2284: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter formats fenced code +10:35 +2285: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter tracks dynamic fence delimiters +10:35 +2286: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter does not open on indented code +10:35 +2287: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: xml source highlighter colors tags attributes and strings +10:35 +2288: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: plain source highlighter keeps normal editor text color +10:35 +2289: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: controller can keep editable text transparent for custom render +10:35 +2290: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: transparent editing layout matches rendered Markdown layout +10:35 +2291: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions project body lines out of editable text +10:35 +2292: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: rendered folded regions hide collapsed header text +10:35 +2293: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions collapse measured editor height +10:35 +2294: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown editor keeps syntax markers visible while styling content +10:35 +2295: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown tracks dynamic fence delimiters +10:35 +2296: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges nested emphasis inside links +10:35 +2297: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps inline code inside list items +10:35 +2298: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges bold and italic nesting +10:35 +2299: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges links inside blockquotes +10:35 +2300: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps emphasis inside table cells +10:35 +2301: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter recognizes math without damaging code +10:36 +2302: loading /home/albert/busystack/busymark/test/src/html_export_options_test.dart +10:36 +2302: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: TOC and numbering use the semantic hierarchy and preserve anchor IDs +10:38 +2303: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.light emits complete color variables, responsive width and metadata +10:38 +2304: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.dark emits complete color variables, responsive width and metadata +10:38 +2305: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.automatic emits complete color variables, responsive width and metadata +10:38 +2306: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: custom CSS follows generated rules and is captured before processing +10:38 +2307: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF CSS hashes the text seen by the HTML parser +10:38 +2308: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF custom and built-in CSS apply in Chromium +10:45 +2309: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF CSS hashes the text seen by the HTML parser +10:45 +2310: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF custom and built-in CSS apply in Chromium +10:47 +2311: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR CSS hashes the text seen by the HTML parser +10:47 +2312: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR custom and built-in CSS apply in Chromium +10:50 +2313: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: single-file attachments retain download names and reject source data URLs +10:50 +2314: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CSS rejects unsafe URLs, imports, HTML, unreadable and oversized files +10:50 +2315: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: repeated embedded assets are bounded before publication and keep old output +10:50 +2316: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.singleFile packages validated assets without source paths or fetching +10:50 +2317: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.assetsDirectory packages validated assets without source paths or fetching +10:50 +2318: loading /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart +10:53 +2318: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: navigation glyphs resolve for both reading directions +10:53 +2319: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: editing glyphs resolve for both reading directions +10:53 +2320: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git branch glyph does not mirror with reading direction +10:53 +2321: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git action glyphs have native menu equivalents +10:53 +2322: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Arabic and Persian font fallbacks are available in the snap +10:53 +2323: loading /home/albert/busystack/busymark/test/src/source_comparison_test.dart +10:54 +2323: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: keeps separated edits as exact separate changes +10:54 +2324: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: handles repeated lines without losing exact offsets +10:54 +2325: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: refines Unicode intraline ranges on UTF-16 boundaries +10:54 +2326: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: distinguishes whitespace, final newline, empty, and XML changes +10:54 +2327: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: labels an unanchored expensive comparison as simplified +10:54 +2328: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: version identity detects stale comparison inputs +10:54 +2329: loading /home/albert/busystack/busymark/test/src/writerside_project_test.dart +10:57 +2329: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers modules, indexes symbols, and resolves origin references +10:57 +2330: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under build +10:57 +2331: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under a hidden directory +10:57 +2332: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: module discovery hard-excludes VCS metadata directories +10:57 +2333: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic ownership is project-wide and prefers the nested module +10:57 +2334: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace promotes a parent directory to a multi-module project +10:58 +2335: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic symbols cannot be renamed independently of their files +10:58 +2336: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace module and instance selection changes active context +10:58 +2337: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse overlays indexed symbols and preserves unrelated diagnostics +10:58 +2338: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of variables updates completion and resolution without reopening +10:58 +2339: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of an instance tree updates active project context +10:58 +2340: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: BusyMark matches the official builder semantic snapshot for the fixture +10:58 +2341: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: conformance fixture preserves source and resolves semantic content +10:58 +2342: loading /home/albert/busystack/busymark/test/src/math_renderer_test.dart +10:59 +2342: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: renders multiple expressions in one batch and isolates failure +11:00 +2343: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: coalesces a large page, caches successes, and rebases local IDs +11:00 +2344: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: deduplicates identical formulas pending in the same batch +11:00 +2345: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: discards an obsolete block revision +11:00 +2346: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: cancels WebKit work after a sole request is superseded +11:00 +2347: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: maps timeout and unavailable hosts to local math failures +11:00 +2348: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rejects oversized input before invoking WebKit +11:00 +2349: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: extracts baseline style and preserves vector-safe MathJax SVG +11:00 +2350: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: resolves currentColor without flattening explicit SVG colors +11:00 +2351: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rebases wide MathJax coordinates before secure normalization +11:00 +2352: loading /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart +11:04 +2352: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: stages vector/raster assets, maps OpenAPI, and preserves failed source +11:04 +2353: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: enforces the export block count without failing the document +11:04 +2354: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: loads a Writerside referenced diagram before PDF rendering +11:04 +2355: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: static OpenAPI export contains selectable reference sections +11:04 +2356: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: Typst exports generated vector/raster assets and falls back on failure +11:04 +2357: loading /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart +11:05 +2357: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: parses every GTK 3 decoration token in physical order +11:05 +2358: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: ignores unknown controls and actions safely +11:05 +2359: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: loads preferences and delegates the narrowly scoped lower action +11:05 +2360: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: window preference values have stable equality +11:05 +2361: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: null decoration layout uses the documented GTK 3 default +11:05 +2362: loading /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart +11:08 +2362: /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart: release smoke report path requires an explicit nonempty argument +11:08 +2363: loading /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart +11:12 +2363: /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart: spelling release smoke requires an explicit guarded report path +11:12 +2364: loading /home/albert/busystack/busymark/test/src/system_accent_test.dart +11:14 +2364: /home/albert/busystack/busymark/test/src/system_accent_test.dart: uses the native Yaru orange accent as the offline fallback +11:14 +2365: /home/albert/busystack/busymark/test/src/system_accent_test.dart: keeps exact RGB portal accent color values authoritative +11:14 +2366: /home/albert/busystack/busymark/test/src/system_accent_test.dart: maps Ubuntu accent names when RGB portal value is unavailable +11:14 +2367: /home/albert/busystack/busymark/test/src/system_accent_test.dart: falls back to RGB when the Ubuntu accent is unavailable +11:14 +2368: /home/albert/busystack/busymark/test/src/system_accent_test.dart: Yaru accent wins over a different generic portal RGB +11:14 +2369: /home/albert/busystack/busymark/test/src/system_accent_test.dart: a Yaru accent signal remains authoritative over generic RGB +11:14 +2370: /home/albert/busystack/busymark/test/src/system_accent_test.dart: an unavailable named accent releases the current generic RGB +11:14 +2371: /home/albert/busystack/busymark/test/src/system_accent_test.dart: portal subscribes before both reads and retains changes during reads +11:14 +2372: /home/albert/busystack/busymark/test/src/system_accent_test.dart: missing portal keys, malformed signals, cancellation and resubscription +11:14 +2373: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic portal initialization cannot overwrite a newer generic change +11:14 +2374: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=true; unavailability selects current portal +11:14 +2375: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=false; unavailability selects current portal +11:14 +2376: /home/albert/busystack/busymark/test/src/system_accent_test.dart: source errors remain independent and healthy native updates continue +11:14 +2377: /home/albert/busystack/busymark/test/src/system_accent_test.dart: startup changes supersede native snapshots, including unavailable changes +11:14 +2378: /home/albert/busystack/busymark/test/src/system_accent_test.dart: disposal completes pending startup and cancels each owned source once +11:14 +2379: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid GTK releases startup while portal reads stay pending +11:14 +2380: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic signal cannot resolve startup before pending named read +11:15 +2381: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid named portal releases startup without pending RGB +11:15 +2382: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending GTK blocks ready portal until GTK arrives before deadline +11:15 +2383: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on unavailable +11:15 +2384: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on failure +11:15 +2385: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on deadline +11:15 +2386: /home/albert/busystack/busymark/test/src/system_accent_test.dart: all silent sources time out to orange and late sources recover +11:15 +2387: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending initialization disposal cancels timers and portal session once +11:15 +2388: loading /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart +11:17 +2388: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=false section order and native links +11:18 +2389: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=true section order and native links +11:18 +2390: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=false section order and native links +11:19 +2391: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=true section order and native links +11:19 +2392: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=false section order and native links +11:19 +2393: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=true section order and native links +11:19 +2394: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=false section order and native links +11:19 +2395: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=true section order and native links +11:19 +2396: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: multipage native outline ends before any body paragraphs; links and page references stay correct +11:20 +2397: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=bottomCenter +11:20 +2398: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=off +11:20 +2399: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=bottomCenter +11:20 +2400: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=off +11:20 +2401: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif portrait margins +11:21 +2402: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif landscape margins +11:21 +2403: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif portrait margins +11:21 +2404: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif landscape margins +11:21 +2405: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: request defaults come from source metadata and native outline title stays localized +11:22 +2406: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: an oversized cover fails clearly and leaves the existing PDF untouched +11:22 +2407: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in sansSerif +11:22 +2408: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in serif +11:22 +2409: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+a0 fails without replacing the PDF +11:23 +2410: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+2060 fails without replacing the PDF +11:23 +2411: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within A4 cover bounds or fails without replacing the PDF +11:23 +2412: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within A4 cover bounds or fails without replacing the PDF +11:23 +2413: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within A4 cover bounds or fails without replacing the PDF +11:24 +2414: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within A4 cover bounds or fails without replacing the PDF +11:24 +2415: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within A4 cover bounds or fails without replacing the PDF +11:24 +2416: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within A4 cover bounds or fails without replacing the PDF +11:24 +2417: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within narrow custom cover bounds or fails without replacing the PDF +11:24 +2418: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within narrow custom cover bounds or fails without replacing the PDF +11:25 +2419: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within narrow custom cover bounds or fails without replacing the PDF +11:25 +2420: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within narrow custom cover bounds or fails without replacing the PDF +11:25 +2421: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within narrow custom cover bounds or fails without replacing the PDF +11:25 +2422: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within narrow custom cover bounds or fails without replacing the PDF +11:25 +2423: loading /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart +11:27 +2423: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: workspace spelling UI has no obsolete floating or Material chooser +11:27 +2424: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Writerside nested TOC and comment retain rich spelling through correction +11:32 +2425: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich image review preserves authored source through undo and redo +11:34 +2426: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested code image beside math through undo and redo +11:37 +2427: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested address image beside math through undo and redo +11:39 +2428: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Ctrl+N typing paints live spelling targets and corrects with undo +11:41 +2429: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: confirmed spelling underline survives continued typing +11:42 +2430: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo café + +wrld + +11:45 +2431: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo +world + +wrld + +11:47 +2432: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: | helo café | +| --- | +| hello | + +wrld + +11:50 +2433: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in editor +11:51 +2434: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in split +11:51 +2435: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: language-required state uses compact document status instead of a banner +11:53 +2436: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: general Markdown fixture finishes automatic rich spelling +11:58 +2437: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in editor +11:59 +2438: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in source +12:00 +2439: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new rich document checks spelling after choosing its language +12:01 +2440: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new source document checks spelling after choosing its language +12:02 +2441: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in editor mode +12:03 +2442: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in source mode +12:04 +2443: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in preview mode +12:04 +2444: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in split mode +12:05 +2445: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: spelling-off status remains an actionable language control +12:07 +2446: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: status initializes the chooser when automatic spelling is off +12:08 +2447: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: banner installs the required dictionary and then conceals +12:10 +2448: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed banner installation keeps the unresolved state +12:11 +2449: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: routine checking does not create persistent editor chrome +12:11 +2450: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic spelling failure is visible in the compact banner +12:12 +2451: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic incomplete projection is visible in the compact banner +12:13 +2452: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: native spelling submenu applies immediate language choices +12:14 +2453: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: cancelling document dictionary install preserves override +12:15 +2454: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: document language changes only after dictionary installation +12:17 +2455: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed document dictionary install preserves override +12:18 +2456: loading /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart +12:20 +2456: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: native fragment preserves formatting and structured blocks through JSON +12:21 +2457: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: single rich paragraphs preserve list descendants through source +12:21 +2458: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: fragment rejects invalid versions, ranges, kinds, and excessive nesting +12:21 +2459: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: relative links are rebased for another document +12:21 +2460: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: inline images retain their source media path between projects +12:21 +2461: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Writerside structure survives the fragment and insertion +12:21 +2462: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: styled table-cell insertion preserves emphasis and table structure +12:21 +2463: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard service serializes writes and reads the latest result +12:21 +2464: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard HTML carries headings, emphasis, tasks, tables, and code +12:21 +2465: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: external HTML blockquotes survive Editor serialization +12:21 +2466: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard fragment serializes its selected structure as Markdown +12:21 +2467: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: HTML normalization preserves supported CSS and checkbox state safely +12:21 +2468: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=false) +12:23 +2469: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=true) +12:23 +2470: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix < survives Enter, source reload and label edit +12:23 +2471: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix *< survives Enter, source reload and label edit +12:24 +2472: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix * survives Enter, source reload and label edit +12:24 +2473: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: © +12:24 +2474: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: & +12:24 +2475: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: &* +12:25 +2476: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=false) +12:25 +2477: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=true) +12:25 +2478: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard pasted URL retains live link coverage through split, Backspace and suffix formatting +12:25 +2479: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard fresh Editor restores system clipboard formatting and undo +12:26 +2480: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor pastes a web layout table as a complete document +12:26 +2481: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete heading list and code blocks retain structure at every paragraph position +12:27 +2482: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete blocks in list items preserve descendants and undo tree +12:29 +2483: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard single rich paragraph field replacement preserves every list subtree +12:30 +2484: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste keeps the committed caret and typing position +12:30 +2485: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard rich paste in math fields uses source coordinates +12:31 +2486: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste returns the committed block caret +12:31 +2487: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste preserves list descendants through Undo and Redo +12:31 +2488: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste persists intentional whitespace through history +12:31 +2489: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document paste preserves whitespace and heading replacement scope +12:32 +2490: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste restores table-cell focus and committed caret +12:32 +2491: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history multi-paragraph paste focuses the committed last paragraph +12:32 +2492: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copy all does not duplicate nested list children +12:33 +2493: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document copy preserves a structured blockquote +12:33 +2494: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard right-click opens the menu for a whole-document selection +12:33 +2495: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image-only clipboard context menu offers only normal Paste +12:33 +2496: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Copy Plain Text strips formatting in another Editor +12:34 +2497: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard document selection menu can copy plain text +12:34 +2498: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard partial inline copy keeps formatting inside another paragraph +12:34 +2499: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut transfers formatting before deleting the selection +12:34 +2500: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard malformed native fragment falls back to HTML +12:35 +2501: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML-only clipboard imports into a fresh Editor +12:35 +2502: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML clipboard plain paste inserts only its text +12:35 +2503: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard retained external HTML preserves structure on history paste +12:35 +2504: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard current HTML-only and malformed HTML use ordinary importer fallbacks +12:35 +2505: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard external image history retains the bytes ingested before its dialog +12:39 +2506: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history panel path paste has one editor-owned retention write +12:42 +2507: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copied local video can be pasted from history in Editor +12:43 +2508: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image paste cancellation is terminal and cleans new assets +12:47 +2509: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image picker alternatives stay provisional until acceptance +12:59 +2510: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image finalization failure preserves the inserted reference and file +13:00 +2511: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard native and history image filesystem failures are handled outcomes +13:00 +2512: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain history paste replaces a document selection ending at a non-field block +13:00 +2513: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image history follows table and multi-block destinations +13:03 +2514: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Ctrl+Shift+V pastes only interoperable plain text +13:03 +2515: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste never probes or ingests an existing image path +13:04 +2516: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard failed clipboard write leaves cut selection intact +13:04 +2517: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste does not edit a destination changed during the read +13:04 +2518: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor paste preserves composition before and during reads +13:04 +2519: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard table-cell paste shortcut is consumed during composition +13:04 +2520: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard composition starting during image ingestion invalidates and cleans paste +13:05 +2521: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut does not delete a selection changed during the write +13:05 +2522: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste is cancelled when the destination Editor is replaced +13:05 +2523: loading /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart +13:07 +2523: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed light surface palette +13:08 +2524: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed dark surface palette +13:08 +2525: loading /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart +13:11 +2525: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title edit preserves the resolved topic owner across modules +13:11 +2526: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ") +13:12 +2527: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ") +13:12 +2528: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ') +13:12 +2529: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ') +13:12 +2530: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ") +13:12 +2531: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ") +13:12 +2532: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ') +13:13 +2533: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ') +13:13 +2534: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: normalized title identity still rejects changed content and raw matching stays exact +13:13 +2535: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects missing attribute ranges before publication +13:13 +2536: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects corrupt attribute ranges before publication +13:13 +2537: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title publication rejects duplicate attributes in resulting XML +13:13 +2538: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (") +13:13 +2539: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (') +13:13 +2540: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: instance title save, reopen, unchanged OK, and edit keep one escaping layer +13:15 +2541: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: single-quoted Markdown override reopens decoded and edits without touching example +13:15 +2542: loading /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart +13:17 +2542: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: production provider consumes an older GTK accent without portals +13:17 +2543: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: non-Linux never creates platform listeners +13:17 +2544: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: missing native snapshot uses portal, then native events regain priority +13:17 +2545: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: GTK with silent portals +13:18 +2546: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: named with silent RGB +13:18 +2547: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK before deadline +13:18 +2548: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK at deadline +13:18 +2549: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes valid +13:18 +2550: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes unavailable +13:18 +2551: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named at deadline +13:18 +2552: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: all silent at deadline +13:18 +2553: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: application scope teardown cancels unresolved startup deadlines +13:18 +2554: loading /home/albert/busystack/busymark/test/src/markdown_parser_test.dart +13:19 +2554: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parsed formatting boundaries +13:19 +2555: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping locates partially consumed delimiter runs +13:19 +2556: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping retains escaped collapsed references +13:19 +2557: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping keeps original autolink semantics +13:19 +2558: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping preserves supported autolink variants +13:19 +2559: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parser case folding for references +13:19 +2560: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: ordinary reference parsing retains pinned sharp-S folding behavior +13:19 +2561: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: invalid email-like text cannot orphan a later mapped link +13:19 +2562: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects logical content to container source +13:19 +2563: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: positioned block mapping accepts a trailing empty logical line +13:19 +2564: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping ignores title and code-span source breaks +13:19 +2565: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping keeps each hard-break occurrence range +13:19 +2566: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping matches standalone HTML break layout +13:19 +2567: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects HTML break layout through containers +13:19 +2568: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: HTML break layout mapping preserves soft breaks and literal code +13:19 +2569: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts title, outline, links, images, and code fences +13:20 +2570: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts front matter title +13:20 +2571: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside Markdown title comes from H1, not front matter +13:20 +2572: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside front matter title does not satisfy missing H1 +13:20 +2573: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: parseAsync handles documents above the background threshold +13:20 +2574: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates Unicode heading anchors for supported languages +13:20 +2575: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deduplicates generated heading IDs in source order +13:20 +2576: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates heading IDs from semantic inline text +13:20 +2577: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: canonicalizes valid ATX and setext heading variants +13:20 +2578: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: retains Writerside title when complex list source needs fallback +13:20 +2579: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unresolved links, missing images, and missing alt text +13:20 +2580: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not validate schemed URIs as local references +13:20 +2581: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: resolves home-relative local image references +13:20 +2582: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: derives diagnostic links and images from Markdown AST semantics +13:20 +2583: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: normal Markdown image diagnostics stay within the workspace root +13:20 +2584: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local reference diagnostics allow absolute images but reject other escapes +13:20 +2585: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: cross-linked Markdown anchor validation does not recurse forever +13:20 +2586: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation stays inside the workspace root +13:20 +2587: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read unsupported anchor targets +13:20 +2588: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read oversized Markdown targets +13:20 +2589: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unsafe raw HTML +13:20 +2590: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe raw HTML does not produce unsafe diagnostics +13:20 +2591: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Markdown headings inside paired raw HTML are not outline headings +13:20 +2592: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML tags produce unsafe diagnostics +13:20 +2593: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML attributes produce unsafe diagnostics +13:20 +2594: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML URLs produce unsafe diagnostics +13:20 +2595: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deeply nested raw HTML produces unsafe diagnostic +13:20 +2596: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe HTML tags do not become Writerside XML blocks +13:20 +2597: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts Writerside Markdown XML blocks and variables +13:20 +2598: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: emits deterministic Markdown accessibility diagnostics +13:20 +2599: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not report populated table headers as empty +13:20 +2600: loading /home/albert/busystack/busymark/test/src/feedback_submission_test.dart +13:22 +2600: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator requires category and enforces subject and message bounds +13:22 +2601: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts inclusive subject and message boundaries +13:22 +2602: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects oversized fields and invalid optional email +13:22 +2603: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator counts Unicode code points at subject and message boundaries +13:22 +2604: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts practical valid email syntax +13:22 +2605: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects malformed email syntax and length boundaries +13:22 +2606: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes required metadata and omits unapproved details +13:22 +2607: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes only explicitly approved technical details +13:22 +2608: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission uses every declared category wire value +13:22 +2609: loading /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart +13:24 +2609: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter owns application chrome; native bridge carries no split geometry +13:24 +2610: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Workspace, Welcome and Settings use the shared full-height frame +13:24 +2611: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native clipboard, menus, Writerside media and rendering hosts remain registered +13:24 +2612: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Linux desktop identity uses the standard Snap launcher mapping +13:24 +2613: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: strict Snap keeps the GTK SVG loader ABI-aligned with GNOME +13:24 +2614: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder stages bundled Git tools +13:24 +2615: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local repack replaces clean-snap font links with new bundle fonts +13:24 +2616: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: confined dependency checks reject missing and wrong resolutions +13:25 +2617: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap reuses verified platform libraries and retains private tools +13:25 +2618: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder uses the project Flutter toolchain +13:25 +2619: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snapcraft pins the same Flutter release as the project +13:25 +2620: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder keeps compiler output off the system tmpfs +13:25 +2621: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter content menus use native GTK popup menu semantics +13:25 +2622: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native content menus clean up direct GTK popup sessions +13:25 +2623: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap packaging hooks consolidate resources and keep required fixes +13:25 +2624: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native GTK theme follows brightness without replacing a valid user theme +13:25 +2625: loading /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart +13:26 +2625: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: valid native fragment wins over HTML and text +13:26 +2626: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: malformed native fragment falls through to valid HTML +13:26 +2627: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: unusable HTML falls through to source and plain text +13:26 +2628: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: HTML-only blockquotes are usable through descendant content +13:26 +2629: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: mixed external HTML preserves every block for Editor and Markdown Source +13:26 +2630: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode uses only interoperable text +13:26 +2631: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode rejects source-only and image-only payloads +13:26 +2632: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: whitespace text is valid and empty text is unavailable +13:26 +2633: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: explicit image is first in normal mode +13:26 +2634: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: Editor and Source use their required textual fallback order +13:26 +2635: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: structured source serialization accepts the destination mode +13:26 +2636: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: native inline serialization preserves whitespace without a newline +13:26 +2637: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: table-cell fragment serialization escapes pipes and flattens lines +13:26 +2638: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: local image path detection is safe and rejects altered URI meaning +13:26 +2639: loading /home/albert/busystack/busymark/test/src/uri_utils_test.dart +13:28 +2639: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: external launch policy is an explicit safe-list +13:28 +2640: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: scheme detection remains broader than launch policy +13:28 +2641: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: remote resources only allow http and https +13:28 +2642: loading /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart +13:30 +2642: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger aggregates locally by month and provider +13:30 +2643: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger starts a clean aggregate in a new month +13:30 +2644: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: malformed ledger data is treated as empty, not surfaced +13:30 +2645: loading /home/albert/busystack/busymark/test/src/busymark_design_test.dart +13:31 +2645: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch suppresses state halos and preserves focus borders +13:32 +2646: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in dark +13:32 +2647: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in dark +13:32 +2648: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in light +13:32 +2649: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in light +13:32 +2650: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: disabled switch preserves inherited disabled styling +13:32 +2651: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch row owns its control and activates exactly once +13:32 +2652: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch preserves Yaru drag activation +13:32 +2653: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: radio suppresses state halos and preserves focus borders +13:33 +2654: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in dark +13:33 +2655: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in dark +13:33 +2656: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in light +13:33 +2657: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in light +13:33 +2658: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: informational dialog keeps the close control at the right edge +13:33 +2659: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: Split Preview stays fluid without copying Source-only chrome +13:33 +2660: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: document frame centers wide content and honors physical safe edges +13:33 +2661: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: toolbar clearance is applied only to the toolbar edge +13:33 +2662: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar header and list compose the shared vertical gap +13:33 +2663: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header controls delegate geometry and elevation to Yaru +13:33 +2664: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dark header menu delegates its tooltip to IconButton +13:33 +2665: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: settings dropdowns use the framework tooltip +13:33 +2666: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: desktop tooltips use one explicit natural-width geometry +13:34 +2667: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: popup menu rows show shortcuts without redundant hover tooltips +13:34 +2668: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup sends shortcuts and separators to GTK and maps selection +13:34 +2669: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: colored popup icons stay on the native menu path +13:34 +2670: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup preserves asynchronous menu loading +13:34 +2671: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic theme retains Yaru geometry, typography, and interaction +13:34 +2672: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: accent controls use the native Yaru foreground and fill roles +13:34 +2673: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic surfaces use one modern neutral Linux role ladder +13:34 +2674: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: equal-choice segmented selection stays neutral +13:34 +2675: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped cards use native boxed-list depth and roles +13:34 +2676: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped list headings use the native semantic heading style +13:34 +2677: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner uses semantic surfaces in light and dark +13:34 +2678: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner animates its mounted layout height +13:34 +2679: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner reveal honors reduced motion +13:34 +2680: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog grouped cards resolve the contextual native layer +13:34 +2681: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native dark hover role +13:34 +2682: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native light hover role +13:34 +2683: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped row subtitles use semantic native text roles +13:34 +2684: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog roles and popup selectors use real themed buttons +13:34 +2685: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in dark +13:35 +2686: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in light +13:36 +2687: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog actions wrap at narrow localized text widths +13:36 +2688: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: action rows use semantic destructive foreground in light and dark themes +13:36 +2689: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: shared text-entry group delegates fields to the framework +13:36 +2690: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry uses the native row-owned form surface +13:36 +2691: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry forwards readOnly without disabling input +13:36 +2692: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic standard icon button delegates to FilledButton.icon +13:36 +2693: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar surface owns one directional semantic boundary +13:36 +2694: loading /home/albert/busystack/busymark/test/src/source_document_test.dart +13:37 +2694: /home/albert/busystack/busymark/test/src/source_document_test.dart: empty document mapping is stable +13:37 +2695: /home/albert/busystack/busymark/test/src/source_document_test.dart: no-fold mapping preserves offsets and ranges +13:37 +2696: /home/albert/busystack/busymark/test/src/source_document_test.dart: single fold projects visible text and maps offsets +13:37 +2697: /home/albert/busystack/busymark/test/src/source_document_test.dart: fold-boundary selection mapping preserves direction, not coverage +13:37 +2698: /home/albert/busystack/busymark/test/src/source_document_test.dart: multiple adjacent and overlapping ranges normalize safely +13:37 +2699: /home/albert/busystack/busymark/test/src/source_document_test.dart: full and visible ranges report hidden clipping +13:37 +2700: /home/albert/busystack/busymark/test/src/source_document_test.dart: CRLF line endings keep line starts and projection correct +13:37 +2701: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits before and after folds preserve unrelated folds +13:37 +2702: /home/albert/busystack/busymark/test/src/source_document_test.dart: full editing values preserve composing through folded projection +13:37 +2703: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits incrementally retain unaffected line entries +13:37 +2704: /home/albert/busystack/busymark/test/src/source_document_test.dart: incremental line indexes match full indexes across line-break edits +13:37 +2705: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edit intersecting a fold unfolds only affected region +13:37 +2706: /home/albert/busystack/busymark/test/src/source_document_test.dart: collapsed-boundary insertion preserves hidden folded content +13:37 +2707: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible insertions before and after a fold keep hidden text +13:37 +2708: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible deletions near a fold keep hidden text +13:37 +2709: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible replacement spanning a fold replaces the hidden range +13:37 +2710: loading /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart +13:38 +2710: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: uses each heading level effective text size for inline math +13:40 +2711: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: custom typography and four margins control actual math jobs +13:40 +2712: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: prepares inline and display math as deterministic vector assets +13:40 +2713: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: footnote inline and display math retain surrounding semantics +13:40 +2714: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst compiles footnote math through the math renderer +13:40 +2715: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst keeps MathJax SVG inline and exports failed math visibly +13:40 +2716: loading /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart +13:41 +2716: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: tabs synchronize and support arrow, Home and End keys +13:42 +2717: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table sorting is numeric and excludes disabled columns +13:42 +2718: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Markdown table keeps empty columns equal width +13:42 +2719: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Writerside table preserves declared column width +13:42 +2720: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table spans preserve geometry and sticky header position +13:42 +2721: loading /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart +13:43 +2721: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: records balance a two-line source preview with visible metadata +13:44 +2722: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: large records use a short preview and do not create a tooltip +13:45 +2723: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: actions menu is right of search and owns refresh and clear +13:45 +2724: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: keyboard navigation keeps the selected history entry visible +13:46 +2725: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: Delete edits the focused search without removing history +13:46 +2726: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: unsupported payload disables paste for the destination +13:46 +2727: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: double-clicking a shared history row pastes the item +13:46 +2728: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain-text paste remains enabled when rich paste is unavailable +13:46 +2729: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: source-only payload has no plain-text action +13:46 +2730: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: image exposes plain paste only with real text +13:47 +2731: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed insertion reports visible feedback +13:47 +2732: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: cancelled insertion is terminal without an error toast +13:47 +2733: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: current external HTML is transient until panel insertion and remains reusable +13:47 +2734: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed current-item paste is not retained and plain paste stays explicit +13:47 +2735: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: successful external paste retains after the panel is disposed +13:47 +2736: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain source and Editor copies stay text and de-duplicate +13:47 +2737: loading /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart +13:49 +2737: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: loads version and build number from package metadata +13:49 +2738: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: uses zero when package build metadata is absent +13:49 +2739: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: rejects missing package version metadata +13:49 +2740: loading /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart +13:49 +2740: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates XML child topic and registers it under parent TOC node +13:50 +2741: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates Unicode Markdown and XML topic filenames +13:50 +2742: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source without a root ID before publication +13:50 +2743: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source whose root ID differs from filename +13:50 +2744: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: accepts custom XML source whose root ID matches filename +13:50 +2745: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: requires a reference for every non-root placement +13:50 +2746: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a child under an exact topic-less TOC node path +13:50 +2747: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: first real topic under an empty group becomes the home page +13:50 +2748: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: exact TOC path disambiguates sibling insertion +13:50 +2749: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects an exact TOC path whose expected node has moved +13:50 +2750: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: invalid exact TOC path does not fall back to topic reference +13:50 +2751: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects duplicate topic IDs before writing +13:50 +2752: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a missing nested topics directory +13:50 +2753: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects a symlinked topics directory without writing outside +13:50 +2754: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: does not overwrite a concurrently changed tree or leave an orphan topic +13:50 +2755: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rollback preserves a created topic changed by another writer +13:50 +2756: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: atomic tree publication preserves its POSIX mode +13:50 +2757: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID with a different extension +13:50 +2758: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in a different directory +13:51 +2759: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in another configured root +13:51 +2760: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation allows an unrelated concurrent topic ID +13:51 +2761: loading /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart +13:51 +2761: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.rtl +13:55 +2762: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.ltr +13:57 +2763: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation uses native master-detail controls and filters +13:58 +2764: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation opens both template editor entry points +14:02 +2765: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: catalog failure keeps BusyMark status and retry controls +14:03 +2766: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files editor stages new content, cancels and persists on OK +14:06 +2767: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: source surface exposes its label and focus boundary +14:07 +2768: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: New toolbar command stages an editable draft and Cancel drops it +14:09 +2769: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: custom XML template cannot publish a mismatching root ID +14:11 +2770: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: save-as-template appears under Custom; edit, duplicate and delete preserve cancel +14:13 +2771: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: stale settings reject OK and retain draft for recovery +14:14 +2772: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Internal reset is staged, cancellable, and publishable +14:17 +2773: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: true) +14:19 +2774: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: false) +14:20 +2775: loading /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart +14:21 +2775: /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart: tree exact reveal unfolds and line movement is one undoable full-source edit +14:22 +2776: loading /home/albert/busystack/busymark/test/src/math_parser_test.dart +14:23 +2776: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses several dollar formulas as semantic inline math +14:23 +2777: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses the GitHub dollar-backtick form without delimiters +14:23 +2778: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses single-line and multiline display math as blocks +14:23 +2779: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math scanner stays aligned around every neighboring block kind +14:23 +2780: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math and Writerside tex fences follow document compatibility +14:23 +2781: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math is inline and remains source-preserving +14:23 +2782: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math decodes XML entities but preserves source +14:23 +2783: /home/albert/busystack/busymark/test/src/math_parser_test.dart: escaped dollars, code, currency, empty and malformed forms stay text +14:23 +2784: /home/albert/busystack/busymark/test/src/math_parser_test.dart: inline math survives list, blockquote, and table structure +14:23 +2785: /home/albert/busystack/busymark/test/src/math_parser_test.dart: CRLF math input and every original form round-trip untouched +14:23 +2786: /home/albert/busystack/busymark/test/src/math_parser_test.dart: preview builder creates first-class inline and display math nodes +14:23 +2787: loading /home/albert/busystack/busymark/test/src/busymark_document_test.dart +14:26 +2787: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hit testing includes shared document surface borders +14:26 +2788: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: document image width resolution is bounded consistently +14:26 +2789: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: package markdown AST imports into BusyDocument core blocks +14:26 +2790: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: linked remote image paragraphs import as editable image blocks +14:26 +2791: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer emits Markdown source for edited semantic blocks +14:26 +2792: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unchanged raw blocks +14:26 +2793: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves safe raw HTML source byte for byte +14:26 +2794: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unsafe raw HTML source while preview remains raw +14:26 +2795: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer patches dirty blocks without canonicalizing unchanged source +14:26 +2796: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve unrelated block instances +14:26 +2797: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve source-only reference definitions +14:26 +2798: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: source-only definitions survive scanner and AST count mismatches +14:26 +2799: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preserved reference definitions still resolve after an edit +14:26 +2800: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve GFM footnote definitions +14:26 +2801: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: containers with nested definitions are source-protected +14:26 +2802: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: scanner mismatches conservatively protect nested definitions +14:26 +2803: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: opaque source IDs cannot collide with semantic heading IDs +14:26 +2804: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full list serialization preserves reference definitions +14:26 +2805: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full serialization omits generated footnote output +14:26 +2806: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: invalid reference-like prose remains a modeled block +14:26 +2807: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large inline-link documents do not create source-only blocks +14:26 +2808: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large adjacent definition sets stay distinct and preserved +14:27 +2809: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: destructive selections reject read-only source endpoints +14:27 +2810: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: list indentation cannot attach content to a protected item +14:27 +2811: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested list text edit updates Markdown source +14:27 +2812: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered list edits preserve nested children +14:27 +2813: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered task edits preserve marker and nested children +14:27 +2814: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested blockquote edit preserves surrounding source +14:27 +2815: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cross-block deletion prunes an emptied blockquote +14:27 +2816: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested inline edit updates Markdown source +14:27 +2817: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested block removal updates Markdown source +14:27 +2818: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser includes setext headings in heading metadata +14:27 +2819: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: live document outline follows top-level generated heading order +14:27 +2820: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: duplicate anchors retain distinct editor block identities +14:27 +2821: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preview and WYSIWYG use the same semantic document +14:27 +2822: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edit updates Markdown source +14:27 +2823: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG empty documents have one editable paragraph +14:27 +2824: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor accepts typing in an empty document +14:28 +2825: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG heading navigation skips across large documents +14:32 +2826: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders a blockquote around its editable text +14:32 +2827: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG uses one quote frame for multiple quote paragraphs +14:32 +2828: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG quote frame focuses its first editable child +14:32 +2829: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inherits RTL indentation inside a blockquote +14:32 +2830: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG keeps a generated leaf blockquote editable +14:33 +2831: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hides a definition-only source and preserves it +14:33 +2832: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor undo and redo restore document edits +14:33 +2833: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor replaces document when active file changes +14:33 +2834: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor applies heading keyboard shortcuts +14:34 +2835: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Ctrl+Shift+- inserts a thematic break +14:34 +2836: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Tab nests eligible list items and Shift+Tab lifts them +14:34 +2837: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG arrow keys move focus between paragraphs +14:34 +2838: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Arrow crosses paragraph boundaries +14:35 +2839: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Shift+Arrow extends into the next paragraph +14:35 +2840: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated arrow keys keep moving between paragraphs +14:35 +2841: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down selection continues character by character in the next paragraph +14:35 +2842: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated Shift+Arrow extends one selection +14:36 +2843: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG horizontal selection continues vertically into the next paragraph +14:36 +2844: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse Shift+Up selection continues left in the previous paragraph +14:36 +2845: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ignores redundant source blank lines +14:36 +2846: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: typing replaces a WYSIWYG selection across paragraphs +14:36 +2847: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: deleting a selected paragraph boundary merges paragraphs +14:36 +2848: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down follows visual lines before paragraphs +14:36 +2849: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Arrow selects whole grapheme clusters +14:36 +2850: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection can copy multiple paragraphs +14:36 +2851: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG click elsewhere clears previous block selection +14:37 +2852: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift click selects text across paragraphs +14:37 +2853: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag extends selection across paragraphs +14:37 +2854: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag from heading end hides native selection +14:37 +2855: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag updates selection on pointer up +14:37 +2856: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag aligns wrapped trailing word highlight +14:38 +2857: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+X cuts block selection +14:38 +2858: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves inline formatting +14:38 +2859: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves whole block formatting +14:38 +2860: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection preserves partial paragraph boundaries +14:38 +2861: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar bold applies to selected paragraphs +14:38 +2862: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar toggle stays vertically aligned when collapsed +14:39 +2863: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar reserves its document edge +14:39 +2864: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: restoring the first block does not duplicate the Editor top inset +14:40 +2865: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: vertical WYSIWYG toolbar is bounded and extends from its edge +14:40 +2866: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar corners remain physical in LTR and RTL +14:40 +2867: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar context menu changes placement and direction when shown or hidden +14:41 +2868: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar list applies to selected paragraphs +14:41 +2869: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders safe HTML blocks and edits raw source +14:41 +2870: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar inserts an HTML block +14:41 +2871: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after the active file changes +14:42 +2872: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after document generation changes +14:42 +2873: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs stop app-level tab navigation shortcuts +14:42 +2874: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs activate the native headerbar barrier +14:42 +2875: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves existing inline formatting +14:42 +2876: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Backspace at block start merges with previous block +14:42 +2877: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+A twice selects all text for deletion +14:42 +2878: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG select-all deletion preserves source-protected definitions +14:42 +2879: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline ranges do not duplicate formatted text +14:42 +2880: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands serialize bold italic and links +14:42 +2881: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG serializes italic nested at the end of bold text +14:42 +2882: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve inline ranges where possible +14:42 +2883: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve empty-alt inline images +14:42 +2884: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG edits preserve escaped literal punctuation semantics +14:42 +2885: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog submits with Enter +14:43 +2886: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when caret is inside it +14:43 +2887: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when its text is selected +14:43 +2888: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline command toggles selected mark without dropping links +14:43 +2889: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline code command serializes selected text +14:43 +2890: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer chooses inline code delimiters that preserve backticks +14:43 +2891: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link title backslashes use standards-safe character references +14:43 +2892: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: inline serialization distinguishes every hard-break run boundary +14:43 +2893: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link titles round-trip decoded punctuation and line endings +14:43 +2894: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table link titles retain multiline values without physical rows +14:43 +2895: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves fenced code delimiters and trailing whitespace +14:43 +2896: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser preserves meaningful trailing fenced-code whitespace +14:43 +2897: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser closes dynamic code fences only with a matching delimiter +14:43 +2898: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser does not treat indented code as a fenced block +14:43 +2899: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands preserve existing sibling formatting +14:43 +2900: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands apply to multiple selected blocks +14:43 +2901: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands apply to multiple selected blocks +14:43 +2902: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG image command serializes a real image block +14:43 +2903: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders Writerside images by basename +14:43 +2904: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders absolute local image paths +14:43 +2905: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders linked remote image blocks +14:43 +2906: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in commonMark +14:43 +2907: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in writersideMarkdown +14:43 +2908: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in gfm +14:43 +2909: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter uses parser URL boundaries without parsing other syntax +14:43 +2910: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter excludes code and keeps explicit equal-label links explicit +14:43 +2911: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: bare URL destinations follow edits and splits while explicit destinations stay authored +14:43 +2912: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: rejoining only extends existing bare URLs and preserves code and explicit links +14:43 +2913: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: structural URL slices update derived destinations and link editing authors an explicit destination +14:43 +2914: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter splits one block into separate Markdown paragraphs +14:43 +2915: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores an empty paragraph represented only by blanks +14:43 +2916: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores trailing blank lines +14:43 +2917: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG does not create blocks for redundant source whitespace +14:43 +2918: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in unordered list creates next item then exits list +14:43 +2919: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in ordered list creates next numbered item +14:43 +2920: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG thematic break inserts after current block +14:43 +2921: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter key creates a new paragraph block +14:44 +2922: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter carries active inline style to next paragraph +14:44 +2923: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter at paragraph end preserves inner bold span +14:44 +2924: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG newline text edit preserves inner bold span +14:44 +2925: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text input newlines become Markdown paragraphs +14:44 +2926: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves an existing hard break +14:44 +2927: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: hard-break toolbar command retains focus and advances caret +14:44 +2928: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: formatting toolbar command retains editor focus and selection +14:44 +2929: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Shift+Enter retains focus and advances past the hard break +14:44 +2930: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line toolbar command round-trips and remains one focused edit +14:44 +2931: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor lazily builds large documents +14:45 +2932: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG task checkbox toggles directly when clicked +14:45 +2933: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands serialize headings and lists +14:45 +2934: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG extended toolbar commands serialize Markdown +14:45 +2935: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line command keeps repeated terminal markers off the text line +14:45 +2936: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table and code language commands serialize Markdown +14:45 +2937: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cell pipes round-trip without shifting columns +14:45 +2938: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table escaping protects pipes inside formatted cell content +14:45 +2939: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table code preserves a backslash immediately before a pipe +14:45 +2940: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table row and column commands serialize Markdown +14:45 +2941: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table dialog validates and synchronizes its size grid +14:46 +2942: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table alignment survives parsing, edits, and structural changes +14:46 +2943: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table column alignment command supports all Markdown alignments +14:46 +2944: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells apply Markdown column alignment +14:46 +2945: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells are formatted and editable +14:46 +2946: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table overlay menus survive structural rebuilds +14:47 +2947: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Tab travels through WYSIWYG table cells and extends the table +14:47 +2948: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG list indent outdent and task toggle commands serialize +14:47 +2949: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation starts a nested list at one +14:47 +2950: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation preserves a top-level start value +14:47 +2951: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation numbers multiple nested siblings +14:47 +2952: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered outdent continues the parent list numbering +14:47 +2953: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts an unordered item to a valid ordered marker +14:47 +2954: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts selected nested items at each list depth +14:47 +2955: loading /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart +14:47 +2955: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: single rich paragraph repairs independently surviving endpoints +14:47 +2956: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: table cells repair independently formatted selection endpoints +14:48 +2957: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion replaces only a heading own prefix at content start +14:48 +2958: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion removes complete ATX and Setext heading syntax +14:48 +2959: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion retains literal paragraph hashes +14:48 +2960: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: whole heading replacement removes every authored marker +14:48 +2961: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: heading insertion at middle and end preserves only the leading heading +14:48 +2962: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequence removes nested heading marker at content start +14:48 +2963: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: external HTML blockquotes remain structured in Source +14:48 +2964: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: HTML break layout stays behind a caret after the semantic break +14:48 +2965: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: caret immediately before an HTML break keeps the break after paste +14:48 +2966: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection crossing an HTML break preserves both outside slices +14:48 +2967: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete inline HTML survives rich link insertion as one fragment +14:48 +2968: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native rich trailing space survives inherited HTML insertion +14:48 +2969: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native incoming edge whitespace survives inherited HTML styles +14:48 +2970: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection replacement retains native whitespace and link titles +14:48 +2971: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: multiple native inline runs retain text styles links and spaces +14:48 +2972: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: rich insertion maps collapsed HTML whitespace as content +14:48 +2973: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through supported raw HTML styles +14:48 +2974: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through a supported raw HTML link +14:48 +2975: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: supported content corpus always plans a rich insertion +14:48 +2976: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: repeated mapped siblings avoid fallback and preserve final paste +14:49 +2977: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete blocks split and preserve enclosing inline contexts +14:49 +2978: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph-only block sequences match Editor merge semantics +14:49 +2979: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block paste preserves independent formatted selection boundaries +14:49 +2980: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured paste spans partial first and last destination blocks +14:49 +2981: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequences retain destination block and container paths +14:49 +2982: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paste output is valid input for a second paste at returned caret +14:49 +2983: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: CRLF blockquote projection retains its authored prefixes +14:49 +2984: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured complete blocks generate only CRLF boundaries +14:49 +2985: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured inline hard breaks use destination CRLF +14:49 +2986: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: mapped and generated structured breaks retain CRLF and caret width +14:49 +2987: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: protected Source context explicitly permits textual fallback +14:49 +2988: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: syntax-only positions explicitly permit textual fallback +14:49 +2989: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: unmappable destination links stop rather than permit fallback +14:49 +2990: loading /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart +14:52 +2990: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: rejects a superseded render even when its engine finishes last +14:52 +2991: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: retains the last successful render after invalid source +14:52 +2992: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: limits concurrency and gives export work queue priority +14:52 +2993: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: reuses a successful content-addressed cache entry +14:52 +2994: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: validates concurrency and returns a typed unavailable result +14:52 +2995: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: bounds last-successful render retention with LRU eviction +14:52 +2996: loading /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart +14:52 +2996: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: source navigation distinguishes repeated references on one line +14:53 +2997: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: explicit synchronization follows installed breadth-first topic matching +14:53 +2998: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edits preserve other instances, content and occurrence +14:53 +2999: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edit changes H1 and preserves front matter title +14:53 +3000: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title round trip preserves ampersands and entity spellings +14:53 +3001: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: unchanged inherited values do not add overrides +14:53 +3002: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: XML title edits escape attributes and expand self-closing root +14:53 +3003: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: clearing overrides removes only the selected instance and occurrence +14:53 +3004: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: before-drop preserves complete subtrees and returns all moved paths +14:53 +3005: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: grouping uses source order and rejects cross-parent selections +14:53 +3006: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: line moves retain CRLF, caret, reversed selection and boundaries +14:53 +3007: loading /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart +14:55 +3007: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: section includes descendants and stops at the next sibling +14:55 +3008: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: move up and down swap complete sibling subtrees +14:55 +3009: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: promote and demote preserve descendant hierarchy +14:55 +3010: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: demote is unavailable when a descendant is already H6 +14:55 +3011: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: level changes preserve and convert Setext headings +14:55 +3012: loading /home/albert/busystack/busymark/test/src/visualization_models_test.dart +14:57 +3012: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization fence classification recognizes canonical names and aliases without changing spelling +14:57 +3013: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: preserves dependency diagnostic source locations +14:57 +3014: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys canonicalizes options and dependency order +14:57 +3015: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates on engine, source, theme, profile, option, and dependency +14:57 +3016: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates entries produced by the previous render pipeline +14:57 +3017: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache round-trips SVG, raster, and structured OpenAPI successes +14:58 +3018: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache does not persist failures and repairs malformed entries +14:58 +3019: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache derives the XDG cache path without changing the environment +14:58 +3020: loading /home/albert/busystack/busymark/test/src/writerside_video_test.dart +14:59 +3020: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside Markdown models video and preserves its exact source +14:59 +3021: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video remains blocked raw HTML outside Writerside Markdown +14:59 +3022: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: multiline Writerside video attributes remain one semantic block +14:59 +3023: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video markup inside an ordinary code fence is not interpreted +14:59 +3024: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside topic parser exposes video attributes +14:59 +3025: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside .topic preview creates a first-class video block +14:59 +3026: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: safe video resolver accepts documented hosts and local media +14:59 +3027: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside module reports invalid and incomplete video sources +14:59 +3028: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: local poster defaults to matching PNG and can be overridden +14:59 +3029: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: hosted video posters resolve from trusted provider sources +14:59 +3030: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Vimeo poster metadata cannot point images to another host +14:59 +3031: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: PDF export carries a first-class linked video poster +14:59 +3032: loading /home/albert/busystack/busymark/test/src/app_router_test.dart +15:03 +3032: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings return targets are explicit and validated +15:03 +3033: /home/albert/busystack/busymark/test/src/app_router_test.dart: opening Settings preserves a validated Settings origin +15:03 +3034: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings page routes are explicit and validated +15:03 +3035: /home/albert/busystack/busymark/test/src/app_router_test.dart: Settings opened from Welcome returns to Welcome with a stale workspace +15:06 +3036: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again +15:07 +3037: loading /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart +15:07 +3037: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: mixed Markdown protects fenced code and CDATA while preserving spans +15:08 +3038: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: lazy defaults respect caller arguments and percent escaping +15:08 +3039: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: empty links use the target title for the selected instance +15:08 +3040: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional chapter content and links follow the selected instance +15:08 +3041: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: malformed markup and unresolved reuse stay visible with diagnostics +15:08 +3042: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: Markdown IDs include whole chapters and retain mixed-content spans +15:08 +3043: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional globals and include arguments override snippet defaults +15:08 +3044: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: links resolve labels, separate anchors and nullable availability +15:08 +3045: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: included code uses its source topic and unsaved source overrides +15:08 +3046: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: summaries stay metadata and starting pages suppress outside content +15:08 +3047: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: configured shortcuts, glossary and binary resources have visible references +15:08 +3048: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: line and symbol selectors reject invalid selections +15:08 +3049: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart +15:09 +3049: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace +15:09 +3050: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret +15:09 +3051: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string +15:09 +3052: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls +15:09 +3053: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback +15:09 +3054: loading /home/albert/busystack/busymark/test/src/status_semantics_test.dart +15:12 +3054: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: status colors stay semantic across accents and brightness +15:13 +3055: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: workspace messages use semantic status roles +15:13 +3056: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: Git failures use window-level toasts +15:13 +3057: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: successful Git operations use window-level toasts +15:13 +3058: loading /home/albert/busystack/busymark/test/src/workspace_service_test.dart +15:14 +3058: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a single Markdown file workspace +15:14 +3059: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: resolves an unindexed sibling document within the workspace +15:14 +3060: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Markdown file from a file URI path +15:14 +3061: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a generic Markdown folder workspace +15:15 +3062: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: canonicalizes a workspace opened through a directory symlink +15:15 +3063: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects a workspace root replaced by a symlink after opening +15:15 +3064: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Writerside module workspace +15:15 +3065: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: untitled Markdown in Writerside reparses, previews, and outlines as CommonMark +15:15 +3066: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: genuine Writerside Markdown topic keeps Writerside semantics +15:15 +3067: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates and opens a Writerside starter project +15:15 +3068: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: reparses and previews Writerside Markdown without generic link validation +15:15 +3069: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a Writerside Markdown topic and registers it in the TOC +15:16 +3070: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: imports Markdown topics into the selected instance and opens the first +15:16 +3071: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Markdown import reloads stale UI inventory before planning +15:16 +3072: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation revalidates module IDs after its candidate is written +15:16 +3073: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a topic in the explicitly selected instance and TOC node +15:16 +3074: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: unparsed topic basename reserves its module-wide topic ID for creation +15:16 +3075: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under build reserves its module-wide ID for creation +15:16 +3076: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under a hidden directory reserves its module-wide ID for creation +15:16 +3077: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: duplicate topic cannot reuse an unparsed topic basename +15:16 +3078: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: template source cannot reuse an unparsed topic basename +15:16 +3079: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation refuses incomplete topic discovery +15:16 +3080: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects topic creation when the configured instance tree is outside the module +15:16 +3081: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename is stale when a new module is discovered +15:16 +3082: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic rename planning rejects incomplete project module discovery +15:16 +3083: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename rejects incomplete module discovery on apply +15:16 +3084: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: project module discovery reports directory listing failure +15:16 +3085: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: ordinary directory creation does not stale a prepared rename +15:16 +3086: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: normalizes portal-style document paths as filesystem paths +15:16 +3087: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText writes content and returns the saved file snapshot +15:17 +3088: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: file change detection ignores timestamp-only changes +15:17 +3089: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText writes a missing file and returns its snapshot +15:17 +3090: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText refuses an existing file without changing it +15:17 +3091: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not replace a file arriving before publication +15:17 +3092: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not write inside a directory arriving before publication +15:17 +3093: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveTextReplacingPath replaces a final symlink without following it +15:17 +3094: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement cannot overwrite a post-validation writer +15:17 +3095: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement validates a displaced relative symlink +15:17 +3096: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement detects a changed relative symlink target +15:17 +3097: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation directory +15:17 +3098: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation FIFO without reading +15:17 +3099: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText follows file symlinks and preserves target permissions +15:17 +3100: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: createFile rejects a directory reached through an intermediate symlink +15:17 +3101: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: renameEntity rejects a source reached through an intermediate symlink +15:17 +3102: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: moveEntity rejects a target reached through an intermediate symlink +15:17 +3103: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity rejects a directory reached through an intermediate symlink +15:17 +3104: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity removes a final symlink without deleting its target +15:17 +3105: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: generic deletion rejects topics and containing folders in a non-active module +15:17 +3106: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: an unparsed topic cannot bypass generic deletion +15:17 +3107: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: missing nested mutation paths keep domain-specific errors +15:17 +3108: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince treats deleted files as changed +15:17 +3109: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince detects content changes with unchanged modified time +15:17 +3110: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists all content except version-control metadata +15:17 +3111: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists unsupported legacy Markdown extensions +15:17 +3112: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: limited folder scan prefers shallow siblings before deep subtree +15:17 +3113: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: invalid UTF-8 Markdown does not fail the whole workspace +15:17 +3114: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Markdown files are listed but not parsed automatically +15:17 +3115: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Writerside topics are listed but not parsed automatically +15:17 +3116: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Writerside topic loading honors the document limit +15:17 +3117: loading /home/albert/busystack/busymark/test/src/ai_policy_test.dart +15:20 +3117: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: AI editing is enabled only for Markdown document kinds +15:20 +3118: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation accepts a prose-only replacement in the complete document +15:20 +3119: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation rejects swapped URL associations even when the URL set is equal +15:20 +3120: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation full-document validation catches edits made inside protected syntax +15:20 +3121: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects front matter, references, footnotes, tables, HTML and IDs +15:20 +3122: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects list and heading structure +15:20 +3123: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects implicit heading identifiers from prose rewrites +15:20 +3124: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: the prompt contains only the context explicitly selected by the user +15:20 +3125: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: instructions and direct prompts have explicit token budgets +15:20 +3126: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: token estimates are independent from UTF-8 transport bytes +15:20 +3127: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: generated-output byte limits are independent from provider tokens +15:20 +3128: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context selection target and block context remain independent +15:20 +3129: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context insert-after-block target can send no document context +15:20 +3130: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current block can use complete-document context +15:20 +3131: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current section includes descendants but not its sibling +15:20 +3132: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context complete-document target is explicit +15:20 +3133: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context partial protected selections are rejected instead of expanded +15:20 +3134: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context validation and application use the exact block insertion +15:20 +3135: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: commit proposals require a bounded subject and blank separator +15:20 +3136: loading /home/albert/busystack/busymark/test/src/linux_window_host_test.dart +15:22 +3136: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: dialogs cover application header actions while system Close uses the guarded service +15:23 +3137: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: icon uses its physical GTK side and contributes to the inset +unhandled element ; Picture key: Svg loader +15:23 +3138: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fallback application menu is absent while titlebar menu still works +15:23 +3139: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: window-state stream survives unrelated host rebuilds +15:23 +3140: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: normal maximize decoration has matching behavior +15:23 +3141: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: maximized maximize decoration has matching behavior +15:24 +3142: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen maximize decoration has matching behavior +15:24 +3143: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen titlebar double-click still restores +15:24 +3144: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: the document title itself handles titlebar double-click +15:24 +3145: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: live GTK layout removal retains each decoration identity +15:24 +3146: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=false) +15:24 +3147: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=true) +15:24 +3148: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK reduced motion settles window-control hover immediately +15:24 +3149: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion settles an in-flight window icon morph +15:24 +3150: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabled motion retains the normal active-window fade +15:24 +3151: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: Flutter reduced motion settles the host fade immediately +15:24 +3152: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK animation policy reaches the actual host overlay +15:24 +3153: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion stops a fade and later fades can run +15:24 +3154: loading /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart +15:25 +3154: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: source editor overlays use shared semantic surfaces +15:25 +3155: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: WYSIWYG content actions and table menus use shared controls +15:25 +3156: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: problems dialog delegates its list surface to shared grouping +15:25 +3157: loading /home/albert/busystack/busymark/test/src/writerside_document_test.dart +15:26 +3157: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=false) +15:26 +3158: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=true) +15:26 +3159: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside heading aliases prefer exact IDs and reject ambiguity +15:26 +3160: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: malformed semantic XML is still reported after a scanner mismatch +15:26 +3161: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: lossless XML nodes preserve exact duplicate ranges and generic markup +15:26 +3162: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside Markdown round-trips native and generic markup +15:26 +3163: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified semantic XML reconstructs equivalent escaped markup +15:26 +3164: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified conformance topic retains qualified namespace names +15:26 +3165: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver applies includes, filters, groups, variables, and cycles +15:27 +3166: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver negates the complete instance list +15:27 +3167: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML list type is inherited by every list item +15:27 +3168: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML lists retain numeric ordinals and their container identity +15:27 +3169: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: repeated list includes have distinct occurrence IDs and original source spans +15:27 +3170: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: workspace exposes resolver errors with exact source spans +15:28 +3171: loading /home/albert/busystack/busymark/test/src/writerside_api_test.dart +15:29 +3171: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: platform-backed API model remains on the host path and transfers complete semantics +15:29 +3172: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API tags select operations through the existing OpenAPI parser +15:29 +3173: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API child selectors inherit the specification and preserve sample overrides +15:29 +3174: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API schemas resolve references and honor nesting depth +15:29 +3175: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: schema and webhook elements are visible +15:30 +3176: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: invalid API selection has a visible fallback and source diagnostic +15:30 +3177: loading /home/albert/busystack/busymark/test/src/local_history_store_test.dart +15:30 +3177: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=false) +15:31 +3178: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=true) +15:32 +3179: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: real process contention waits and captures without a warning +15:37 +3180: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: lock timeout closes acquisition and queues recover without late capture +15:42 +3181: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: non-contention acquisition failure is prompt and closes the handle +15:42 +3182: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: body contention-shaped error never replays the transaction +15:42 +3183: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: independent production writers preserve both identities and revisions +15:49 +3184: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation cannot mutate process replacements +15:54 +3185: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation rejects an intervening process checkpoint +15:58 +3186: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=false) +15:58 +3187: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=true) +15:58 +3188: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists full revisions and stable document identity across restart +15:58 +3189: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists untitled first-save promotion without a new revision +15:58 +3190: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: untitled promotion refuses an already-owned destination path +15:58 +3191: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deleted paths never own promotion, lookup, or remap +15:58 +3192: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deduplicates only adjacent ordinary captures and preserves A-B-A +15:58 +3193: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: forced protective capture preserves an identical revision +15:58 +3194: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture identity makes a protective retry idempotent +15:58 +3195: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: idempotent capture stays complete after its lineage advances +15:58 +3196: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion retry accepts the same lineage after a later move +15:58 +3197: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: atomic path preflight accepts the same target already reconciled elsewhere +15:58 +3198: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clearing one identity does not poison another identity capture +15:59 +3199: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repairs a damaged index from intact independently checksummed records +15:59 +3200: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repair rejects a record associated with a different document +15:59 +3201: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: does not resurrect explicitly cleared revisions during repair +15:59 +3202: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rejects an unknown future index format without rewriting it +15:59 +3203: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention uses the injected capture time deterministically +15:59 +3204: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention is enforced when an idle store is reopened +15:59 +3205: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rename, directory move, delete, and per-document clearing retain lineage +15:59 +3206: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: ID-bound captures cannot implicitly move document paths +15:59 +3207: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: serializes concurrent captures without losing index entries +15:59 +3208: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: oversized capture cannot evict the previous revision +16:00 +3209: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: different paths with the same basename keep separate identities +16:00 +3210: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: an intentional empty revision after content is retained +16:00 +3211: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: missing and corrupt revision records do not damage intact entries +16:00 +3212: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: incomplete staging artifacts are never discovered as revisions +16:00 +3213: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: global clear tombstones prevent repair resurrection +16:00 +3214: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear All replay cannot erase post-clear history +16:00 +3215: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear Document replay cannot erase replacement history +16:00 +3216: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=false) +16:00 +3217: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=false) +16:01 +3218: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=true) +16:01 +3219: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=true) +16:01 +3220: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=false) +16:01 +3221: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=true) +16:01 +3222: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file capture rolls back cancellation during revision publication +16:01 +3223: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file dedup capture rolls back cancellation during index publication +16:01 +3224: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: multiple store instances coordinate concurrent index publication +16:01 +3225: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: storage permission failures surface without touching document data +16:01 +3226: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: path exclusions use injected Windows path semantics +16:01 +3227: loading /home/albert/busystack/busymark/test/src/web_render_host_test.dart +16:02 +3227: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends explicit request IDs and decodes a typed map response +16:02 +3228: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends a MathJax batch in one cancellable host request +16:02 +3229: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: scales the MathJax timeout for sequential batch conversion +16:02 +3230: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: applies the scaled timeout to a maximum accepted batch +16:02 +3231: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: cancels the matching native request and rejects a late success +16:02 +3232: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: times out and requests native cancellation +16:02 +3233: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: rejects an invalid native response shape +16:02 +3234: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: decodes OpenAPI references with source locations +16:02 +3235: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends PNG bytes to the native image clipboard +16:02 +3236: loading /home/albert/busystack/busymark/test/src/document_persistence_test.dart +16:04 +3236: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: file-backed edits update final-newline metadata +16:04 +3237: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session store keeps tab state and pending history identity without text +16:04 +3238: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session merge keys first-save promotions by durable operation owner +16:04 +3239: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery store distinguishes clean and unclean runs +16:05 +3240: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery keeps valid entries when another record is malformed +16:05 +3241: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery ownership keeps same buffer IDs isolated by process +16:05 +3242: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: restored dead-owner recovery is adopted and can be retired +16:06 +3243: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery state is written with private POSIX permissions +16:06 +3244: loading /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart +16:06 +3244: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: intrinsic width remeasures only edited source lines +16:07 +3245: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: large source width uses a bounded estimate +16:07 +3246: loading /home/albert/busystack/busymark/test/src/search_replace_service_test.dart +16:10 +3246: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: Unicode regex replacement preserves complete characters +16:10 +3247: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: zero-length replacement limitation survives worker transfer +16:11 +3248: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 4999 actual matches +16:11 +3249: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5000 actual matches +16:11 +3250: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5001 actual matches +16:11 +3251: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement cancels a running expensive regex +16:11 +3252: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace scope includes closed Writerside documents and ignores unrelated open files +16:11 +3253: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: previews and applies plain whole-word replacements +16:11 +3254: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: text replacement previews enforce their match limit +16:11 +3255: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker expands one accepted regex match +16:11 +3256: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker cancels stale plans +16:11 +3257: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: expands numbered and named regex capture groups +16:11 +3258: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: applies only selected preview matches +16:11 +3259: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace preview uses dirty buffers and writes closed files +16:11 +3260: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply skips stale dirty buffers +16:11 +3261: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: truncated workspace previews cannot be applied +16:11 +3262: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: stale later files abort before earlier files are changed +16:11 +3263: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: rollback preserves a concurrent edit and reports displaced content +16:11 +3264: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply revalidates open buffers after disk writes +16:11 +3265: loading /home/albert/busystack/busymark/test/src/export_options_editor_test.dart +16:15 +3265: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Escape closes Export before a control receives focus +16:16 +3266: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Export keeps breathing room below its final option +16:17 +3267: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown PDF loads confirmed settings and shares controls +16:18 +3268: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside PDF loads confirmed settings and shares controls +16:18 +3269: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown HTML loads confirmed settings and shares controls +16:18 +3270: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside HTML loads confirmed settings and shares controls +16:19 +3271: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: one Export modal switches between PDF and HTML +16:19 +3272: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: custom geometry controls, TOC enablement and invalid input at minimum size +16:19 +3273: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: cancelling settings does not confirm or persist edits +16:19 +3274: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: JSON settings store retains both format settings across controllers +16:20 +3275: loading /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart +16:20 +3275: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: existing-topic picker filters names and selects by keyboard +16:21 +3276: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: picker returns the supplied topic identity for duplicate names +16:22 +3277: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: Group keeps raw input and Enter-only acceptance +16:22 +3278: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: rename preserves validation and Preview/Refactor results +16:22 +3279: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.rtl +16:22 +3280: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.rtl +16:23 +3281: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.ltr +16:23 +3282: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.ltr +16:23 +3283: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart +16:24 +3283: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: Linux Writerside title and duplicate dialogs are GTK-owned +16:24 +3284: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: GTK Writerside contents follow application direction, filenames stay LTR +16:25 +3285: loading /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart +16:26 +3285: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw HTML preserves inherited and overridden block directions +16:26 +3286: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: preview model retains HTML direction for code and quotes +16:26 +3287: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML honors rtl, ltr, and auto directions +16:27 +3288: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: nested WYSIWYG blocks indent from the RTL start edge +16:28 +3289: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: English prose stays LTR in a Persian RTL UI and navigates LTR +16:28 +3290: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: Arabic prose stays RTL in an English UI and navigates RTL +16:28 +3291: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw Writerside technical blocks stay LTR with Arabic content +16:28 +3292: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered Arabic HTML without dir follows its content +16:28 +3293: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: WYSIWYG technical dialog inputs stay LTR in an RTL UI +16:30 +3294: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL horizontal arrows cross paragraph boundaries visually +16:30 +3295: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL Ctrl+Shift+Arrow extends word selection across paragraphs +16:30 +3296: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: code blocks stay LTR and use LTR boundary arrows in RTL UI +16:30 +3297: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML pre is LTR unless dir overrides it +16:31 +3298: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL prefix hit testing maps the text start at the right edge +16:31 +3299: loading /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart +16:33 +3299: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote source AI proposal applies with logical identity +16:35 +3300: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote WYSIWYG AI proposal applies with logical identity +16:36 +3301: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: document-only AI snapshot opens a usable configuration +16:36 +3302: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI configuration uses native rows without duplicate choices +16:37 +3303: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: Refine with AI sends the explicitly selected model +16:37 +3304: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI proposal uses an explicitly selected provider +16:37 +3305: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: provider chooser exposes only configured providers +16:37 +3306: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: configured local provider remains available when Gemini is default +16:37 +3307: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: fixed AI target cannot widen a sidebar selection +16:37 +3308: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: proposal Apply refuses stale external source content +16:38 +3309: loading /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart +16:38 +3309: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial prefix grows compatibly +16:38 +3310: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial becomes complete and clears marker +16:38 +3311: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations identical complete listings remain consistent +16:38 +3312: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations incompatible repeated listing rejects +16:38 +3313: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations known failed prefix recovers completely +16:38 +3314: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations failure without a known prefix cannot prove recovery +16:38 +3315: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations successful listing followed by failure rejects +16:38 +3316: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry replacement between complete reads rejects +16:38 +3317: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry removal between complete reads rejects +16:38 +3318: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter compatible scan keeps stronger proof +16:38 +3319: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete proof survives compatible limited rescan +16:38 +3320: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial rescan cannot erase a previous failure +16:38 +3321: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete recovery must retain failed-prefix entries +16:38 +3322: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter failed retry retains its consumed prefix +16:38 +3323: loading /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart +16:40 +3323: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: ingests workspace images with safe names and portable paths +16:40 +3324: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: reuses identical assets and resolves name collisions +16:40 +3325: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping identical publications keep the committed owner +16:40 +3326: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping different publications keep the committed owner +16:40 +3327: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect identical pending publications with equal filenames +16:47 +3328: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect different pending publications with equal filenames +16:53 +3329: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: failed publication releases only its own filesystem reservation +16:56 +3330: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: terminated provisional owner remains reserved across processes +16:59 +3331: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: rollback cannot delete an asset after its publication is committed +16:59 +3332: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: uses the configured Writerside images directory +16:59 +3333: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: restores retained Writerside video bytes without widening image paste +16:59 +3334: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: requires saving untitled documents and rejects non-images +16:59 +3335: loading /home/albert/busystack/busymark/test/src/ai_test.dart +17:02 +3335: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy allows literal loopback and localhost origins +17:02 +3336: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy rejects remote, credential-bearing, and path endpoints +17:02 +3337: /home/albert/busystack/busymark/test/src/ai_test.dart: prompt serializes untrusted document data as a JSON field +17:02 +3338: /home/albert/busystack/busymark/test/src/ai_test.dart: plain-text edit prompts never request Markdown +17:02 +3339: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard accepts prose edits that retain protected Markdown +17:02 +3340: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard rejects changed links and fenced code +17:02 +3341: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard protects fences with longer valid closing markers +17:02 +3342: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder handles UTF-8 and JSON split across arbitrary byte chunks +17:02 +3343: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder rejects malformed records and oversized responses +17:02 +3344: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider lists models and streams chat content and usage +17:02 +3345: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider stops at completion and ignores trailing stream records +17:02 +3346: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider uses the documented low thinking level for GPT-OSS +17:02 +3347: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider bounds the model-list response while reading it +17:02 +3348: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider rejects redirects without following them +17:02 +3349: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider does not list or run Ollama cloud models +17:02 +3350: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider cancellation interrupts a silent response stream +17:02 +3351: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator cancels the older request for the same target +17:02 +3352: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator rejects a provider stream without completion +17:02 +3353: loading /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart +17:04 +3353: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: formatting a URL suffix retains the complete live link and round trips +17:04 +3354: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter URL recognition preserves formatting, literal syntax, anchors, breaks and descendants +17:04 +3355: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter recognition preserves formatting within a URL and does not enter math fields +17:04 +3356: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: text whitespace preservation metadata follows pasted whitespace +17:04 +3357: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: paste-only whitespace keeps list descendants exactly once +17:04 +3358: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: plain whitespace paste keeps list descendants through Undo and Redo +17:07 +3359: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: replacement scope distinguishes a heading field from its document block +17:07 +3360: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete blocks inserted in list content retain every descendant +17:07 +3361: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: generic block commands cannot convert tables or preserved raw blocks +17:07 +3362: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: nested list-to-blockquote conversion preserves parent text +17:07 +3363: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: every admonition style preserves nested list parent text +17:07 +3364: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves the current list item descendants +17:07 +3365: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves descendants of an empty list item +17:07 +3366: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace rejects a merge that cannot represent descendants +17:07 +3367: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete clipboard snapshots reconstruct a table transactionally +17:07 +3368: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: same-editor cut and paste preserves complete tables +17:07 +3369: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits normalize every newline form before updating +17:07 +3370: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits preserve block-marker prefixes as literal text +17:07 +3371: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary table cell edits preserve formatting and links +17:07 +3372: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary cell edits retain toolbar-applied formatting +17:07 +3373: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve empty-alt inline images +17:07 +3374: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve existing hard line breaks +17:07 +3375: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing preserves a literal bang before an inline link +17:07 +3376: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing escapes block syntax at the start of a list item +17:07 +3377: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table field edits preserve rendered formatting and links +17:08 +3378: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields reject multiline input and reconcile the model +17:08 +3379: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields preserve block-marker-prefixed cell values +17:08 +3380: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source ranges select repeated text and table cells +17:08 +3381: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source navigation rebases spans after earlier edits +17:09 +3382: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: source navigation expands collapsed Writerside ancestors +17:09 +3383: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: outline navigation expands a collapsed heading ancestor +17:09 +3384: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cells own shortcuts, formatting, and restored selection +17:09 +3385: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external undo groups continuous typing but not transactions +17:09 +3386: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external history coalesces editor typing without local copies +17:09 +3387: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: undo controllers are disposed when blocks disappear +17:09 +3388: loading /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart +17:11 +3388: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: SSE decoder handles split UTF-8 frames and multiline data +17:11 +3389: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: OpenAI Responses adapter is stateless and maps text and usage +17:11 +3390: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini Interactions adapter uses stable v1 and text deltas only +17:11 +3391: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider never includes a secret in surfaced failures +17:11 +3392: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects malformed usage records +17:11 +3393: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini rejects an incomplete status update +17:11 +3394: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects EOF without a typed completion event +17:12 +3395: loading /home/albert/busystack/busymark/test/src/modal_barrier_test.dart +17:15 +3395: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.light modal barriers use the semantic shade role +17:16 +3396: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.dark modal barriers use the semantic shade role +17:17 +3397: loading /home/albert/busystack/busymark/test/src/native_menu_service_test.dart +17:17 +3397: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: show serializes native menu presentation and returns its selection +17:17 +3398: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: dismiss is scoped to the native menu session +17:17 +3399: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: missing native host reports unavailable for a themed fallback +17:17 +3400: loading /home/albert/busystack/busymark/test/src/workspace_controller_test.dart +17:20 +3400: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside tab preparation loads once and current activation loads zero +17:21 +3401: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: configuration preview does not reparse in a derived loop and closing all buffers relinquishes overlays +17:21 +3402: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all Writerside tabs completes override relinquishment +17:21 +3403: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closed-tab reconciliation rejects obsolete disk models and keeps tabs closed +17:21 +3404: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: active +17:21 +3405: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: inactive +17:21 +3406: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: closure +17:21 +3407: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: workspace +17:21 +3408: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: external +17:22 +3409: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: disposal +17:22 +3410: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: rapid Writerside activation keeps derived work bounded and publishes the latest request +17:23 +3411: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered creation notifications are acknowledged, external same-size writes remain visible +17:23 +3412: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: a failed mutation cannot acknowledge its write notifications +17:24 +3413: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: quarantine and duplicate delayed deletion events acknowledge incorporated absence +17:25 +3414: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: an external same-size write during acknowledgement invalidates the consumed fingerprint +17:25 +3415: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: anchor +17:26 +3416: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: disk +17:26 +3417: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered TOC removal notifications require no subsequent module processing +17:27 +3418: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=false +17:27 +3419: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=true +17:27 +3420: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=false +17:27 +3421: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=true +17:27 +3422: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=false +17:27 +3423: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=true +17:28 +3424: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects inactive edit after clean navigation +17:28 +3425: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects reopen after clean navigation +17:28 +3426: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects close all after clean navigation +17:28 +3427: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects dispose after clean navigation +17:28 +3428: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects disk input after clean navigation +17:28 +3429: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects inactive edit after clean navigation +17:29 +3430: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects reopen after clean navigation +17:29 +3431: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects close all after clean navigation +17:29 +3432: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects dispose after clean navigation +17:29 +3433: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects disk input after clean navigation +17:29 +3434: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects inactive edit after clean navigation +17:29 +3435: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects reopen after clean navigation +17:29 +3436: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects close all after clean navigation +17:30 +3437: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects dispose after clean navigation +17:30 +3438: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects disk input after clean navigation +17:30 +3439: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining resource discovery presents stable limited inputs +17:30 +3440: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects edit during verification +17:30 +3441: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects inactive edit during verification +17:30 +3442: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects workspace replacement during verification +17:31 +3443: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects same-project reopening during verification +17:31 +3444: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects edit during verification +17:31 +3445: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects inactive edit during verification +17:31 +3446: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects workspace replacement during verification +17:31 +3447: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects same-project reopening during verification +17:31 +3448: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects edit during verification +17:31 +3449: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects inactive edit during verification +17:32 +3450: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects workspace replacement during verification +17:32 +3451: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects same-project reopening during verification +17:32 +3452: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=false +17:32 +3453: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=true +17:32 +3454: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=false +17:32 +3455: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=true +17:32 +3456: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=false +17:33 +3457: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=true +17:33 +3458: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=false +17:33 +3459: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=true +17:33 +3460: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded inactive edit +17:33 +3461: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded configuration write +17:33 +3462: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction discovery refresh keeps the live selected instance through reconciliation +17:33 +3463: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=4 +17:34 +3464: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=2 +17:34 +3465: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome creation cannot overwrite an edit made during history flush +17:35 +3466: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: starting a Welcome workspace cannot discard a dirty buffer +17:35 +3467: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome replaces clean buffers but workspace New remains additive +17:35 +3468: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete closes the topic buffer, selects a survivor, and records history +17:35 +3469: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete journal removes the deleted tab after refresh failure restart +17:35 +3470: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC writes reject an inactive dirty tree without discarding either buffer +17:35 +3471: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC creation defers its monitor events until the new document is open +17:36 +3472: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown topic import opens its first topic in an editable buffer +17:36 +3473: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed Markdown import preserves the active document and workspace +17:36 +3474: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Validate publishes a valid table containing an escaped pipe +17:36 +3475: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation reports stale, busy and failed outcomes without publishing old results +17:36 +3476: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=false +17:36 +3477: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=true +17:36 +3478: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math callbacks from an older editor revision cannot republish errors +17:36 +3479: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown validation uses the unsaved linked tab snapshot +17:36 +3480: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=true +17:36 +3481: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=false +17:36 +3482: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside rename stages verified edits across unsaved tabs with undo +17:36 +3483: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened Markdown files by file path in recent workspaces +17:36 +3484: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened folders by folder path in recent workspaces +17:36 +3485: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace file operations refresh and preserve active moved files +17:36 +3486: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates an unsaved Markdown file without adding it to recent +17:36 +3487: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates CommonMark inside Writerside without replacing project or dirty topic +17:37 +3488: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: identical untitled buffers remain distinct by buffer id +17:37 +3489: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: delayed untitled preview cannot publish into another untitled tab +17:37 +3490: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files leave preview mode for editor mode +17:37 +3491: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files preserve non-preview view modes +17:37 +3492: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an untitled Markdown file clears the workspace +17:37 +3493: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding a saved file reloads disk text and clears dirty state +17:37 +3494: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside project and records it as recent +17:37 +3495: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside topic and opens it without changing recents +17:37 +3496: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: topic TOC actions refresh the workspace and preserve file state +17:37 +3497: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: reviewed topic rename is rejected after a project buffer becomes dirty +17:37 +3498: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as writes a new Markdown file and records it as recent +17:37 +3499: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown in Writerside keeps ordinary files CommonMark +17:38 +3500: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside refresh preserves saved Markdown outside the workspace root +17:38 +3501: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown into discovered topics reclassifies it +17:38 +3502: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving multiple untitled documents creates normal file buffers +17:38 +3503: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as refuses an existing file unless overwrite is explicit +17:38 +3504: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as explicit overwrite replaces the final symlink only +17:38 +3505: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves source edits for an untitled Markdown file +17:38 +3506: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while writing the file +17:38 +3507: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as completes against its buffer after switching tabs +17:38 +3508: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while reopening the file +17:38 +3509: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: switching active files reparses outline for the new file +17:38 +3510: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale validation after save and tab switch does not restore previous file +17:38 +3511: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation completing after save preserves the saved snapshot +17:38 +3512: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source defers preview work until a preview mode is visible +17:38 +3513: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source-only validation still runs when validate-on-edit is enabled +17:38 +3514: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale text update from previous file cannot dirty active tab +17:38 +3515: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: folder workspaces track open file tabs without duplicates +17:38 +3516: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All writes every dirty file-backed buffer +17:38 +3517: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All can be scoped without saving unrelated dirty buffers +17:38 +3518: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: selected dirty buffers can be discarded without changing tabs +17:38 +3519: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing active file tabs selects a neighboring tab +17:39 +3520: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: activating sibling file tabs wraps around the open tabs +17:39 +3521: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all file tabs clears the active editor state +17:39 +3522: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs aborts when a document changes during history flush +17:39 +3523: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs cannot clear workspace state replaced during flush +17:39 +3524: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed open clears stale workspace state +17:39 +3525: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math renderer failures become source-linked runtime diagnostics +17:39 +3526: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validate on edit setting controls live diagnostics only +17:39 +3527: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save waits for an idle delay before writing +17:41 +3528: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Undo and Redo reschedule autosave after the prior save settled +17:45 +3529: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: inactive document updates schedule autosave without changing tabs +17:47 +3530: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed workspace refresh restores eligible autosave scheduling +17:48 +3531: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disabled autosave stays disabled after a failed refresh +17:50 +3532: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save remains scheduled independently for inactive tabs +17:51 +3533: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save preserves dirty state when edits happen during save +17:51 +3534: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: overlapping manual save writes the newer requested revision +17:51 +3535: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save completes against its buffer after switching tabs +17:51 +3536: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing a buffer waits for its in-flight autosave +17:51 +3537: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard aborts when the document changes during protective history capture +17:51 +3538: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard waits for its buffer in-flight autosave +17:51 +3539: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save waits for an in-flight autosave of the same buffer +17:51 +3540: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All waits for an in-flight autosave of the same buffer +17:51 +3541: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save As waits for an in-flight autosave of the same buffer +17:51 +3542: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean shutdown waits for in-flight document writes +17:51 +3543: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: pending history from a closed clean tab prevents a clean shutdown marker +17:51 +3544: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save refuses to overwrite external file changes without force +17:52 +3545: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save treats a deleted active file as an external conflict +17:52 +3546: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save detects external rewrites with unchanged modified time +17:52 +3547: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving preserves a manually removed final newline +17:52 +3548: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: WYSIWYG list edits preserve a missing final newline +17:52 +3549: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: spelling correction undo and redo restore source and rich selections +17:52 +3550: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Keep Mine retains the conflict snapshot until explicit overwrite +17:52 +3551: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitor refresh waits for an active foreground refresh +17:52 +3552: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves an active edit and editor history made during reparse +17:52 +3553: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation reconciles edits accepted while its reparse is pending +17:52 +3554: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: opening a new tab preserves live edits and editor history in the visible document +17:52 +3555: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing the active tab aborts if it changes during next-tab activation +17:52 +3556: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: aborted discard close preserves dirty state after an editor-only change +17:52 +3557: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: aborted +17:52 +3558: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: closed +17:52 +3559: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: disabled +17:52 +3560: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: shutdown +17:52 +3561: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: replaced +17:52 +3562: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation does not resurrect another tab closed while waiting +17:52 +3563: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves inactive edits and does not resurrect a closed tab +17:53 +3564: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh rejects a disk load superseded by typing +17:54 +3565: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: external file moves remap the open document buffer +17:54 +3566: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitors saved standalone tabs outside the workspace root +17:54 +3567: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: standalone refresh preserves saved tabs in different directories +17:54 +3568: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup leaves a clean session closed unless reopening is enabled +17:54 +3569: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup restores an interrupted session without an opt-in +17:54 +3570: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored sessions retain tabs whose files are missing +17:54 +3571: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored standalone sessions retain a missing document +17:54 +3572: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: mixed untitled and saved session restores as a standalone workspace +17:54 +3573: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark active +17:54 +3574: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark inactive +17:54 +3575: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean marker cannot hide remaining recovery entries +17:54 +3576: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: recovery text remains restorable when the later session save fails +17:54 +3577: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: single-document session uses no workspace path after saved tabs close +17:54 +3578: loading /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart +17:55 +3578: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped image-description text follows Markdown image alt semantics +17:55 +3579: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: annotated parsing has ordinary semantics across supported corpus +17:55 +3580: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: image ranges identify only resolved source occurrences +17:55 +3581: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: positioned label breaks retain raw endings and container prefixes +17:55 +3582: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped link and image titles retain exact raw boundaries +17:55 +3583: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: destination-only links and images have no mapped title +17:55 +3584: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: position records do not change HTML or link semantics +17:55 +3585: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: selection endpoints crossing HTML retain one semantic fragment +17:55 +3586: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: supported HTML whitespace positions have complete position records +17:55 +3587: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: only operation-local markers are ignored +17:55 +3588: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: delimiter-only positions are explicitly incomplete +17:55 +3589: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: syntax-boundary probes retain the ordinary semantic oracle +17:55 +3590: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: deterministic inline combinations preserve annotated semantics +17:55 +3591: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: standalone HTML break ownership uses one indexed lookup per break +17:55 +3592: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: AST source boundary lookahead is linear and maps the final link +17:56 +3593: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: fallback mapping is bounded for entities repetitions and code spans +17:56 +3594: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: tag-looking attribute text does not claim break layout +17:56 +3595: loading /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart +17:57 +3595: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: restores WYSIWYG selection from document session state +17:58 +3596: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: reports the old document session before switching tabs +17:58 +3597: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: defers session provider updates until document rebuild ends +17:58 +3598: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: workspace mode delegates WYSIWYG undo to buffer history +17:58 +3599: loading /home/albert/busystack/busymark/test/src/writerside_identity_test.dart +17:59 +3599: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: anchor identity includes topic and all instances participate in usages +17:59 +3600: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: conditional globals and snippet variables have distinct scopes +18:00 +3601: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: completion filters context and target identity before limiting +18:00 +3602: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: validation uses relationships, typed values and current configuration syntax +18:00 +3603: loading /home/albert/busystack/busymark/test/src/html_export_ui_test.dart +18:01 +3603: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: one Export command retains Ctrl+Shift+E +18:01 +3604: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Flutter Main menu exposes document export +18:02 +3605: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: untitled active text stays captured while destination picker is open +18:04 +3606: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Cancel handling before instance selection +18:04 +3607: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Discard handling before instance selection +18:05 +3608: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Save handling before instance selection +18:06 +3609: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart +18:07 +3609: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication +18:07 +3610: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path +18:07 +3611: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content +18:07 +3612: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document +18:07 +3613: loading /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart +18:12 +3613: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Writerside numeric list starts and container boundaries reach PDF +18:12 +3614: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: list items and visualization replacements retain source anchors +18:12 +3615: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: maps Markdown semantics into renderer-neutral export blocks +18:12 +3616: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: omits reference definitions while preserving their resolved links +18:12 +3617: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Typst payload contains data but never raw local image paths +18:12 +3618: loading /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart +18:13 +3618: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: basic fixture uses a renderable OpenAPI fence +18:13 +3619: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: visualizer fences remain generic code and round-trip byte-for-byte +18:13 +3620: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: dedicated visualizer rules highlight comments, keys, and keywords +18:13 +3621: loading /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart +18:16 +3621: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-topic-create-10-100-0 +18:16 +3622: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-topic-create-10-100-0 +18:16 +3623: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-safe-delete-10-100-0 +18:16 +3624: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-safe-delete-10-100-0 +18:16 +3625: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 +18:16 +3626: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 +18:16 +3627: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: external moves, missing destinations and authored hidden names stay visible +18:16 +3628: loading /home/albert/busystack/busymark/test/src/html_rich_export_test.dart +18:18 +3628: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered mermaid retains a linked Writerside block ID +18:20 +3629: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered openapi retains a linked Writerside block ID +18:20 +3630: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: HTML uses unique occurrence jobs, standalone math and diagram/static API engines +18:20 +3631: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: custom HTML metrics and embedded rich assets stay self-contained +18:20 +3632: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: all diagram dependencies are captured before rendering begins +18:20 +3633: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: cancelling an active render retains existing output and removes staging +18:20 +3634: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: render timeout is bounded and cancellation interrupts a pending job +18:20 +3635: loading /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart +18:21 +3635: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: finds exact href and body spans for every supported quote form +18:21 +3636: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: ignores comments, fenced code, and inline code but keeps containers +18:21 +3637: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: multiline anchors are exact and malformed anchors remain manual +18:21 +3638: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/full-flutter-timing-failure.log b/delivery/nextcloud-explicit-adoption/evidence/full-flutter-timing-failure.log new file mode 100644 index 00000000..d3c8c0d1 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/full-flutter-timing-failure.log @@ -0,0 +1,4440 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver +00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider +00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider +00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files +00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text +00:02 +5: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations +00:02 +6: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads +00:02 +7: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy +00:02 +8: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy +00:02 +9: loading /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart +00:03 +9: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a complete subtree as the last child of an exact node +00:03 +10: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry after a root sibling +00:03 +11: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry to the end of the TOC root +00:03 +12: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry relative to itself without writing +00:03 +13: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry into its descendant without writing +00:03 +14: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: requires a destination for child and sibling placement +00:03 +15: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects invalid structural paths without writing +00:03 +16: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects stale paths whose expected TOC identities moved +00:03 +17: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a root entry and promotes its children in place +00:03 +18: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a nested entry and promotes its child before its sibling +00:04 +19: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes multiple entries atomically against one tree snapshot +00:04 +20: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: batch removal handles a selected descendant and ancestor +00:04 +21: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves multiple subtrees as an ordered group +00:04 +22: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a tree outside the guarded module root +00:04 +23: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a symlinked tree without mutating its target +00:04 +24: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: does not overwrite a tree changed before atomic publication +00:04 +25: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: atomic replacement preserves the tree POSIX mode +00:04 +26: loading /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart +00:06 +26: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal dialogs stop app and editor shortcuts +00:07 +27: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: Escape closes a modal without an initially focused control +00:07 +28: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal fallback does not steal a child autofocus request +00:08 +29: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: overlapping dialogs synchronize native modal depth +00:08 +30: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: serializes rapid manual native barrier transitions +00:08 +31: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: failed native barrier acquisition rolls back and can retry +00:08 +32: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal coordinator resolves the service from ProviderScope +00:08 +33: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: open modal barrier follows live theme changes +00:08 +34: loading /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart +00:13 +34: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: analysis finds every tree, topic link, include, and start page +00:16 +35: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove promotes children, updates usages, adds redirect, and keeps file +00:30 +36: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates all usages and removes every TOC occurrence +00:31 +37: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect to a promoted child is written to the promoted copy +00:31 +38: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed XML topics make usage analysis fail closed +00:31 +39: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: file-size-skipped topics make removal fail closed +00:31 +40: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: document-count-skipped topics make removal fail closed +00:31 +41: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: unreadable topic contents make removal fail closed +00:31 +42: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: topic-root traversal truncation makes removal fail closed +00:31 +43: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: incomplete project-module discovery makes removal fail closed +00:31 +44: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: tree directory enumeration failure makes removal fail closed +00:31 +45: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: single-quoted includes without element-id are found and removed +00:31 +46: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: variable-expanded links are analyzed and the variables file is stale-checked +00:31 +47: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: Safe Delete finds and unlinks authored HTML anchors without literal false positives +00:32 +48: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed authored HTML anchors are manual Safe Delete blockers +00:32 +49: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML variable hrefs are expanded and ambiguity blocks +00:32 +50: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML relevance follows its conditioned Markdown chapter +00:33 +51: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: automatic HTML unlinking permits project-wide orphan status +00:33 +52: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a surviving authored HTML link suppresses orphan status +00:33 +53: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: ambiguous references block deletion without changing any file +00:33 +54: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: old web file names follow Writerside normalization and exact overrides +00:33 +55: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: existing redirect rules block conflicting redirects +00:33 +56: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect preserves direct and rule-based accepted aliases +00:33 +57: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a transferred redirect alias collision fails before writes +00:33 +58: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect sources use each host instance web filename +00:33 +59: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remaining start-page and cross-instance usages prevent orphan status +00:34 +60: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove-from-instance relevance respects document conditions +00:34 +61: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: start-page and stale analyses fail closed without deleting the topic +00:34 +62: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: generic Files deletion cannot bypass Writerside Safe Delete +00:34 +63: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: project analysis finds origin links, includes, cards, and ref TOC nodes +00:34 +64: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored Markdown HTML anchors resolve origin project-wide +00:34 +65: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates automatic cross-module origin usages +00:34 +66: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: selected ref node uses removal workflow and promotes its children +00:34 +67: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: semantic tree scan includes hidden/build trees and excludes VCS metadata +00:34 +68: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a new module after analysis makes the reviewed plan stale +00:34 +69: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: cross-module failure rolls back BusyMark edits without overwriting a concurrent edit +00:35 +70: loading /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart +00:38 +70: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source paste preserves incoming nested blocks and returns its caret +00:38 +71: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves structural block kinds +00:38 +72: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: removing final formula leaves normal editing mode +00:38 +73: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits preserve nested list children +00:38 +74: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: descendant math does not put a plain list parent in source mode +00:38 +75: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first inline math insertion preserves unaffected inline AST +00:38 +76: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math edits retain explicit heading IDs +00:38 +77: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first math insertion recalculates a generated heading ID +00:38 +78: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion always emits reparsable source +00:38 +79: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: additional inline math uses the same reparsable insertion policy +00:38 +80: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion rejects multiline selections without mutation +00:38 +81: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves zero-width semantic inlines +00:38 +82: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table-cell source editing retains and removes semantic math +00:38 +83: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits cannot discard additional Markdown blocks +00:38 +84: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source editing preserves escaped literal dollars +00:38 +85: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves the intended inline position +00:38 +86: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math field source boundaries map to semantic text boundaries +00:38 +87: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: source-mode math insertion preserves the intended inline position +00:38 +88: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG renders math, edits exact source, and reparses without corruption +00:40 +89: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG toolbar inserts inline and display math source +00:40 +90: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math toolbar preserves existing inline structure +00:41 +91: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: rendered and focused math list items keep one marker +00:41 +92: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table math renders unfocused and edits delimiter source +00:41 +93: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: plain table cell treats typed Markdown as rich text +00:42 +94: loading /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart +00:45 +94: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery refresh preserves a valid second instance +00:45 +95: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: selected instance removed +00:45 +96: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: intentional selection +00:45 +97: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: another module +00:45 +98: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction incomplete observations are presentation only and reject changed reads +00:45 +99: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction limited inventory retains raw counts for excluded Git entries +00:45 +100: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: rejected source size remains an input to freshness checking +00:45 +101: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: bounded topic rejection detects recovery on the real worker +00:45 +102: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: oversized buffer overrides retain their consumed-input hash +00:46 +103: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: unreadable sources keep error diagnostics and invalidate on recovery +00:46 +104: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: real execution transfers results and propagates worker failures +00:46 +105: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: basic_project +00:46 +106: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: conformance_project +00:46 +107: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: markdown_export_compatibility +00:46 +108: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: malformed XML +00:46 +109: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: missing configured root +00:46 +110: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: unsafe include +00:46 +111: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: scan limit +00:46 +112: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: preparation consumes complete overlays once, then selects with zero loads +00:46 +113: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: reuse checks equal-size disk dependencies and added inputs +00:47 +114: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: planned path exclusions cannot hide a new colon-named dependency +00:47 +115: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: configuration overlay rediscovery retains symbols and diagnostics +00:47 +116: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: creation returns its typed publication result without reopening +00:47 +117: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal application shares one ownership-checked fresh project +00:47 +118: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects changed input before fingerprint collection +00:47 +119: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects added input before fingerprint collection +00:47 +120: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects removed input before fingerprint collection +00:47 +121: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects tree input before fingerprint collection +00:47 +122: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects configuration input before fingerprint collection +00:47 +123: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects disk dependency after fingerprint verification and before commit +00:47 +124: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects dirty affected buffer after fingerprint verification and before commit +00:47 +125: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: analysis is never reused across confirmation +00:47 +126: loading /home/albert/busystack/busymark/test/src/local_history_controller_test.dart +00:50 +126: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed opened baseline retries its original source without an edit +00:50 +127: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: baseline before edit preserves original and coalesces latest edit +00:50 +128: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: closed failures keep ownership and stale settlement cannot drop newer work +00:50 +129: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed protective capture survives refresh failure without recapture +00:50 +130: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: protective authorization is invalidated while committed refresh awaits +00:50 +131: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: disable cancels an in-flight baseline at the store boundary +00:50 +132: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: exclude cancels an in-flight baseline at the store boundary +00:50 +133: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed promotion stays associated when refresh fails +00:50 +134: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As binds destination even when list refresh fails +00:50 +135: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: settling one buffer resumes retries accepted by another buffer +00:51 +136: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear document cancels its failed unbound baseline +00:51 +137: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=true) +00:51 +138: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=false) +00:51 +139: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=false) +00:51 +140: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=true) +00:51 +141: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains a source identity established before later settlement fails +00:51 +142: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As refreshes a staged destination after its concurrent checkpoint +00:51 +143: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: abandoned and superseded moves retain the newest committed association +00:51 +144: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued edits share one retained baseline retry owner +00:51 +145: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: independent failures, permanent baselines and policy cancellation remain isolated +00:51 +146: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: cancelled failed baselines cannot be restored by delayed callbacks +00:51 +147: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: continuous typing captures latest text at fixed checkpoint interval +00:51 +148: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: inactive buffers receive independent checkpoint timers +00:51 +149: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first checkpoint attaches an empty untitled browsing scope and publishes it +00:51 +150: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file store checkpoint persists across reopen and clear stays authoritative +01:11 +151: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: active revision search follows matching and nonmatching captures +01:11 +152: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed automatic capture keeps pending source and retries without another edit +01:11 +153: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a newer edit accepted during a failed write wins the retry +01:11 +154: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: automatic checkpoint retries a transient first-save promotion failure +01:11 +155: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush waits behind queued observation and captures its latest source +01:11 +156: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear wins over an in-flight capture and later edits record normally +01:11 +157: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear Document records in the replacement lineage +01:11 +158: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document blocks replacement capture while its journal is pending +01:11 +159: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear All records in the replacement lineage +01:11 +160: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All blocks replacement capture while its journal is pending +01:11 +161: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an automatic checkpoint queued for an untitled draft +01:11 +162: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear Document +01:11 +163: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear All +01:11 +164: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clearing the displayed comparison closes it without a missing warning +01:11 +165: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an in-flight path capture for the same document +01:11 +166: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first edit after another controller clears a stale binding starts a new lineage +01:12 +167: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight buffer replacement protection +01:12 +168: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued buffer replacement protection +01:12 +169: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight path replacement protection +01:12 +170: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued path replacement protection +01:12 +171: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight buffer replacement protection +01:12 +172: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued buffer replacement protection +01:12 +173: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight path replacement protection +01:12 +174: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued path replacement protection +01:12 +175: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording off prevents baseline and checkpoints without deleting history +01:12 +176: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: store-wide find locates closed and deleted documents by path or content +01:12 +177: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: retained-document lookup is temporary and normal document selection resumes following +01:12 +178: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: panel construction preserves an explicit retained-document inspection +01:13 +179: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: delayed revision search cannot repopulate a newly selected document scope +01:13 +180: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision search failure finishes searching and remains in scope +01:13 +181: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Local History follows active tabs and clears the visible query without a document dropdown +01:13 +182: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision rows use local second-precision time, date groups, event metadata, and RTL +01:13 +183: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a delayed revision read cannot cross the selected document or leave loading stuck +01:14 +184: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As settles pending named and untitled checkpoints safely +01:14 +185: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: untitled overwrite Save As retains a failed source checkpoint +01:14 +186: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As source capture is idempotent after a lost result +01:14 +187: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As recovery never adopts unrelated same-content destination history +01:14 +188: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording-disabled first save promotes untitled history identity +01:14 +189: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: excluding a recovered first-save destination preserves its untitled source baseline +01:14 +190: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued committed Save As cannot recreate a newly excluded destination side +01:14 +191: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed first-save promotion is retried before a later capture +01:14 +192: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush retries a failed first-save promotion without another edit +01:14 +193: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush reports a content failure after successfully retrying promotion +01:14 +194: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: remap settles pending first-save promotions for files and directories +01:14 +195: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file and directory moves settle pending checkpoints before remap +01:14 +196: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed path reconciliation blocks affected captures but not unrelated documents +01:14 +197: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: successful path queue prefix is published before a later failure +01:14 +198: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path deletion warnings remain scoped to affected owners +01:14 +199: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed path operation is not replayed after refresh failure +01:14 +200: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: restored targetless executing reconciliation preserves its owner +01:14 +201: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) +01:14 +202: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/B.md) +01:14 +203: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/A.md, recursive: false, source: /workspace/C.md) +01:14 +204: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/B.md, recursive: false, source: /workspace/C.md) +01:14 +205: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirA/nested/C.md) +01:14 +206: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirB/nested/C.md) +01:14 +207: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: false, source: /workspace/C.md) +01:14 +208: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirB/nested/C.md, recursive: false, source: /workspace/C.md) +01:14 +209: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /other, recursive: false, source: /workspace) +01:14 +210: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace, recursive: false, source: /other) +01:14 +211: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/dirB-sibling/C.md, recursive: false, source: /workspace/dirA-sibling/C.md) +01:14 +212: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) +01:14 +213: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: true, source: /workspace/dirA/nested/C.md) +01:14 +214: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: true, source: /workspace/C.md) +01:14 +215: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /other, recursive: true, source: /workspace) +01:14 +216: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: true, source: /workspace/C.md) +01:14 +217: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) +01:14 +218: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) +01:14 +219: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses prepared target with different paths +01:14 +220: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses bound identity with different paths +01:14 +221: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses destination identity with different paths +01:14 +222: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency checks promotion destination identity at a different path +01:14 +223: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency settles only conflicting entries behind an unresolved head +01:14 +224: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=false) +01:14 +225: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=true) +01:14 +226: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency preserves transitive queue ordering +01:14 +227: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=false) +01:14 +228: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=true) +01:14 +229: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: staged path commit survives refresh failure until workspace acknowledgement +01:14 +230: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: external staged remap refreshes its bound target after checkpoint settlement +01:14 +231: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: definitive false staged result retires its executing journal +01:14 +232: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred deletion cannot delete replacement path history +01:14 +233: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document removes only its recursive reconciliation target +01:14 +234: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document preserves timer retry for remaining recursive target +01:14 +235: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: prepared remap rejects a checkpoint that changed its frozen target +01:14 +236: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: ownerless path failure is visible only in history presentation +01:14 +237: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: detached promotion capture is included in durable retained work +01:14 +238: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: live external retained owner is not replayed and Clear All retires it +01:14 +239: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a clear conflict cancels the old baseline retry owner +01:14 +240: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit after failed Clear waits and persists in the replacement lineage +01:14 +241: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: post-Clear edit uses committed epoch when reconciliation refresh fails +01:14 +242: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred remap cannot mutate replacement path history +01:14 +243: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed remap reserves source and destination paths until reconciliation +01:14 +244: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deletion remains ordered behind a retained path remap +01:14 +245: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first save waits for a reserved source path before promoting its history +01:14 +246: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path target discovery observes history written after cached load +01:14 +247: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear document +01:14 +248: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear all +01:14 +249: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after disposal +01:14 +250: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As transfers retained remap ownership with source work +01:14 +251: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flushBuffer reports retained remap work and retires closed owner +01:14 +252: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All cannot be undone by an in-flight path remap +01:14 +253: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path reconciliation resumes a newly opened destination owner +01:14 +254: loading /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart +01:18 +254: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: HTML retains complex Markdown and resolves both heading ID spellings +01:18 +255: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: PDF retains complex Markdown and resolved heading links +01:18 +256: loading /home/albert/busystack/busymark/test/src/math_widget_test.dart +01:22 +256: /home/albert/busystack/busymark/test/src/math_widget_test.dart: inline math applies MathJax baseline and surrounding text metrics +01:23 +257: /home/albert/busystack/busymark/test/src/math_widget_test.dart: wide display math scrolls horizontally without clipping +01:23 +258: /home/albert/busystack/busymark/test/src/math_widget_test.dart: failed formulas retain source and a localized explanation +01:25 +259: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart +01:26 +259: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: reduced fixture uses rendered offsets without Markdown delimiters or block separators +01:26 +260: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All: logical range and copy include styled suffixes and table +01:28 +261: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b0 BusyBlockKind.paragraph +01:29 +262: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b1 BusyBlockKind.paragraph +01:30 +263: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b2 BusyBlockKind.paragraph +01:30 +264: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b3 BusyBlockKind.unorderedListItem +01:31 +265: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b4 BusyBlockKind.unorderedListItem +01:31 +266: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b5 BusyBlockKind.unorderedListItem +01:31 +267: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b6 BusyBlockKind.paragraph +01:32 +268: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b17 BusyBlockKind.paragraph +01:32 +269: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table cells paint the same selected text as document copy +01:32 +270: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: repeated Select All keeps the entire document selected +01:33 +271: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: Before. + +| H | +| --- | +| Body! | + +01:33 +272: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: | H | +| --- | +| Body! | + +After. + +01:33 +273: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag endpoints use the styled rendered coordinate system +01:34 +274: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag from a paragraph into a table copies and selects its cells +01:34 +275: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across table cells selects the existing complete-table document block +01:35 +276: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 460.0 +01:35 +277: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 460.0 +01:36 +278: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 460.0 +01:36 +279: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 460.0 +01:36 +280: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 460.0 +01:37 +281: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 460.0 +01:37 +282: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 1000.0 +01:37 +283: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 1000.0 +01:38 +284: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 1000.0 +01:38 +285: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 1000.0 +01:38 +286: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 1000.0 +01:39 +287: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 1000.0 +01:39 +288: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=2 +01:39 +289: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=10 +01:39 +290: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=11 +01:39 +291: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=2 +01:39 +292: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=10 +01:39 +293: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=11 +01:40 +294: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=2 +01:40 +295: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=10 +01:40 +296: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=11 +01:40 +297: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=2 +01:40 +298: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=10 +01:40 +299: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=11 +01:40 +300: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=2 +01:41 +301: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=10 +01:41 +302: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=11 +01:41 +303: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=2 +01:41 +304: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=14 +01:41 +305: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=15 +01:41 +306: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 3, 29) includes the final rendered character +01:41 +307: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (4, 0, 4, 36) includes the final rendered character +01:41 +308: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 4, 36) includes the final rendered character +01:41 +309: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 4, 4, 36) includes the final rendered character +01:42 +310: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 6, 9) includes the final rendered character +01:42 +311: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 0, 6, 93) includes the final rendered character +01:48 +312: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (5, 0, 5, 29) includes the final rendered character +01:48 +313: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: mouse range across paragraph, list, table and paragraph equals Select All +01:48 +314: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All, mouse and keyboard ranges produce equivalent local selection geometry +01:51 +315: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: local table cell selection stays local; subsequent Select All expands to document +01:51 +316: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table to following paragraph retains complete selected rows +01:52 +317: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: document selection survives viewport scrolling and block recreation +01:53 +318: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: selected table text follows horizontal cell scrolling +01:53 +319: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across a viewport jump resolves the visible extent block (variant: TargetPlatform.linux) +01:55 +320: loading /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart +01:56 +320: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video card embeds a supported YouTube source in place +01:57 +321: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: mini-player embeds Vimeo with the reduced video ID +01:57 +322: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: local video player receives only a canonical media path +01:58 +323: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video dimensions preserve ratio and scale to available width +01:58 +324: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: failed native player leaves a usable poster fallback +01:58 +325: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: WYSIWYG renders a Writerside video without rewriting source +01:59 +326: loading /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart +02:00 +326: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: uses the native grouped modal-editor structure +02:02 +327: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shared report form remains directional in an Arabic UI +02:02 +328: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: dark route uses the shared dialog surface +02:02 +329: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows required-field validation without sending +02:02 +330: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: rejects an invalid optional reply email +02:02 +331: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: category can return to the unselected placeholder +02:03 +332: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: disables submit while a request is active +02:03 +333: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: clears the form and shows the server reference on success +02:03 +334: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows a distinct message when the server rejects the form +02:03 +335: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: keeps retry UUID until submitted content changes +02:04 +336: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: cannot dismiss the dialog while submission is active +02:07 +337: loading /home/albert/busystack/busymark/test/src/headless_chrome_test.dart +02:09 +337: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: evaluates the requested document after it becomes ready +02:09 +338: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: does not evaluate the initial about:blank target +02:09 +339: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: retries when navigation destroys the execution context +02:09 +340: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a silent open DevTools socket respects the readiness bound +02:09 +341: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: socket closure before a response fails deterministically +02:09 +342: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a DevTools error is not mistaken for navigation +02:09 +343: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a page that never becomes ready reports its last state +02:09 +344: loading /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart +02:12 +344: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in untitledMarkdown +02:12 +345: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in singleMarkdown +02:12 +346: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in markdownFolder +02:12 +347: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in writersideModule +02:12 +348: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in nextcloudNotes +02:12 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (setUpAll) +02:12 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered Markdown topic wins over generic file inventory +02:12 +350: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered XML topic resolves as a Writerside XML topic +02:12 +351: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution ordinary Markdown under the project is still CommonMark +02:12 +352: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution path fallback does not depend on workspace file inventory +02:12 +353: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (tearDownAll) +02:12 +353: loading /home/albert/busystack/busymark/test/src/html_export_test.dart +02:13 +353: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsaved Markdown is a complete styled document with stable semantic anchors +02:22 +354: /home/albert/busystack/busymark/test/src/html_export_test.dart: raw disclosures, definitions and spans survive with structural sanitization +02:22 +355: /home/albert/busystack/busymark/test/src/html_export_test.dart: explicit blank lines export as consecutive HTML breaks +02:22 +356: /home/albert/busystack/busymark/test/src/html_export_test.dart: content-addressed assets relocate, deduplicate and reject symlink escapes +02:22 +357: /home/albert/busystack/busymark/test/src/html_export_test.dart: home-relative images use the shared local-media path rules +02:22 +358: /home/albert/busystack/busymark/test/src/html_export_test.dart: untrusted metadata and data URLs cannot create active HTML +02:22 +359: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsafe SVG and CSS never reach exported assets +02:22 +360: /home/albert/busystack/busymark/test/src/html_export_test.dart: overwrite refusal, cancellation and rendering failure preserve previous HTML +02:22 +361: /home/albert/busystack/busymark/test/src/html_export_test.dart: metadata title remains separate from a formatted Markdown title heading +02:22 +362: /home/albert/busystack/busymark/test/src/html_export_test.dart: UTF-8 byte limits are enforced +02:22 +363: /home/albert/busystack/busymark/test/src/html_export_test.dart: Writerside produces linked pages, hidden topics, WIP and start copy +02:22 +364: /home/albert/busystack/busymark/test/src/html_export_test.dart: official conformance fixture exports as individual pages +02:23 +365: loading /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart +02:24 +365: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside blockquotes become typed admonitions and round-trip +02:24 +366: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown blockquotes do not acquire Writerside semantics +02:24 +367: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: semantic admonition elements include quote and preserve attributes +02:24 +368: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: admonition editing emits source that reparses semantically +02:24 +369: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: editing inside an existing admonition changes its outer type +02:24 +370: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: WYSIWYG Admonition menu applies the selected type +02:25 +371: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown does not show the Writerside editing menu +02:25 +372: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside .topic preview keeps content inside its admonition +02:25 +373: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: PDF export keeps admonitions semantic and quotes neutral +02:25 +374: loading /home/albert/busystack/busymark/test/src/d2_renderer_test.dart +02:27 +374: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy rejects imports and icon assets with source locations +02:27 +375: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy does not treat comments, quoted labels, or block strings as imports +02:27 +376: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: returns normalized vector SVG for browser-independent output +02:27 +377: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes foreignObject output at PDF resolution +02:27 +378: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes browser CSS that cannot be preserved in vector form +02:27 +379: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: maps D2 diagnostics and renderer limits to typed results +02:27 +380: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: locates only executable files at deterministic bundle paths +02:27 +381: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: bundled D2 CLI renders stdin to stdout without a shell +02:27 +382: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart +02:29 +382: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +02:30 +383: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions +02:31 +384: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart +02:32 +384: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: display images do not reserve a fixed-height letterbox +02:32 +385: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: quotes and admonitions use the existing callout presentation +02:32 +386: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF export ignores redundant blank lines between blocks +02:35 +387: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF payload preserves an explicit blank line as two breaks +02:35 +388: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders two explicit breaks as one blank PDF line +02:35 +389: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders redundant blank lines identically +02:35 +390: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template exports representative Markdown to a valid PDF +02:35 +391: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside video poster and link compile into a valid PDF +02:36 +392: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside admonitions compile into a valid PDF +02:36 +393: loading /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart +02:37 +393: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: data tables remain tables, including borderless and single-column data +02:37 +394: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: nested layout wrappers retain their inner data table and prose +02:37 +395: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: explicit presentation table keeps caption, cell order and direction +02:37 +396: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor preserves content inside a layout table +02:37 +397: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor plain paste ignores layout and rich content +02:37 +398: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource preserves content inside a layout table +02:37 +399: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource plain paste ignores layout and rich content +02:37 +400: loading /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart +02:39 +400: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: selects all candidates by default and disables OK for none +02:40 +401: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: successful import closes the dialog with selected list order +02:41 +402: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: failed import stays open and presents the localized error +02:41 +403: loading /home/albert/busystack/busymark/test/src/html_publication_test.dart +02:43 +403: /home/albert/busystack/busymark/test/src/html_publication_test.dart: single-file local video has a downloadable fallback +02:46 +404: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list starts and same-type boundaries survive HTML export +02:46 +405: /home/albert/busystack/busymark/test/src/html_publication_test.dart: repeated list includes export as separate HTML containers +02:46 +406: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list styles stay distinct across consecutive lists +02:46 +407: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside shares HTML appearance without changing TOC status or source +02:46 +408: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside module origins preserve includes, variables, file identity and nullable links +02:47 +409: /home/albert/busystack/busymark/test/src/html_publication_test.dart: definition lists preserve individual disclosure states and IDs +02:47 +410: /home/albert/busystack/busymark/test/src/html_publication_test.dart: web filename and index collisions identify both topics before publication +02:47 +411: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside publication uses canonical effective web filenames +02:47 +412: /home/albert/busystack/busymark/test/src/html_publication_test.dart: source and media are captured before progress or later editor changes +02:47 +413: /home/albert/busystack/busymark/test/src/html_publication_test.dart: publication failure retains previous HTML and referenced immutable assets +02:47 +414: /home/albert/busystack/busymark/test/src/html_publication_test.dart: duplicate explicit IDs warn, non-Latin footnotes and document IDs resolve +02:47 +415: loading /home/albert/busystack/busymark/test/src/spelling_service_test.dart +02:51 +415: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document kinds expose one authoritative spelling capability +02:51 +416: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: effective spelling language preserves document and project order +02:51 +417: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: session identity changes when a stable buffer is saved to a path +02:51 +418: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: downloaded dictionaries use revision-shared Snap storage +02:51 +419: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: first save and Save As republish source routing immediately +02:52 +420: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rereads and merges independent external changes +02:53 +421: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words coordinates writers in independent application processes +02:56 +422: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external edit injected after staging +02:57 +423: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external replacement after the atomic exchange +02:57 +424: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves a newer destination and the rejected displaced version +03:00 +425: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves case while merging canonical Unicode equivalents +03:00 +426: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rebuilds untrusted stored keys from validated display values +03:00 +427: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words case-distinct words survive restart into the native worker +03:00 +428: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words malformed storage is reported instead of overwritten +03:00 +429: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: staging validation accepts numeric header revisions and count drift +03:00 +430: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: dictionary import publishes a complete pair only after validation +03:00 +431: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation installs only one shared resource and reuses it by locale +03:00 +432: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation and checksum failure leave no installation +03:00 +433: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation observes the atomic publication commit point +03:00 +434: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale invalid record cannot remove a repaired installation +03:00 +435: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale valid descriptor cannot remove a replacement in another process +03:01 +436: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation catalog waits through a replacement publication gap +03:01 +437: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a late no-replace publisher cannot replace a completed installation +03:01 +438: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation independent process observes the published no-replace destination +03:02 +439: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation stalled response times out, cancels, and permits retry +03:02 +440: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation asynchronous output sink errors fail the receiver without zone leaks +03:02 +441: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed replacement cannot damage a working installation +03:03 +442: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed controller download exposes a working retry +03:03 +443: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller reserves an installation before coordinator startup +03:03 +444: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller releases installation ownership after setup failure +03:03 +445: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller cancellation remains with the reserved startup operation +03:03 +446: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: aliased imports remain selectable across collision, restart, and removal +03:03 +447: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: same-resource import collision is rejected before publication +03:03 +448: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an import does not impersonate the downloadable resource row +03:03 +449: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid imported installation is removable by exact record +03:03 +450: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid downloaded installation repairs through settings API +03:03 +451: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once keeps its authored anchor across editor modes +03:04 +452: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: source hit testing excludes formatting and link destination gaps +03:04 +453: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once follows one transaction across edit, undo, redo, and tabs +03:04 +454: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document ignores survive tab changes but not an actual close +03:04 +455: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed suggestion cannot revive after language changes +03:04 +456: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a manual request waits for its own result while a check runs +03:04 +457: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: checks in bounded batches and reuses unchanged run results +03:04 +458: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: cached runs cover the complete checked text across edits +03:04 +459: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a NUL suffix cannot complete checking and recovers after correction +03:04 +460: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project initialization publishes only the latest owner +03:04 +461: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older same-project Settings read cannot undo a newer snapshot +03:04 +462: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older project watcher read cannot undo Settings publication +03:05 +463: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project read begun during a mutation cannot undo its result +03:05 +464: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project conflict read preserves newer state and error +03:05 +465: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project watcher error cannot replace valid state +03:05 +466: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project watcher recovers after identical dictionary repair +03:06 +467: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project repair recovers a later failed preparation at latest revision +03:07 +468: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project reread does not clear an unrelated personal read failure +03:07 +469: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: failed personal initialization retries after repair and shares first load +03:07 +470: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: explicit checks and Settings refresh external personal words +03:07 +471: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: late personal refresh cannot undo a newer local mutation +03:07 +472: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: refresh begun during a personal mutation cannot undo its result +03:07 +473: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an older personal refresh cannot replace a newer publication +03:07 +474: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a superseded conflict read cannot replace a newer personal refresh +03:07 +475: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Settings holds a failed preparation until deliberate retry +03:10 +476: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm no-workspace Settings refreshes personal words once +03:11 +477: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm Settings observes an external dictionary removal once +03:11 +478: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: leaving Settings during preparation ignores its late completion +03:11 +479: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent first requests start exactly one worker +03:12 +480: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a project-word mutation cannot publish into a later project +03:13 +481: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: new input hides old results before preparation can fail +03:13 +482: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: external project-word edits refresh an open document +03:16 +483: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review dialog keeps one traversal through skip, back, correction, and persistence +03:18 +484: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review word-store conflict stays current and exposes preserved recovery path +03:19 +485: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: equivalent rebuild does not cancel session initialization +03:19 +486: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic session checks after an unresolved language is selected +03:20 +487: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an available but absent dictionary is not downloaded implicitly +03:20 +488: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: removing a downloaded pair keeps words and reports not installed +03:20 +489: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance refreshes external installation at explicit boundaries +03:20 +490: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance replaces an active imported dictionary fingerprint +03:20 +491: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent warm catalog preparations share one owned read +03:20 +492: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed catalog read cannot undo a local installation +03:20 +493: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a failed warm catalog refresh remains retryable +03:20 +494: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic checking rereads inventory after dictionary load fails +03:20 +495: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker catalog validation requires its resource-specific probe +03:20 +496: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projects source and rich snapshots through reusable messages +03:20 +497: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incrementally reuses unaffected plain Markdown runs +03:20 +498: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incremental Markdown projection agrees with a fresh structural parse +03:21 +499: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projection cache rebinds source targets after Save As +03:21 +500: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker project custom words do not leak between contexts +03:21 +501: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quoted corrections retain straight and curly punctuation +03:21 +502: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives projection and worker barriers +03:21 +503: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives a bounded worker chunk +03:21 +504: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker removing a custom exception does not forbid a base word +03:21 +505: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker prose around 64 KiB is checked across bounded chunks +03:21 +506: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker isolates encoding and oversized-token failures +03:21 +507: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker normal, large, and superseded checks stay bounded +spelling benchmark: normal=4ms large/latest=182ms suggestion=0ms +03:21 +508: loading /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart +03:22 +508: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: rapid navigation applies only monotonic complete configurations +03:22 +509: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: a new Dart session can restart native revisions from one +03:22 +510: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal depth is an atomic overlay on the latest page state +03:22 +511: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal barrier is retained before the first page publishes +03:22 +512: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: older runners fall back once to the ordered legacy protocol +03:22 +513: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: failed atomic apply keeps the last success and retries the same desired state +03:22 +514: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: theme map contains the native semantic visual roles +03:22 +515: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: native header labels expose only application-menu commands +03:22 +516: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart +03:24 +516: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces +03:27 +517: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark +03:27 +518: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync +03:27 +519: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces +03:27 +520: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog +03:27 +521: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present +03:28 +522: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging +03:28 +523: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface +03:28 +524: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body +03:28 +525: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters +03:28 +526: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components +03:28 +527: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers +03:28 +528: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface +03:28 +529: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry +03:28 +530: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary +03:28 +531: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer +03:28 +532: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting +03:28 +533: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI +03:28 +534: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text +03:28 +535: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration +03:28 +536: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR +03:28 +537: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface +03:28 +538: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography +03:28 +539: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style +03:28 +540: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives +03:28 +541: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries +03:28 +542: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind +03:28 +543: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces +03:28 +544: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu +03:28 +545: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback +03:28 +546: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup +03:29 +547: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel +03:29 +548: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter +03:29 +549: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu +03:29 +550: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor +03:29 +551: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors +03:29 +552: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation +03:29 +553: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row +03:29 +554: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model +03:29 +555: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row +03:29 +556: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation +03:29 +557: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span +03:29 +558: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout +03:29 +559: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts +03:29 +560: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls +03:29 +561: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds +03:29 +562: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog +03:29 +563: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release +03:29 +564: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome +03:29 +565: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart +03:30 +565: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings +03:31 +566: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded +03:31 +567: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales +03:31 +568: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale +03:31 +569: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes +03:31 +570: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs +03:31 +571: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders +03:34 +572: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct +03:34 +573: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed +03:34 +574: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys +03:34 +575: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale +03:34 +576: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose +03:34 +577: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches +03:34 +578: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form +03:34 +579: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural +03:34 +580: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology +03:34 +581: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations +03:34 +582: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits +03:34 +583: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English +03:34 +584: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog +03:34 +585: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args +03:34 +586: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart +03:35 +586: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks pasted rich content completely in both editors +03:44 +587: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: packaged catalog opens real regional and non-Latin dictionaries +Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff +03:52 +588: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks the general Markdown fixture completely +03:55 +589: loading /home/albert/busystack/busymark/test/src/command_registry_test.dart +03:55 +589: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog includes every editor command with an executable callback +03:55 +590: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog exposes stable unique IDs for all migrated shortcuts +03:55 +591: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects duplicate command IDs +03:55 +592: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects shortcut conflicts in the same command scope +03:55 +593: /home/albert/busystack/busymark/test/src/command_registry_test.dart: allows the same shortcut in distinct focus scopes +03:55 +594: /home/albert/busystack/busymark/test/src/command_registry_test.dart: executes only visible enabled bound commands +03:55 +595: /home/albert/busystack/busymark/test/src/command_registry_test.dart: contextual commands execute against the captured editor +03:56 +596: loading /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart +03:58 +596: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: Linux packages secure AI credential storage consistently +03:58 +597: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: real local AI qualification covers every shipped action +03:58 +598: loading /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart +04:00 +598: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: source line bounds treat offsets as insertion positions +04:00 +599: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: table cell spans respect meaningful outer pipes and escaping +04:00 +600: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: escaped terminal pipes remain in the final cell source span +04:00 +601: loading /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart +04:05 +601: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide preview fits identically through D2 and WebKit renderers +04:05 +602: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide PDF fits identically through D2 and WebKit renderers +04:05 +603: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: area-constrained PDF fits identically through D2 and WebKit renderers +04:05 +604: loading /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart +04:06 +604: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: real installed catalog has six default families and 22 bundled TGDP topics +04:07 +605: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: literal substitution is simultaneous, case-sensitive, XML-only escaped +04:07 +606: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save source matches installed first-match substring behavior +04:07 +607: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: TGDP brace escaping preserves attribute blocks and rewrites relative links +04:07 +608: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save, unique naming, restart, cancellation snapshot and stale edit rejection +04:08 +609: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: concurrent saves serialize without losing templates +04:08 +610: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: true) +04:08 +611: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: false) +04:08 +612: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: corrupt and symbolic-link stores are never replaced +04:08 +613: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: builtin overrides persist independently and reset reveals original source +04:08 +614: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: template bytes are published in the guarded creation transaction and rolled back on conflict +04:08 +615: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: invalid XML templates and colliding root IDs never publish a topic or TOC edit +04:08 +616: loading /home/albert/busystack/busymark/test/src/writerside_test.dart +04:09 +616: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses writerside.cfg directories and registered instances +04:09 +617: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented full writerside.cfg metadata +04:09 +618: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented config defaults +04:09 +619: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses attribute defaults for present config elements +04:09 +620: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented topic title overrides and web file names +04:09 +621: /home/albert/busystack/busymark/test/src/writerside_test.dart: Markdown web filename metadata ignores literal examples +04:09 +622: /home/albert/busystack/busymark/test/src/writerside_test.dart: XML topic metadata is scoped to direct topic children +04:09 +623: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses .tree metadata and TOC hierarchy +04:09 +624: /home/albert/busystack/busymark/test/src/writerside_test.dart: Writerside topic XML exposes semantic math to the shared preview +04:10 +625: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads basic Writerside project with topics and no missing topic diagnostics +04:10 +626: /home/albert/busystack/busymark/test/src/writerside_test.dart: does not parse a Writerside config above the byte limit +04:10 +627: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects configured paths outside the module root +04:10 +628: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a configured topic root reached through a symlink +04:10 +629: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a Writerside config file reached through a symlink +04:10 +630: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads project.ihp as an equivalent Writerside config file +04:10 +631: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads topics from multiple configured topic roots +04:10 +632: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves exact topic reference before basename fallback +04:10 +633: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports duplicate topic IDs in a help module +04:10 +634: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename fallback after exact matching misses +04:10 +635: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves Markdown links across configured topic roots +04:10 +636: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename topic references deterministically +04:10 +637: /home/albert/busystack/busymark/test/src/writerside_test.dart: broken Writerside project produces deterministic diagnostics +04:10 +638: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves basename images in nested Writerside image directories +04:10 +639: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves local images from secondary configured image roots +04:10 +640: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses the documented instance tree elements and attributes +04:10 +641: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects redirect-source attributes on empty TOC groups +04:10 +642: /home/albert/busystack/busymark/test/src/writerside_test.dart: module service retains empty-group redirect-source diagnostics +04:10 +643: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves registered TOC libraries, filters, groups, and cross-instance refs +04:10 +644: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports circular reusable tree includes without recursing +04:10 +645: /home/albert/busystack/busymark/test/src/writerside_test.dart: included content still requires a regular instance home page +04:10 +646: /home/albert/busystack/busymark/test/src/writerside_test.dart: ignores status-specific values for general instance settings +04:10 +647: /home/albert/busystack/busymark/test/src/writerside_test.dart: conformance fixture is a valid openable Writerside module +04:11 +648: loading /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart +04:11 +648: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: narrow title stays centered between the controls when resized +04:12 +649: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.rtl +04:12 +650: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.ltr +04:12 +651: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.rtl +04:12 +652: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.ltr +04:12 +653: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.dark seam paints the same subtle color across header and body +04:12 +654: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.light seam paints the same subtle color across header and body +04:12 +655: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: one viewport owns the full-height sidebar edge at every frame +04:12 +656: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: unrelated rebuild preserves partial progress and body state +04:12 +657: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: breakpoint settlement is immediate and retained state survives +04:12 +658: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: RTL and fractional device pixels share one snapped edge +04:12 +659: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: divider follows the snapped physical viewport while opening and closing +04:12 +660: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: animation setting settles a running reveal to its logical target +04:12 +661: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header receives only the presented system-control obstruction +04:12 +662: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: frame is the single owner of the full-height sidebar seam +04:12 +663: loading /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart +04:14 +663: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: tree-to-editor sync opens selected topic even with a .tree editor active +04:19 +664: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: editor-to-TOC sync resolves qualified identities and chooses breadth-first occurrence +04:22 +665: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: live removal dialog uses documented confirmation, redirect label and usage count +04:26 +666: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: New Topic surfaces expose local Markdown import only at root/sibling +04:28 +667: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty MD Topic creates an editable document when Reading mode is active, preserving other tabs +04:32 +668: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty XML Topic creates an editable document when Reading mode is active, preserving other tabs +04:35 +669: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Topic from Template... creates an editable document when Reading mode is active, preserving other tabs +04:38 +670: loading /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart +04:39 +670: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: header Escape preserves the query for the next search +04:40 +671: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: search fallback uses the normal Yaru-themed entry geometry +04:40 +672: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: focus request targets the themed text entry +04:40 +673: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: Escape clears the query and closes the owner +04:41 +674: loading /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart +04:41 +674: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: row titles, markers and included source identity use selected context +04:44 +675: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking retains source bytes and rejects a now-present candidate +04:44 +676: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: home reassignment preserves other instances and unrelated attributes +04:44 +677: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty instance +04:44 +678: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: groups only +04:44 +679: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing home +04:44 +680: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: library +04:45 +681: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty group insertion +04:45 +682: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing nested topic +04:45 +683: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: first linked topic and home assignment share the same publication guard +04:45 +684: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: title transaction rolls back both files on a concurrent dirty-buffer guard +04:45 +685: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: XML duplicate copies source, changes only root ID, adds basic sibling +04:45 +686: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: sort revalidates title dependencies before publishing the tree +04:46 +687: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: safe deletion rechecks dirty-buffer guard and rolls back earlier edits +04:46 +688: loading /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart +04:50 +688: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: repeated list includes restart numbering in the final PDF +04:50 +689: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF keeps alphabetic starts, separate decimal lists and procedure numbering +04:50 +690: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (unknown) +04:51 +691: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (shared-pdf) +04:51 +692: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=false +04:51 +693: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=true +04:51 +694: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=true) +04:51 +695: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=false) +04:51 +696: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: bundled Typst compiles semantic tables, anchors and glossary footnotes +04:51 +697: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF retains nested chapter bodies and resolves unique internal destinations +04:51 +698: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic links retain their PDF destinations +04:51 +699: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic blank lines remain explicit in Writerside PDF +04:51 +700: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native export composes the selected instance without a container runtime +04:52 +701: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: hidden topics remain content and toc-title stays navigation-only +04:52 +702: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: referenced diagrams keep resolved source and all tab panels reach PDF +04:54 +703: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: pre-cancelled native export never starts PDF compilation +04:54 +704: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unknown Writerside instance is rejected before compilation +04:54 +705: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: resolution errors prevent PDF compilation +04:54 +706: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation errors prevent PDF compilation +04:54 +707: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation warnings are returned to the caller +04:54 +708: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: nonfatal resolution diagnostics are returned as PDF warnings +04:54 +709: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native exporter failures use Writerside failure codes +04:55 +710: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native Writerside fixture compiles end to end with bundled Typst +04:55 +711: loading /home/albert/busystack/busymark/test/src/clipboard_history_test.dart +04:56 +711: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains newest first, deduplicates, removes, clears, and evicts by count +04:56 +712: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: accounts byte budget and rejects an oversized item without truncation +04:56 +713: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: collection off leaves existing entries and blocks new retention +04:56 +714: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external clipboard remains transient until explicitly retained +04:56 +715: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external HTML keeps its rich and interoperable text representations +04:56 +716: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current HTML-only clipboard is eligible without internal ownership +04:56 +717: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current source-only clipboard does not invent plain text +04:56 +718: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal visible text with different structure stays distinct +04:56 +719: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal relative markup from different origins stays distinct +04:56 +720: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains whitespace-only text and owns image bytes immutably +04:56 +721: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: a new provider session starts with no retained history +04:56 +722: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: insertion registry follows latest target and never retains disposed targets +04:56 +723: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: unknown token cannot recover rich data through equal plain text +04:56 +724: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: rich ownership is byte bounded and shares equivalent media +04:56 +725: loading /home/albert/busystack/busymark/test/src/ai_reliability_test.dart +05:00 +725: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator honors Retry-After and caps retry attempts +05:00 +726: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator never retries after partial output +05:00 +727: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator bounds all retries by one total deadline +05:00 +728: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: global permit pool limits requests across different targets +05:00 +729: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: request-id cancellation cannot cancel a newer request for the target +05:00 +730: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: model fallback stays inside the explicitly selected provider +05:00 +731: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Ollama uses an absolute deadline even while bytes keep arriving +05:00 +732: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: cancellation interrupts the preliminary Ollama model request +05:00 +733: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Retry-After supports seconds and HTTP dates without negatives +05:00 +734: loading /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart +05:05 +734: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: partially formatted URL source offsets and text atoms survive save and edit +05:05 +735: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: URL punctuation beside surrounding formatting retains literal and style boundaries +05:05 +736: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: surrounding formatting commits the same URL editing semantics as reopening +05:06 +737: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL trailing literal punctuation survives serialization and reparse +05:06 +738: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: © +05:06 +739: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: & +05:06 +740: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: &* +05:06 +741: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: © +05:06 +742: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: & +05:06 +743: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: &* +05:06 +744: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.commonMark +05:06 +745: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.writersideMarkdown +05:06 +746: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: descendant whitespace preservation prevents ancestor trimming +05:06 +747: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: ordinary and metadata inline emission are byte-identical +05:06 +748: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL offsets and text atoms stay exact through Enter, edit and save/reparse +05:06 +749: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare leaf links use raw URL positions and explicit equal-label links retain delimiters +05:06 +750: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: grouped breaks retain distinct source provenance in one traversal +05:06 +751: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: text-leaf atoms use interior spans and exclude delimiters +05:06 +752: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: table escaping translates leaf spans without changing source +05:06 +753: loading /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart +05:07 +753: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: semantic catalog uses the exact native GTK icon names +05:07 +754: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: initial load batches direction variants and preserves candidate order +05:07 +755: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: explicit Back role survives atomic theme and scale catalog replacement +05:09 +756: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart +05:13 +756: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +05:14 +757: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback +05:14 +758: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +05:14 +759: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error +05:14 +760: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token +05:14 +761: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails +05:15 +762: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache +05:15 +763: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox +05:15 +764: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret +05:15 +765: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry +05:15 +766: loading /home/albert/busystack/busymark/test/src/feedback_service_test.dart +05:19 +766: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: posts the serialized request and returns the server reference +05:19 +767: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps connection failures +05:19 +768: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps response timeouts +05:19 +769: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 429 and preserves Retry-After +05:19 +770: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 400 and 422 to rejected request failures +05:19 +771: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps server and malformed-response failures to server errors +05:19 +772: loading /home/albert/busystack/busymark/test/src/app_settings_test.dart +05:22 +772: /home/albert/busystack/busymark/test/src/app_settings_test.dart: hydration and redundant sidebar requests do not count as user transitions +05:22 +773: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior defaults protect unsaved changes +05:22 +774: /home/albert/busystack/busymark/test/src/app_settings_test.dart: reopen workspace setting is migration-safe +05:22 +775: /home/albert/busystack/busymark/test/src/app_settings_test.dart: document view mode defaults to editor +05:22 +776: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save defaults to enabled +05:22 +777: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings have bounded privacy-preserving defaults +05:22 +778: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings validate persisted ranges and absolute exclusions +05:22 +779: /home/albert/busystack/busymark/test/src/app_settings_test.dart: AI defaults disabled and provider settings never persist secrets +05:22 +780: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction defaults to horizontal +05:22 +781: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction round-trips through settings JSON +05:22 +782: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote images default to blocked +05:22 +783: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspaces default to untrusted +05:22 +784: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy preview visibility migrates to source mode when hidden +05:22 +785: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language defaults to system locale +05:22 +786: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language override persists as locale tag +05:22 +787: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy Norwegian locale tag migrates to Bokmal +05:22 +788: /home/albert/busystack/busymark/test/src/app_settings_test.dart: supported script variants canonicalize to the available catalog +05:22 +789: /home/albert/busystack/busymark/test/src/app_settings_test.dart: regional variants canonicalize and unsupported tags are discarded +05:22 +790: /home/albert/busystack/busymark/test/src/app_settings_test.dart: unused product settings are not persisted +05:22 +791: /home/albert/busystack/busymark/test/src/app_settings_test.dart: file settings store keeps the live JSON intact until publication +05:22 +792: /home/albert/busystack/busymark/test/src/app_settings_test.dart: failed settings publication preserves the previous valid JSON +05:22 +793: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior settings persist +05:22 +794: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save setting persists +05:22 +795: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction setting persists +05:22 +796: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Writerside instance selection and icon color persist across renames +05:22 +797: /home/albert/busystack/busymark/test/src/app_settings_test.dart: initial load preserves user actions made before it completes +05:22 +798: /home/albert/busystack/busymark/test/src/app_settings_test.dart: removing a recent workspace persists without affecting files +05:22 +799: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote image permissions persist globally and per workspace +05:22 +800: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust persists, normalizes, and can be cleared +05:22 +801: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust follows the canonical workspace identity +05:22 +802: /home/albert/busystack/busymark/test/src/app_settings_test.dart: stored Git trust does not follow a replaced canonical path +05:22 +803: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git trust preserves leading and trailing path whitespace +05:22 +804: loading /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart +05:25 +804: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: different live prose still reports incomplete instead of guessed mapping +05:25 +805: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: general Markdown fixture has complete Source and rich spelling mappings +05:26 +806: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: live HTML paste preserves prose and maps spelling before a reload +05:26 +807: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: pasted job maps tables, trailing HTML breaks and address barriers +05:26 +808: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: closing hashes are heading syntax only in an ATX heading +05:26 +809: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal unresolved and invalid apparent links checkable +05:26 +810: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection resolves only parser-recognized links and images across revisions +05:26 +811: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal trailing braces in paragraph and heading prose +05:27 +812: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection binds recognized images to their exact source occurrence +05:27 +813: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection orders formatting from image labels and surrounding body +05:27 +814: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognizes nested syntax inside exact image descriptions +05:27 +815: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes only trailing attributes recognized by the current mode +05:27 +816: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata does not split a surrounding Markdown word +05:27 +817: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection corrects a Markdown body word across independent metadata +05:27 +818: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps repeated and formatted prose without searching globally +05:27 +819: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps entities, escapes, links, and table cells source exact +05:27 +820: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps CRLF and repeated occurrence targets exact +05:27 +821: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses barriers around excluded authored syntax +05:27 +822: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes a fenced code block nested in a block quote +05:27 +823: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps quoted list fences across blank continuations +05:27 +824: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection counts tab columns in list fence continuations +05:27 +825: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps unmatched delimiters and removes only parsed formatting +05:27 +826: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps quoted HTML attribute values from quote boundaries +05:27 +827: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection preserves semantic HTML boundaries and multiline exclusions +05:27 +828: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps comparison prose and scans multiline HTML tags exactly +05:27 +829: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps escaped multiline tag-like prose checkable +05:27 +830: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection removes delimiters when a correction empties formatting +05:27 +831: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses parser-compatible percentages escapes and code spans +05:27 +832: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection retains complete formatting ancestors across opaque children +05:27 +833: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection validates formatting gaps in regional coordinates +05:27 +834: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection accepts canonically equivalent mapped replacement text +05:27 +835: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link titles use exact quote boundaries before trailing whitespace +05:27 +836: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized link and image titles use their authored boundaries +05:27 +837: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection destination-only links and images do not expose a false title +05:27 +838: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized multiline links consume one mapped occurrence +05:27 +839: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline link labels keep container prefixes out of prose +05:27 +840: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline mapped labels agree with rich prose and corrections +05:27 +841: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection inline HTML breaks in link labels agree with rich prose +05:27 +842: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection code-styled image alternative text agrees with rich image field +05:27 +843: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code and Markdown hard breaks retain image alt semantics +05:27 +844: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code hard-break corrections retain authored source +05:27 +845: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: list +05:27 +846: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: quote +05:27 +847: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: crlf-after-content +05:27 +848: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: combined-quote-list +05:27 +849: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: nested-image +05:27 +850: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-inner-spaces +05:27 +851: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-continuation-space +05:27 +852: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: literal-code-syntax +05:27 +853: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested image code inherits the enclosing container mapping +05:27 +854: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link title keeps literal inline-break markup as scalar text +05:27 +855: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline code inside a link label stays opaque +05:27 +856: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline nested-image destination stays outside outer prose +05:27 +857: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested label syntax owns its breaks before outer prose resumes +05:27 +858: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata scalar tag-like text remains checkable +05:27 +859: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection parenthesized title replacement escapes its own delimiter +05:27 +860: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection semantic leaf blocks define independent complete prose runs +05:27 +861: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection projects semantic HTML prose and trusts parser math nodes +05:27 +862: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection large formatting-heavy projection and correction stay bounded +05:28 +863: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps inline body words intact across readable attributes +05:28 +864: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection corrects XML body and encoded metadata independently +05:28 +865: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes visible addresses in encoded text and CDATA +05:28 +866: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps text, entities, CDATA, and positive attributes +05:28 +867: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection reports malformed XML as incomplete without guessed targets +05:28 +868: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection clips CDATA occurrences while preserving repeated surrounding text +05:28 +869: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps line breaks, excludes variables, and includes controls +05:28 +870: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes entity-encoded variables after XML decoding +05:28 +871: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps decomposed Unicode in XML and CDATA corrections +05:28 +872: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction nested image descriptions retain recursive spelling policy +05:28 +873: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed rich correction preserves images beside math +05:28 +874: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed table image and math correction preserves cell source +05:28 +875: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction neighboring prose in a math image field keeps exact source +05:28 +876: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image ownership continues across ordinary and math fields +05:28 +877: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image description spelling agrees across source and rich fields +05:28 +878: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich image spelling changes only the mapped source word +05:28 +879: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction container image code corrects after continuation in rich editor +05:28 +880: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction code-styled image alternative corrects through rich controller +05:28 +881: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image code punctuation correction retains literal code meaning +05:28 +882: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction multiline link label correction uses rich controller mapping +05:28 +883: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: # Introduction + +- [Overview](#overview) + - [Motivation](#motivation) +- [Discussion](#discussion) + + +## Overview + +helo **world** + +helo world + +05:28 +884: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - helo + - helo + +helo + +05:28 +885: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: + +helo + +05:28 +886: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction escaped comment prose is still an editable rich spelling field +05:28 +887: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps hard breaks by structural field identity +05:28 +888: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction removes a rich formatting container emptied by deletion +05:28 +889: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction retains current source anchors and source-only title targets +05:28 +890: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich links keep all title delimiters source-only +05:28 +891: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves formatting ownership across leaves +05:28 +892: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction keeps trailing formatting on its original leaf +05:28 +893: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves link destination and table structure +05:28 +894: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps and corrects a table-cell field containing inline math +05:28 +895: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects transformed prose in table math source fields +05:28 +896: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects formatted and encoded prose in math source fields +05:28 +897: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction owns every nested wrapper in paragraph math-source fields +05:28 +898: loading /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart +05:30 +898: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: validates availability, finite normalized RGB and payload shape +05:30 +899: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: attaches before snapshot and rejects a superseded snapshot +05:30 +900: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: replays current value, deduplicates and safely resubscribes +05:30 +901: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: missing channels are unavailable and cancellable +05:30 +902: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while snapshot is pending discards its result +05:30 +903: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: silent channels expire locally and unsuperseded late snapshot recovers +05:30 +904: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: new unavailable event invalidates older read and deadline +05:30 +905: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while both native calls pending rejects late errors +05:30 +906: loading /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart +05:32 +906: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project scaffold and loads without diagnostics +05:36 +907: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: derives the starter topic filename from its title +05:36 +908: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project with Unicode directory and instance ID +05:36 +909: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: escapes XML-sensitive project names in writerside.cfg +05:36 +910: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: sanitizes start topic title as plain Markdown heading text +05:36 +911: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects existing non-empty target directory and does not overwrite files +05:36 +912: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects an existing project target symlink without writing through it +05:36 +913: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: canonicalizes a project parent selected through a symlink +05:36 +914: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects unsafe create request names before writing files +05:36 +915: loading /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart +05:38 +915: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: cover edits survive toggling and format changes, validate, reset, and do not leak through preferences +05:41 +916: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: instance changes refresh automatic fields without replacing edited or cleared text +05:42 +917: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: settings without a document show only the reusable cover preference +05:42 +918: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Markdown forwards current defaults and export-owned text +05:43 +919: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Writerside forwards current defaults and export-owned text +05:44 +920: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Markdown forwards current defaults and export-owned text +05:44 +921: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Writerside forwards current defaults and export-owned text +05:45 +922: loading /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart +05:46 +922: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: README screenshot references resolve to checked-in images +05:46 +923: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: release metadata is consistent and production-grade +05:46 +924: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: web engines are exact, checksummed, licensed, and installed offline +05:46 +925: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: D2 is checksum pinned for amd64 and installed with notices +05:46 +926: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: Linux CI builds and exercises the bundled visualization stack +05:46 +927: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: only offscreen WebKit views disable hardware compositing +05:46 +928: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: WebKit host and harness disable persistence and external resources +05:46 +929: loading /home/albert/busystack/busymark/test/src/workspace_safety_test.dart +05:47 +929: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes dialog aborts destructive navigation on cancel +05:48 +930: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discarding unsaved changes prevents repeated prompts +05:48 +931: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: destructive dialog buttons stay readable on dark controls +05:48 +932: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes Discard action renders white in the dark dialog +05:48 +933: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overwrite confirmation stays pinned to the document being saved +05:48 +934: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overlapping manual saves write the newer requested revision +05:48 +935: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: save completes for its buffer when the active document changes +05:48 +936: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As stays pinned while the file picker is open +05:48 +937: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancel does not overwrite an existing normalized markdown path +05:48 +938: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As overwrites an existing normalized markdown path only after confirmation +05:48 +939: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancels when the document changes during path lookup +05:48 +940: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discard confirmation cannot discard a newly active document +05:48 +941: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: workspace continuation resolves inactive dirty documents too +05:48 +942: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can save it while another stays dirty +05:49 +943: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can discard it while another stays dirty +05:49 +944: loading /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart +05:50 +944: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar update retries native channel initialization after early miss +05:50 +945: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar forwards text direction updates +05:50 +946: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar action events preserve repeated identical clicks +05:50 +947: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: native search events and focus request keep semantic meaning +05:50 +948: loading /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart +05:56 +948: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source pastes a web layout table as a complete document +05:57 +949: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (current) +05:58 +950: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (find next) +05:58 +951: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (current) +05:58 +952: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (find next) +05:59 +953: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3 matches +05:59 +954: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3000 matches +06:00 +955: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search navigation retains a later window when unfolding +06:01 +956: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling review caret uses full offsets after an earlier fold +06:01 +957: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling reveal unfolds and retains the word selection +06:01 +958: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Markdown spelling painter ignores selection and tracks composition +06:01 +959: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Writerside Markdown spelling painter ignores selection and tracks composition +06:01 +960: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source XML spelling painter ignores selection and tracks composition +06:01 +961: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI action applies a selection through the editor path +06:01 +962: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu targets the pointer occurrence exactly +06:01 +963: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling language uses a checked native submenu without a dialog +06:02 +964: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu converts folded offsets to full source +06:02 +965: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI applies a user-selected insertion target +06:02 +966: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor remains LTR inside an Arabic interface +06:02 +967: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor shows large-file fallback status +06:24 +968: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor renders visible diagnostic gutter tooltip +06:24 +969: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search localizes an invalid regular expression +06:24 +970: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search reports no current match before navigation +06:24 +971: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source fold and search options use semantic icon buttons +06:25 +972: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace All is one editor operation +06:25 +973: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace and Find Next selects the logical next match +06:25 +974: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: shifted folded regions are persisted after edit debounce +06:25 +975: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source sessions ignore render notifications and coalesce scrolling +06:25 +976: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor gives glyphs, caret, and selection breathing room +06:25 +977: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading selections cover styled glyphs evenly +06:25 +978: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading caret advances after a typed space +06:25 +979: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source caret follows an immediate end-of-file contraction +06:25 +980: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Tab indents selected Source lines without replacing text +06:25 +981: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source symbol shortcuts dispatch the full source caret +06:25 +982: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Ctrl+Space opens project-aware source completion +06:26 +983: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: wordWrap false uses one horizontally scrollable layout +06:26 +984: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source input preserves an active IME composing range +06:26 +985: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Enter to the input method +06:26 +986: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Tab to the input method +06:26 +987: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers autocomplete Escape to the input method +06:26 +988: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers the autocomplete shortcut +06:26 +989: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: focused Source accepts authoritative parent text updates +06:26 +990: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source keyboard copy retains exact whitespace once +06:26 +991: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source normal HTML paste converts while plain paste uses text +06:26 +992: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source CRLF structured paste is one exact undo transaction +06:26 +993: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source plain paste keeps LF bytes in a CRLF document +06:26 +994: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste keeps surrounding text inline +06:26 +995: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured block paste adds Markdown boundaries +06:26 +996: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks keep boundaries at every position + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#225bf(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#359da, undoController: UndoHistoryController#fbf6e(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#f4baa(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#24146]], state: _TextFieldState#00dda), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#76e5a +The hit test result at that offset is: HitTestResult(RenderMouseRegion#a76bc@Offset(425.5, 300.0), RenderSemanticsAnnotations#84d43@Offset(425.5, 300.0), RenderPointerListener#d2a23@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c8d47@Offset(425.5, 300.0), RenderExcludeSemantics#446e1@Offset(425.5, 300.0), RenderBlockSemantics#33b84@Offset(425.5, 300.0), RenderIgnorePointer#06b5a@Offset(425.5, 300.0), RenderSemanticsAnnotations#a0cc8@Offset(425.5, 300.0), _RenderTheater#8e663@Offset(425.5, 300.0), RenderAbsorbPointer#3d4ef@Offset(425.5, 300.0), RenderPointerListener#4c5ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#517ae@Offset(425.5, 300.0), RenderCustomPaint#87b01@Offset(425.5, 300.0), RenderSemanticsAnnotations#b3ed2@Offset(425.5, 300.0), RenderSemanticsAnnotations#d7f97@Offset(425.5, 300.0), RenderSemanticsAnnotations#cf42b@Offset(425.5, 300.0), RenderTapRegionSurface#83a9a@Offset(425.5, 300.0), RenderSemanticsAnnotations#78eaf@Offset(425.5, 300.0), RenderSemanticsAnnotations#92831@Offset(425.5, 300.0), HitTestEntry#61cb0(_ReusableRenderView#15fff), HitTestEntry#ec2a1()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2597:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:26 +997: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete heading list and code blocks retain structure at every paragraph position + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#89f57(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b81a4, undoController: UndoHistoryController#16081(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#af290(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#f4c32]], state: _TextFieldState#5e3c7), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#de15c +The hit test result at that offset is: HitTestResult(RenderMouseRegion#eb236@Offset(425.5, 300.0), RenderSemanticsAnnotations#6ad61@Offset(425.5, 300.0), RenderPointerListener#378c6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#37179@Offset(425.5, 300.0), RenderExcludeSemantics#d730d@Offset(425.5, 300.0), RenderBlockSemantics#ec7cd@Offset(425.5, 300.0), RenderIgnorePointer#c483d@Offset(425.5, 300.0), RenderSemanticsAnnotations#0843f@Offset(425.5, 300.0), _RenderTheater#ea447@Offset(425.5, 300.0), RenderAbsorbPointer#aee3c@Offset(425.5, 300.0), RenderPointerListener#3a06d@Offset(425.5, 300.0), RenderSemanticsAnnotations#3bc51@Offset(425.5, 300.0), RenderCustomPaint#52ec8@Offset(425.5, 300.0), RenderSemanticsAnnotations#89fca@Offset(425.5, 300.0), RenderSemanticsAnnotations#b0bbf@Offset(425.5, 300.0), RenderSemanticsAnnotations#8895d@Offset(425.5, 300.0), RenderTapRegionSurface#72cc6@Offset(425.5, 300.0), RenderSemanticsAnnotations#007f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#14f88@Offset(425.5, 300.0), HitTestEntry#6b471(_ReusableRenderView#15fff), HitTestEntry#77269()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#89f57(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b81a4, undoController: UndoHistoryController#16081(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#af290(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#f4c32]], state: _TextFieldState#5e3c7), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#de15c +The hit test result at that offset is: HitTestResult(RenderMouseRegion#e1cde@Offset(425.5, 300.0), RenderSemanticsAnnotations#98b76@Offset(425.5, 300.0), RenderPointerListener#3d318@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c3e98@Offset(425.5, 300.0), RenderExcludeSemantics#ab2d4@Offset(425.5, 300.0), RenderBlockSemantics#a036d@Offset(425.5, 300.0), RenderIgnorePointer#1a161@Offset(425.5, 300.0), RenderSemanticsAnnotations#048d3@Offset(425.5, 300.0), _RenderTheater#ea447@Offset(425.5, 300.0), RenderAbsorbPointer#aee3c@Offset(425.5, 300.0), RenderPointerListener#3a06d@Offset(425.5, 300.0), RenderSemanticsAnnotations#3bc51@Offset(425.5, 300.0), RenderCustomPaint#52ec8@Offset(425.5, 300.0), RenderSemanticsAnnotations#89fca@Offset(425.5, 300.0), RenderSemanticsAnnotations#b0bbf@Offset(425.5, 300.0), RenderSemanticsAnnotations#8895d@Offset(425.5, 300.0), RenderTapRegionSurface#72cc6@Offset(425.5, 300.0), RenderSemanticsAnnotations#007f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#14f88@Offset(425.5, 300.0), HitTestEntry#603e7(_ReusableRenderView#15fff), HitTestEntry#7ca25()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#89f57(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b81a4, undoController: UndoHistoryController#16081(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#af290(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#f4c32]], state: _TextFieldState#5e3c7), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#de15c +The hit test result at that offset is: HitTestResult(RenderMouseRegion#dec27@Offset(425.5, 300.0), RenderSemanticsAnnotations#97f66@Offset(425.5, 300.0), RenderPointerListener#dda27@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bc35d@Offset(425.5, 300.0), RenderExcludeSemantics#8c12b@Offset(425.5, 300.0), RenderBlockSemantics#702f0@Offset(425.5, 300.0), RenderIgnorePointer#04f4c@Offset(425.5, 300.0), RenderSemanticsAnnotations#e5c75@Offset(425.5, 300.0), _RenderTheater#ea447@Offset(425.5, 300.0), RenderAbsorbPointer#aee3c@Offset(425.5, 300.0), RenderPointerListener#3a06d@Offset(425.5, 300.0), RenderSemanticsAnnotations#3bc51@Offset(425.5, 300.0), RenderCustomPaint#52ec8@Offset(425.5, 300.0), RenderSemanticsAnnotations#89fca@Offset(425.5, 300.0), RenderSemanticsAnnotations#b0bbf@Offset(425.5, 300.0), RenderSemanticsAnnotations#8895d@Offset(425.5, 300.0), RenderTapRegionSurface#72cc6@Offset(425.5, 300.0), RenderSemanticsAnnotations#007f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#14f88@Offset(425.5, 300.0), HitTestEntry#35883(_ReusableRenderView#15fff), HitTestEntry#676f1()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:27 +998: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete-block split preserves styles caret and one-step Undo +06:27 +999: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source boundary-crossing replacements restore text selection and caret +06:27 +1000: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich inline paste composes with enclosing inline syntax + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#868fc(TextEditingValue(text: ┤[leftright](https://example.test)├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#080b0, undoController: UndoHistoryController#01f20(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#55c90(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#84844]], state: _TextFieldState#ab260), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#fd3b1 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#1e2d1@Offset(425.5, 300.0), RenderSemanticsAnnotations#94919@Offset(425.5, 300.0), RenderPointerListener#6fa4a@Offset(425.5, 300.0), RenderSemanticsGestureHandler#b81fa@Offset(425.5, 300.0), RenderExcludeSemantics#5ec9a@Offset(425.5, 300.0), RenderBlockSemantics#bbea2@Offset(425.5, 300.0), RenderIgnorePointer#ebdd5@Offset(425.5, 300.0), RenderSemanticsAnnotations#38339@Offset(425.5, 300.0), _RenderTheater#5f668@Offset(425.5, 300.0), RenderAbsorbPointer#8e8e6@Offset(425.5, 300.0), RenderPointerListener#6de6d@Offset(425.5, 300.0), RenderSemanticsAnnotations#6f1cd@Offset(425.5, 300.0), RenderCustomPaint#74c5a@Offset(425.5, 300.0), RenderSemanticsAnnotations#d6abb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4ca6c@Offset(425.5, 300.0), RenderSemanticsAnnotations#356df@Offset(425.5, 300.0), RenderTapRegionSurface#997ad@Offset(425.5, 300.0), RenderSemanticsAnnotations#f7879@Offset(425.5, 300.0), RenderSemanticsAnnotations#677d0@Offset(425.5, 300.0), HitTestEntry#88eaf(_ReusableRenderView#15fff), HitTestEntry#ab9fc()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2945:28) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2999:22) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:27 +1001: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline reconciliation ignores separate destination runs +06:27 +1002: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source adjacent-style reconciliation preserves literal code delimiters +06:27 +1003: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation preserves a partially consumed delimiter +06:27 +1004: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table inline reconciliation is confined to the selected cell +06:27 +1005: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table keeps multiple independent incoming style runs +06:27 +1006: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source does not treat multiple incoming bold runs as one wrapper +06:27 +1007: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences with paragraph context +06:27 +1008: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences inside table cells +06:27 +1009: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table sequence reconciliation retains authored delimiters +06:27 +1010: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation retains mixed nested styles +06:30 +1011: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves hyperlink semantics in table cells +06:30 +1012: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline mapping handles links multiline styles and literal syntax +06:30 +1013: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret mapping preserves literal bang before a following link +06:30 +1014: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits resolved reference links without changing definitions +06:30 +1015: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits multiline blockquote links without exposing prefixes +06:30 +1016: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves occurrence-specific hard-break provenance +06:31 +1017: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret remains between pasted and retained hard breaks +06:31 +1018: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste after an HTML break does not retain its layout newline +06:31 +1019: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste preserves enclosing inline HTML as one run +06:31 +1020: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source system and history rich paste map normalized HTML whitespace +06:31 +1021: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source syntax-only availability agrees with textual fallback execution +06:31 +1022: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source terminal structured failure blocks availability and text fallback +06:31 +1023: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste remaps generated grouped hard breaks +06:31 +1024: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source remaps reopened grouped breaks in a CRLF container +06:31 +1025: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps nested and reference links through container prefixes +06:31 +1026: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves autolink destination semantics +06:31 +1027: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: invalid email-like text does not invalidate another link target +06:31 +1028: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste distinguishes authored and generated URL content +06:32 +1029: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves parser-folded reference identity +06:32 +1030: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source same-destination paste preserves parser-folded reference identity +06:32 +1031: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste retains the provenance of surviving line breaks +06:32 +1032: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste keeps label break provenance independent of link titles +06:32 +1033: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: normalized code-span breaks do not shift surviving link provenance +06:32 +1034: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste combines folded references with surviving break provenance +06:32 +1035: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste tracks old and new breaks independently +06:32 +1036: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reference-link label replacement retains definitions +06:32 +1037: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps escaped brackets in collapsed and shortcut references +06:33 +1038: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links around unmatched and code-span backticks +06:33 +1039: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links with escaped and balanced label brackets +06:33 +1040: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline wrapper mapping stays bounded for paste and availability +06:34 +1041: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps all retained break offsets in one serialization traversal +06:35 +1042: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source AST boundary mapping stays linear for availability and paste +06:35 +1043: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table paste preserves multiline link titles +06:35 +1044: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table boundary paste preserves styles caret and one-step history +06:35 +1045: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste handles every line boundary +06:36 +1046: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline paste preserves unrelated syntax whitespace and caret + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#a508d(TextEditingValue(text: ┤__leftright__├, selection: TextSelection.collapsed(offset: 10, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#56299, undoController: UndoHistoryController#968bc(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#f110e(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#21684]], state: _TextFieldState#6bc43), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#c3fb5 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#5e618@Offset(425.5, 300.0), RenderSemanticsAnnotations#f52e2@Offset(425.5, 300.0), RenderPointerListener#52e46@Offset(425.5, 300.0), RenderSemanticsGestureHandler#74345@Offset(425.5, 300.0), RenderExcludeSemantics#10673@Offset(425.5, 300.0), RenderBlockSemantics#8fe2c@Offset(425.5, 300.0), RenderIgnorePointer#3505e@Offset(425.5, 300.0), RenderSemanticsAnnotations#597d3@Offset(425.5, 300.0), _RenderTheater#79616@Offset(425.5, 300.0), RenderAbsorbPointer#7f477@Offset(425.5, 300.0), RenderPointerListener#b237a@Offset(425.5, 300.0), RenderSemanticsAnnotations#b0575@Offset(425.5, 300.0), RenderCustomPaint#f4c8b@Offset(425.5, 300.0), RenderSemanticsAnnotations#66007@Offset(425.5, 300.0), RenderSemanticsAnnotations#1d4e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#77fa2@Offset(425.5, 300.0), RenderTapRegionSurface#ce20b@Offset(425.5, 300.0), RenderSemanticsAnnotations#6e51f@Offset(425.5, 300.0), RenderSemanticsAnnotations#a50e1@Offset(425.5, 300.0), HitTestEntry#a537a(_ReusableRenderView#15fff), HitTestEntry#c291a()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6908:28) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6936:20) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:36 +1047: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table cells reconcile surrounding inline styles +06:36 +1048: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciliation reuses table-normalized inline content +06:36 +1049: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source whole-block replacement differs from surviving table and code contexts + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#6857a(TextEditingValue(text: ┤```text + old + ``` + ├, selection: TextSelection.collapsed(offset: 16, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#34930, undoController: UndoHistoryController#9d0a7(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5aa88(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#033c3]], state: _TextFieldState#f2a36), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#1bd01 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#45276@Offset(425.5, 300.0), RenderSemanticsAnnotations#08a56@Offset(425.5, 300.0), RenderPointerListener#8c312@Offset(425.5, 300.0), RenderSemanticsGestureHandler#36656@Offset(425.5, 300.0), RenderExcludeSemantics#fd9c5@Offset(425.5, 300.0), RenderBlockSemantics#54070@Offset(425.5, 300.0), RenderIgnorePointer#325e9@Offset(425.5, 300.0), RenderSemanticsAnnotations#49904@Offset(425.5, 300.0), _RenderTheater#77670@Offset(425.5, 300.0), RenderAbsorbPointer#df8b0@Offset(425.5, 300.0), RenderPointerListener#673dd@Offset(425.5, 300.0), RenderSemanticsAnnotations#9d9ab@Offset(425.5, 300.0), RenderCustomPaint#ec7a8@Offset(425.5, 300.0), RenderSemanticsAnnotations#b1fc1@Offset(425.5, 300.0), RenderSemanticsAnnotations#66230@Offset(425.5, 300.0), RenderSemanticsAnnotations#e26a9@Offset(425.5, 300.0), RenderTapRegionSurface#0accb@Offset(425.5, 300.0), RenderSemanticsAnnotations#c5cf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#77931@Offset(425.5, 300.0), HitTestEntry#08c9d(_ReusableRenderView#15fff), HitTestEntry#51871()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7158:25) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:36 +1050: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paragraph markers escape only at block starts + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#61ccf(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#fe050, undoController: UndoHistoryController#8c2c8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#e2ebd(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#a56f3]], state: _TextFieldState#854d3), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#dee79 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#cc983@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0eb4@Offset(425.5, 300.0), RenderPointerListener#8f298@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bc3b4@Offset(425.5, 300.0), RenderExcludeSemantics#08e92@Offset(425.5, 300.0), RenderBlockSemantics#f6d4b@Offset(425.5, 300.0), RenderIgnorePointer#15d01@Offset(425.5, 300.0), RenderSemanticsAnnotations#95853@Offset(425.5, 300.0), _RenderTheater#9f47e@Offset(425.5, 300.0), RenderAbsorbPointer#71867@Offset(425.5, 300.0), RenderPointerListener#0c67e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ae011@Offset(425.5, 300.0), RenderCustomPaint#761d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#719f9@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b2be@Offset(425.5, 300.0), RenderSemanticsAnnotations#3edad@Offset(425.5, 300.0), RenderTapRegionSurface#4f7e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#22521@Offset(425.5, 300.0), RenderSemanticsAnnotations#812fd@Offset(425.5, 300.0), HitTestEntry#efbb8(_ReusableRenderView#15fff), HitTestEntry#8484d()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#61ccf(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#fe050, undoController: UndoHistoryController#8c2c8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#e2ebd(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#a56f3]], state: _TextFieldState#854d3), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#dee79 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#061dd@Offset(425.5, 300.0), RenderSemanticsAnnotations#eb24d@Offset(425.5, 300.0), RenderPointerListener#6433e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#a8a2e@Offset(425.5, 300.0), RenderExcludeSemantics#abea6@Offset(425.5, 300.0), RenderBlockSemantics#50791@Offset(425.5, 300.0), RenderIgnorePointer#26af4@Offset(425.5, 300.0), RenderSemanticsAnnotations#ac2c5@Offset(425.5, 300.0), _RenderTheater#9f47e@Offset(425.5, 300.0), RenderAbsorbPointer#71867@Offset(425.5, 300.0), RenderPointerListener#0c67e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ae011@Offset(425.5, 300.0), RenderCustomPaint#761d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#719f9@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b2be@Offset(425.5, 300.0), RenderSemanticsAnnotations#3edad@Offset(425.5, 300.0), RenderTapRegionSurface#4f7e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#22521@Offset(425.5, 300.0), RenderSemanticsAnnotations#812fd@Offset(425.5, 300.0), HitTestEntry#248d1(_ReusableRenderView#15fff), HitTestEntry#1cd8d()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#61ccf(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#fe050, undoController: UndoHistoryController#8c2c8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#e2ebd(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#a56f3]], state: _TextFieldState#854d3), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#dee79 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#86184@Offset(425.5, 300.0), RenderSemanticsAnnotations#e8640@Offset(425.5, 300.0), RenderPointerListener#52805@Offset(425.5, 300.0), RenderSemanticsGestureHandler#b1fa0@Offset(425.5, 300.0), RenderExcludeSemantics#00ee4@Offset(425.5, 300.0), RenderBlockSemantics#b6d96@Offset(425.5, 300.0), RenderIgnorePointer#fd3bc@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1e7d@Offset(425.5, 300.0), _RenderTheater#9f47e@Offset(425.5, 300.0), RenderAbsorbPointer#71867@Offset(425.5, 300.0), RenderPointerListener#0c67e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ae011@Offset(425.5, 300.0), RenderCustomPaint#761d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#719f9@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b2be@Offset(425.5, 300.0), RenderSemanticsAnnotations#3edad@Offset(425.5, 300.0), RenderTapRegionSurface#4f7e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#22521@Offset(425.5, 300.0), RenderSemanticsAnnotations#812fd@Offset(425.5, 300.0), HitTestEntry#3e382(_ReusableRenderView#15fff), HitTestEntry#2ca1f()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7247:24) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#61ccf(TextEditingValue(text: ┤- right├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#fe050, undoController: UndoHistoryController#8c2c8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#e2ebd(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#a56f3]], state: _TextFieldState#854d3), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#dee79 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#67e24@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f048@Offset(425.5, 300.0), RenderPointerListener#23448@Offset(425.5, 300.0), RenderSemanticsGestureHandler#1f0a5@Offset(425.5, 300.0), RenderExcludeSemantics#e8545@Offset(425.5, 300.0), RenderBlockSemantics#9b886@Offset(425.5, 300.0), RenderIgnorePointer#38fec@Offset(425.5, 300.0), RenderSemanticsAnnotations#d402a@Offset(425.5, 300.0), _RenderTheater#9f47e@Offset(425.5, 300.0), RenderAbsorbPointer#71867@Offset(425.5, 300.0), RenderPointerListener#0c67e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ae011@Offset(425.5, 300.0), RenderCustomPaint#761d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#719f9@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b2be@Offset(425.5, 300.0), RenderSemanticsAnnotations#3edad@Offset(425.5, 300.0), RenderTapRegionSurface#4f7e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#22521@Offset(425.5, 300.0), RenderSemanticsAnnotations#812fd@Offset(425.5, 300.0), HitTestEntry#59182(_ReusableRenderView#15fff), HitTestEntry#40212()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7277:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:36 +1051: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native inline paste preserves edge and only whitespace + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#3d379(TextEditingValue(text: ┤leftDELETEright├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#46e9e, undoController: UndoHistoryController#fd9b8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#3fb2c(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#023e1]], state: _TextFieldState#97004), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#5a5c3 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#80979@Offset(425.5, 300.0), RenderSemanticsAnnotations#0defe@Offset(425.5, 300.0), RenderPointerListener#d4d35@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c9b04@Offset(425.5, 300.0), RenderExcludeSemantics#94656@Offset(425.5, 300.0), RenderBlockSemantics#9da12@Offset(425.5, 300.0), RenderIgnorePointer#c6e3f@Offset(425.5, 300.0), RenderSemanticsAnnotations#1793e@Offset(425.5, 300.0), _RenderTheater#b6079@Offset(425.5, 300.0), RenderAbsorbPointer#03434@Offset(425.5, 300.0), RenderPointerListener#1b1e3@Offset(425.5, 300.0), RenderSemanticsAnnotations#61ab0@Offset(425.5, 300.0), RenderCustomPaint#a84c3@Offset(425.5, 300.0), RenderSemanticsAnnotations#cf82c@Offset(425.5, 300.0), RenderSemanticsAnnotations#01ff8@Offset(425.5, 300.0), RenderSemanticsAnnotations#50710@Offset(425.5, 300.0), RenderTapRegionSurface#4ece9@Offset(425.5, 300.0), RenderSemanticsAnnotations#f16a5@Offset(425.5, 300.0), RenderSemanticsAnnotations#763e6@Offset(425.5, 300.0), HitTestEntry#6bac4(_ReusableRenderView#15fff), HitTestEntry#d0f1d()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7379:24) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:36 +1052: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native rich edge whitespace repeats and restores real Undo state +06:37 +1053: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paste respects table-cell semantics +06:37 +1054: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps a final table cell ending in an escaped pipe +06:37 +1055: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks preserve list and quote containers +06:37 +1056: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks remain in containers at every content boundary + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤> item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#56435 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#0126f@Offset(425.5, 300.0), RenderSemanticsAnnotations#217e1@Offset(425.5, 300.0), RenderPointerListener#07bf3@Offset(425.5, 300.0), RenderSemanticsGestureHandler#951b5@Offset(425.5, 300.0), RenderExcludeSemantics#97bd5@Offset(425.5, 300.0), RenderBlockSemantics#31624@Offset(425.5, 300.0), RenderIgnorePointer#79338@Offset(425.5, 300.0), RenderSemanticsAnnotations#ea468@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#bd646(_ReusableRenderView#15fff), HitTestEntry#9d4f5()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤> item + ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#56435 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#cfe46@Offset(425.5, 300.0), RenderSemanticsAnnotations#514f6@Offset(425.5, 300.0), RenderPointerListener#cb540@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bf03a@Offset(425.5, 300.0), RenderExcludeSemantics#f4cab@Offset(425.5, 300.0), RenderBlockSemantics#15922@Offset(425.5, 300.0), RenderIgnorePointer#7b160@Offset(425.5, 300.0), RenderSemanticsAnnotations#b783d@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#498f6(_ReusableRenderView#15fff), HitTestEntry#a54f0()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤- item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#56435 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#a55d7@Offset(425.5, 300.0), RenderSemanticsAnnotations#f02b9@Offset(425.5, 300.0), RenderPointerListener#1daf0@Offset(425.5, 300.0), RenderSemanticsGestureHandler#ab9e1@Offset(425.5, 300.0), RenderExcludeSemantics#8e689@Offset(425.5, 300.0), RenderBlockSemantics#3d523@Offset(425.5, 300.0), RenderIgnorePointer#85a92@Offset(425.5, 300.0), RenderSemanticsAnnotations#b3465@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#e532a(_ReusableRenderView#15fff), HitTestEntry#2c58c()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤- item + ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#56435 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#b35f6@Offset(425.5, 300.0), RenderSemanticsAnnotations#18ae7@Offset(425.5, 300.0), RenderPointerListener#3e2cf@Offset(425.5, 300.0), RenderSemanticsGestureHandler#359df@Offset(425.5, 300.0), RenderExcludeSemantics#5f63b@Offset(425.5, 300.0), RenderBlockSemantics#de4ad@Offset(425.5, 300.0), RenderIgnorePointer#40a69@Offset(425.5, 300.0), RenderSemanticsAnnotations#1a69b@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#8f461(_ReusableRenderView#15fff), HitTestEntry#2a8f1()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤> 3. item├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#56435 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#9b54e@Offset(425.5, 300.0), RenderSemanticsAnnotations#3ed76@Offset(425.5, 300.0), RenderPointerListener#c50aa@Offset(425.5, 300.0), RenderSemanticsGestureHandler#2ae8d@Offset(425.5, 300.0), RenderExcludeSemantics#125ee@Offset(425.5, 300.0), RenderBlockSemantics#4bcc3@Offset(425.5, 300.0), RenderIgnorePointer#a92f6@Offset(425.5, 300.0), RenderSemanticsAnnotations#391e6@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#93c00(_ReusableRenderView#15fff), HitTestEntry#bc39e()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:37 +1057: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks retain continuation-line ancestors + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#a2b69(TextEditingValue(text: ┤- first + leftright + ├, selection: TextSelection.collapsed(offset: 20, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#f146d, undoController: UndoHistoryController#1d616(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#4f818(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#40596]], state: _TextFieldState#03d21), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#827c3 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#be33c@Offset(425.5, 300.0), RenderSemanticsAnnotations#7f2bd@Offset(425.5, 300.0), RenderPointerListener#10db6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#ad10c@Offset(425.5, 300.0), RenderExcludeSemantics#fa731@Offset(425.5, 300.0), RenderBlockSemantics#dbebf@Offset(425.5, 300.0), RenderIgnorePointer#ac782@Offset(425.5, 300.0), RenderSemanticsAnnotations#59026@Offset(425.5, 300.0), _RenderTheater#a9403@Offset(425.5, 300.0), RenderAbsorbPointer#fefb6@Offset(425.5, 300.0), RenderPointerListener#8d82b@Offset(425.5, 300.0), RenderSemanticsAnnotations#31e65@Offset(425.5, 300.0), RenderCustomPaint#05b09@Offset(425.5, 300.0), RenderSemanticsAnnotations#8e6ca@Offset(425.5, 300.0), RenderSemanticsAnnotations#6c8ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#9da0b@Offset(425.5, 300.0), RenderTapRegionSurface#61864@Offset(425.5, 300.0), RenderSemanticsAnnotations#4c5df@Offset(425.5, 300.0), RenderSemanticsAnnotations#56379@Offset(425.5, 300.0), HitTestEntry#91f5a(_ReusableRenderView#15fff), HitTestEntry#db978()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#a2b69(TextEditingValue(text: ┤- first + + leftright + ├, selection: TextSelection.collapsed(offset: 21, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#f146d, undoController: UndoHistoryController#1d616(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#4f818(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#40596]], state: _TextFieldState#03d21), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#827c3 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#6bbdf@Offset(425.5, 300.0), RenderSemanticsAnnotations#e1211@Offset(425.5, 300.0), RenderPointerListener#07f2c@Offset(425.5, 300.0), RenderSemanticsGestureHandler#e70bb@Offset(425.5, 300.0), RenderExcludeSemantics#3a6d8@Offset(425.5, 300.0), RenderBlockSemantics#06abe@Offset(425.5, 300.0), RenderIgnorePointer#3862a@Offset(425.5, 300.0), RenderSemanticsAnnotations#4e2b0@Offset(425.5, 300.0), _RenderTheater#a9403@Offset(425.5, 300.0), RenderAbsorbPointer#fefb6@Offset(425.5, 300.0), RenderPointerListener#8d82b@Offset(425.5, 300.0), RenderSemanticsAnnotations#31e65@Offset(425.5, 300.0), RenderCustomPaint#05b09@Offset(425.5, 300.0), RenderSemanticsAnnotations#8e6ca@Offset(425.5, 300.0), RenderSemanticsAnnotations#6c8ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#9da0b@Offset(425.5, 300.0), RenderTapRegionSurface#61864@Offset(425.5, 300.0), RenderSemanticsAnnotations#4c5df@Offset(425.5, 300.0), RenderSemanticsAnnotations#56379@Offset(425.5, 300.0), HitTestEntry#db1dc(_ReusableRenderView#15fff), HitTestEntry#f3a43()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#a2b69(TextEditingValue(text: ┤> first + leftright + ├, selection: TextSelection.collapsed(offset: 18, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#f146d, undoController: UndoHistoryController#1d616(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#4f818(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#40596]], state: _TextFieldState#03d21), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#827c3 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#48065@Offset(425.5, 300.0), RenderSemanticsAnnotations#0fe42@Offset(425.5, 300.0), RenderPointerListener#209c1@Offset(425.5, 300.0), RenderSemanticsGestureHandler#df265@Offset(425.5, 300.0), RenderExcludeSemantics#43f94@Offset(425.5, 300.0), RenderBlockSemantics#1d8a0@Offset(425.5, 300.0), RenderIgnorePointer#90796@Offset(425.5, 300.0), RenderSemanticsAnnotations#650a2@Offset(425.5, 300.0), _RenderTheater#a9403@Offset(425.5, 300.0), RenderAbsorbPointer#fefb6@Offset(425.5, 300.0), RenderPointerListener#8d82b@Offset(425.5, 300.0), RenderSemanticsAnnotations#31e65@Offset(425.5, 300.0), RenderCustomPaint#05b09@Offset(425.5, 300.0), RenderSemanticsAnnotations#8e6ca@Offset(425.5, 300.0), RenderSemanticsAnnotations#6c8ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#9da0b@Offset(425.5, 300.0), RenderTapRegionSurface#61864@Offset(425.5, 300.0), RenderSemanticsAnnotations#4c5df@Offset(425.5, 300.0), RenderSemanticsAnnotations#56379@Offset(425.5, 300.0), HitTestEntry#82052(_ReusableRenderView#15fff), HitTestEntry#ae6e3()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:38 +1058: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source container recovery is bound to the actual nested ancestors +06:38 +1059: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks use list markers rather than task prefixes +06:39 +1060: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source task items keep block kinds at every content position +06:39 +1061: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source checked ordered nested and zero lists retain inserted block kinds +06:39 +1062: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source composes mixed and continuation container ancestors +06:39 +1063: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source protected contexts use the safe source fallback +06:39 +1064: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Writerside Source preserves a structured procedure block +06:39 +1065: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source delayed paste rejects a changed selection +06:39 +1066: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves composition before and during a read +06:39 +1067: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source failed cut keeps text and does not record history +06:39 +1068: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source delayed cut revalidates selection before deletion +06:39 +1069: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: history insertion follows the latest Source selection +06:40 +1070: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history rebases retained media into Source +06:41 +1071: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history restores a local video into Source +06:41 +1072: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: standalone image history ingests and inserts one undoable Source edit +06:41 +1073: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source local image path retains imported bytes once + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#d2cf8(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#321c7, undoController: UndoHistoryController#e323b(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#972cd(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#807b4]], state: _TextFieldState#83335), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#0a4a2 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#959d3@Offset(425.5, 300.0), RenderSemanticsAnnotations#d405c@Offset(425.5, 300.0), RenderPointerListener#1bbf6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bb131@Offset(425.5, 300.0), RenderExcludeSemantics#0de92@Offset(425.5, 300.0), RenderBlockSemantics#1257e@Offset(425.5, 300.0), RenderIgnorePointer#26468@Offset(425.5, 300.0), RenderSemanticsAnnotations#0a3c6@Offset(425.5, 300.0), _RenderTheater#618e6@Offset(425.5, 300.0), RenderAbsorbPointer#380a9@Offset(425.5, 300.0), RenderPointerListener#bee42@Offset(425.5, 300.0), RenderSemanticsAnnotations#2f809@Offset(425.5, 300.0), RenderCustomPaint#f5590@Offset(425.5, 300.0), RenderSemanticsAnnotations#7023c@Offset(425.5, 300.0), RenderSemanticsAnnotations#ec27f@Offset(425.5, 300.0), RenderSemanticsAnnotations#e2499@Offset(425.5, 300.0), RenderTapRegionSurface#af848@Offset(425.5, 300.0), RenderSemanticsAnnotations#67da2@Offset(425.5, 300.0), RenderSemanticsAnnotations#0d080@Offset(425.5, 300.0), HitTestEntry#ae5fb(_ReusableRenderView#15fff), HitTestEntry#6020a()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..expectNormalReplay (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8934:7) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8956:5) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:43 +1074: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: unsafe local image candidates paste their original text + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#8f3ef(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e8f78, undoController: UndoHistoryController#b7b5e(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#2bbca(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#e5dc0]], state: _TextFieldState#49c06), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#9d620 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#236c5@Offset(425.5, 300.0), RenderSemanticsAnnotations#bce09@Offset(425.5, 300.0), RenderPointerListener#e97b6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#97713@Offset(425.5, 300.0), RenderExcludeSemantics#54e87@Offset(425.5, 300.0), RenderBlockSemantics#ee161@Offset(425.5, 300.0), RenderIgnorePointer#66baf@Offset(425.5, 300.0), RenderSemanticsAnnotations#c1e51@Offset(425.5, 300.0), _RenderTheater#6d42a@Offset(425.5, 300.0), RenderAbsorbPointer#8f319@Offset(425.5, 300.0), RenderPointerListener#9eee1@Offset(425.5, 300.0), RenderSemanticsAnnotations#b6ccb@Offset(425.5, 300.0), RenderCustomPaint#d0d5c@Offset(425.5, 300.0), RenderSemanticsAnnotations#922f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#4fb3e@Offset(425.5, 300.0), RenderSemanticsAnnotations#9a515@Offset(425.5, 300.0), RenderTapRegionSurface#7f33c@Offset(425.5, 300.0), RenderSemanticsAnnotations#3bef8@Offset(425.5, 300.0), RenderSemanticsAnnotations#c256a@Offset(425.5, 300.0), HitTestEntry#8e612(_ReusableRenderView#15fff), HitTestEntry#d13bb()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9010:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +06:44 +1075: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: image history asks to save an untitled Source document +06:44 +1076: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: generic XML does not invent Writerside image syntax +06:44 +1077: loading /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart +06:45 +1077: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: reads the initial GTK animation setting +06:45 +1078: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: animation stream follows GTK setting changes +06:45 +1079: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: provider exposes the preloaded value before native events +06:45 +1080: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: missing GTK integration falls back without disabling motion +06:45 +1081: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: native GTK bridge observes and tears down animation preference state +06:45 +1082: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart +06:49 +1082: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +06:53 +1083: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +06:55 +1084: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft +06:56 +1085: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +07:01 +1086: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft +07:04 +1087: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +07:05 +1088: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work +07:06 +1089: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work +07:06 +1090: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work +07:09 +1091: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work +07:10 +1092: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work +07:10 +1093: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET +07:10 +1094: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET +07:10 +1095: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET +07:11 +1096: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit +07:11 +1097: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment +07:11 +1098: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor +07:12 +1099: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity +07:12 +1100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement +07:12 +1101: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart +07:13 +1101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt +07:17 +1102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption +07:18 +1103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +07:18 +1104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary +07:18 +1105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment +07:19 +1106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title +07:19 +1107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category +07:19 +1108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment +07:19 +1109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart +07:20 +1110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment +07:20 +1111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment +07:21 +1112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +07:21 +1113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +07:21 +1114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +07:21 +1115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +07:22 +1116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit +07:22 +1117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit +07:22 +1118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +07:22 +1119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice +07:22 +1120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note +07:22 +1121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +07:23 +1122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions +07:23 +1123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +07:23 +1124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +07:23 +1125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +07:23 +1126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +07:23 +1127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +07:24 +1128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +07:24 +1129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +07:24 +1130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +07:24 +1131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +07:25 +1132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +07:25 +1133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +07:25 +1134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +07:25 +1135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +07:25 +1136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +07:25 +1137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +07:26 +1138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +07:26 +1139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +07:27 +1140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +07:27 +1141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +07:28 +1142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename +07:28 +1143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +07:28 +1144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +07:28 +1145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +07:29 +1146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +07:29 +1147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +07:29 +1148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +07:29 +1149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +07:29 +1150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +07:29 +1151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +07:30 +1152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +07:30 +1153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +07:30 +1154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +07:30 +1155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +07:31 +1156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +07:31 +1157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +07:31 +1158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +07:31 +1159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +07:31 +1160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +07:31 +1161: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart +07:32 +1161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice +07:32 +1162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes +07:32 +1163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice +07:32 +1164: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart +07:35 +1164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty +07:37 +1165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty +07:38 +1166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty +07:38 +1167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body +07:38 +1168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null +07:38 +1169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 +07:38 +1170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file +07:38 +1171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file +07:38 +1172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file +07:38 +1173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file +07:38 +1174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call +07:38 +1175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin +07:38 +1176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched +07:38 +1177: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart +07:39 +1177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations +07:39 +1178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions +07:39 +1179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations +07:39 +1180: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart +07:42 +1180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated +07:43 +1181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated +07:43 +1182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated +07:43 +1183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated +07:43 +1184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated +07:43 +1185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated +07:43 +1186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated +07:43 +1187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated +07:43 +1188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request +07:43 +1189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible +07:43 +1190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content +07:43 +1191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match +07:43 +1192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted +07:43 +1193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state +07:43 +1194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility +07:43 +1195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility +07:43 +1196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility +07:43 +1197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility +07:43 +1198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility +07:43 +1199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility +07:43 +1200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility +07:43 +1201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility +07:43 +1202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects +07:43 +1203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids +07:43 +1204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body +07:43 +1205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence +07:43 +1206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path +07:43 +1207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note +07:43 +1208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials +07:43 +1209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 +07:43 +1210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references +07:43 +1211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference +07:43 +1212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update +07:43 +1213: loading /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart +07:46 +1213: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles default-a4 and preserves document data +07:47 +1214: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles letter-landscape and preserves document data +07:48 +1215: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles legal-serif and preserves document data +07:48 +1216: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles custom-sans and preserves document data +07:48 +1217: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles no-numbers and preserves document data +07:48 +1218: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles numbered-no-outline and preserves document data +07:49 +1219: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomLeft and preserves document data +07:49 +1220: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomCenter and preserves document data +07:49 +1221: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomRight and preserves document data +07:50 +1222: loading /home/albert/busystack/busymark/test/src/app_smoke_test.dart +07:54 +1222: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor shortcuts use documented cross-editor defaults +07:56 +1223: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace resize retains the sidebar and leaves room for header controls +07:58 +1224: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: document view shortcuts are distinct from existing commands +07:58 +1225: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace routes paste shortcuts only to editable document views +08:02 +1226: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace source history restores a pasted URL suffix through undo and redo +08:03 +1227: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app wires generated localization delegates and locales +08:03 +1228: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app boots to BusyMark welcome screen without login UI +08:03 +1229: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (0) +08:03 +1230: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (1) +08:04 +1231: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: false) +08:05 +1232: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: true) +08:05 +1233: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: main menu and F11 toggle full-screen mode +08:06 +1234: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Alt+Left activates the header Back command +08:06 +1235: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: restored capture failure stays owned across Back create discard create +08:07 +1236: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Escape closes header popup menus +08:07 +1237: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: report issue is in the shared main menu, not Settings content +08:07 +1238: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: global reference and settings shortcuts open targets +08:08 +1239: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings screen opens +08:10 +1240: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings uses the regular split sidebar at desktop width +08:10 +1241: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Spelling Dictionaries page groups downloadable and custom data +08:11 +1242: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt uses native controls and submits a trimmed ID +08:17 +1243: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt cancels and saves without redesign +08:22 +1244: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a default-language install keeps the previous selection +08:23 +1245: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: default language persists only after dictionary installation succeeds +08:32 +1246: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: failed dictionary install keeps the default language +08:35 +1247: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a project-language install keeps the previous selection +08:35 +1248: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings main surface matches the headerbar in light and dark +08:36 +1249: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: stored language override localizes app text +08:36 +1250: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: European Portuguese system locale renders the completed base catalog +08:36 +1251: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: language-only Chinese system locale renders the completed base catalog +08:37 +1252: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside project dialog syncs generated fields until edited +08:38 +1253: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts dialog opens from the header +08:39 +1254: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference categories expose supported authoring forms +08:41 +1255: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+Alt+M opens and Escape closes the syntax reference +08:42 +1256: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference remains usable in constrained RTL layout +08:43 +1257: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts tabs section title is localized +08:43 +1258: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: about dialog shows the BusyMark logo +unhandled element ; Picture key: Svg loader +08:44 +1259: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N chooses between Markdown and Writerside creation +08:44 +1260: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N keeps unsaved documents in independent tabs +08:45 +1261: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N creates real CommonMark inside a Writerside workspace +08:49 +1262: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions +09:07 +1263: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions with an available native host +09:12 +1264: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside topic rename uses Preview, Do Refactor, and shared entry points +09:13 +1265: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: topic rename saves every dirty Writerside project source before planning +09:14 +1266: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: tab keyboard shortcuts move and close editor tabs +09:14 +1267: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Git diff files are shown as separate editor tabs +09:16 +1268: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: File History comparison selector shares its row with match navigation +09:16 +1269: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: file tree disables Git file actions without a repository +09:16 +1270: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: sidebar view shortcuts select workspace sidebar tabs +09:18 +1271: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: real Source edits reach the visible Local History list on the fixed deadline +09:19 +1272: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: selected WYSIWYG formatting reaches Local History through workspace callbacks +09:19 +1273: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside sidebar shortcuts survive document view changes +09:22 +1274: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view colors entries by Git status +09:22 +1275: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view shows hidden, empty, and unsupported entries +09:22 +1276: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Arabic +09:22 +1277: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Persian +09:22 +1278: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Arabic untitled workspace stays RTL and diagnostic metadata stays LTR +09:22 +1279: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: RTL topic copy keeps bidi controls out of clipboard data +09:23 +1280: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Copy uses an inactive origin topic open buffer +09:24 +1281: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Paste reviews an inactive dirty tree before moving +09:24 +1282: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source undo cannot restore saved text from previous tab +09:24 +1283: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source groups typing and deletion undo with historical carets +09:25 +1284: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source remount starts a distinct undo group +09:25 +1285: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source view supports editor formatting shortcuts +09:25 +1286: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab and Shift+Tab update indentation in source view +09:25 +1287: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editing toolbar context menu changes persisted layout without toggling +09:26 +1288: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share a frame while Split stays fluid +09:26 +1289: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: rendered views ignore redundant blanks while Source preserves them +09:26 +1290: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: standalone HTML breaks preserve one blank line in every document view +09:26 +1291: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share task-list presentation and wrapping +09:26 +1292: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same quote shell geometry +09:27 +1293: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same code block presentation +09:27 +1294: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share professional heading hierarchy +09:27 +1295: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share admonition and image presentation +09:27 +1296: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Preview renders structured formatted and nested quotes +09:27 +1297: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor undo cannot restore saved text from previous tab +09:28 +1298: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab inserts a tab character in editor view paragraphs +09:28 +1299: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close still warns when active changes are unsaved +09:28 +1300: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close flushes autosave for saved files +09:28 +1301: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: startup path opens a Markdown file workspace +09:28 +1302: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline follows unsaved source headings without live validation +09:28 +1303: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline context menu edits complete heading sections +09:29 +1304: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline highlights the heading at the document viewport +09:31 +1305: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline navigates to a renamed unsaved editor heading +09:33 +1306: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: untitled outline navigates before the first save +09:33 +1307: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview tolerates duplicate heading anchors +09:33 +1308: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading opens an unindexed sibling document link +09:33 +1309: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading linked block and inline images open their targets +09:34 +1310: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: new empty document leaves remembered preview mode for editor +09:34 +1311: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: blocked remote image prompt allows the current workspace +09:34 +1312: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+O open chooser lists recent workspaces +09:34 +1313: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recent workspace menus support pointer and keyboard actions +09:35 +1314: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local images +09:35 +1315: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer blocks remote images by default +09:35 +1316: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths with spaces +09:35 +1317: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths outside workspace +09:35 +1318: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves Snap real-home paths +09:35 +1319: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local SVG images +09:35 +1320: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer rejects oversized local SVGs +09:35 +1321: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer sanitizes embedded SVG image data +09:35 +1322: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer renders generated SVG badges +09:36 +1323: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: header Search button toggles the expanded search field +09:36 +1324: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: native header Search action toggles search and Back visibility +09:36 +1325: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search awaits non-active file reads without blocking builds +09:37 +1326: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search native submit uses exact payload and selected sidebar occurrence +09:38 +1327: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search preserves query and lands on unopened destination +09:38 +1328: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search observes edits to inactive buffers +09:40 +1329: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search reports limits and continues into later files +09:41 +1330: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search exposes skipped files and regex diagnostics +09:42 +1331: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search cancels expensive regex while UI keeps building +09:43 +1332: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search replacement review loads an asynchronous plan +09:44 +1333: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search highlights preserve Unicode offsets +09:44 +1334: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: literal workspace search bounds malformed Markdown snippets around the match +09:45 +1335: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks move preview scroll repeatedly +09:45 +1336: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview lazily builds large documents +09:46 +1337: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks scroll to code block matches +09:46 +1338: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on paragraph after lists +09:46 +1339: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share ordered list styling and geometry +09:46 +1340: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders nested list children +09:46 +1341: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders raw HTML table as table cells +09:46 +1342: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading applies Markdown table column alignment +09:47 +1343: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on code block line +09:47 +1344: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S runs Save for the active workspace +09:47 +1345: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S saves source edits from an untitled Markdown document +09:47 +1346: loading /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart +09:48 +1346: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from preview +09:52 +1347: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from editor +09:53 +1348: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: an open Problems dialog updates its count and math rows +09:54 +1349: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: manual Validate supersedes queued automatic validation and presents once +09:56 +1350: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: failed and stale validation do not show Problems; concurrent clicks publish once +09:58 +1351: loading /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart +09:58 +1351: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside math forms use semantic math nodes and round-trip +09:58 +1352: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: ordinary Markdown does not reinterpret Writerside TeX forms +09:58 +1353: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside semantic and fenced diagrams share visualizers +09:58 +1354: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: referenced diagram source is constrained to the Writerside root +09:58 +1355: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside topic XML exposes TeX and diagrams to shared preview +09:59 +1356: loading /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart +10:01 +1356: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: view changes fade one live editor while ordinary data changes do not +10:02 +1357: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained destinations settle immediately under reduced motion +10:02 +1358: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained crossfade keeps two live pages and hides outgoing UI +10:02 +1359: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: keyed crossfade retains three semantic destinations +10:02 +1360: loading /home/albert/busystack/busymark/test/src/preview_builder_test.dart +10:06 +1360: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview uses one generic label and no compatibility banner +10:06 +1361: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview ignores redundant blank lines between blocks +10:06 +1362: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves an explicit blank line encoded with HTML breaks +10:06 +1363: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview headings carry parser anchors for outline navigation +10:06 +1364: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview blocks carry source locations for search navigation +10:06 +1365: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview source locations survive adjacent list items and code fences +10:06 +1366: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview list text removes Markdown markers +10:06 +1367: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves links inside list items +10:06 +1368: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves nested list children +10:06 +1369: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps ordered list numbering independent at each depth +10:06 +1370: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves inline Markdown semantics +10:06 +1371: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: inline autolinks only support launchable URI schemes +10:06 +1372: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities +10:06 +1373: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces +10:06 +1374: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities +10:06 +1375: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces +10:06 +1376: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview treats single newlines inside paragraphs as soft breaks +10:06 +1377: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview supports common Markdown block variants +10:06 +1378: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves structured and formatted quote children +10:06 +1379: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves source order for code and images +10:06 +1380: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview parses Writerside image attributes +10:06 +1381: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: front matter is skipped only at the top of the document +10:06 +1382: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML paragraph without literal tags +10:06 +1383: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table sections and inline cell formatting +10:06 +1384: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders direct rows under raw HTML table +10:06 +1385: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table captions before the table +10:06 +1386: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders inline raw HTML safely +10:06 +1387: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not make raw HTML links active without href +10:06 +1388: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects absolute local image paths in raw HTML +10:06 +1389: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects deeply nested raw HTML before conversion +10:06 +1390: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders safe raw HTML containers as child content +10:06 +1391: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders top-level raw HTML image as image block +10:06 +1392: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves raw HTML figure caption relationship +10:06 +1393: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview allows safe remote raw HTML links images and citations +10:06 +1394: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps unsafe raw HTML literal +10:06 +1395: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not parse Markdown inside raw HTML blocks +10:06 +1396: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps paired raw HTML blocks together across blank lines +10:06 +1397: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart +10:07 +1397: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields +10:07 +1398: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 +10:07 +1399: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 +10:07 +1400: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 +10:07 +1401: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 +10:07 +1402: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null +10:07 +1403: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version +10:07 +1404: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed +10:07 +1405: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 +10:07 +1406: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately +10:07 +1407: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers +10:07 +1408: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin +10:07 +1409: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 +10:07 +1410: loading /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart +10:10 +1410: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by file-size limits +10:10 +1411: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by document limits +10:10 +1412: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects topic discovery truncated by tree limits +10:11 +1413: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic-root directory listing failure +10:11 +1414: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: topic discovery traverses excluded and hidden directories but not VCS metadata +10:11 +1415: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves a Markdown reference under build +10:11 +1416: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves an XML reference under a hidden directory +10:11 +1417: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a discovered unreadable topic source +10:11 +1418: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates topic and start-page references in every tree +10:11 +1419: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename refactors links, includes, ref entries, and leaves unrelated text +10:11 +1420: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename ignores link-shaped text in image titles and HTML attributes +10:12 +1421: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds reference links outside image titles and HTML attributes +10:12 +1422: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds exact HTML hrefs outside Markdown link and image titles +10:12 +1423: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename follows origin across modules without touching a local namesake +10:12 +1424: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: project-wide rename includes an origin reference in a build module +10:12 +1425: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: renaming a local namesake preserves origin-qualified Markdown XML links +10:13 +1426: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports unquoted origin-qualified raw HTML links +10:13 +1427: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename keeps decoded whitespace safe in unquoted HTML hrefs +10:13 +1428: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates shared Markdown reference definitions once +10:13 +1429: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves escapes required by a Markdown destination +10:13 +1430: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rewrites an XML-encoded topic destination +10:14 +1431: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename escapes decoded XML attribute replacements +10:14 +1432: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates a matching XML topic root id +10:14 +1433: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: missing or mismatched XML root IDs block rename atomically +10:14 +1434: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: prepared rename is read-only and applies its exact captured changes +10:14 +1435: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: stale prepared rename fails before any partial write +10:14 +1436: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preflights collisions only in publishing instances +10:14 +1437: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: origin topic collisions block a project-wide prepared rename +10:14 +1438: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: Unicode Markdown and XML topic filenames rename safely +10:14 +1439: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports Writerside .markdown topics +10:15 +1440: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects duplicate targets and extension changes +10:15 +1441: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves a target created concurrently before exclusive create +10:15 +1442: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete reloads newly configured instances before start-page checks +10:15 +1443: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename does not claim a new same-basename nested reference +10:15 +1444: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename aborts when a concurrent topic changes basename resolution +10:15 +1445: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete aborts when a concurrent topic changes basename resolution +10:15 +1446: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename retains target when an applied tree cannot be rolled back +10:15 +1447: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: cross-module rollback retains a target after another module changes +10:15 +1448: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: clean rollback removes the harmless newly created target +10:15 +1449: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves topic and instance tree file modes +10:15 +1450: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete removes every TOC entry and promotes children in place +10:16 +1451: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic used as any instance start page +10:16 +1452: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects unsafe path components before writing +10:16 +1453: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic replaced by a symlink without touching its target +10:16 +1454: loading /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart +10:17 +1454: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic maps to full and visible line without folds +10:17 +1455: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic inside folded region is aggregated onto its fold header +10:17 +1456: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: folded layout geometry is reused for equal collapsed sets +10:17 +1457: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: incremental gutter layout matches a full measured layout +10:17 +1458: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart +10:20 +1458: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Duplicate Topic is serialized to the native dialog host +10:21 +1459: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Edit Title returns all native field values +10:21 +1460: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: native cancellation remains distinct from an unavailable host +10:21 +1461: loading /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart +10:23 +1461: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps a nested Writerside block to its source block +10:25 +1462: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps selected text when unsourced editor blocks exist +10:25 +1463: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI applies through canonical Markdown source +10:26 +1464: loading /home/albert/busystack/busymark/test/src/document_status_bar_test.dart +10:27 +1464: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: places interactive spelling at start and format at end +10:29 +1465: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: keeps passive format when spelling is unsupported +10:30 +1466: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: truncates a long one-line language without displacing format +10:30 +1467: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: uses directional start and end placement in RTL +10:30 +1468: loading /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart +10:30 +1468: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: detects and preserves UTF-8 BOM, CRLF, and final newline +10:30 +1469: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: preserves a missing final newline when saving edited text +10:30 +1470: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: requires an explicit normalization for mixed line endings +10:30 +1471: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: rejects invalid UTF-8 instead of replacing bytes +10:30 +1472: loading /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart +10:34 +1472: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: autocomplete prioritizes Writerside Markdown authoring suggestions +10:34 +1473: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion derives XML caret context and consumes the project index +10:34 +1474: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion suggests attributes legal for the element at the caret +10:34 +1475: loading /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart +10:35 +1475: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: reads the provider key through the native credential channel +10:35 +1476: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: trims a key before securely storing it +10:35 +1477: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: deletes only the selected provider key +10:35 +1478: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: surfaces the native credential-service failure +10:35 +1479: loading /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart +10:38 +1479: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pristine empty draft discards without protective storage +10:38 +1480: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace replacement retires settled bindings and retains failed baselines +10:38 +1481: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects nonempty content when history is unavailable +10:38 +1482: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects whitespace content when history is unavailable +10:38 +1483: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects edited-empty content when history is unavailable +10:38 +1484: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects recovered content when history is unavailable +10:38 +1485: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects file content when history is unavailable +10:39 +1486: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: background protective retry cannot execute a previously rejected discard +10:39 +1487: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=false) +10:39 +1488: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=true) +10:39 +1489: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=false) +10:41 +1490: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=true) +10:41 +1491: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save cannot adopt a deleted path lineage +10:41 +1492: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: vacant first save retires a stale active history owner +10:41 +1493: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save promotes an established untitled lineage over deleted history +10:41 +1494: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison uses unsaved editor source and whole restore is one undo step +10:41 +1495: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels queued restore protection +10:41 +1496: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All cancels queued restore protection +10:41 +1497: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: region restore is exact, undoable, and rejects stale ranges +10:41 +1498: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed protective capture leaves current document unchanged +10:41 +1499: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restoration rejects a revision from another history document +10:41 +1500: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled history compares and restores through stable identity +10:41 +1501: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing during a delayed reload cancels the stale replacement +10:41 +1502: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reload reparse cannot publish after another buffer becomes active +10:41 +1503: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delete skips binary and excluded history descendants +10:41 +1504: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deleted document restores through normal create flow without overwriting +10:41 +1505: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: missing history restores over an existing file without touching disk and undoes to its real source +10:42 +1506: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing open destination protects unsaved source as the restore undo baseline +10:42 +1507: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing destination restore stops when protection fails or the target changes +10:42 +1508: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: autosaved existing-destination recovery never publishes an empty file +10:42 +1509: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delayed explicit save records exactly the source that was written +10:42 +1510: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history failure cannot turn a successful save into a failure +10:42 +1511: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move keeps edits made during history remap on the destination +10:42 +1512: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reparse cannot publish after a newer edit +10:42 +1513: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move cannot remap a replacement created while loading target +10:42 +1514: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move completion cannot publish into a replacement workspace +10:42 +1515: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: monitor event emitted after invalidation cannot enter reopened workspace +10:42 +1516: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: file monitor lifecycle recovers after a failed stop +10:42 +1517: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing while monitor start is pending still enables workspace events +10:42 +1518: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: folder refresh while monitor start is pending still enables events +10:42 +1519: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed workspace ignores a delayed monitor start completion +10:42 +1520: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed file monitor cannot resume an overtaken start +10:42 +1521: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deferred monitor move cannot enter a replacement workspace +10:42 +1522: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move retains reconciliation when another process checkpoints the old identity +10:42 +1523: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move with no bound identity cannot remap replacement history +10:42 +1524: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion with no bound identity cannot delete replacement history +10:42 +1525: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection retries into the deleted lineage +10:42 +1526: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection survives restart as detached work +10:42 +1527: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move remaps nested open history +10:42 +1528: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move publishes every buffer after one decode failure +10:42 +1529: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closing a tab during an external directory move settles its journal +10:42 +1530: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory deletion marks nested open history deleted +10:42 +1531: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed recursive-delete protection survives restart on its lineage +10:42 +1532: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reconciles closed file history +10:42 +1533: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion reconciles closed file history +10:42 +1534: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce before history reconciliation +10:42 +1535: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce across an unrelated queued event +10:42 +1536: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closed source move cannot steal an open destination lineage +10:42 +1537: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external file move includes identity established by source settlement +10:42 +1538: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move includes identity established by source settlement +10:42 +1539: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: cancelled named Save As detaches source history and reopens separately +10:43 +1540: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recording disabled after first-save publication preserves untitled lineage +10:43 +1541: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, completed pending capture +10:43 +1542: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, failed pending capture +10:43 +1543: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, completed pending capture +10:43 +1544: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, failed pending capture +10:43 +1545: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, completed pending capture +10:44 +1546: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, failed pending capture +10:44 +1547: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As keeps edits made during destination capture out of source history +10:44 +1548: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot claim a dirty open buffer at a missing destination +10:44 +1549: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=false) +10:44 +1550: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=true) +10:44 +1551: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rename remaps a failed unbound baseline to the committed destination +10:45 +1552: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed prepared rename never reaches the filesystem without an execution journal +10:45 +1553: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels a prepared rename before filesystem publication +10:45 +1554: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document retains an executing rename journal across a crash +10:45 +1555: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All retains an executing rename journal across a crash +10:45 +1556: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: targetless executing rename owner survives an ambiguous restart +10:45 +1557: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: move remaps a deferred first-save destination before baseline recovery +10:45 +1558: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive folder move remaps retained baselines for every open descendant +10:45 +1559: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=false) +10:45 +1560: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=true) +10:45 +1561: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed move retries a failed history path reconciliation +10:45 +1562: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: shutdown retries first-save promotion without requiring another edit +10:45 +1563: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: second Save As preserves a failed first-save association as the source +10:46 +1564: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As partitions a failed source checkpoint +10:46 +1565: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As source checkpoint survives process restart +10:46 +1566: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As journals its source before the filesystem commit returns +10:46 +1567: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot publish a second owner when its destination opens in flight +10:46 +1568: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As rechecks destination ownership after opening its workspace +10:46 +1569: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As waits for an unbound live destination history owner +10:46 +1570: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed Save As cannot publish after losing its prepared journal owner +10:46 +1571: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As published after disposal leaves a committed recoverable journal +10:46 +1572: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As commit write failure after disposal uses the session fallback +10:46 +1573: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As publishes destination after a post-publish callback failure +10:46 +1574: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed rename reconciliation survives shutdown and restart +10:46 +1575: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: live owner keeps committed remap journal until its recovery can follow +10:47 +1576: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared rename journal repairs a crash after filesystem commit +10:47 +1577: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed deletion detaches recovery newer than stored history +10:47 +1578: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive deletion evidence cannot consume a sibling recovery +10:47 +1579: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All durably removes a previously persisted path journal +10:47 +1580: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup applies committed destination cleanup before Save As recovery +10:47 +1581: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup keeps untitled first-save source when another tab owns destination +10:47 +1582: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed Save As recovery cannot claim another process tab with the same buffer id +10:47 +1583: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session restore selects recovery by process owner before shared buffer id +10:47 +1584: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed startup reconstruction releases adopted recovery ownership +10:48 +1585: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history retry during slow failed startup cannot erase adopted recovery +10:48 +1586: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session identity restore waits for the authoritative history snapshot +10:48 +1587: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: renamed adopted recovery still honors its original path-operation owner +10:48 +1588: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: replayed durable Clear All preserves newer history +10:48 +1589: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup aborts until replayed clear refresh is authoritative +10:48 +1590: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared deletion journal repairs a crash after filesystem commit +10:49 +1591: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed deletion reconciliation survives shutdown and restart +10:49 +1592: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reopened tab adopts its unresolved first-save history association +10:49 +1593: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: unresolved shutdown promotion survives in session and retries on startup +10:49 +1594: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace rename settles a failed first-save promotion +10:49 +1595: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace directory move settles a nested failed first-save promotion +10:49 +1596: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison renders styled intraline spans without framework errors +10:50 +1597: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison restore actions wait for the current replacement result +10:50 +1598: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace refresh invalidates a completed comparison by source content +10:50 +1599: loading /home/albert/busystack/busymark/test/src/visualization_card_test.dart +10:51 +1599: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: full-screen diagram coordinates its modal and preserves pan/zoom +10:52 +1600: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: retains the last valid diagram and navigates new diagnostics +10:52 +1601: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: fits a small Mermaid diagram to the preview width +10:53 +1602: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: keeps a wide Mermaid diagram readable until fit is requested +10:53 +1603: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: shows searchable OpenAPI operations and opens the native reference +10:53 +1604: loading /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart +10:54 +1604: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: computes the diagnostic offset within fenced source +10:58 +1605: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: WYSIWYG diagnostic selects its actual source line +11:01 +1606: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +11:03 +1606: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +11:04 +1607: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +11:07 +1608: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones +11:07 +1609: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +11:08 +1610: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +11:09 +1611: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +11:10 +1612: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +11:10 +1613: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +11:11 +1614: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +11:12 +1615: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +11:12 +1616: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +11:13 +1617: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +11:13 +1618: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +11:13 +1619: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ +The following TestFailure was thrown running a test: +Expected: <10> + Actual: +null + +When the exception was thrown, this was the stack: +#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:836:7) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + + +(elided one frame from package:stack_trace) + +This was caught by the test expectation on the following line: + file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart line 836 +The test description was: + selecting and confirming candidate binds draft and retains newer edits +════════════════════════════════════════════════════════════════════════════════════════════════════ +11:15 +1619 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] + Test failed. See exception logs above. + The test description was: selecting and confirming candidate binds draft and retains newer edits + +11:16 +1619 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +11:16 +1620 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +11:16 +1621 -1: loading /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart +11:18 +1621 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table pipes cannot bind across subsequent cells +11:18 +1622 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: a\|b | a|b +11:18 +1623 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b\|c | a|b|c | +11:18 +1624 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\\\|b | a\\|b | +11:18 +1625 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | a|b\ +11:18 +1626 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | +11:18 +1627 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | `a\|b` | a|b | +11:18 +1628 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped pipes in the table header retain diagnostic positions +11:18 +1629 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | a\|b | a|b | +11:18 +1630 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | `` a\|b | a| | +11:18 +1631 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in block context +11:18 +1632 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in inline context +11:18 +1633 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline caption attributes are checked before tree construction +11:18 +1634 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline colgroup attributes are checked before tree construction +11:18 +1635 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline col attributes are checked before tree construction +11:18 +1636 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline thead attributes are checked before tree construction +11:18 +1637 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tbody attributes are checked before tree construction +11:18 +1638 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tfoot attributes are checked before tree construction +11:18 +1639 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline th attributes are checked before tree construction +11:18 +1640 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline td attributes are checked before tree construction +11:18 +1641 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline URL attributes use HTML entity decoding +11:18 +1642 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text `
Cell
` +11:18 +1643 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text \\\\\
Cell\
+11:18 +1644 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: ```html +11:18 +1645 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe:
Cell
+11:18 +1646 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text
Cell
+11:18 +1647 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html +11:18 +1648 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: +11:18 +1649 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
+11:18 +1650 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
+11:18 +1651 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^unused]: +11:18 +1652 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^used]: +11:18 +1653 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - ```html +11:18 +1654 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` then +11:18 +1655 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` `` +11:18 +1656 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > ```html +11:18 +1657 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - Example +11:18 +1658 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > - `` then +11:18 +1659 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: --- +11:18 +1660 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html +11:18 +1661 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | Code | HTML | +11:18 +1662 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | One | +11:18 +1663 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `a ` +11:18 +1664 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: unsafe Markdown URLs are located at the link, after literal examples +11:18 +1665 -1: loading /home/albert/busystack/busymark/test/src/window_control_service_test.dart +11:19 +1665 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: button and native close requests share one pending confirmation +11:19 +1666 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: initializes prevent-close interception +11:19 +1667 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: toggles full screen and tracks native window-state changes +11:19 +1668 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: no dirty documents closes without dialog +11:19 +1669 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation enabled show dialog +11:19 +1670 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation disabled close directly +11:19 +1671 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: discard closes after disabling prevent-close +11:19 +1672 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save closes only when saving succeeds +11:19 +1673 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save failure keeps the app open +11:19 +1674 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart +11:21 +1674 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: terminal code block gets a non-serializing trailing paragraph +11:21 +1675 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter inserts a newline within one code block +11:23 +1676 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: a code block created by editing also retains a trailing paragraph +11:23 +1677 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: third terminal Enter exits code and removes the two empty lines +11:23 +1678 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: exiting before existing content inserts a transient paragraph +11:23 +1679 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter in the trailing paragraph records an intentional blank +11:23 +1680 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: code Enter stays in the multiline code field +11:25 +1681 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Ctrl+Enter exits into the trailing paragraph +11:25 +1682 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Arrow Down exits a terminal code block +11:25 +1683 -1: loading /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart +11:27 +1683 -1: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: shows only a compact line-ending label +11:28 +1684 -1: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: makes BOM visible and keeps final-newline detail compact +11:28 +1685 -1: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: uses a compact technical label for mixed line endings +11:28 +1686 -1: loading /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart +11:36 +1686 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: ordinary WYSIWYG selection never suppresses spelling underlines +11:36 +1687 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: source spelling correction is one exact transaction +11:37 +1688 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: formatted rich correction preserves structure and publishes once +11:37 +1689 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich image spelling preserves source and one undo step +11:37 +1690 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested code and math spelling preserves source and undo +11:38 +1691 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested address and math spelling preserves source and undo +11:38 +1692 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table image spelling preserves authored cell syntax +11:38 +1693 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed rich image preparation refuses a newer revision +11:38 +1694 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed math image preparation refuses a newer revision +11:39 +1695 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich correction preserves entities and translates later anchors +11:39 +1696 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich hard-break correction keeps later source anchor +11:39 +1697 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table correction preserves encoded cell source +11:39 +1698 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table-cell correction preserves link and publishes sessions once +11:39 +1699 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich underline painter keeps confirmed helo visible at caret +11:39 +1700 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: table cell underline uses the live cell composing range +11:39 +1701 -1: loading /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart +11:40 +1701 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: inlines safe generated CSS into a vector-only SVG +11:40 +1702 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: keeps sanitized foreignObject only in the browser raster input +11:40 +1703 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes SVG and CSS animations +11:40 +1704 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects remote, executable, and escaped CSS URLs +11:40 +1705 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: allows embedded D2-style fonts but rejects remote image attributes +11:41 +1706 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: requires rasterization for CSS the vector inliner cannot preserve +11:41 +1707 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: preserves safe browser-only inline CSS and rasterizes it +11:41 +1708 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes unsafe URLs from inline CSS +11:41 +1709 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: does not claim a vector result when CSS cascade resolution is needed +11:41 +1710 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects declarations, excessive complexity, and invalid dimensions +11:41 +1711 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: applies the size limit to UTF-8 bytes +11:41 +1712 -1: loading /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart +11:41 +1712 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: remote requests reject existing local references before reading dependencies +11:41 +1713 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: resolves local files, hashes them, and terminates circular schemas +11:41 +1714 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: keeps internal-only references independent of a saved path +11:41 +1715 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: rejects remote, absolute, malformed, and unsupported references +11:41 +1716 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: reports an unsaved document that contains a local reference +11:42 +1717 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: converts traversal and symlink escapes into typed diagnostics +11:42 +1718 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: enforces dependency count and byte limits +11:42 +1719 -1: loading /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart +11:44 +1719 -1: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: platform host sends reduced source and geometry over one channel +11:44 +1720 -1: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: Linux player keeps interactive media in a restricted WebKit host +11:44 +1721 -1: loading /home/albert/busystack/busymark/test/src/export_options_test.dart +11:45 +1721 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: defaults retain PDF geometry and independent HTML reading appearance +11:45 +1722 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: every option persists and copies without losing unrelated fields +11:45 +1723 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: absent and malformed persisted values fall back per field +11:45 +1724 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: geometry resolves dimensions, orientation and four independent margins +11:45 +1725 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: payload contains resolved geometry and every renderer option as data +11:45 +1726 -1: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +11:47 +1726 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review +11:48 +1727 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab +11:49 +1728 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes +11:49 +1729 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save +11:49 +1730 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) +11:49 +1731 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) +11:49 +1732 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) +11:49 +1733 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) +11:50 +1734 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart +11:50 +1735 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation +11:50 +1736 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox +11:50 +1737 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit +11:50 +1738 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session +11:50 +1739 -1: loading /home/albert/busystack/busymark/test/src/source_folding_test.dart +11:51 +1739 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line starts map to the following source line +11:51 +1740 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects sections lists quotes and code blocks +11:51 +1741 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding keeps shorter fence runs inside dynamic fences +11:51 +1742 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown structures inside fences do not create fold regions +11:51 +1743 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores tags inside multiline comments and CDATA +11:51 +1744 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores greater-than signs inside quoted attributes +11:51 +1745 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding scans opening tags across source lines +11:51 +1746 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding skips processing instructions and declarations +11:51 +1747 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding does not join separate indented code blocks +11:51 +1748 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsed gutter entries preserve source line numbers +11:51 +1749 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsing one repeated markdown subsection keeps peer sections visible +11:51 +1750 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding detects simple multiline tag blocks +11:51 +1751 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects nested headings task lists and blockquotes +11:51 +1752 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding handles nested same-name tags with a stack +11:51 +1753 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: malformed xml does not create unsafe fold ranges +11:51 +1754 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line info supports CRLF endings +11:51 +1755 -1: loading /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart +11:52 +1755 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: shipped spelling catalog is metadata-only and revision pinned +11:52 +1756 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: ordinary Linux release does not prepare all-language pairs +11:52 +1757 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: committed spelling checksum inventory matches exact shipped bytes +11:52 +1758 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: native spelling notices are explicit installed artifacts +11:52 +1759 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: strict Snap smoke performs and verifies a local revision transition +11:52 +1760 -1: loading /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart +11:53 +1760 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates and registers an empty instance with build settings +11:54 +1761 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates a non-publishing TOC library instance +11:54 +1762 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: imports selected Markdown and its referenced local media +11:54 +1763 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: renames an instance and refactors documented project references +11:54 +1764 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: first topic added to an empty instance becomes its home page +11:54 +1765 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: invalid project XML blocks an instance ID refactor without changing files +11:54 +1766 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: concurrent config change prevents every instance publication +11:54 +1767 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import copies selected topics, media, and inserts root entries in order +11:55 +1768 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import inserts several siblings after the exact reference in list order +11:55 +1769 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import initializes only the first imported topic as the start page +11:55 +1770 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects batch, existing-ID, target, and invalid-name conflicts +11:55 +1771 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import accepts a Unicode topic filename +11:55 +1772 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects a stale reference identity without publishing files +11:55 +1773 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import discovered-but-unparsed topic basename blocks import +11:55 +1774 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import fails closed when semantic topic discovery is incomplete +11:55 +1775 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import revalidates IDs before publishing and leaves no partial import +11:56 +1776 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import allows an unrelated topic created before publication +11:56 +1777 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects existing and selected-batch topic IDs +11:56 +1778 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects an invalid topic filename +11:56 +1779 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import fails closed on incomplete discovery +11:56 +1780 -1: loading /home/albert/busystack/busymark/test/src/validation_consistency_test.dart +11:57 +1780 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: module load, topic validation, and config validation agree and clear fixes +11:57 +1781 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: editing a target refreshes diagnostics in the referencing topic +11:57 +1782 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variables, comments, interpolation controls and optional includes agree +11:57 +1783 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: interpolated includes agree across load, topic and config validation +11:58 +1784 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variable scope identity includes its declaring topic +11:58 +1785 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: cross-module includes refresh when their target changes +11:58 +1786 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: malformed glossary and keymap XML report the supporting file and clear after repair +11:58 +1787 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: Markdown validation preserves other files and scan warnings while clearing active errors +11:58 +1788 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: linked anchors use dirty buffers and canonical self-links, caching targets +11:58 +1789 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: large buffered targets parse asynchronously and missing saved targets use their buffers +11:59 +1790 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: front matter requires complete delimiter lines with LF and CRLF +11:59 +1791 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: HTML diagnostics exclude prose and literal code without relaxing rendering policy +11:59 +1792 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: location maps are reused within a parse and released between parses +11:59 +1793 -1: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart +12:00 +1793 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes +12:00 +1794 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs +12:00 +1795 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin +12:00 +1796 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success +12:00 +1797 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser +12:00 +1798 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll +12:00 +1799 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll +12:00 +1800 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password +12:00 +1801 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling +12:00 +1802 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints +12:00 +1803 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors +12:00 +1804 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account +12:00 +1805 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics +12:00 +1806 -1: loading /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart +12:01 +1806 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside Markdown collapsible chapter owns its section +12:01 +1807 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown keeps Writerside collapse syntax literal +12:01 +1808 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown does not assign semantic Writerside collapse +12:01 +1809 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside fenced code consumes its collapsible attribute line +12:01 +1810 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: edited collapsible blocks serialize valid Writerside attributes +12:01 +1811 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary fenced code does not consume a collapse attribute line +12:01 +1812 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: semantic collapsible elements become structured preview content +12:01 +1813 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside XML topic preview keeps collapsible content nested +12:03 +1814 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: shared collapse control honors default state and toggles +12:03 +1815 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: WYSIWYG collapses only Writerside chapter content +12:04 +1816 -1: loading /home/albert/busystack/busymark/test/src/export_review_regression_test.dart +12:05 +1816 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside PDF retains percent-encoded non-ASCII footnote labels +12:07 +1817 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: included footnotes use separate document-occurrence namespaces +12:07 +1818 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=false) +12:07 +1819 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=true) +12:07 +1820 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: repeated includes receive distinct nested occurrence IDs +12:08 +1821 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: mapper cannot substitute a diagram for a colliding paragraph +12:08 +1822 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside rejects outside file URIs and symlinks while staging shared-module images +12:08 +1823 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=false) +12:08 +1824 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=true) +12:08 +1825 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=true) +12:08 +1826 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=true) +12:08 +1827 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=false) +12:08 +1828 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=false) +12:08 +1829 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: collapsible headings keep numbering and actual outline order +12:08 +1830 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false #%FF) +12:08 +1831 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false %FF.md) +12:08 +1832 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false file%FF.txt) +12:08 +1833 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true #%FF) +12:08 +1834 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true %FF.md) +12:08 +1835 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true file%FF.txt) +12:08 +1836 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: combined Writerside PDF keeps diagrams and scoped notes without reading an outside image +12:08 +1837 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: ordinary Markdown footnotes compile with retained definitions and repeated references +12:08 +1838 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart +12:09 +1838 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only committed newline and continued typing replace a table-ended selection +12:11 +1839 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table committed newline and continued typing replace a table-ended selection +12:12 +1840 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table committed newline and continued typing replace a table-ended selection +12:13 +1841 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables committed newline and continued typing replace a table-ended selection +12:13 +1842 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=false +12:13 +1843 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Up control=false +12:14 +1844 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=false +12:14 +1845 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Down control=false +12:14 +1846 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=true +12:15 +1847 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=true +12:15 +1848 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing commit uses real input +12:15 +1849 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing cancel uses real input +12:16 +1850 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=false +12:16 +1851 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Up control=false +12:16 +1852 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=false +12:16 +1853 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Down control=false +12:16 +1854 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=true +12:17 +1855 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=true +12:17 +1856 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing commit uses real input +12:17 +1857 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing cancel uses real input +12:18 +1858 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=false +12:18 +1859 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Up control=false +12:18 +1860 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=false +12:18 +1861 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Down control=false +12:19 +1862 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=true +12:19 +1863 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=true +12:19 +1864 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=false +12:19 +1865 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Up control=false +12:19 +1866 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=false +12:20 +1867 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Down control=false +12:20 +1868 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=true +12:20 +1869 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=true +12:20 +1870 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing commit uses real input +12:21 +1871 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing cancel uses real input +12:21 +1872 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=false +12:21 +1873 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Up control=false +12:21 +1874 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=false +12:22 +1875 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Down control=false +12:22 +1876 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=true +12:22 +1877 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=true +12:22 +1878 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing commit uses real input +12:23 +1879 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing cancel uses real input +12:23 +1880 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=false +12:23 +1881 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Up control=false +12:23 +1882 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=false +12:23 +1883 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Down control=false +12:24 +1884 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=true +12:24 +1885 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=true +12:24 +1886 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=false +12:24 +1887 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Up control=false +12:25 +1888 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=false +12:25 +1889 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Down control=false +12:25 +1890 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=true +12:25 +1891 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=true +12:25 +1892 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing commit uses real input +12:26 +1893 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing cancel uses real input +12:26 +1894 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=false +12:26 +1895 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Up control=false +12:27 +1896 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=false +12:27 +1897 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Down control=false +12:27 +1898 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=true +12:27 +1899 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=true +12:28 +1900 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing commit uses real input +12:28 +1901 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing cancel uses real input +12:29 +1902 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=false +12:29 +1903 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Up control=false +12:29 +1904 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=false +12:29 +1905 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Down control=false +12:29 +1906 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=true +12:29 +1907 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=true +12:29 +1908 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=false +12:29 +1909 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Up control=false +12:30 +1910 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=false +12:30 +1911 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Down control=false +12:30 +1912 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=true +12:30 +1913 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=true +12:30 +1914 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: false) +12:31 +1915 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: true) +12:31 +1916 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#80d00(keyId: "0x100000301", keyLabel: "Arrow Down", debugName: "Arrow Down"), previous: LogicalKeyboardKey#88515(keyId: "0x100000304", keyLabel: "Arrow Up", debugName: "Arrow Up"), word: false) +12:32 +1917 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after selection +12:32 +1918 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after document +12:32 +1919 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after same document source +12:32 +1920 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after disposal +12:33 +1921 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=false +12:33 +1922 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=true +12:33 +1923 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: clipboard history replaces selected table through document range +12:34 +1924 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: partial paragraph to table to paragraph replacement preserves outside text and undo +12:34 +1925 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell-local input cut paste and Tab remain local +12:34 +1926 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by up (variant: TargetPlatform.linux) +12:35 +1927 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by cancel (variant: TargetPlatform.linux) +12:36 +1928 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by document (variant: TargetPlatform.linux) +12:37 +1929 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by disposal (variant: TargetPlatform.linux) +12:37 +1930 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=false +12:38 +1931 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=true +12:38 +1932 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=false +12:38 +1933 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=true +12:39 +1934 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=false +12:39 +1935 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=true +12:39 +1936 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=false +12:40 +1937 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=true +12:40 +1938 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=false +12:40 +1939 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=true +12:41 +1940 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=false +12:41 +1941 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=true +12:42 +1942 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=false +12:42 +1943 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=true +12:42 +1944 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=false +12:43 +1945 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=true +12:44 +1946 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=false +12:44 +1947 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=true +12:45 +1948 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=false +12:45 +1949 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=true +12:46 +1950 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=false +12:46 +1951 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=true +12:46 +1952 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=false +12:46 +1953 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=true +12:47 +1954 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=false +12:47 +1955 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=true +12:47 +1956 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=false +12:48 +1957 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=true +12:48 +1958 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=false +12:49 +1959 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=true +12:49 +1960 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=false +12:49 +1961 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=true +12:50 +1962 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=false +12:50 +1963 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=true +12:50 +1964 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=false +12:51 +1965 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=true +12:51 +1966 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=false +12:52 +1967 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=true +12:52 +1968 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=false +12:53 +1969 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=true +12:53 +1970 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local paragraph accepts immediate Unicode input +12:54 +1971 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local cell accepts immediate Unicode input +12:54 +1972 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by caret before handoff +12:54 +1973 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by range before handoff +12:54 +1974 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by document before handoff +12:55 +1975 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by tab replacement before handoff +12:55 +1976 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by disposal before handoff +12:55 +1977 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input retains a scrolled viewport +12:56 +1978 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input uses clamped session offsets +12:56 +1979 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Backspace until committed input +12:56 +1980 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Delete until committed input +12:56 +1981 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Enter until committed input +12:57 +1982 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Left until committed input +12:57 +1983 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Right until committed input +12:57 +1984 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Up until committed input +12:57 +1985 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Down until committed input +12:58 +1986 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Home until committed input +12:58 +1987 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns End until committed input +12:58 +1988 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=false +12:58 +1989 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=true +12:58 +1990 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag up retains committed text input +12:59 +1991 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag cancel retains committed text input +12:59 +1992 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during clipboard preparation +12:59 +1993 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during open menu +13:00 +1994 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=false +13:01 +1995 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=true +13:01 +1996 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false switching a reused editor captures outgoing document selection +13:02 +1997 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true switching a reused editor captures outgoing document selection +13:02 +1998 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false switching a reused editor captures outgoing document selection +13:02 +1999 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true switching a reused editor captures outgoing document selection +13:02 +2000 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false switching a reused editor captures outgoing document selection +13:03 +2001 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true switching a reused editor captures outgoing document selection +13:03 +2002 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false switching a reused editor captures outgoing document selection +13:03 +2003 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true switching a reused editor captures outgoing document selection +13:04 +2004 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=false switching a reused editor captures outgoing document selection +13:04 +2005 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=true switching a reused editor captures outgoing document selection +13:05 +2006 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Cut edits only the selected table +13:05 +2007 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste edits only the selected table +13:05 +2008 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste as Plain Text edits only the selected table +13:06 +2009 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=false +13:06 +2010 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=true +13:06 +2011 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint up restores real typing +13:07 +2012 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint cancel restores real typing +13:07 +2013 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real Select All survives workspace session JSON and editor recreation +13:07 +2014 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real reverse drag survives workspace session JSON and editor recreation +13:07 +2015 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real Select All survives workspace session JSON and editor recreation +13:08 +2016 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real reverse drag survives workspace session JSON and editor recreation +13:08 +2017 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real Select All survives workspace session JSON and editor recreation +13:08 +2018 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real reverse drag survives workspace session JSON and editor recreation +13:09 +2019 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real Select All survives workspace session JSON and editor recreation +13:09 +2020 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real reverse drag survives workspace session JSON and editor recreation +13:10 +2021 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph local reverse selection restores locally +13:10 +2022 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell local reverse selection restores locally +13:10 +2023 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target removed uses current-document fallback +13:10 +2024 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed kind uses current-document fallback +13:11 +2025 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed text uses current-document fallback +13:11 +2026 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned block drag +13:11 +2027 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned cell drag +13:11 +2028 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=false +13:11 +2029 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=true +13:12 +2030 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=false +13:12 +2031 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=true +13:12 +2032 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Delete replaces the selected structured block and undoes +13:13 +2033 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Backspace replaces the selected structured block and undoes +13:13 +2034 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Cut replaces the selected structured block and undoes +13:13 +2035 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Enter replaces the selected structured block and undoes +13:13 +2036 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: plain paste replaces the selected structured block and undoes +13:14 +2037 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: structured paste replaces the selected structured block and undoes +13:14 +2038 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Delete replaces the selected structured block and undoes +13:14 +2039 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Backspace replaces the selected structured block and undoes +13:15 +2040 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Cut replaces the selected structured block and undoes +13:15 +2041 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Enter replaces the selected structured block and undoes +13:15 +2042 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: plain paste replaces the selected structured block and undoes +13:15 +2043 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: structured paste replaces the selected structured block and undoes +13:16 +2044 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Delete replaces the selected structured block and undoes +13:16 +2045 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Backspace replaces the selected structured block and undoes +13:16 +2046 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Cut replaces the selected structured block and undoes +13:17 +2047 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Enter replaces the selected structured block and undoes +13:17 +2048 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: plain paste replaces the selected structured block and undoes +13:17 +2049 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: structured paste replaces the selected structured block and undoes +13:18 +2050 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +13:18 +2051 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +13:18 +2052 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +13:18 +2053 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +13:18 +2054 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +13:18 +2055 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +13:19 +2056 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-ended selection accepts actual committed Unicode input once +13:19 +2057 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: captured table selection restores highlighting copy and mutation +13:19 +2058 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-block drag without changing its endpoint +13:19 +2059 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-cell drag without changing its endpoint +13:19 +2060 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated pointer cannot complete an owned document drag +13:20 +2061 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Delete cannot edit a local fallback +13:20 +2062 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Enter cannot edit a local fallback +13:20 +2063 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document plain paste cannot edit a local fallback +13:20 +2064 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document structured paste cannot edit a local fallback +13:20 +2065 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document typing cannot edit a local fallback +13:20 +2066 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: failed document deletion preserves redo history +13:20 +2067 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after failure +13:20 +2068 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after selection +13:21 +2069 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after document +13:21 +2070 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after disposal +13:22 +2071 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after failure +13:22 +2072 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after selection +13:22 +2073 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after document +13:22 +2074 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after disposal +13:23 +2075 -1: loading /home/albert/busystack/busymark/test/src/busymark_toast_test.dart +13:23 +2075 -1: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast works when hosted above the Navigator +13:24 +2076 -1: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast appears at the bottom center and dismisses itself +13:24 +2077 -1: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast action runs and dismisses the toast +13:24 +2078 -1: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toasts queue instead of covering each other +13:24 +2079 -1: loading /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart +13:25 +2079 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames normalizes runs, edges, case, and Unicode once +13:25 +2080 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames disabled preprocessing preserves established safe characters +13:25 +2081 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames resolves exact custom values per instance for Markdown and XML +13:25 +2082 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/default collision +13:25 +2083 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/custom collision +13:25 +2084 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses custom/custom collision +13:25 +2085 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics allows the same output name in disjoint instances +13:25 +2086 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics deduplicates repeated publication of one physical topic +13:25 +2087 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses a collision with an origin module topic +13:25 +2088 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics resolves conditioned names independently in each instance +13:25 +2089 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses invalid custom filenames before export +13:25 +2090 -1: loading /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart +13:26 +2090 -1: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover preference defaults off, serializes and copies independently +13:26 +2091 -1: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover title and authors use the established metadata precedence +13:26 +2092 -1: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: snapshot metadata, display text, explicit clears and plain JSON remain independent +13:26 +2093 -1: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: instance title uses its display name and only known project metadata +13:26 +2094 -1: loading /home/albert/busystack/busymark/test/src/path_utils_test.dart +13:27 +2094 -1: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries cancels a wide directory listing at the limit +13:27 +2095 -1: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries counts directories against the scan budget +13:27 +2096 -1: /home/albert/busystack/busymark/test/src/path_utils_test.dart: directory listing failure marks traversal incomplete +13:27 +2097 -1: /home/albert/busystack/busymark/test/src/path_utils_test.dart: display scan includes hidden and unsupported entries but not VCS data +13:27 +2098 -1: loading /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart +13:29 +2098 -1: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses multiple commits +13:31 +2099 -1: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses merge commit with multiple parents +13:31 +2100 -1: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: preserves author punctuation and separator-like subject text +13:31 +2101 -1: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses empty history +13:31 +2102 -1: loading /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart +13:31 +2102 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses clean repository status +13:31 +2103 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses modified tracked file +13:31 +2104 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged modification +13:31 +2105 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses unstaged modification +13:31 +2106 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged and unstaged same file +13:31 +2107 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: keeps staged addition and working-tree deletion separate +13:31 +2108 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: tracks rename state independently in each status column +13:31 +2109 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses untracked file +13:31 +2110 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses deleted file +13:31 +2111 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses renamed file +13:31 +2112 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses copied file +13:31 +2113 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses conflicted files +13:31 +2114 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses branch header and ahead behind counts +13:31 +2115 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses detached head header +13:31 +2116 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: preserves spaces, unicode, quotes, and newlines in filenames +13:31 +2117 -1: loading /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart +13:35 +2117 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: process-backed Git gateway requires workspace trust +13:35 +2118 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: configures a repository author identity without terminal setup +13:37 +2119 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: runs core workflow in a temporary Git repository +13:38 +2120 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status lists every non-ignored hidden untracked file +13:38 +2121 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: resets the current branch with each explicit Git reset mode +13:39 +2122 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: refuses to reset while HEAD is detached +13:40 +2123 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: keeps staged and unstaged comparisons separate +13:40 +2124 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged rename diff and unstage preserve both paths +13:40 +2125 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: rollback restores both sides of a staged rename to HEAD +13:41 +2126 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged addition deleted from the working tree keeps separate diffs +13:41 +2127 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: preserves complete deleted content and restores a deleted version +13:42 +2128 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: failed historical blob read cannot delete the working file +13:42 +2129 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: constructs complete text and binary comparisons for untracked files +13:42 +2130 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: direct working-tree operations reject intermediate symlink escapes +13:42 +2131 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: fetch updates remote-tracking status without changing files +13:43 +2132 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: follows renames, compares complete versions, and restores one file +13:43 +2133 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: compares a merge commit with its first parent +13:44 +2134 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: switch treats an option-like branch name as an operand +13:44 +2135 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff and commit details preserve C-quoted UTF-8 paths +13:45 +2136 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: pushSetUpstream does not broaden an option-like branch to --all +13:45 +2137 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: detects conflicted files in a temporary Git repository +13:45 +2138 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status does not run a repository-configured filesystem monitor +13:46 +2139 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff APIs do not run a repository-configured textconv +13:46 +2140 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: commit details do not run a repository-configured textconv +13:46 +2141 -1: loading /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart +13:47 +2141 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner closes child stdin so commands waiting for EOF can finish +13:47 +2142 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates commands that exceed the combined output limit +13:47 +2143 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: normal gateway commands always receive a finite timeout +13:47 +2144 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: gateway classifies a missing commit author identity +13:47 +2145 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap packages the Linux process-group launcher +13:47 +2146 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap Git uses bundled helpers, templates, and SSH +13:47 +2147 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap launcher never falls back to the confined host setsid +13:47 +2148 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves process launcher failures +13:47 +2149 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves a failed version probe result +13:47 +2150 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator reports not found for a genuinely missing command +13:47 +2151 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates descendant processes when a command times out +13:49 +2152 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: timeout covers descendants that outlive the direct child and hold stdio +13:50 +2153 -1: loading /home/albert/busystack/busymark/test/src/git/git_widget_test.dart +13:52 +2153 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: hunk range text hides raw unified diff markers +13:52 +2154 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes are grouped correctly +13:52 +2155 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file checkboxes select files for commit +13:53 +2156 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: a path with staged and unstaged changes appears in both groups +13:53 +2157 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AD path shows staged addition and unstaged deletion without open action +13:53 +2158 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: staged rename preserves both paths and workspace scope +13:53 +2159 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: rename paths follow the selected Git status column +13:53 +2160 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit panel reports staged count and unsaved editor state +13:53 +2161 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message uses the grouped multiline form surface +13:53 +2162 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft is a secondary button immediately before Commit +13:53 +2163 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft replaces text, trims it, and moves the cursor +13:53 +2164 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history requires an active Markdown file +13:53 +2165 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file action menu does not contain commit selection actions +13:53 +2166 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untracked file menu uses an explicit delete action +13:54 +2167 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: unsupported untracked files remain stageable but cannot open +13:54 +2168 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit section colors files by Git status +13:54 +2169 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes view commit panel commits staged files with message +13:54 +2170 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit remains disabled without staged files +13:54 +2171 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: multiline commit message is retained and committed verbatim +13:54 +2172 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: failed commit preserves the commit message +13:54 +2173 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: committing disables actions and retains text until success +13:54 +2174 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message clears when repository or workspace changes +13:54 +2175 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: conflict group is visible +13:54 +2176 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: Git unavailable empty state is shown +13:54 +2177 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untrusted workspace shows repository trust prompt +13:54 +2178 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view shows no repository sync strip when clean +13:54 +2179 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not show branch dropdown +13:54 +2180 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not describe branch sync state +13:54 +2181 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history keeps comparison controls out of the sidebar +13:54 +2182 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history file rows show selected file diff +13:55 +2183 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history reset requires an explicit reset mode +13:55 +2184 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: dirty editor banner appears in diff viewer +13:55 +2185 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff hides duplicate file header but keeps open action +13:55 +2186 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action requires an explicit working-tree target +13:55 +2187 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action uses the explicit current path +13:55 +2188 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff keeps rename paths visible +13:55 +2189 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer renders patch rows with shared source view +13:55 +2190 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff can hide hunk headers and file action +13:55 +2191 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source uses full file snapshot when available +13:55 +2192 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: deleted diff shows the complete removed file snapshot +13:55 +2193 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer scrolls to the first source change on open +13:55 +2194 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source rows use configured editor font size +13:55 +2195 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff context lines show old and new number columns +13:56 +2196 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff line numbers use source gutter geometry +13:56 +2197 -1: loading /home/albert/busystack/busymark/test/src/git/git_controller_test.dart +13:57 +2197 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: diff open target follows the current working-tree context +13:57 +2198 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: refreshes after workspace attach +13:57 +2199 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: does not expose repository Git for a single Markdown file +13:57 +2200 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust-required gateway does not inspect workspace before trust +13:57 +2201 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clearing trust immediately revokes repository access +13:57 +2202 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: status failure after trust retains the detected repository +13:57 +2203 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust is scoped to the attached workspace +13:57 +2204 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: Git executes with the canonical path that was trusted +13:57 +2205 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stage and unstage update state +13:57 +2206 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: loads only the selected change comparison and reconciles after stage +13:57 +2207 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: routes untracked selections to the untracked comparison +13:57 +2208 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: staged rename comparison preserves the original path +13:57 +2209 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: rollback forwards every validated rename path +13:57 +2210 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reactivates an open change comparison tab +13:57 +2211 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks empty message +13:57 +2212 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks when no files are staged +13:57 +2213 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: configures author identity through the active repository +13:57 +2214 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: AI staged-diff fingerprint rejects obsolete commit context +13:57 +2215 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: branch switch requires clean BusyMark editor state +13:57 +2216 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the active editor has unsaved content +13:57 +2217 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the current file is staged +13:57 +2218 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore protects a repository-relative file against the repository root +13:57 +2219 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset uses the selected commit and mode +13:57 +2220 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset is blocked by unsaved editor content +13:57 +2221 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: fetch refreshes repository status +13:57 +2222 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reports Git unavailable state +13:57 +2223 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stores operation failure state +13:57 +2224 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: exposes conflict state +13:57 +2225 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clears previous workspace Git state immediately on attach +13:57 +2226 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale refresh results after workspace switch +13:57 +2227 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: cancels set-upstream push when the workspace changes during remote lookup +13:57 +2228 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale history after a workspace switch +13:57 +2229 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: history tab reloads project history after workspace switch +13:57 +2230 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: current file history scopes selected commit details to the file +13:57 +2231 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file history switches between commit and working-tree comparisons +13:57 +2232 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history loads selected commit details without a file scope +13:57 +2233 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project commit details display the first changed file by default +13:57 +2234 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: selected commit file opens a project commit diff tab +13:57 +2235 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: closing a commit diff file tab activates the neighboring tab +13:57 +2236 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: deactivating a diff file keeps open diff tabs +13:57 +2237 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file and project history paginate and retain separate selections +13:57 +2238 -1: loading /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart +14:01 +2238 -1: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: Enter submits Git identity and preserves global scope +14:02 +2239 -1: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: failed commit saves identity and retries the same commit +14:02 +2240 -1: loading /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart +14:03 +2240 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses added file +14:03 +2241 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses deleted file +14:03 +2242 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses modified file with line numbers +14:03 +2243 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses renamed file +14:03 +2244 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted UTF-8 paths emitted by Git +14:03 +2245 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted rename metadata emitted by Git +14:03 +2246 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses binary file marker +14:03 +2247 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses multiple hunks +14:03 +2248 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: keeps no newline marker as header line +14:03 +2249 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: tolerates unknown diff header lines +14:03 +2250 -1: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart +14:06 +2250 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export failure dialog exposes actionable detail +14:07 +2251 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export eligibility is limited to active regular Markdown +14:07 +2252 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: workspace PDF export accepts a Writerside module instance +14:07 +2253 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: atomic PDF publication never replaces without confirmation +14:08 +2254 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: service rejects compiler output that is not a PDF +14:08 +2255 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler locator prefers the explicit development override +14:08 +2256 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler cancellation force-stops an unresponsive process +14:08 +2257 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: asset staging accepts passive SVG and rejects external content +14:08 +2258 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: Linux packaging pins and installs the bundled Typst compiler +14:08 +2259 -1: loading /home/albert/busystack/busymark/test/src/source_search_test.dart +14:09 +2259 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex uses Unicode code points and diagnoses zero-length matches +14:09 +2260 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace-style bounded matching stops after the sentinel match +14:09 +2261 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: search worker terminates a running backtracking expression +14:09 +2262 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: plain search finds case-insensitive matches by default +14:09 +2263 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: case-sensitive and whole-word options constrain matches +14:09 +2264 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: whole-word boundaries recognize Unicode letters and marks +14:09 +2265 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex search and invalid regex are safe +14:09 +2266 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: navigation tracks current index and wraps +14:09 +2267 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: matches inside folded content are marked hidden and revealable +14:09 +2268 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace search groups authoring content by file +14:09 +2269 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker cancels stale requests +14:09 +2270 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker bounds transferred high-match results +14:09 +2271 -1: loading /home/albert/busystack/busymark/test/src/source_commands_test.dart +14:11 +2271 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab inserts spaces +14:11 +2272 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab indents selected lines without replacing their text +14:11 +2273 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: indent and outdent selected lines +14:11 +2274 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter continues unordered ordered task and blockquote lines +14:11 +2275 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter exits empty list item +14:11 +2276 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts for nested source lines +14:11 +2277 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts beneath each source parent +14:11 +2278 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: inline commands toggle bold italic code and links +14:11 +2279 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: code fence and image insertion keep source-specific placeholders +14:11 +2280 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: block insertion accepts localized default content +14:11 +2281 -1: loading /home/albert/busystack/busymark/test/src/source_highlighter_test.dart +14:13 +2281 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: source highlighting bounds high-match span composition +14:14 +2282 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter colors editor syntax +14:15 +2283 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter formats fenced code +14:15 +2284 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter tracks dynamic fence delimiters +14:15 +2285 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter does not open on indented code +14:15 +2286 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: xml source highlighter colors tags attributes and strings +14:15 +2287 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: plain source highlighter keeps normal editor text color +14:15 +2288 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: controller can keep editable text transparent for custom render +14:15 +2289 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: transparent editing layout matches rendered Markdown layout +14:15 +2290 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions project body lines out of editable text +14:15 +2291 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: rendered folded regions hide collapsed header text +14:15 +2292 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions collapse measured editor height +14:15 +2293 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown editor keeps syntax markers visible while styling content +14:15 +2294 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown tracks dynamic fence delimiters +14:15 +2295 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges nested emphasis inside links +14:15 +2296 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps inline code inside list items +14:15 +2297 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges bold and italic nesting +14:15 +2298 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges links inside blockquotes +14:15 +2299 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps emphasis inside table cells +14:15 +2300 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter recognizes math without damaging code +14:16 +2301 -1: loading /home/albert/busystack/busymark/test/src/html_export_options_test.dart +14:17 +2301 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: TOC and numbering use the semantic hierarchy and preserve anchor IDs +14:18 +2302 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.light emits complete color variables, responsive width and metadata +14:18 +2303 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.dark emits complete color variables, responsive width and metadata +14:18 +2304 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.automatic emits complete color variables, responsive width and metadata +14:18 +2305 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: custom CSS follows generated rules and is captured before processing +14:18 +2306 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF CSS hashes the text seen by the HTML parser +14:18 +2307 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF custom and built-in CSS apply in Chromium +14:25 +2308 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF CSS hashes the text seen by the HTML parser +14:25 +2309 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF custom and built-in CSS apply in Chromium +14:28 +2310 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR CSS hashes the text seen by the HTML parser +14:28 +2311 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR custom and built-in CSS apply in Chromium +14:29 +2312 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: single-file attachments retain download names and reject source data URLs +14:29 +2313 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CSS rejects unsafe URLs, imports, HTML, unreadable and oversized files +14:30 +2314 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: repeated embedded assets are bounded before publication and keep old output +14:30 +2315 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.singleFile packages validated assets without source paths or fetching +14:30 +2316 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.assetsDirectory packages validated assets without source paths or fetching +14:30 +2317 -1: loading /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart +14:36 +2317 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: navigation glyphs resolve for both reading directions +14:36 +2318 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: editing glyphs resolve for both reading directions +14:36 +2319 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git branch glyph does not mirror with reading direction +14:36 +2320 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git action glyphs have native menu equivalents +14:36 +2321 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Arabic and Persian font fallbacks are available in the snap +14:36 +2322 -1: loading /home/albert/busystack/busymark/test/src/source_comparison_test.dart +14:38 +2322 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: keeps separated edits as exact separate changes +14:38 +2323 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: handles repeated lines without losing exact offsets +14:38 +2324 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: refines Unicode intraline ranges on UTF-16 boundaries +14:38 +2325 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: distinguishes whitespace, final newline, empty, and XML changes +14:38 +2326 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: labels an unanchored expensive comparison as simplified +14:38 +2327 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: version identity detects stale comparison inputs +14:38 +2328 -1: loading /home/albert/busystack/busymark/test/src/writerside_project_test.dart +14:42 +2328 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers modules, indexes symbols, and resolves origin references +14:42 +2329 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under build +14:42 +2330 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under a hidden directory +14:42 +2331 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: module discovery hard-excludes VCS metadata directories +14:42 +2332 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic ownership is project-wide and prefers the nested module +14:42 +2333 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace promotes a parent directory to a multi-module project +14:42 +2334 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic symbols cannot be renamed independently of their files +14:42 +2335 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace module and instance selection changes active context +14:42 +2336 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse overlays indexed symbols and preserves unrelated diagnostics +14:42 +2337 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of variables updates completion and resolution without reopening +14:42 +2338 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of an instance tree updates active project context +14:42 +2339 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: BusyMark matches the official builder semantic snapshot for the fixture +14:43 +2340 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: conformance fixture preserves source and resolves semantic content +14:43 +2341 -1: loading /home/albert/busystack/busymark/test/src/math_renderer_test.dart +14:46 +2341 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: renders multiple expressions in one batch and isolates failure +14:46 +2342 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: coalesces a large page, caches successes, and rebases local IDs +14:46 +2343 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: deduplicates identical formulas pending in the same batch +14:46 +2344 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: discards an obsolete block revision +14:46 +2345 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: cancels WebKit work after a sole request is superseded +14:46 +2346 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: maps timeout and unavailable hosts to local math failures +14:46 +2347 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rejects oversized input before invoking WebKit +14:46 +2348 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: extracts baseline style and preserves vector-safe MathJax SVG +14:46 +2349 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: resolves currentColor without flattening explicit SVG colors +14:46 +2350 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rebases wide MathJax coordinates before secure normalization +14:46 +2351 -1: loading /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart +14:49 +2351 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: stages vector/raster assets, maps OpenAPI, and preserves failed source +14:50 +2352 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: enforces the export block count without failing the document +14:50 +2353 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: loads a Writerside referenced diagram before PDF rendering +14:50 +2354 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: static OpenAPI export contains selectable reference sections +14:50 +2355 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: Typst exports generated vector/raster assets and falls back on failure +14:50 +2356 -1: loading /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart +14:53 +2356 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: parses every GTK 3 decoration token in physical order +14:53 +2357 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: ignores unknown controls and actions safely +14:53 +2358 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: loads preferences and delegates the narrowly scoped lower action +14:53 +2359 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: window preference values have stable equality +14:53 +2360 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: null decoration layout uses the documented GTK 3 default +14:53 +2361 -1: loading /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart +14:55 +2361 -1: /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart: release smoke report path requires an explicit nonempty argument +14:55 +2362 -1: loading /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart +14:59 +2362 -1: /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart: spelling release smoke requires an explicit guarded report path +14:59 +2363 -1: loading /home/albert/busystack/busymark/test/src/system_accent_test.dart +15:03 +2363 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: uses the native Yaru orange accent as the offline fallback +15:03 +2364 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: keeps exact RGB portal accent color values authoritative +15:03 +2365 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: maps Ubuntu accent names when RGB portal value is unavailable +15:03 +2366 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: falls back to RGB when the Ubuntu accent is unavailable +15:03 +2367 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: Yaru accent wins over a different generic portal RGB +15:03 +2368 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: a Yaru accent signal remains authoritative over generic RGB +15:03 +2369 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: an unavailable named accent releases the current generic RGB +15:03 +2370 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: portal subscribes before both reads and retains changes during reads +15:03 +2371 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: missing portal keys, malformed signals, cancellation and resubscription +15:03 +2372 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic portal initialization cannot overwrite a newer generic change +15:03 +2373 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=true; unavailability selects current portal +15:03 +2374 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=false; unavailability selects current portal +15:03 +2375 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: source errors remain independent and healthy native updates continue +15:03 +2376 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: startup changes supersede native snapshots, including unavailable changes +15:03 +2377 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: disposal completes pending startup and cancels each owned source once +15:03 +2378 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid GTK releases startup while portal reads stay pending +15:03 +2379 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic signal cannot resolve startup before pending named read +15:03 +2380 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid named portal releases startup without pending RGB +15:03 +2381 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending GTK blocks ready portal until GTK arrives before deadline +15:03 +2382 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on unavailable +15:03 +2383 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on failure +15:03 +2384 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on deadline +15:03 +2385 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: all silent sources time out to orange and late sources recover +15:03 +2386 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending initialization disposal cancels timers and portal session once +15:03 +2387 -1: loading /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart +15:12 +2387 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=false section order and native links +15:13 +2388 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=true section order and native links +15:13 +2389 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=false section order and native links +15:13 +2390 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=true section order and native links +15:13 +2391 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=false section order and native links +15:13 +2392 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=true section order and native links +15:14 +2393 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=false section order and native links +15:14 +2394 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=true section order and native links +15:14 +2395 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: multipage native outline ends before any body paragraphs; links and page references stay correct +15:14 +2396 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=bottomCenter +15:14 +2397 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=off +15:15 +2398 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=bottomCenter +15:15 +2399 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=off +15:15 +2400 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif portrait margins +15:15 +2401 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif landscape margins +15:15 +2402 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif portrait margins +15:16 +2403 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif landscape margins +15:16 +2404 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: request defaults come from source metadata and native outline title stays localized +15:16 +2405 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: an oversized cover fails clearly and leaves the existing PDF untouched +15:16 +2406 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in sansSerif +15:16 +2407 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in serif +15:16 +2408 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+a0 fails without replacing the PDF +15:17 +2409 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+2060 fails without replacing the PDF +15:17 +2410 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within A4 cover bounds or fails without replacing the PDF +15:17 +2411 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within A4 cover bounds or fails without replacing the PDF +15:17 +2412 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within A4 cover bounds or fails without replacing the PDF +15:18 +2413 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within A4 cover bounds or fails without replacing the PDF +15:18 +2414 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within A4 cover bounds or fails without replacing the PDF +15:18 +2415 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within A4 cover bounds or fails without replacing the PDF +15:18 +2416 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within narrow custom cover bounds or fails without replacing the PDF +15:18 +2417 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within narrow custom cover bounds or fails without replacing the PDF +15:19 +2418 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within narrow custom cover bounds or fails without replacing the PDF +15:19 +2419 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within narrow custom cover bounds or fails without replacing the PDF +15:19 +2420 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within narrow custom cover bounds or fails without replacing the PDF +15:19 +2421 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within narrow custom cover bounds or fails without replacing the PDF +15:19 +2422 -1: loading /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart +15:23 +2422 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: workspace spelling UI has no obsolete floating or Material chooser +15:23 +2423 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Writerside nested TOC and comment retain rich spelling through correction +15:28 +2424 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich image review preserves authored source through undo and redo +15:31 +2425 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested code image beside math through undo and redo +15:33 +2426 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested address image beside math through undo and redo +15:35 +2427 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Ctrl+N typing paints live spelling targets and corrects with undo +15:37 +2428 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: confirmed spelling underline survives continued typing +15:38 +2429 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo café + +wrld + +15:41 +2430 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo +world + +wrld + +15:43 +2431 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: | helo café | +| --- | +| hello | + +wrld + +15:46 +2432 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in editor +15:47 +2433 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in split +15:48 +2434 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: language-required state uses compact document status instead of a banner +15:49 +2435 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: general Markdown fixture finishes automatic rich spelling +15:55 +2436 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in editor +15:57 +2437 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in source +15:57 +2438 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new rich document checks spelling after choosing its language +15:59 +2439 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new source document checks spelling after choosing its language +16:00 +2440 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in editor mode +16:01 +2441 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in source mode +16:01 +2442 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in preview mode +16:02 +2443 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in split mode +16:03 +2444 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: spelling-off status remains an actionable language control +16:04 +2445 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: status initializes the chooser when automatic spelling is off +16:05 +2446 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: banner installs the required dictionary and then conceals +16:07 +2447 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed banner installation keeps the unresolved state +16:08 +2448 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: routine checking does not create persistent editor chrome +16:08 +2449 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic spelling failure is visible in the compact banner +16:09 +2450 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic incomplete projection is visible in the compact banner +16:10 +2451 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: native spelling submenu applies immediate language choices +16:11 +2452 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: cancelling document dictionary install preserves override +16:11 +2453 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: document language changes only after dictionary installation +16:14 +2454 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed document dictionary install preserves override +16:15 +2455 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart +16:21 +2455 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: native fragment preserves formatting and structured blocks through JSON +16:21 +2456 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: single rich paragraphs preserve list descendants through source +16:21 +2457 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: fragment rejects invalid versions, ranges, kinds, and excessive nesting +16:21 +2458 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: relative links are rebased for another document +16:21 +2459 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: inline images retain their source media path between projects +16:21 +2460 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Writerside structure survives the fragment and insertion +16:21 +2461 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: styled table-cell insertion preserves emphasis and table structure +16:21 +2462 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard service serializes writes and reads the latest result +16:21 +2463 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard HTML carries headings, emphasis, tasks, tables, and code +16:21 +2464 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: external HTML blockquotes survive Editor serialization +16:21 +2465 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard fragment serializes its selected structure as Markdown +16:21 +2466 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: HTML normalization preserves supported CSS and checkbox state safely +16:21 +2467 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=false) +16:23 +2468 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=true) +16:23 +2469 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix < survives Enter, source reload and label edit +16:23 +2470 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix *< survives Enter, source reload and label edit +16:24 +2471 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix * survives Enter, source reload and label edit +16:24 +2472 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: © +16:24 +2473 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: & +16:24 +2474 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: &* +16:25 +2475 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=false) +16:25 +2476 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=true) +16:25 +2477 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard pasted URL retains live link coverage through split, Backspace and suffix formatting +16:25 +2478 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard fresh Editor restores system clipboard formatting and undo +16:26 +2479 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor pastes a web layout table as a complete document +16:26 +2480 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete heading list and code blocks retain structure at every paragraph position +16:27 +2481 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete blocks in list items preserve descendants and undo tree +16:28 +2482 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard single rich paragraph field replacement preserves every list subtree +16:28 +2483 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste keeps the committed caret and typing position +16:29 +2484 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard rich paste in math fields uses source coordinates +16:29 +2485 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste returns the committed block caret +16:29 +2486 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste preserves list descendants through Undo and Redo +16:30 +2487 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste persists intentional whitespace through history +16:30 +2488 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document paste preserves whitespace and heading replacement scope +16:30 +2489 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste restores table-cell focus and committed caret +16:31 +2490 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history multi-paragraph paste focuses the committed last paragraph +16:31 +2491 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copy all does not duplicate nested list children +16:31 +2492 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document copy preserves a structured blockquote +16:31 +2493 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard right-click opens the menu for a whole-document selection +16:31 +2494 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image-only clipboard context menu offers only normal Paste +16:32 +2495 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Copy Plain Text strips formatting in another Editor +16:32 +2496 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard document selection menu can copy plain text +16:32 +2497 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard partial inline copy keeps formatting inside another paragraph +16:32 +2498 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut transfers formatting before deleting the selection +16:32 +2499 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard malformed native fragment falls back to HTML +16:33 +2500 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML-only clipboard imports into a fresh Editor +16:33 +2501 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML clipboard plain paste inserts only its text +16:33 +2502 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard retained external HTML preserves structure on history paste +16:33 +2503 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard current HTML-only and malformed HTML use ordinary importer fallbacks +16:33 +2504 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard external image history retains the bytes ingested before its dialog +16:37 +2505 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history panel path paste has one editor-owned retention write +16:40 +2506 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copied local video can be pasted from history in Editor +16:41 +2507 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image paste cancellation is terminal and cleans new assets +16:46 +2508 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image picker alternatives stay provisional until acceptance +16:57 +2509 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image finalization failure preserves the inserted reference and file +16:58 +2510 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard native and history image filesystem failures are handled outcomes +16:58 +2511 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain history paste replaces a document selection ending at a non-field block +16:58 +2512 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image history follows table and multi-block destinations +17:01 +2513 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Ctrl+Shift+V pastes only interoperable plain text +17:01 +2514 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste never probes or ingests an existing image path +17:02 +2515 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard failed clipboard write leaves cut selection intact +17:02 +2516 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste does not edit a destination changed during the read +17:02 +2517 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor paste preserves composition before and during reads +17:02 +2518 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard table-cell paste shortcut is consumed during composition +17:02 +2519 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard composition starting during image ingestion invalidates and cleans paste +17:03 +2520 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut does not delete a selection changed during the write +17:03 +2521 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste is cancelled when the destination Editor is replaced +17:03 +2522 -1: loading /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart +17:05 +2522 -1: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed light surface palette +17:06 +2523 -1: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed dark surface palette +17:06 +2524 -1: loading /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart +17:09 +2524 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title edit preserves the resolved topic owner across modules +17:09 +2525 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ") +17:10 +2526 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ") +17:10 +2527 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ') +17:10 +2528 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ') +17:10 +2529 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ") +17:10 +2530 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ") +17:10 +2531 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ') +17:11 +2532 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ') +17:11 +2533 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: normalized title identity still rejects changed content and raw matching stays exact +17:11 +2534 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects missing attribute ranges before publication +17:11 +2535 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects corrupt attribute ranges before publication +17:11 +2536 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title publication rejects duplicate attributes in resulting XML +17:11 +2537 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (") +17:11 +2538 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (') +17:11 +2539 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: instance title save, reopen, unchanged OK, and edit keep one escaping layer +17:13 +2540 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: single-quoted Markdown override reopens decoded and edits without touching example +17:13 +2541 -1: loading /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart +17:15 +2541 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: production provider consumes an older GTK accent without portals +17:15 +2542 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: non-Linux never creates platform listeners +17:15 +2543 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: missing native snapshot uses portal, then native events regain priority +17:15 +2544 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: GTK with silent portals +17:16 +2545 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: named with silent RGB +17:16 +2546 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK before deadline +17:16 +2547 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK at deadline +17:16 +2548 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes valid +17:16 +2549 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes unavailable +17:16 +2550 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named at deadline +17:16 +2551 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: all silent at deadline +17:16 +2552 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: application scope teardown cancels unresolved startup deadlines +17:16 +2553 -1: loading /home/albert/busystack/busymark/test/src/markdown_parser_test.dart +17:17 +2553 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parsed formatting boundaries +17:17 +2554 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping locates partially consumed delimiter runs +17:17 +2555 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping retains escaped collapsed references +17:17 +2556 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping keeps original autolink semantics +17:17 +2557 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping preserves supported autolink variants +17:17 +2558 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parser case folding for references +17:17 +2559 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: ordinary reference parsing retains pinned sharp-S folding behavior +17:17 +2560 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: invalid email-like text cannot orphan a later mapped link +17:17 +2561 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects logical content to container source +17:17 +2562 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: positioned block mapping accepts a trailing empty logical line +17:17 +2563 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping ignores title and code-span source breaks +17:17 +2564 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping keeps each hard-break occurrence range +17:17 +2565 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping matches standalone HTML break layout +17:17 +2566 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects HTML break layout through containers +17:17 +2567 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: HTML break layout mapping preserves soft breaks and literal code +17:17 +2568 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts title, outline, links, images, and code fences +17:17 +2569 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts front matter title +17:17 +2570 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside Markdown title comes from H1, not front matter +17:17 +2571 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside front matter title does not satisfy missing H1 +17:17 +2572 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: parseAsync handles documents above the background threshold +17:18 +2573 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates Unicode heading anchors for supported languages +17:18 +2574 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deduplicates generated heading IDs in source order +17:18 +2575 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates heading IDs from semantic inline text +17:18 +2576 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: canonicalizes valid ATX and setext heading variants +17:18 +2577 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: retains Writerside title when complex list source needs fallback +17:18 +2578 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unresolved links, missing images, and missing alt text +17:18 +2579 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not validate schemed URIs as local references +17:18 +2580 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: resolves home-relative local image references +17:18 +2581 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: derives diagnostic links and images from Markdown AST semantics +17:18 +2582 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: normal Markdown image diagnostics stay within the workspace root +17:18 +2583 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local reference diagnostics allow absolute images but reject other escapes +17:18 +2584 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: cross-linked Markdown anchor validation does not recurse forever +17:18 +2585 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation stays inside the workspace root +17:18 +2586 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read unsupported anchor targets +17:18 +2587 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read oversized Markdown targets +17:19 +2588 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unsafe raw HTML +17:19 +2589 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe raw HTML does not produce unsafe diagnostics +17:19 +2590 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Markdown headings inside paired raw HTML are not outline headings +17:19 +2591 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML tags produce unsafe diagnostics +17:19 +2592 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML attributes produce unsafe diagnostics +17:19 +2593 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML URLs produce unsafe diagnostics +17:19 +2594 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deeply nested raw HTML produces unsafe diagnostic +17:19 +2595 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe HTML tags do not become Writerside XML blocks +17:19 +2596 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts Writerside Markdown XML blocks and variables +17:19 +2597 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: emits deterministic Markdown accessibility diagnostics +17:19 +2598 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not report populated table headers as empty +17:19 +2599 -1: loading /home/albert/busystack/busymark/test/src/feedback_submission_test.dart +17:20 +2599 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator requires category and enforces subject and message bounds +17:20 +2600 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts inclusive subject and message boundaries +17:21 +2601 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects oversized fields and invalid optional email +17:21 +2602 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator counts Unicode code points at subject and message boundaries +17:21 +2603 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts practical valid email syntax +17:21 +2604 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects malformed email syntax and length boundaries +17:21 +2605 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes required metadata and omits unapproved details +17:21 +2606 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes only explicitly approved technical details +17:21 +2607 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission uses every declared category wire value +17:21 +2608 -1: loading /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart +17:22 +2608 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter owns application chrome; native bridge carries no split geometry +17:23 +2609 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Workspace, Welcome and Settings use the shared full-height frame +17:23 +2610 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native clipboard, menus, Writerside media and rendering hosts remain registered +17:23 +2611 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Linux desktop identity uses the standard Snap launcher mapping +17:23 +2612 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: strict Snap keeps the GTK SVG loader ABI-aligned with GNOME +17:23 +2613 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder stages bundled Git tools +17:23 +2614 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local repack replaces clean-snap font links with new bundle fonts +17:23 +2615 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: confined dependency checks reject missing and wrong resolutions +17:24 +2616 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap reuses verified platform libraries and retains private tools +17:24 +2617 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder uses the project Flutter toolchain +17:24 +2618 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snapcraft pins the same Flutter release as the project +17:24 +2619 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder keeps compiler output off the system tmpfs +17:24 +2620 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter content menus use native GTK popup menu semantics +17:24 +2621 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native content menus clean up direct GTK popup sessions +17:24 +2622 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap packaging hooks consolidate resources and keep required fixes +17:24 +2623 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native GTK theme follows brightness without replacing a valid user theme +17:24 +2624 -1: loading /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart +17:25 +2624 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: valid native fragment wins over HTML and text +17:25 +2625 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: malformed native fragment falls through to valid HTML +17:25 +2626 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: unusable HTML falls through to source and plain text +17:25 +2627 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: HTML-only blockquotes are usable through descendant content +17:25 +2628 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: mixed external HTML preserves every block for Editor and Markdown Source +17:25 +2629 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode uses only interoperable text +17:25 +2630 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode rejects source-only and image-only payloads +17:25 +2631 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: whitespace text is valid and empty text is unavailable +17:25 +2632 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: explicit image is first in normal mode +17:25 +2633 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: Editor and Source use their required textual fallback order +17:25 +2634 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: structured source serialization accepts the destination mode +17:25 +2635 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: native inline serialization preserves whitespace without a newline +17:25 +2636 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: table-cell fragment serialization escapes pipes and flattens lines +17:25 +2637 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: local image path detection is safe and rejects altered URI meaning +17:25 +2638 -1: loading /home/albert/busystack/busymark/test/src/uri_utils_test.dart +17:27 +2638 -1: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: external launch policy is an explicit safe-list +17:27 +2639 -1: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: scheme detection remains broader than launch policy +17:27 +2640 -1: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: remote resources only allow http and https +17:27 +2641 -1: loading /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart +17:31 +2641 -1: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger aggregates locally by month and provider +17:34 +2642 -1: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger starts a clean aggregate in a new month +17:34 +2643 -1: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: malformed ledger data is treated as empty, not surfaced +17:34 +2644 -1: loading /home/albert/busystack/busymark/test/src/busymark_design_test.dart +17:37 +2644 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch suppresses state halos and preserves focus borders +17:38 +2645 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in dark +17:38 +2646 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in dark +17:38 +2647 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in light +17:38 +2648 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in light +17:38 +2649 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: disabled switch preserves inherited disabled styling +17:38 +2650 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch row owns its control and activates exactly once +17:38 +2651 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch preserves Yaru drag activation +17:38 +2652 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: radio suppresses state halos and preserves focus borders +17:38 +2653 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in dark +17:38 +2654 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in dark +17:38 +2655 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in light +17:38 +2656 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in light +17:38 +2657 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: informational dialog keeps the close control at the right edge +17:38 +2658 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: Split Preview stays fluid without copying Source-only chrome +17:38 +2659 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: document frame centers wide content and honors physical safe edges +17:38 +2660 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: toolbar clearance is applied only to the toolbar edge +17:38 +2661 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar header and list compose the shared vertical gap +17:38 +2662 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header controls delegate geometry and elevation to Yaru +17:38 +2663 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dark header menu delegates its tooltip to IconButton +17:38 +2664 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: settings dropdowns use the framework tooltip +17:38 +2665 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: desktop tooltips use one explicit natural-width geometry +17:39 +2666 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: popup menu rows show shortcuts without redundant hover tooltips +17:39 +2667 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup sends shortcuts and separators to GTK and maps selection +17:39 +2668 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: colored popup icons stay on the native menu path +17:39 +2669 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup preserves asynchronous menu loading +17:39 +2670 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic theme retains Yaru geometry, typography, and interaction +17:39 +2671 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: accent controls use the native Yaru foreground and fill roles +17:39 +2672 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic surfaces use one modern neutral Linux role ladder +17:39 +2673 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: equal-choice segmented selection stays neutral +17:39 +2674 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped cards use native boxed-list depth and roles +17:39 +2675 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped list headings use the native semantic heading style +17:39 +2676 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner uses semantic surfaces in light and dark +17:39 +2677 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner animates its mounted layout height +17:39 +2678 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner reveal honors reduced motion +17:39 +2679 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog grouped cards resolve the contextual native layer +17:39 +2680 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native dark hover role +17:39 +2681 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native light hover role +17:39 +2682 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped row subtitles use semantic native text roles +17:39 +2683 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog roles and popup selectors use real themed buttons +17:39 +2684 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in dark +17:40 +2685 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in light +17:40 +2686 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog actions wrap at narrow localized text widths +17:40 +2687 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: action rows use semantic destructive foreground in light and dark themes +17:40 +2688 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: shared text-entry group delegates fields to the framework +17:40 +2689 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry uses the native row-owned form surface +17:40 +2690 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry forwards readOnly without disabling input +17:40 +2691 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic standard icon button delegates to FilledButton.icon +17:40 +2692 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar surface owns one directional semantic boundary +17:41 +2693 -1: loading /home/albert/busystack/busymark/test/src/source_document_test.dart +17:41 +2693 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: empty document mapping is stable +17:42 +2694 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: no-fold mapping preserves offsets and ranges +17:42 +2695 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: single fold projects visible text and maps offsets +17:42 +2696 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: fold-boundary selection mapping preserves direction, not coverage +17:42 +2697 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: multiple adjacent and overlapping ranges normalize safely +17:42 +2698 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: full and visible ranges report hidden clipping +17:42 +2699 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: CRLF line endings keep line starts and projection correct +17:42 +2700 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits before and after folds preserve unrelated folds +17:42 +2701 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: full editing values preserve composing through folded projection +17:42 +2702 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits incrementally retain unaffected line entries +17:42 +2703 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: incremental line indexes match full indexes across line-break edits +17:42 +2704 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edit intersecting a fold unfolds only affected region +17:42 +2705 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: collapsed-boundary insertion preserves hidden folded content +17:42 +2706 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible insertions before and after a fold keep hidden text +17:42 +2707 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible deletions near a fold keep hidden text +17:42 +2708 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible replacement spanning a fold replaces the hidden range +17:42 +2709 -1: loading /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart +17:43 +2709 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: uses each heading level effective text size for inline math +17:44 +2710 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: custom typography and four margins control actual math jobs +17:44 +2711 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: prepares inline and display math as deterministic vector assets +17:44 +2712 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: footnote inline and display math retain surrounding semantics +17:44 +2713 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst compiles footnote math through the math renderer +17:44 +2714 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst keeps MathJax SVG inline and exports failed math visibly +17:44 +2715 -1: loading /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart +17:46 +2715 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: tabs synchronize and support arrow, Home and End keys +17:48 +2716 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table sorting is numeric and excludes disabled columns +17:48 +2717 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Markdown table keeps empty columns equal width +17:48 +2718 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Writerside table preserves declared column width +17:48 +2719 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table spans preserve geometry and sticky header position +17:49 +2720 -1: loading /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart +17:50 +2720 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: records balance a two-line source preview with visible metadata +17:51 +2721 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: large records use a short preview and do not create a tooltip +17:51 +2722 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: actions menu is right of search and owns refresh and clear +17:52 +2723 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: keyboard navigation keeps the selected history entry visible +17:53 +2724 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: Delete edits the focused search without removing history +17:53 +2725 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: unsupported payload disables paste for the destination +17:53 +2726 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: double-clicking a shared history row pastes the item +17:53 +2727 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain-text paste remains enabled when rich paste is unavailable +17:53 +2728 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: source-only payload has no plain-text action +17:53 +2729 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: image exposes plain paste only with real text +17:53 +2730 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed insertion reports visible feedback +17:54 +2731 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: cancelled insertion is terminal without an error toast +17:54 +2732 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: current external HTML is transient until panel insertion and remains reusable +17:54 +2733 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed current-item paste is not retained and plain paste stays explicit +17:54 +2734 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: successful external paste retains after the panel is disposed +17:54 +2735 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain source and Editor copies stay text and de-duplicate +17:54 +2736 -1: loading /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart +17:56 +2736 -1: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: loads version and build number from package metadata +17:56 +2737 -1: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: uses zero when package build metadata is absent +17:56 +2738 -1: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: rejects missing package version metadata +17:56 +2739 -1: loading /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart +17:58 +2739 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates XML child topic and registers it under parent TOC node +17:59 +2740 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates Unicode Markdown and XML topic filenames +17:59 +2741 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source without a root ID before publication +17:59 +2742 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source whose root ID differs from filename +17:59 +2743 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: accepts custom XML source whose root ID matches filename +17:59 +2744 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: requires a reference for every non-root placement +17:59 +2745 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a child under an exact topic-less TOC node path +17:59 +2746 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: first real topic under an empty group becomes the home page +17:59 +2747 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: exact TOC path disambiguates sibling insertion +17:59 +2748 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects an exact TOC path whose expected node has moved +17:59 +2749 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: invalid exact TOC path does not fall back to topic reference +17:59 +2750 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects duplicate topic IDs before writing +17:59 +2751 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a missing nested topics directory +18:00 +2752 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects a symlinked topics directory without writing outside +18:00 +2753 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: does not overwrite a concurrently changed tree or leave an orphan topic +18:00 +2754 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rollback preserves a created topic changed by another writer +18:00 +2755 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: atomic tree publication preserves its POSIX mode +18:00 +2756 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID with a different extension +18:00 +2757 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in a different directory +18:00 +2758 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in another configured root +18:00 +2759 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation allows an unrelated concurrent topic ID +18:00 +2760 -1: loading /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart +18:02 +2760 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.rtl +18:06 +2761 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.ltr +18:08 +2762 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation uses native master-detail controls and filters +18:10 +2763 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation opens both template editor entry points +18:14 +2764 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: catalog failure keeps BusyMark status and retry controls +18:15 +2765 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files editor stages new content, cancels and persists on OK +18:18 +2766 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: source surface exposes its label and focus boundary +18:19 +2767 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: New toolbar command stages an editable draft and Cancel drops it +18:21 +2768 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: custom XML template cannot publish a mismatching root ID +18:23 +2769 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: save-as-template appears under Custom; edit, duplicate and delete preserve cancel +18:25 +2770 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: stale settings reject OK and retain draft for recovery +18:27 +2771 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Internal reset is staged, cancellable, and publishable +18:29 +2772 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: true) +18:31 +2773 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: false) +18:32 +2774 -1: loading /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart +18:33 +2774 -1: /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart: tree exact reveal unfolds and line movement is one undoable full-source edit +18:34 +2775 -1: loading /home/albert/busystack/busymark/test/src/math_parser_test.dart +18:35 +2775 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses several dollar formulas as semantic inline math +18:35 +2776 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses the GitHub dollar-backtick form without delimiters +18:35 +2777 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses single-line and multiline display math as blocks +18:35 +2778 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math scanner stays aligned around every neighboring block kind +18:35 +2779 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math and Writerside tex fences follow document compatibility +18:35 +2780 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math is inline and remains source-preserving +18:35 +2781 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math decodes XML entities but preserves source +18:35 +2782 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: escaped dollars, code, currency, empty and malformed forms stay text +18:35 +2783 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: inline math survives list, blockquote, and table structure +18:35 +2784 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: CRLF math input and every original form round-trip untouched +18:35 +2785 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: preview builder creates first-class inline and display math nodes +18:35 +2786 -1: loading /home/albert/busystack/busymark/test/src/busymark_document_test.dart +18:40 +2786 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hit testing includes shared document surface borders +18:40 +2787 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: document image width resolution is bounded consistently +18:40 +2788 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: package markdown AST imports into BusyDocument core blocks +18:40 +2789 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: linked remote image paragraphs import as editable image blocks +18:40 +2790 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer emits Markdown source for edited semantic blocks +18:40 +2791 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unchanged raw blocks +18:40 +2792 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves safe raw HTML source byte for byte +18:40 +2793 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unsafe raw HTML source while preview remains raw +18:40 +2794 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer patches dirty blocks without canonicalizing unchanged source +18:40 +2795 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve unrelated block instances +18:40 +2796 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve source-only reference definitions +18:40 +2797 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: source-only definitions survive scanner and AST count mismatches +18:40 +2798 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preserved reference definitions still resolve after an edit +18:40 +2799 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve GFM footnote definitions +18:40 +2800 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: containers with nested definitions are source-protected +18:40 +2801 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: scanner mismatches conservatively protect nested definitions +18:40 +2802 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: opaque source IDs cannot collide with semantic heading IDs +18:40 +2803 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full list serialization preserves reference definitions +18:40 +2804 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full serialization omits generated footnote output +18:40 +2805 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: invalid reference-like prose remains a modeled block +18:40 +2806 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large inline-link documents do not create source-only blocks +18:40 +2807 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large adjacent definition sets stay distinct and preserved +18:41 +2808 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: destructive selections reject read-only source endpoints +18:41 +2809 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: list indentation cannot attach content to a protected item +18:41 +2810 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested list text edit updates Markdown source +18:41 +2811 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered list edits preserve nested children +18:41 +2812 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered task edits preserve marker and nested children +18:41 +2813 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested blockquote edit preserves surrounding source +18:41 +2814 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cross-block deletion prunes an emptied blockquote +18:41 +2815 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested inline edit updates Markdown source +18:41 +2816 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested block removal updates Markdown source +18:41 +2817 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser includes setext headings in heading metadata +18:41 +2818 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: live document outline follows top-level generated heading order +18:41 +2819 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: duplicate anchors retain distinct editor block identities +18:41 +2820 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preview and WYSIWYG use the same semantic document +18:41 +2821 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edit updates Markdown source +18:41 +2822 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG empty documents have one editable paragraph +18:41 +2823 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor accepts typing in an empty document +18:42 +2824 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG heading navigation skips across large documents +18:46 +2825 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders a blockquote around its editable text +18:46 +2826 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG uses one quote frame for multiple quote paragraphs +18:46 +2827 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG quote frame focuses its first editable child +18:46 +2828 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inherits RTL indentation inside a blockquote +18:46 +2829 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG keeps a generated leaf blockquote editable +18:46 +2830 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hides a definition-only source and preserves it +18:46 +2831 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor undo and redo restore document edits +18:47 +2832 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor replaces document when active file changes +18:47 +2833 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor applies heading keyboard shortcuts +18:47 +2834 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Ctrl+Shift+- inserts a thematic break +18:47 +2835 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Tab nests eligible list items and Shift+Tab lifts them +18:47 +2836 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG arrow keys move focus between paragraphs +18:47 +2837 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Arrow crosses paragraph boundaries +18:47 +2838 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Shift+Arrow extends into the next paragraph +18:47 +2839 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated arrow keys keep moving between paragraphs +18:48 +2840 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down selection continues character by character in the next paragraph +18:48 +2841 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated Shift+Arrow extends one selection +18:48 +2842 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG horizontal selection continues vertically into the next paragraph +18:48 +2843 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse Shift+Up selection continues left in the previous paragraph +18:48 +2844 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ignores redundant source blank lines +18:48 +2845 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: typing replaces a WYSIWYG selection across paragraphs +18:48 +2846 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: deleting a selected paragraph boundary merges paragraphs +18:48 +2847 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down follows visual lines before paragraphs +18:48 +2848 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Arrow selects whole grapheme clusters +18:49 +2849 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection can copy multiple paragraphs +18:49 +2850 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG click elsewhere clears previous block selection +18:49 +2851 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift click selects text across paragraphs +18:49 +2852 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag extends selection across paragraphs +18:49 +2853 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag from heading end hides native selection +18:49 +2854 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag updates selection on pointer up +18:49 +2855 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag aligns wrapped trailing word highlight +18:49 +2856 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+X cuts block selection +18:49 +2857 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves inline formatting +18:50 +2858 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves whole block formatting +18:50 +2859 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection preserves partial paragraph boundaries +18:50 +2860 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar bold applies to selected paragraphs +18:50 +2861 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar toggle stays vertically aligned when collapsed +18:50 +2862 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar reserves its document edge +18:51 +2863 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: restoring the first block does not duplicate the Editor top inset +18:51 +2864 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: vertical WYSIWYG toolbar is bounded and extends from its edge +18:51 +2865 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar corners remain physical in LTR and RTL +18:52 +2866 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar context menu changes placement and direction when shown or hidden +18:52 +2867 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar list applies to selected paragraphs +18:52 +2868 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders safe HTML blocks and edits raw source +18:52 +2869 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar inserts an HTML block +18:52 +2870 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after the active file changes +18:53 +2871 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after document generation changes +18:53 +2872 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs stop app-level tab navigation shortcuts +18:53 +2873 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs activate the native headerbar barrier +18:53 +2874 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves existing inline formatting +18:53 +2875 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Backspace at block start merges with previous block +18:53 +2876 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+A twice selects all text for deletion +18:53 +2877 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG select-all deletion preserves source-protected definitions +18:54 +2878 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline ranges do not duplicate formatted text +18:54 +2879 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands serialize bold italic and links +18:54 +2880 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG serializes italic nested at the end of bold text +18:54 +2881 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve inline ranges where possible +18:54 +2882 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve empty-alt inline images +18:54 +2883 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG edits preserve escaped literal punctuation semantics +18:54 +2884 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog submits with Enter +18:54 +2885 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when caret is inside it +18:54 +2886 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when its text is selected +18:54 +2887 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline command toggles selected mark without dropping links +18:54 +2888 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline code command serializes selected text +18:54 +2889 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer chooses inline code delimiters that preserve backticks +18:54 +2890 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link title backslashes use standards-safe character references +18:54 +2891 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: inline serialization distinguishes every hard-break run boundary +18:54 +2892 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link titles round-trip decoded punctuation and line endings +18:54 +2893 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table link titles retain multiline values without physical rows +18:54 +2894 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves fenced code delimiters and trailing whitespace +18:54 +2895 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser preserves meaningful trailing fenced-code whitespace +18:54 +2896 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser closes dynamic code fences only with a matching delimiter +18:54 +2897 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser does not treat indented code as a fenced block +18:54 +2898 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands preserve existing sibling formatting +18:54 +2899 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands apply to multiple selected blocks +18:54 +2900 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands apply to multiple selected blocks +18:54 +2901 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG image command serializes a real image block +18:54 +2902 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders Writerside images by basename +18:54 +2903 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders absolute local image paths +18:54 +2904 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders linked remote image blocks +18:54 +2905 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in commonMark +18:54 +2906 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in writersideMarkdown +18:54 +2907 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in gfm +18:54 +2908 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter uses parser URL boundaries without parsing other syntax +18:54 +2909 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter excludes code and keeps explicit equal-label links explicit +18:54 +2910 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: bare URL destinations follow edits and splits while explicit destinations stay authored +18:54 +2911 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: rejoining only extends existing bare URLs and preserves code and explicit links +18:54 +2912 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: structural URL slices update derived destinations and link editing authors an explicit destination +18:54 +2913 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter splits one block into separate Markdown paragraphs +18:54 +2914 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores an empty paragraph represented only by blanks +18:54 +2915 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores trailing blank lines +18:54 +2916 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG does not create blocks for redundant source whitespace +18:54 +2917 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in unordered list creates next item then exits list +18:54 +2918 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in ordered list creates next numbered item +18:54 +2919 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG thematic break inserts after current block +18:54 +2920 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter key creates a new paragraph block +18:55 +2921 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter carries active inline style to next paragraph +18:55 +2922 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter at paragraph end preserves inner bold span +18:55 +2923 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG newline text edit preserves inner bold span +18:55 +2924 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text input newlines become Markdown paragraphs +18:55 +2925 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves an existing hard break +18:55 +2926 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: hard-break toolbar command retains focus and advances caret +18:55 +2927 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: formatting toolbar command retains editor focus and selection +18:55 +2928 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Shift+Enter retains focus and advances past the hard break +18:55 +2929 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line toolbar command round-trips and remains one focused edit +18:56 +2930 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor lazily builds large documents +18:56 +2931 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG task checkbox toggles directly when clicked +18:56 +2932 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands serialize headings and lists +18:56 +2933 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG extended toolbar commands serialize Markdown +18:56 +2934 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line command keeps repeated terminal markers off the text line +18:56 +2935 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table and code language commands serialize Markdown +18:56 +2936 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cell pipes round-trip without shifting columns +18:56 +2937 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table escaping protects pipes inside formatted cell content +18:56 +2938 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table code preserves a backslash immediately before a pipe +18:56 +2939 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table row and column commands serialize Markdown +18:56 +2940 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table dialog validates and synchronizes its size grid +18:57 +2941 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table alignment survives parsing, edits, and structural changes +18:57 +2942 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table column alignment command supports all Markdown alignments +18:57 +2943 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells apply Markdown column alignment +18:57 +2944 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells are formatted and editable +18:57 +2945 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table overlay menus survive structural rebuilds +18:58 +2946 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Tab travels through WYSIWYG table cells and extends the table +18:58 +2947 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG list indent outdent and task toggle commands serialize +18:58 +2948 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation starts a nested list at one +18:58 +2949 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation preserves a top-level start value +18:58 +2950 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation numbers multiple nested siblings +18:58 +2951 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered outdent continues the parent list numbering +18:58 +2952 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts an unordered item to a valid ordered marker +18:58 +2953 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts selected nested items at each list depth +18:58 +2954 -1: loading /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart +18:59 +2954 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: single rich paragraph repairs independently surviving endpoints +18:59 +2955 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: table cells repair independently formatted selection endpoints +18:59 +2956 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion replaces only a heading own prefix at content start +18:59 +2957 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion removes complete ATX and Setext heading syntax +18:59 +2958 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion retains literal paragraph hashes +18:59 +2959 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: whole heading replacement removes every authored marker +18:59 +2960 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: heading insertion at middle and end preserves only the leading heading +18:59 +2961 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequence removes nested heading marker at content start +18:59 +2962 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: external HTML blockquotes remain structured in Source +18:59 +2963 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: HTML break layout stays behind a caret after the semantic break +18:59 +2964 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: caret immediately before an HTML break keeps the break after paste +18:59 +2965 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection crossing an HTML break preserves both outside slices +18:59 +2966 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete inline HTML survives rich link insertion as one fragment +18:59 +2967 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native rich trailing space survives inherited HTML insertion +18:59 +2968 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native incoming edge whitespace survives inherited HTML styles +18:59 +2969 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection replacement retains native whitespace and link titles +18:59 +2970 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: multiple native inline runs retain text styles links and spaces +18:59 +2971 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: rich insertion maps collapsed HTML whitespace as content +18:59 +2972 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through supported raw HTML styles +18:59 +2973 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through a supported raw HTML link +18:59 +2974 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: supported content corpus always plans a rich insertion +19:00 +2975 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: repeated mapped siblings avoid fallback and preserve final paste +19:01 +2976 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete blocks split and preserve enclosing inline contexts +19:01 +2977 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph-only block sequences match Editor merge semantics +19:01 +2978 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block paste preserves independent formatted selection boundaries +19:01 +2979 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured paste spans partial first and last destination blocks +19:01 +2980 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequences retain destination block and container paths +19:01 +2981 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paste output is valid input for a second paste at returned caret +19:01 +2982 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: CRLF blockquote projection retains its authored prefixes +19:01 +2983 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured complete blocks generate only CRLF boundaries +19:01 +2984 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured inline hard breaks use destination CRLF +19:01 +2985 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: mapped and generated structured breaks retain CRLF and caret width +19:01 +2986 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: protected Source context explicitly permits textual fallback +19:01 +2987 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: syntax-only positions explicitly permit textual fallback +19:01 +2988 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: unmappable destination links stop rather than permit fallback +19:01 +2989 -1: loading /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart +19:02 +2989 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: rejects a superseded render even when its engine finishes last +19:03 +2990 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: retains the last successful render after invalid source +19:03 +2991 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: limits concurrency and gives export work queue priority +19:03 +2992 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: reuses a successful content-addressed cache entry +19:03 +2993 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: validates concurrency and returns a typed unavailable result +19:03 +2994 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: bounds last-successful render retention with LRU eviction +19:03 +2995 -1: loading /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart +19:04 +2995 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: source navigation distinguishes repeated references on one line +19:04 +2996 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: explicit synchronization follows installed breadth-first topic matching +19:04 +2997 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edits preserve other instances, content and occurrence +19:04 +2998 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edit changes H1 and preserves front matter title +19:04 +2999 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title round trip preserves ampersands and entity spellings +19:04 +3000 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: unchanged inherited values do not add overrides +19:04 +3001 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: XML title edits escape attributes and expand self-closing root +19:04 +3002 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: clearing overrides removes only the selected instance and occurrence +19:04 +3003 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: before-drop preserves complete subtrees and returns all moved paths +19:06 +3004 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: grouping uses source order and rejects cross-parent selections +19:06 +3005 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: line moves retain CRLF, caret, reversed selection and boundaries +19:06 +3006 -1: loading /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart +19:06 +3006 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: section includes descendants and stops at the next sibling +19:06 +3007 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: move up and down swap complete sibling subtrees +19:06 +3008 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: promote and demote preserve descendant hierarchy +19:06 +3009 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: demote is unavailable when a descendant is already H6 +19:06 +3010 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: level changes preserve and convert Setext headings +19:06 +3011 -1: loading /home/albert/busystack/busymark/test/src/visualization_models_test.dart +19:09 +3011 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization fence classification recognizes canonical names and aliases without changing spelling +19:09 +3012 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: preserves dependency diagnostic source locations +19:09 +3013 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys canonicalizes options and dependency order +19:09 +3014 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates on engine, source, theme, profile, option, and dependency +19:09 +3015 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates entries produced by the previous render pipeline +19:09 +3016 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache round-trips SVG, raster, and structured OpenAPI successes +19:10 +3017 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache does not persist failures and repairs malformed entries +19:10 +3018 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache derives the XDG cache path without changing the environment +19:10 +3019 -1: loading /home/albert/busystack/busymark/test/src/writerside_video_test.dart +19:11 +3019 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside Markdown models video and preserves its exact source +19:11 +3020 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video remains blocked raw HTML outside Writerside Markdown +19:11 +3021 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: multiline Writerside video attributes remain one semantic block +19:11 +3022 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video markup inside an ordinary code fence is not interpreted +19:11 +3023 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside topic parser exposes video attributes +19:11 +3024 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside .topic preview creates a first-class video block +19:11 +3025 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: safe video resolver accepts documented hosts and local media +19:11 +3026 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside module reports invalid and incomplete video sources +19:11 +3027 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: local poster defaults to matching PNG and can be overridden +19:11 +3028 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: hosted video posters resolve from trusted provider sources +19:11 +3029 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Vimeo poster metadata cannot point images to another host +19:11 +3030 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: PDF export carries a first-class linked video poster +19:11 +3031 -1: loading /home/albert/busystack/busymark/test/src/app_router_test.dart +19:13 +3031 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings return targets are explicit and validated +19:13 +3032 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: opening Settings preserves a validated Settings origin +19:13 +3033 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings page routes are explicit and validated +19:13 +3034 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: Settings opened from Welcome returns to Welcome with a stale workspace +19:15 +3035 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again +19:15 +3036 -1: loading /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart +19:17 +3036 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: mixed Markdown protects fenced code and CDATA while preserving spans +19:18 +3037 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: lazy defaults respect caller arguments and percent escaping +19:18 +3038 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: empty links use the target title for the selected instance +19:18 +3039 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional chapter content and links follow the selected instance +19:18 +3040 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: malformed markup and unresolved reuse stay visible with diagnostics +19:18 +3041 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: Markdown IDs include whole chapters and retain mixed-content spans +19:18 +3042 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional globals and include arguments override snippet defaults +19:18 +3043 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: links resolve labels, separate anchors and nullable availability +19:18 +3044 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: included code uses its source topic and unsaved source overrides +19:18 +3045 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: summaries stay metadata and starting pages suppress outside content +19:18 +3046 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: configured shortcuts, glossary and binary resources have visible references +19:18 +3047 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: line and symbol selectors reject invalid selections +19:18 +3048 -1: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart +19:19 +3048 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace +19:19 +3049 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret +19:19 +3050 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string +19:19 +3051 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls +19:19 +3052 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback +19:19 +3053 -1: loading /home/albert/busystack/busymark/test/src/status_semantics_test.dart +19:20 +3053 -1: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: status colors stay semantic across accents and brightness +19:23 +3054 -1: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: workspace messages use semantic status roles +19:23 +3055 -1: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: Git failures use window-level toasts +19:24 +3056 -1: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: successful Git operations use window-level toasts +19:24 +3057 -1: loading /home/albert/busystack/busymark/test/src/workspace_service_test.dart +19:27 +3057 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a single Markdown file workspace +19:27 +3058 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: resolves an unindexed sibling document within the workspace +19:27 +3059 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Markdown file from a file URI path +19:27 +3060 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a generic Markdown folder workspace +19:27 +3061 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: canonicalizes a workspace opened through a directory symlink +19:27 +3062 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects a workspace root replaced by a symlink after opening +19:27 +3063 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Writerside module workspace +19:27 +3064 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: untitled Markdown in Writerside reparses, previews, and outlines as CommonMark +19:27 +3065 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: genuine Writerside Markdown topic keeps Writerside semantics +19:27 +3066 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates and opens a Writerside starter project +19:27 +3067 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: reparses and previews Writerside Markdown without generic link validation +19:27 +3068 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a Writerside Markdown topic and registers it in the TOC +19:28 +3069 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: imports Markdown topics into the selected instance and opens the first +19:28 +3070 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Markdown import reloads stale UI inventory before planning +19:28 +3071 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation revalidates module IDs after its candidate is written +19:28 +3072 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a topic in the explicitly selected instance and TOC node +19:28 +3073 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: unparsed topic basename reserves its module-wide topic ID for creation +19:28 +3074 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under build reserves its module-wide ID for creation +19:28 +3075 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under a hidden directory reserves its module-wide ID for creation +19:28 +3076 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: duplicate topic cannot reuse an unparsed topic basename +19:28 +3077 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: template source cannot reuse an unparsed topic basename +19:28 +3078 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation refuses incomplete topic discovery +19:28 +3079 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects topic creation when the configured instance tree is outside the module +19:28 +3080 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename is stale when a new module is discovered +19:28 +3081 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic rename planning rejects incomplete project module discovery +19:28 +3082 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename rejects incomplete module discovery on apply +19:28 +3083 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: project module discovery reports directory listing failure +19:28 +3084 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: ordinary directory creation does not stale a prepared rename +19:29 +3085 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: normalizes portal-style document paths as filesystem paths +19:29 +3086 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText writes content and returns the saved file snapshot +19:29 +3087 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: file change detection ignores timestamp-only changes +19:29 +3088 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText writes a missing file and returns its snapshot +19:29 +3089 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText refuses an existing file without changing it +19:29 +3090 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not replace a file arriving before publication +19:29 +3091 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not write inside a directory arriving before publication +19:29 +3092 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveTextReplacingPath replaces a final symlink without following it +19:29 +3093 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement cannot overwrite a post-validation writer +19:29 +3094 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement validates a displaced relative symlink +19:29 +3095 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement detects a changed relative symlink target +19:29 +3096 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation directory +19:29 +3097 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation FIFO without reading +19:29 +3098 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText follows file symlinks and preserves target permissions +19:29 +3099 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: createFile rejects a directory reached through an intermediate symlink +19:29 +3100 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: renameEntity rejects a source reached through an intermediate symlink +19:29 +3101 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: moveEntity rejects a target reached through an intermediate symlink +19:29 +3102 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity rejects a directory reached through an intermediate symlink +19:29 +3103 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity removes a final symlink without deleting its target +19:29 +3104 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: generic deletion rejects topics and containing folders in a non-active module +19:29 +3105 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: an unparsed topic cannot bypass generic deletion +19:29 +3106 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: missing nested mutation paths keep domain-specific errors +19:29 +3107 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince treats deleted files as changed +19:29 +3108 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince detects content changes with unchanged modified time +19:29 +3109 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists all content except version-control metadata +19:29 +3110 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists unsupported legacy Markdown extensions +19:29 +3111 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: limited folder scan prefers shallow siblings before deep subtree +19:29 +3112 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: invalid UTF-8 Markdown does not fail the whole workspace +19:29 +3113 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Markdown files are listed but not parsed automatically +19:29 +3114 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Writerside topics are listed but not parsed automatically +19:29 +3115 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Writerside topic loading honors the document limit +19:29 +3116 -1: loading /home/albert/busystack/busymark/test/src/ai_policy_test.dart +19:30 +3116 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: AI editing is enabled only for Markdown document kinds +19:32 +3117 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation accepts a prose-only replacement in the complete document +19:32 +3118 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation rejects swapped URL associations even when the URL set is equal +19:32 +3119 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation full-document validation catches edits made inside protected syntax +19:32 +3120 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects front matter, references, footnotes, tables, HTML and IDs +19:32 +3121 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects list and heading structure +19:32 +3122 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects implicit heading identifiers from prose rewrites +19:32 +3123 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: the prompt contains only the context explicitly selected by the user +19:32 +3124 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: instructions and direct prompts have explicit token budgets +19:32 +3125 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: token estimates are independent from UTF-8 transport bytes +19:32 +3126 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: generated-output byte limits are independent from provider tokens +19:32 +3127 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context selection target and block context remain independent +19:32 +3128 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context insert-after-block target can send no document context +19:32 +3129 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current block can use complete-document context +19:32 +3130 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current section includes descendants but not its sibling +19:32 +3131 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context complete-document target is explicit +19:32 +3132 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context partial protected selections are rejected instead of expanded +19:32 +3133 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context validation and application use the exact block insertion +19:32 +3134 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: commit proposals require a bounded subject and blank separator +19:32 +3135 -1: loading /home/albert/busystack/busymark/test/src/linux_window_host_test.dart +19:35 +3135 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: dialogs cover application header actions while system Close uses the guarded service +19:36 +3136 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: icon uses its physical GTK side and contributes to the inset +unhandled element ; Picture key: Svg loader +19:36 +3137 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fallback application menu is absent while titlebar menu still works +19:36 +3138 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: window-state stream survives unrelated host rebuilds +19:36 +3139 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: normal maximize decoration has matching behavior +19:36 +3140 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: maximized maximize decoration has matching behavior +19:36 +3141 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen maximize decoration has matching behavior +19:37 +3142 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen titlebar double-click still restores +19:37 +3143 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: the document title itself handles titlebar double-click +19:37 +3144 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: live GTK layout removal retains each decoration identity +19:37 +3145 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=false) +19:37 +3146 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=true) +19:37 +3147 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK reduced motion settles window-control hover immediately +19:37 +3148 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion settles an in-flight window icon morph +19:37 +3149 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabled motion retains the normal active-window fade +19:37 +3150 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: Flutter reduced motion settles the host fade immediately +19:37 +3151 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK animation policy reaches the actual host overlay +19:37 +3152 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion stops a fade and later fades can run +19:37 +3153 -1: loading /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart +19:38 +3153 -1: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: source editor overlays use shared semantic surfaces +19:38 +3154 -1: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: WYSIWYG content actions and table menus use shared controls +19:38 +3155 -1: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: problems dialog delegates its list surface to shared grouping +19:38 +3156 -1: loading /home/albert/busystack/busymark/test/src/writerside_document_test.dart +19:39 +3156 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=false) +19:39 +3157 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=true) +19:39 +3158 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside heading aliases prefer exact IDs and reject ambiguity +19:39 +3159 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: malformed semantic XML is still reported after a scanner mismatch +19:39 +3160 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: lossless XML nodes preserve exact duplicate ranges and generic markup +19:39 +3161 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside Markdown round-trips native and generic markup +19:39 +3162 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified semantic XML reconstructs equivalent escaped markup +19:39 +3163 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified conformance topic retains qualified namespace names +19:39 +3164 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver applies includes, filters, groups, variables, and cycles +19:39 +3165 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver negates the complete instance list +19:39 +3166 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML list type is inherited by every list item +19:39 +3167 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML lists retain numeric ordinals and their container identity +19:39 +3168 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: repeated list includes have distinct occurrence IDs and original source spans +19:40 +3169 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: workspace exposes resolver errors with exact source spans +19:40 +3170 -1: loading /home/albert/busystack/busymark/test/src/writerside_api_test.dart +19:41 +3170 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: platform-backed API model remains on the host path and transfers complete semantics +19:41 +3171 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API tags select operations through the existing OpenAPI parser +19:41 +3172 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API child selectors inherit the specification and preserve sample overrides +19:41 +3173 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API schemas resolve references and honor nesting depth +19:41 +3174 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: schema and webhook elements are visible +19:41 +3175 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: invalid API selection has a visible fallback and source diagnostic +19:41 +3176 -1: loading /home/albert/busystack/busymark/test/src/local_history_store_test.dart +19:42 +3176 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=false) +19:43 +3177 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=true) +19:43 +3178 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: real process contention waits and captures without a warning +19:50 +3179 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: lock timeout closes acquisition and queues recover without late capture +19:54 +3180 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: non-contention acquisition failure is prompt and closes the handle +19:54 +3181 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: body contention-shaped error never replays the transaction +19:54 +3182 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: independent production writers preserve both identities and revisions +20:01 +3183 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation cannot mutate process replacements +20:05 +3184 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation rejects an intervening process checkpoint +20:09 +3185 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=false) +20:09 +3186 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=true) +20:09 +3187 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists full revisions and stable document identity across restart +20:09 +3188 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists untitled first-save promotion without a new revision +20:09 +3189 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: untitled promotion refuses an already-owned destination path +20:09 +3190 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deleted paths never own promotion, lookup, or remap +20:09 +3191 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deduplicates only adjacent ordinary captures and preserves A-B-A +20:09 +3192 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: forced protective capture preserves an identical revision +20:09 +3193 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture identity makes a protective retry idempotent +20:10 +3194 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: idempotent capture stays complete after its lineage advances +20:10 +3195 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion retry accepts the same lineage after a later move +20:10 +3196 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: atomic path preflight accepts the same target already reconciled elsewhere +20:10 +3197 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clearing one identity does not poison another identity capture +20:10 +3198 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repairs a damaged index from intact independently checksummed records +20:10 +3199 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repair rejects a record associated with a different document +20:10 +3200 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: does not resurrect explicitly cleared revisions during repair +20:10 +3201 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rejects an unknown future index format without rewriting it +20:10 +3202 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention uses the injected capture time deterministically +20:10 +3203 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention is enforced when an idle store is reopened +20:10 +3204 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rename, directory move, delete, and per-document clearing retain lineage +20:10 +3205 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: ID-bound captures cannot implicitly move document paths +20:10 +3206 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: serializes concurrent captures without losing index entries +20:11 +3207 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: oversized capture cannot evict the previous revision +20:11 +3208 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: different paths with the same basename keep separate identities +20:11 +3209 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: an intentional empty revision after content is retained +20:11 +3210 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: missing and corrupt revision records do not damage intact entries +20:11 +3211 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: incomplete staging artifacts are never discovered as revisions +20:11 +3212 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: global clear tombstones prevent repair resurrection +20:12 +3213 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear All replay cannot erase post-clear history +20:12 +3214 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear Document replay cannot erase replacement history +20:12 +3215 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=false) +20:12 +3216 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=false) +20:12 +3217 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=true) +20:12 +3218 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=true) +20:12 +3219 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=false) +20:12 +3220 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=true) +20:12 +3221 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file capture rolls back cancellation during revision publication +20:12 +3222 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file dedup capture rolls back cancellation during index publication +20:12 +3223 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: multiple store instances coordinate concurrent index publication +20:12 +3224 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: storage permission failures surface without touching document data +20:12 +3225 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: path exclusions use injected Windows path semantics +20:12 +3226 -1: loading /home/albert/busystack/busymark/test/src/web_render_host_test.dart +20:13 +3226 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends explicit request IDs and decodes a typed map response +20:13 +3227 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends a MathJax batch in one cancellable host request +20:13 +3228 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: scales the MathJax timeout for sequential batch conversion +20:13 +3229 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: applies the scaled timeout to a maximum accepted batch +20:13 +3230 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: cancels the matching native request and rejects a late success +20:13 +3231 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: times out and requests native cancellation +20:13 +3232 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: rejects an invalid native response shape +20:13 +3233 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: decodes OpenAPI references with source locations +20:13 +3234 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends PNG bytes to the native image clipboard +20:13 +3235 -1: loading /home/albert/busystack/busymark/test/src/document_persistence_test.dart +20:14 +3235 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: file-backed edits update final-newline metadata +20:14 +3236 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session store keeps tab state and pending history identity without text +20:15 +3237 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session merge keys first-save promotions by durable operation owner +20:15 +3238 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery store distinguishes clean and unclean runs +20:15 +3239 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery keeps valid entries when another record is malformed +20:15 +3240 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery ownership keeps same buffer IDs isolated by process +20:16 +3241 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: restored dead-owner recovery is adopted and can be retired +20:16 +3242 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery state is written with private POSIX permissions +20:16 +3243 -1: loading /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart +20:17 +3243 -1: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: intrinsic width remeasures only edited source lines +20:17 +3244 -1: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: large source width uses a bounded estimate +20:17 +3245 -1: loading /home/albert/busystack/busymark/test/src/search_replace_service_test.dart +20:19 +3245 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: Unicode regex replacement preserves complete characters +20:19 +3246 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: zero-length replacement limitation survives worker transfer +20:19 +3247 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 4999 actual matches +20:19 +3248 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5000 actual matches +20:19 +3249 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5001 actual matches +20:19 +3250 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement cancels a running expensive regex +20:20 +3251 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace scope includes closed Writerside documents and ignores unrelated open files +20:22 +3252 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: previews and applies plain whole-word replacements +20:22 +3253 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: text replacement previews enforce their match limit +20:22 +3254 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker expands one accepted regex match +20:22 +3255 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker cancels stale plans +20:22 +3256 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: expands numbered and named regex capture groups +20:22 +3257 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: applies only selected preview matches +20:22 +3258 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace preview uses dirty buffers and writes closed files +20:22 +3259 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply skips stale dirty buffers +20:22 +3260 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: truncated workspace previews cannot be applied +20:22 +3261 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: stale later files abort before earlier files are changed +20:22 +3262 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: rollback preserves a concurrent edit and reports displaced content +20:22 +3263 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply revalidates open buffers after disk writes +20:22 +3264 -1: loading /home/albert/busystack/busymark/test/src/export_options_editor_test.dart +20:26 +3264 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Escape closes Export before a control receives focus +20:27 +3265 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Export keeps breathing room below its final option +20:28 +3266 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown PDF loads confirmed settings and shares controls +20:28 +3267 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside PDF loads confirmed settings and shares controls +20:29 +3268 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown HTML loads confirmed settings and shares controls +20:29 +3269 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside HTML loads confirmed settings and shares controls +20:29 +3270 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: one Export modal switches between PDF and HTML +20:30 +3271 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: custom geometry controls, TOC enablement and invalid input at minimum size +20:30 +3272 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: cancelling settings does not confirm or persist edits +20:30 +3273 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: JSON settings store retains both format settings across controllers +20:30 +3274 -1: loading /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart +20:32 +3274 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: existing-topic picker filters names and selects by keyboard +20:33 +3275 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: picker returns the supplied topic identity for duplicate names +20:34 +3276 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: Group keeps raw input and Enter-only acceptance +20:34 +3277 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: rename preserves validation and Preview/Refactor results +20:34 +3278 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.rtl +20:34 +3279 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.rtl +20:35 +3280 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.ltr +20:35 +3281 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.ltr +20:36 +3282 -1: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart +20:37 +3282 -1: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: Linux Writerside title and duplicate dialogs are GTK-owned +20:37 +3283 -1: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: GTK Writerside contents follow application direction, filenames stay LTR +20:38 +3284 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart +20:40 +3284 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw HTML preserves inherited and overridden block directions +20:40 +3285 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: preview model retains HTML direction for code and quotes +20:40 +3286 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML honors rtl, ltr, and auto directions +20:41 +3287 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: nested WYSIWYG blocks indent from the RTL start edge +20:41 +3288 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: English prose stays LTR in a Persian RTL UI and navigates LTR +20:42 +3289 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: Arabic prose stays RTL in an English UI and navigates RTL +20:42 +3290 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw Writerside technical blocks stay LTR with Arabic content +20:42 +3291 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered Arabic HTML without dir follows its content +20:42 +3292 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: WYSIWYG technical dialog inputs stay LTR in an RTL UI +20:43 +3293 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL horizontal arrows cross paragraph boundaries visually +20:43 +3294 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL Ctrl+Shift+Arrow extends word selection across paragraphs +20:43 +3295 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: code blocks stay LTR and use LTR boundary arrows in RTL UI +20:43 +3296 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML pre is LTR unless dir overrides it +20:44 +3297 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL prefix hit testing maps the text start at the right edge +20:44 +3298 -1: loading /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart +20:46 +3298 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote source AI proposal applies with logical identity +20:48 +3299 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote WYSIWYG AI proposal applies with logical identity +20:49 +3300 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: document-only AI snapshot opens a usable configuration +20:49 +3301 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI configuration uses native rows without duplicate choices +20:49 +3302 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: Refine with AI sends the explicitly selected model +20:50 +3303 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI proposal uses an explicitly selected provider +20:50 +3304 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: provider chooser exposes only configured providers +20:50 +3305 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: configured local provider remains available when Gemini is default +20:50 +3306 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: fixed AI target cannot widen a sidebar selection +20:50 +3307 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: proposal Apply refuses stale external source content +20:50 +3308 -1: loading /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart +20:52 +3308 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial prefix grows compatibly +20:53 +3309 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial becomes complete and clears marker +20:53 +3310 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations identical complete listings remain consistent +20:53 +3311 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations incompatible repeated listing rejects +20:53 +3312 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations known failed prefix recovers completely +20:53 +3313 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations failure without a known prefix cannot prove recovery +20:53 +3314 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations successful listing followed by failure rejects +20:53 +3315 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry replacement between complete reads rejects +20:53 +3316 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry removal between complete reads rejects +20:53 +3317 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter compatible scan keeps stronger proof +20:53 +3318 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete proof survives compatible limited rescan +20:53 +3319 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial rescan cannot erase a previous failure +20:53 +3320 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete recovery must retain failed-prefix entries +20:53 +3321 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter failed retry retains its consumed prefix +20:53 +3322 -1: loading /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart +20:53 +3322 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: ingests workspace images with safe names and portable paths +20:54 +3323 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: reuses identical assets and resolves name collisions +20:54 +3324 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping identical publications keep the committed owner +20:54 +3325 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping different publications keep the committed owner +20:54 +3326 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect identical pending publications with equal filenames +20:57 +3327 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect different pending publications with equal filenames +21:01 +3328 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: failed publication releases only its own filesystem reservation +21:05 +3329 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: terminated provisional owner remains reserved across processes +21:08 +3330 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: rollback cannot delete an asset after its publication is committed +21:09 +3331 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: uses the configured Writerside images directory +21:09 +3332 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: restores retained Writerside video bytes without widening image paste +21:09 +3333 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: requires saving untitled documents and rejects non-images +21:09 +3334 -1: loading /home/albert/busystack/busymark/test/src/ai_test.dart +21:10 +3334 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy allows literal loopback and localhost origins +21:10 +3335 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy rejects remote, credential-bearing, and path endpoints +21:10 +3336 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: prompt serializes untrusted document data as a JSON field +21:10 +3337 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: plain-text edit prompts never request Markdown +21:10 +3338 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard accepts prose edits that retain protected Markdown +21:10 +3339 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard rejects changed links and fenced code +21:10 +3340 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard protects fences with longer valid closing markers +21:10 +3341 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder handles UTF-8 and JSON split across arbitrary byte chunks +21:10 +3342 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder rejects malformed records and oversized responses +21:10 +3343 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider lists models and streams chat content and usage +21:10 +3344 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider stops at completion and ignores trailing stream records +21:10 +3345 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider uses the documented low thinking level for GPT-OSS +21:10 +3346 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider bounds the model-list response while reading it +21:10 +3347 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider rejects redirects without following them +21:10 +3348 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider does not list or run Ollama cloud models +21:10 +3349 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider cancellation interrupts a silent response stream +21:10 +3350 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator cancels the older request for the same target +21:10 +3351 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator rejects a provider stream without completion +21:10 +3352 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart +21:12 +3352 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: formatting a URL suffix retains the complete live link and round trips +21:12 +3353 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter URL recognition preserves formatting, literal syntax, anchors, breaks and descendants +21:12 +3354 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter recognition preserves formatting within a URL and does not enter math fields +21:12 +3355 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: text whitespace preservation metadata follows pasted whitespace +21:12 +3356 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: paste-only whitespace keeps list descendants exactly once +21:12 +3357 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: plain whitespace paste keeps list descendants through Undo and Redo +21:15 +3358 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: replacement scope distinguishes a heading field from its document block +21:15 +3359 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete blocks inserted in list content retain every descendant +21:15 +3360 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: generic block commands cannot convert tables or preserved raw blocks +21:15 +3361 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: nested list-to-blockquote conversion preserves parent text +21:15 +3362 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: every admonition style preserves nested list parent text +21:15 +3363 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves the current list item descendants +21:15 +3364 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves descendants of an empty list item +21:16 +3365 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace rejects a merge that cannot represent descendants +21:16 +3366 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete clipboard snapshots reconstruct a table transactionally +21:16 +3367 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: same-editor cut and paste preserves complete tables +21:16 +3368 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits normalize every newline form before updating +21:16 +3369 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits preserve block-marker prefixes as literal text +21:16 +3370 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary table cell edits preserve formatting and links +21:16 +3371 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary cell edits retain toolbar-applied formatting +21:16 +3372 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve empty-alt inline images +21:16 +3373 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve existing hard line breaks +21:16 +3374 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing preserves a literal bang before an inline link +21:16 +3375 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing escapes block syntax at the start of a list item +21:16 +3376 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table field edits preserve rendered formatting and links +21:16 +3377 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields reject multiline input and reconcile the model +21:17 +3378 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields preserve block-marker-prefixed cell values +21:17 +3379 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source ranges select repeated text and table cells +21:18 +3380 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source navigation rebases spans after earlier edits +21:18 +3381 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: source navigation expands collapsed Writerside ancestors +21:19 +3382 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: outline navigation expands a collapsed heading ancestor +21:19 +3383 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cells own shortcuts, formatting, and restored selection +21:19 +3384 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external undo groups continuous typing but not transactions +21:19 +3385 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external history coalesces editor typing without local copies +21:19 +3386 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: undo controllers are disposed when blocks disappear +21:19 +3387 -1: loading /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart +21:20 +3387 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: SSE decoder handles split UTF-8 frames and multiline data +21:21 +3388 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: OpenAI Responses adapter is stateless and maps text and usage +21:21 +3389 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini Interactions adapter uses stable v1 and text deltas only +21:21 +3390 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider never includes a secret in surfaced failures +21:21 +3391 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects malformed usage records +21:21 +3392 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini rejects an incomplete status update +21:21 +3393 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects EOF without a typed completion event +21:21 +3394 -1: loading /home/albert/busystack/busymark/test/src/modal_barrier_test.dart +21:23 +3394 -1: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.light modal barriers use the semantic shade role +21:23 +3395 -1: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.dark modal barriers use the semantic shade role +21:24 +3396 -1: loading /home/albert/busystack/busymark/test/src/native_menu_service_test.dart +21:24 +3396 -1: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: show serializes native menu presentation and returns its selection +21:24 +3397 -1: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: dismiss is scoped to the native menu session +21:24 +3398 -1: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: missing native host reports unavailable for a themed fallback +21:24 +3399 -1: loading /home/albert/busystack/busymark/test/src/workspace_controller_test.dart +21:26 +3399 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside tab preparation loads once and current activation loads zero +21:27 +3400 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: configuration preview does not reparse in a derived loop and closing all buffers relinquishes overlays +21:27 +3401 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all Writerside tabs completes override relinquishment +21:27 +3402 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closed-tab reconciliation rejects obsolete disk models and keeps tabs closed +21:27 +3403 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: active +21:27 +3404 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: inactive +21:27 +3405 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: closure +21:27 +3406 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: workspace +21:27 +3407 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: external +21:28 +3408 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: disposal +21:28 +3409 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: rapid Writerside activation keeps derived work bounded and publishes the latest request +21:28 +3410 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered creation notifications are acknowledged, external same-size writes remain visible +21:33 +3411 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: a failed mutation cannot acknowledge its write notifications +21:33 +3412 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: quarantine and duplicate delayed deletion events acknowledge incorporated absence +21:37 +3413 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: an external same-size write during acknowledgement invalidates the consumed fingerprint +21:37 +3414 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: anchor +21:37 +3415 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: disk +21:37 +3416 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered TOC removal notifications require no subsequent module processing +21:38 +3417 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=false +21:38 +3418 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=true +21:39 +3419 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=false +21:39 +3420 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=true +21:39 +3421 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=false +21:39 +3422 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=true +21:39 +3423 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects inactive edit after clean navigation +21:40 +3424 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects reopen after clean navigation +21:40 +3425 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects close all after clean navigation +21:40 +3426 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects dispose after clean navigation +21:40 +3427 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects disk input after clean navigation +21:40 +3428 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects inactive edit after clean navigation +21:40 +3429 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects reopen after clean navigation +21:41 +3430 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects close all after clean navigation +21:41 +3431 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects dispose after clean navigation +21:41 +3432 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects disk input after clean navigation +21:41 +3433 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects inactive edit after clean navigation +21:41 +3434 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects reopen after clean navigation +21:41 +3435 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects close all after clean navigation +21:42 +3436 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects dispose after clean navigation +21:42 +3437 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects disk input after clean navigation +21:42 +3438 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining resource discovery presents stable limited inputs +21:42 +3439 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects edit during verification +21:42 +3440 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects inactive edit during verification +21:43 +3441 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects workspace replacement during verification +21:43 +3442 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects same-project reopening during verification +21:43 +3443 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects edit during verification +21:43 +3444 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects inactive edit during verification +21:43 +3445 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects workspace replacement during verification +21:43 +3446 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects same-project reopening during verification +21:43 +3447 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects edit during verification +21:44 +3448 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects inactive edit during verification +21:44 +3449 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects workspace replacement during verification +21:44 +3450 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects same-project reopening during verification +21:44 +3451 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=false +21:44 +3452 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=true +21:44 +3453 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=false +21:44 +3454 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=true +21:44 +3455 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=false +21:45 +3456 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=true +21:45 +3457 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=false +21:45 +3458 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=true +21:45 +3459 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded inactive edit +21:45 +3460 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded configuration write +21:45 +3461 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction discovery refresh keeps the live selected instance through reconciliation +21:45 +3462 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=4 +21:46 +3463 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=2 +21:46 +3464 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome creation cannot overwrite an edit made during history flush +21:47 +3465 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: starting a Welcome workspace cannot discard a dirty buffer +21:47 +3466 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome replaces clean buffers but workspace New remains additive +21:47 +3467 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete closes the topic buffer, selects a survivor, and records history +21:47 +3468 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete journal removes the deleted tab after refresh failure restart +21:47 +3469 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC writes reject an inactive dirty tree without discarding either buffer +21:47 +3470 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC creation defers its monitor events until the new document is open +21:48 +3471 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown topic import opens its first topic in an editable buffer +21:48 +3472 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed Markdown import preserves the active document and workspace +21:48 +3473 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Validate publishes a valid table containing an escaped pipe +21:48 +3474 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation reports stale, busy and failed outcomes without publishing old results +21:48 +3475 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=false +21:48 +3476 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=true +21:48 +3477 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math callbacks from an older editor revision cannot republish errors +21:48 +3478 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown validation uses the unsaved linked tab snapshot +21:48 +3479 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=true +21:48 +3480 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=false +21:49 +3481 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside rename stages verified edits across unsaved tabs with undo +21:49 +3482 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened Markdown files by file path in recent workspaces +21:49 +3483 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened folders by folder path in recent workspaces +21:49 +3484 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace file operations refresh and preserve active moved files +21:49 +3485 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates an unsaved Markdown file without adding it to recent +21:49 +3486 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates CommonMark inside Writerside without replacing project or dirty topic +21:49 +3487 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: identical untitled buffers remain distinct by buffer id +21:49 +3488 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: delayed untitled preview cannot publish into another untitled tab +21:49 +3489 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files leave preview mode for editor mode +21:49 +3490 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files preserve non-preview view modes +21:49 +3491 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an untitled Markdown file clears the workspace +21:49 +3492 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding a saved file reloads disk text and clears dirty state +21:49 +3493 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside project and records it as recent +21:49 +3494 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside topic and opens it without changing recents +21:49 +3495 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: topic TOC actions refresh the workspace and preserve file state +21:50 +3496 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: reviewed topic rename is rejected after a project buffer becomes dirty +21:50 +3497 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as writes a new Markdown file and records it as recent +21:50 +3498 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown in Writerside keeps ordinary files CommonMark +21:50 +3499 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside refresh preserves saved Markdown outside the workspace root +21:50 +3500 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown into discovered topics reclassifies it +21:50 +3501 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving multiple untitled documents creates normal file buffers +21:50 +3502 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as refuses an existing file unless overwrite is explicit +21:50 +3503 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as explicit overwrite replaces the final symlink only +21:50 +3504 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves source edits for an untitled Markdown file +21:50 +3505 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while writing the file +21:50 +3506 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as completes against its buffer after switching tabs +21:50 +3507 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while reopening the file +21:51 +3508 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: switching active files reparses outline for the new file +21:51 +3509 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale validation after save and tab switch does not restore previous file +21:51 +3510 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation completing after save preserves the saved snapshot +21:51 +3511 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source defers preview work until a preview mode is visible +21:51 +3512 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source-only validation still runs when validate-on-edit is enabled +21:51 +3513 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale text update from previous file cannot dirty active tab +21:51 +3514 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: folder workspaces track open file tabs without duplicates +21:51 +3515 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All writes every dirty file-backed buffer +21:51 +3516 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All can be scoped without saving unrelated dirty buffers +21:51 +3517 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: selected dirty buffers can be discarded without changing tabs +21:51 +3518 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing active file tabs selects a neighboring tab +21:51 +3519 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: activating sibling file tabs wraps around the open tabs +21:51 +3520 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all file tabs clears the active editor state +21:51 +3521 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs aborts when a document changes during history flush +21:52 +3522 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs cannot clear workspace state replaced during flush +21:52 +3523 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed open clears stale workspace state +21:52 +3524 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math renderer failures become source-linked runtime diagnostics +21:52 +3525 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validate on edit setting controls live diagnostics only +21:52 +3526 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save waits for an idle delay before writing +21:53 +3527 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Undo and Redo reschedule autosave after the prior save settled +21:58 +3528 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: inactive document updates schedule autosave without changing tabs +22:00 +3529 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed workspace refresh restores eligible autosave scheduling +22:01 +3530 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disabled autosave stays disabled after a failed refresh +22:03 +3531 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save remains scheduled independently for inactive tabs +22:04 +3532 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save preserves dirty state when edits happen during save +22:04 +3533 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: overlapping manual save writes the newer requested revision +22:04 +3534 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save completes against its buffer after switching tabs +22:04 +3535 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing a buffer waits for its in-flight autosave +22:04 +3536 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard aborts when the document changes during protective history capture +22:04 +3537 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard waits for its buffer in-flight autosave +22:04 +3538 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save waits for an in-flight autosave of the same buffer +22:04 +3539 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All waits for an in-flight autosave of the same buffer +22:04 +3540 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save As waits for an in-flight autosave of the same buffer +22:04 +3541 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean shutdown waits for in-flight document writes +22:04 +3542 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: pending history from a closed clean tab prevents a clean shutdown marker +22:04 +3543 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save refuses to overwrite external file changes without force +22:05 +3544 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save treats a deleted active file as an external conflict +22:05 +3545 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save detects external rewrites with unchanged modified time +22:05 +3546 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving preserves a manually removed final newline +22:05 +3547 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: WYSIWYG list edits preserve a missing final newline +22:05 +3548 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: spelling correction undo and redo restore source and rich selections +22:05 +3549 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Keep Mine retains the conflict snapshot until explicit overwrite +22:05 +3550 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitor refresh waits for an active foreground refresh +22:05 +3551 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves an active edit and editor history made during reparse +22:05 +3552 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation reconciles edits accepted while its reparse is pending +22:05 +3553 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: opening a new tab preserves live edits and editor history in the visible document +22:05 +3554 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing the active tab aborts if it changes during next-tab activation +22:05 +3555 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: aborted discard close preserves dirty state after an editor-only change +22:05 +3556 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: aborted +22:05 +3557 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: closed +22:05 +3558 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: disabled +22:05 +3559 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: shutdown +22:05 +3560 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: replaced +22:05 +3561 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation does not resurrect another tab closed while waiting +22:05 +3562 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves inactive edits and does not resurrect a closed tab +22:05 +3563 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh rejects a disk load superseded by typing +22:05 +3564 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: external file moves remap the open document buffer +22:05 +3565 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitors saved standalone tabs outside the workspace root +22:06 +3566 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: standalone refresh preserves saved tabs in different directories +22:06 +3567 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup leaves a clean session closed unless reopening is enabled +22:06 +3568 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup restores an interrupted session without an opt-in +22:06 +3569 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored sessions retain tabs whose files are missing +22:06 +3570 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored standalone sessions retain a missing document +22:06 +3571 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: mixed untitled and saved session restores as a standalone workspace +22:06 +3572 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark active +22:06 +3573 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark inactive +22:06 +3574 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean marker cannot hide remaining recovery entries +22:06 +3575 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: recovery text remains restorable when the later session save fails +22:06 +3576 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: single-document session uses no workspace path after saved tabs close +22:06 +3577 -1: loading /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart +22:07 +3577 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped image-description text follows Markdown image alt semantics +22:07 +3578 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: annotated parsing has ordinary semantics across supported corpus +22:07 +3579 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: image ranges identify only resolved source occurrences +22:07 +3580 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: positioned label breaks retain raw endings and container prefixes +22:07 +3581 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped link and image titles retain exact raw boundaries +22:07 +3582 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: destination-only links and images have no mapped title +22:07 +3583 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: position records do not change HTML or link semantics +22:07 +3584 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: selection endpoints crossing HTML retain one semantic fragment +22:07 +3585 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: supported HTML whitespace positions have complete position records +22:07 +3586 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: only operation-local markers are ignored +22:07 +3587 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: delimiter-only positions are explicitly incomplete +22:07 +3588 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: syntax-boundary probes retain the ordinary semantic oracle +22:07 +3589 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: deterministic inline combinations preserve annotated semantics +22:07 +3590 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: standalone HTML break ownership uses one indexed lookup per break +22:07 +3591 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: AST source boundary lookahead is linear and maps the final link +22:07 +3592 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: fallback mapping is bounded for entities repetitions and code spans +22:07 +3593 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: tag-looking attribute text does not claim break layout +22:07 +3594 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart +22:10 +3594 -1: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: restores WYSIWYG selection from document session state +22:11 +3595 -1: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: reports the old document session before switching tabs +22:11 +3596 -1: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: defers session provider updates until document rebuild ends +22:11 +3597 -1: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: workspace mode delegates WYSIWYG undo to buffer history +22:11 +3598 -1: loading /home/albert/busystack/busymark/test/src/writerside_identity_test.dart +22:12 +3598 -1: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: anchor identity includes topic and all instances participate in usages +22:12 +3599 -1: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: conditional globals and snippet variables have distinct scopes +22:13 +3600 -1: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: completion filters context and target identity before limiting +22:13 +3601 -1: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: validation uses relationships, typed values and current configuration syntax +22:13 +3602 -1: loading /home/albert/busystack/busymark/test/src/html_export_ui_test.dart +22:15 +3602 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: one Export command retains Ctrl+Shift+E +22:15 +3603 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Flutter Main menu exposes document export +22:16 +3604 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: untitled active text stays captured while destination picker is open +22:18 +3605 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Cancel handling before instance selection +22:18 +3606 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Discard handling before instance selection +22:19 +3607 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Save handling before instance selection +22:21 +3608 -1: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart +22:21 +3608 -1: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication +22:21 +3609 -1: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path +22:22 +3610 -1: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content +22:22 +3611 -1: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document +22:22 +3612 -1: loading /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart +22:26 +3612 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Writerside numeric list starts and container boundaries reach PDF +22:26 +3613 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: list items and visualization replacements retain source anchors +22:26 +3614 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: maps Markdown semantics into renderer-neutral export blocks +22:26 +3615 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: omits reference definitions while preserving their resolved links +22:26 +3616 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Typst payload contains data but never raw local image paths +22:26 +3617 -1: loading /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart +22:27 +3617 -1: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: basic fixture uses a renderable OpenAPI fence +22:27 +3618 -1: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: visualizer fences remain generic code and round-trip byte-for-byte +22:27 +3619 -1: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: dedicated visualizer rules highlight comments, keys, and keywords +22:28 +3620 -1: loading /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart +22:30 +3620 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-topic-create-10-100-0 +22:30 +3621 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-topic-create-10-100-0 +22:30 +3622 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-safe-delete-10-100-0 +22:30 +3623 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-safe-delete-10-100-0 +22:30 +3624 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 +22:30 +3625 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 +22:30 +3626 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: external moves, missing destinations and authored hidden names stay visible +22:30 +3627 -1: loading /home/albert/busystack/busymark/test/src/html_rich_export_test.dart +22:31 +3627 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered mermaid retains a linked Writerside block ID +22:33 +3628 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered openapi retains a linked Writerside block ID +22:33 +3629 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: HTML uses unique occurrence jobs, standalone math and diagram/static API engines +22:33 +3630 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: custom HTML metrics and embedded rich assets stay self-contained +22:33 +3631 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: all diagram dependencies are captured before rendering begins +22:33 +3632 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: cancelling an active render retains existing output and removes staging +22:34 +3633 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: render timeout is bounded and cancellation interrupts a pending job +22:34 +3634 -1: loading /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart +22:34 +3634 -1: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: finds exact href and body spans for every supported quote form +22:35 +3635 -1: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: ignores comments, fenced code, and inline code but keeps containers +22:35 +3636 -1: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: multiline anchors are exact and malformed anchors remain manual +22:35 +3637 -1: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits diff --git a/delivery/nextcloud-explicit-adoption/evidence/full-flutter.log b/delivery/nextcloud-explicit-adoption/evidence/full-flutter.log new file mode 100644 index 00000000..d5e5f60e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/full-flutter.log @@ -0,0 +1,4411 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver +00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider +00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider +00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files +00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text +00:05 +5: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations +00:05 +6: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads +00:05 +7: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy +00:05 +8: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy +00:05 +9: loading /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart +00:07 +9: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a complete subtree as the last child of an exact node +00:08 +10: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry after a root sibling +00:08 +11: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry to the end of the TOC root +00:08 +12: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry relative to itself without writing +00:08 +13: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry into its descendant without writing +00:08 +14: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: requires a destination for child and sibling placement +00:08 +15: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects invalid structural paths without writing +00:08 +16: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects stale paths whose expected TOC identities moved +00:08 +17: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a root entry and promotes its children in place +00:08 +18: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a nested entry and promotes its child before its sibling +00:08 +19: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes multiple entries atomically against one tree snapshot +00:08 +20: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: batch removal handles a selected descendant and ancestor +00:08 +21: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves multiple subtrees as an ordered group +00:08 +22: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a tree outside the guarded module root +00:08 +23: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a symlinked tree without mutating its target +00:08 +24: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: does not overwrite a tree changed before atomic publication +00:09 +25: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: atomic replacement preserves the tree POSIX mode +00:09 +26: loading /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart +00:09 +26: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal dialogs stop app and editor shortcuts +00:10 +27: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: Escape closes a modal without an initially focused control +00:10 +28: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal fallback does not steal a child autofocus request +00:10 +29: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: overlapping dialogs synchronize native modal depth +00:10 +30: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: serializes rapid manual native barrier transitions +00:10 +31: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: failed native barrier acquisition rolls back and can retry +00:10 +32: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal coordinator resolves the service from ProviderScope +00:10 +33: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: open modal barrier follows live theme changes +00:10 +34: loading /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart +00:12 +34: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: analysis finds every tree, topic link, include, and start page +00:13 +35: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove promotes children, updates usages, adds redirect, and keeps file +00:20 +36: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates all usages and removes every TOC occurrence +00:20 +37: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect to a promoted child is written to the promoted copy +00:20 +38: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed XML topics make usage analysis fail closed +00:20 +39: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: file-size-skipped topics make removal fail closed +00:20 +40: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: document-count-skipped topics make removal fail closed +00:20 +41: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: unreadable topic contents make removal fail closed +00:20 +42: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: topic-root traversal truncation makes removal fail closed +00:20 +43: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: incomplete project-module discovery makes removal fail closed +00:20 +44: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: tree directory enumeration failure makes removal fail closed +00:20 +45: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: single-quoted includes without element-id are found and removed +00:20 +46: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: variable-expanded links are analyzed and the variables file is stale-checked +00:21 +47: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: Safe Delete finds and unlinks authored HTML anchors without literal false positives +00:21 +48: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed authored HTML anchors are manual Safe Delete blockers +00:21 +49: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML variable hrefs are expanded and ambiguity blocks +00:21 +50: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML relevance follows its conditioned Markdown chapter +00:21 +51: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: automatic HTML unlinking permits project-wide orphan status +00:21 +52: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a surviving authored HTML link suppresses orphan status +00:21 +53: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: ambiguous references block deletion without changing any file +00:21 +54: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: old web file names follow Writerside normalization and exact overrides +00:21 +55: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: existing redirect rules block conflicting redirects +00:21 +56: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect preserves direct and rule-based accepted aliases +00:22 +57: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a transferred redirect alias collision fails before writes +00:22 +58: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect sources use each host instance web filename +00:22 +59: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remaining start-page and cross-instance usages prevent orphan status +00:22 +60: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove-from-instance relevance respects document conditions +00:22 +61: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: start-page and stale analyses fail closed without deleting the topic +00:22 +62: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: generic Files deletion cannot bypass Writerside Safe Delete +00:22 +63: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: project analysis finds origin links, includes, cards, and ref TOC nodes +00:22 +64: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored Markdown HTML anchors resolve origin project-wide +00:22 +65: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates automatic cross-module origin usages +00:22 +66: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: selected ref node uses removal workflow and promotes its children +00:23 +67: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: semantic tree scan includes hidden/build trees and excludes VCS metadata +00:23 +68: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a new module after analysis makes the reviewed plan stale +00:23 +69: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: cross-module failure rolls back BusyMark edits without overwriting a concurrent edit +00:23 +70: loading /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart +00:24 +70: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source paste preserves incoming nested blocks and returns its caret +00:24 +71: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves structural block kinds +00:24 +72: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: removing final formula leaves normal editing mode +00:24 +73: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits preserve nested list children +00:24 +74: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: descendant math does not put a plain list parent in source mode +00:24 +75: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first inline math insertion preserves unaffected inline AST +00:24 +76: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math edits retain explicit heading IDs +00:24 +77: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first math insertion recalculates a generated heading ID +00:24 +78: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion always emits reparsable source +00:24 +79: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: additional inline math uses the same reparsable insertion policy +00:24 +80: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion rejects multiline selections without mutation +00:24 +81: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves zero-width semantic inlines +00:24 +82: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table-cell source editing retains and removes semantic math +00:24 +83: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits cannot discard additional Markdown blocks +00:24 +84: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source editing preserves escaped literal dollars +00:24 +85: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves the intended inline position +00:24 +86: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math field source boundaries map to semantic text boundaries +00:24 +87: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: source-mode math insertion preserves the intended inline position +00:24 +88: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG renders math, edits exact source, and reparses without corruption +00:26 +89: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG toolbar inserts inline and display math source +00:32 +90: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math toolbar preserves existing inline structure +00:32 +91: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: rendered and focused math list items keep one marker +00:32 +92: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table math renders unfocused and edits delimiter source +00:33 +93: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: plain table cell treats typed Markdown as rich text +00:33 +94: loading /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart +00:34 +94: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery refresh preserves a valid second instance +00:35 +95: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: selected instance removed +00:37 +96: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: intentional selection +00:37 +97: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: another module +00:38 +98: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction incomplete observations are presentation only and reject changed reads +00:38 +99: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction limited inventory retains raw counts for excluded Git entries +00:38 +100: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: rejected source size remains an input to freshness checking +00:38 +101: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: bounded topic rejection detects recovery on the real worker +00:38 +102: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: oversized buffer overrides retain their consumed-input hash +00:38 +103: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: unreadable sources keep error diagnostics and invalidate on recovery +00:38 +104: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: real execution transfers results and propagates worker failures +00:38 +105: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: basic_project +00:38 +106: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: conformance_project +00:38 +107: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: markdown_export_compatibility +00:38 +108: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: malformed XML +00:38 +109: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: missing configured root +00:38 +110: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: unsafe include +00:38 +111: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: scan limit +00:38 +112: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: preparation consumes complete overlays once, then selects with zero loads +00:39 +113: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: reuse checks equal-size disk dependencies and added inputs +00:39 +114: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: planned path exclusions cannot hide a new colon-named dependency +00:39 +115: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: configuration overlay rediscovery retains symbols and diagnostics +00:39 +116: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: creation returns its typed publication result without reopening +00:39 +117: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal application shares one ownership-checked fresh project +00:39 +118: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects changed input before fingerprint collection +00:39 +119: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects added input before fingerprint collection +00:39 +120: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects removed input before fingerprint collection +00:39 +121: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects tree input before fingerprint collection +00:39 +122: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects configuration input before fingerprint collection +00:39 +123: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects disk dependency after fingerprint verification and before commit +00:39 +124: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects dirty affected buffer after fingerprint verification and before commit +00:39 +125: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: analysis is never reused across confirmation +00:40 +126: loading /home/albert/busystack/busymark/test/src/local_history_controller_test.dart +00:42 +126: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed opened baseline retries its original source without an edit +00:43 +127: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: baseline before edit preserves original and coalesces latest edit +00:43 +128: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: closed failures keep ownership and stale settlement cannot drop newer work +00:43 +129: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed protective capture survives refresh failure without recapture +00:43 +130: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: protective authorization is invalidated while committed refresh awaits +00:43 +131: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: disable cancels an in-flight baseline at the store boundary +00:48 +132: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: exclude cancels an in-flight baseline at the store boundary +00:48 +133: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed promotion stays associated when refresh fails +00:48 +134: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As binds destination even when list refresh fails +00:48 +135: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: settling one buffer resumes retries accepted by another buffer +00:48 +136: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear document cancels its failed unbound baseline +00:48 +137: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=true) +00:48 +138: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=false) +00:48 +139: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=false) +00:48 +140: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=true) +00:48 +141: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains a source identity established before later settlement fails +00:48 +142: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As refreshes a staged destination after its concurrent checkpoint +00:48 +143: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: abandoned and superseded moves retain the newest committed association +00:48 +144: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued edits share one retained baseline retry owner +00:48 +145: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: independent failures, permanent baselines and policy cancellation remain isolated +00:48 +146: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: cancelled failed baselines cannot be restored by delayed callbacks +00:48 +147: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: continuous typing captures latest text at fixed checkpoint interval +00:48 +148: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: inactive buffers receive independent checkpoint timers +00:48 +149: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first checkpoint attaches an empty untitled browsing scope and publishes it +00:48 +150: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file store checkpoint persists across reopen and clear stays authoritative +00:48 +151: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: active revision search follows matching and nonmatching captures +00:48 +152: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed automatic capture keeps pending source and retries without another edit +00:48 +153: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a newer edit accepted during a failed write wins the retry +00:48 +154: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: automatic checkpoint retries a transient first-save promotion failure +00:48 +155: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush waits behind queued observation and captures its latest source +00:48 +156: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear wins over an in-flight capture and later edits record normally +00:48 +157: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear Document records in the replacement lineage +00:48 +158: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document blocks replacement capture while its journal is pending +00:48 +159: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear All records in the replacement lineage +00:48 +160: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All blocks replacement capture while its journal is pending +00:48 +161: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an automatic checkpoint queued for an untitled draft +00:48 +162: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear Document +00:48 +163: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear All +00:48 +164: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clearing the displayed comparison closes it without a missing warning +00:48 +165: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an in-flight path capture for the same document +00:48 +166: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first edit after another controller clears a stale binding starts a new lineage +00:48 +167: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight buffer replacement protection +00:48 +168: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued buffer replacement protection +00:48 +169: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight path replacement protection +00:48 +170: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued path replacement protection +00:48 +171: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight buffer replacement protection +00:48 +172: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued buffer replacement protection +00:48 +173: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight path replacement protection +00:48 +174: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued path replacement protection +00:48 +175: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording off prevents baseline and checkpoints without deleting history +00:48 +176: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: store-wide find locates closed and deleted documents by path or content +00:48 +177: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: retained-document lookup is temporary and normal document selection resumes following +00:49 +178: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: panel construction preserves an explicit retained-document inspection +00:49 +179: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: delayed revision search cannot repopulate a newly selected document scope +00:49 +180: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision search failure finishes searching and remains in scope +00:49 +181: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Local History follows active tabs and clears the visible query without a document dropdown +00:50 +182: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision rows use local second-precision time, date groups, event metadata, and RTL +00:50 +183: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a delayed revision read cannot cross the selected document or leave loading stuck +00:50 +184: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As settles pending named and untitled checkpoints safely +00:50 +185: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: untitled overwrite Save As retains a failed source checkpoint +00:50 +186: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As source capture is idempotent after a lost result +00:50 +187: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As recovery never adopts unrelated same-content destination history +00:50 +188: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording-disabled first save promotes untitled history identity +00:50 +189: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: excluding a recovered first-save destination preserves its untitled source baseline +00:50 +190: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued committed Save As cannot recreate a newly excluded destination side +00:50 +191: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed first-save promotion is retried before a later capture +00:50 +192: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush retries a failed first-save promotion without another edit +00:50 +193: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush reports a content failure after successfully retrying promotion +00:50 +194: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: remap settles pending first-save promotions for files and directories +00:50 +195: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file and directory moves settle pending checkpoints before remap +00:50 +196: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed path reconciliation blocks affected captures but not unrelated documents +00:50 +197: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: successful path queue prefix is published before a later failure +00:50 +198: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path deletion warnings remain scoped to affected owners +00:50 +199: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed path operation is not replayed after refresh failure +00:50 +200: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: restored targetless executing reconciliation preserves its owner +00:50 +201: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) +00:50 +202: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/B.md) +00:50 +203: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/A.md, recursive: false, source: /workspace/C.md) +00:50 +204: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/B.md, recursive: false, source: /workspace/C.md) +00:50 +205: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirA/nested/C.md) +00:50 +206: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirB/nested/C.md) +00:50 +207: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: false, source: /workspace/C.md) +00:50 +208: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirB/nested/C.md, recursive: false, source: /workspace/C.md) +00:50 +209: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /other, recursive: false, source: /workspace) +00:50 +210: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace, recursive: false, source: /other) +00:50 +211: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/dirB-sibling/C.md, recursive: false, source: /workspace/dirA-sibling/C.md) +00:50 +212: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) +00:50 +213: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: true, source: /workspace/dirA/nested/C.md) +00:50 +214: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: true, source: /workspace/C.md) +00:50 +215: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /other, recursive: true, source: /workspace) +00:50 +216: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: true, source: /workspace/C.md) +00:50 +217: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) +00:50 +218: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) +00:50 +219: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses prepared target with different paths +00:50 +220: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses bound identity with different paths +00:50 +221: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses destination identity with different paths +00:50 +222: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency checks promotion destination identity at a different path +00:50 +223: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency settles only conflicting entries behind an unresolved head +00:50 +224: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=false) +00:50 +225: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=true) +00:50 +226: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency preserves transitive queue ordering +00:50 +227: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=false) +00:50 +228: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=true) +00:50 +229: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: staged path commit survives refresh failure until workspace acknowledgement +00:50 +230: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: external staged remap refreshes its bound target after checkpoint settlement +00:50 +231: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: definitive false staged result retires its executing journal +00:50 +232: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred deletion cannot delete replacement path history +00:50 +233: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document removes only its recursive reconciliation target +00:50 +234: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document preserves timer retry for remaining recursive target +00:50 +235: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: prepared remap rejects a checkpoint that changed its frozen target +00:50 +236: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: ownerless path failure is visible only in history presentation +00:50 +237: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: detached promotion capture is included in durable retained work +00:50 +238: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: live external retained owner is not replayed and Clear All retires it +00:50 +239: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a clear conflict cancels the old baseline retry owner +00:50 +240: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit after failed Clear waits and persists in the replacement lineage +00:50 +241: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: post-Clear edit uses committed epoch when reconciliation refresh fails +00:50 +242: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred remap cannot mutate replacement path history +00:50 +243: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed remap reserves source and destination paths until reconciliation +00:50 +244: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deletion remains ordered behind a retained path remap +00:50 +245: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first save waits for a reserved source path before promoting its history +00:50 +246: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path target discovery observes history written after cached load +00:50 +247: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear document +00:50 +248: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear all +00:50 +249: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after disposal +00:50 +250: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As transfers retained remap ownership with source work +00:50 +251: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flushBuffer reports retained remap work and retires closed owner +00:50 +252: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All cannot be undone by an in-flight path remap +00:50 +253: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path reconciliation resumes a newly opened destination owner +00:50 +254: loading /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart +00:51 +254: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: HTML retains complex Markdown and resolves both heading ID spellings +00:56 +255: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: PDF retains complex Markdown and resolved heading links +00:56 +256: loading /home/albert/busystack/busymark/test/src/math_widget_test.dart +00:57 +256: /home/albert/busystack/busymark/test/src/math_widget_test.dart: inline math applies MathJax baseline and surrounding text metrics +00:58 +257: /home/albert/busystack/busymark/test/src/math_widget_test.dart: wide display math scrolls horizontally without clipping +00:58 +258: /home/albert/busystack/busymark/test/src/math_widget_test.dart: failed formulas retain source and a localized explanation +00:58 +259: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart +01:00 +259: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: reduced fixture uses rendered offsets without Markdown delimiters or block separators +01:01 +260: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All: logical range and copy include styled suffixes and table +01:03 +261: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b0 BusyBlockKind.paragraph +01:03 +262: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b1 BusyBlockKind.paragraph +01:04 +263: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b2 BusyBlockKind.paragraph +01:04 +264: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b3 BusyBlockKind.unorderedListItem +01:04 +265: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b4 BusyBlockKind.unorderedListItem +01:04 +266: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b5 BusyBlockKind.unorderedListItem +01:05 +267: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b6 BusyBlockKind.paragraph +01:05 +268: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b17 BusyBlockKind.paragraph +01:05 +269: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table cells paint the same selected text as document copy +01:06 +270: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: repeated Select All keeps the entire document selected +01:06 +271: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: Before. + +| H | +| --- | +| Body! | + +01:07 +272: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: | H | +| --- | +| Body! | + +After. + +01:07 +273: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag endpoints use the styled rendered coordinate system +01:07 +274: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag from a paragraph into a table copies and selects its cells +01:07 +275: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across table cells selects the existing complete-table document block +01:08 +276: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 460.0 +01:08 +277: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 460.0 +01:08 +278: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 460.0 +01:08 +279: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 460.0 +01:08 +280: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 460.0 +01:09 +281: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 460.0 +01:09 +282: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 1000.0 +01:09 +283: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 1000.0 +01:09 +284: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 1000.0 +01:09 +285: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 1000.0 +01:10 +286: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 1000.0 +01:10 +287: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 1000.0 +01:10 +288: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=2 +01:10 +289: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=10 +01:10 +290: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=11 +01:10 +291: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=2 +01:10 +292: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=10 +01:10 +293: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=11 +01:11 +294: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=2 +01:11 +295: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=10 +01:11 +296: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=11 +01:11 +297: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=2 +01:11 +298: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=10 +01:11 +299: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=11 +01:11 +300: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=2 +01:11 +301: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=10 +01:11 +302: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=11 +01:11 +303: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=2 +01:11 +304: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=14 +01:11 +305: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=15 +01:12 +306: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 3, 29) includes the final rendered character +01:12 +307: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (4, 0, 4, 36) includes the final rendered character +01:12 +308: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 4, 36) includes the final rendered character +01:12 +309: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 4, 4, 36) includes the final rendered character +01:12 +310: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 6, 9) includes the final rendered character +01:12 +311: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 0, 6, 93) includes the final rendered character +01:12 +312: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (5, 0, 5, 29) includes the final rendered character +01:13 +313: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: mouse range across paragraph, list, table and paragraph equals Select All +01:13 +314: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All, mouse and keyboard ranges produce equivalent local selection geometry +01:14 +315: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: local table cell selection stays local; subsequent Select All expands to document +01:14 +316: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table to following paragraph retains complete selected rows +01:14 +317: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: document selection survives viewport scrolling and block recreation +01:15 +318: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: selected table text follows horizontal cell scrolling +01:15 +319: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across a viewport jump resolves the visible extent block (variant: TargetPlatform.linux) +01:16 +320: loading /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart +01:17 +320: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video card embeds a supported YouTube source in place +01:18 +321: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: mini-player embeds Vimeo with the reduced video ID +01:18 +322: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: local video player receives only a canonical media path +01:18 +323: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video dimensions preserve ratio and scale to available width +01:18 +324: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: failed native player leaves a usable poster fallback +01:18 +325: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: WYSIWYG renders a Writerside video without rewriting source +01:18 +326: loading /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart +01:19 +326: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: uses the native grouped modal-editor structure +01:21 +327: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shared report form remains directional in an Arabic UI +01:21 +328: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: dark route uses the shared dialog surface +01:21 +329: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows required-field validation without sending +01:21 +330: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: rejects an invalid optional reply email +01:21 +331: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: category can return to the unselected placeholder +01:21 +332: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: disables submit while a request is active +01:22 +333: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: clears the form and shows the server reference on success +01:22 +334: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows a distinct message when the server rejects the form +01:22 +335: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: keeps retry UUID until submitted content changes +01:22 +336: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: cannot dismiss the dialog while submission is active +01:26 +337: loading /home/albert/busystack/busymark/test/src/headless_chrome_test.dart +01:26 +337: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: evaluates the requested document after it becomes ready +01:27 +338: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: does not evaluate the initial about:blank target +01:27 +339: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: retries when navigation destroys the execution context +01:27 +340: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a silent open DevTools socket respects the readiness bound +01:28 +341: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: socket closure before a response fails deterministically +01:28 +342: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a DevTools error is not mistaken for navigation +01:28 +343: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a page that never becomes ready reports its last state +01:28 +344: loading /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart +01:28 +344: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in untitledMarkdown +01:28 +345: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in singleMarkdown +01:28 +346: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in markdownFolder +01:28 +347: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in writersideModule +01:28 +348: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in nextcloudNotes +01:28 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (setUpAll) +01:29 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered Markdown topic wins over generic file inventory +01:29 +350: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered XML topic resolves as a Writerside XML topic +01:29 +351: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution ordinary Markdown under the project is still CommonMark +01:29 +352: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution path fallback does not depend on workspace file inventory +01:29 +353: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (tearDownAll) +01:32 +353: loading /home/albert/busystack/busymark/test/src/html_export_test.dart +01:32 +353: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsaved Markdown is a complete styled document with stable semantic anchors +01:35 +354: /home/albert/busystack/busymark/test/src/html_export_test.dart: raw disclosures, definitions and spans survive with structural sanitization +01:35 +355: /home/albert/busystack/busymark/test/src/html_export_test.dart: explicit blank lines export as consecutive HTML breaks +01:35 +356: /home/albert/busystack/busymark/test/src/html_export_test.dart: content-addressed assets relocate, deduplicate and reject symlink escapes +01:35 +357: /home/albert/busystack/busymark/test/src/html_export_test.dart: home-relative images use the shared local-media path rules +01:35 +358: /home/albert/busystack/busymark/test/src/html_export_test.dart: untrusted metadata and data URLs cannot create active HTML +01:35 +359: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsafe SVG and CSS never reach exported assets +01:35 +360: /home/albert/busystack/busymark/test/src/html_export_test.dart: overwrite refusal, cancellation and rendering failure preserve previous HTML +01:35 +361: /home/albert/busystack/busymark/test/src/html_export_test.dart: metadata title remains separate from a formatted Markdown title heading +01:35 +362: /home/albert/busystack/busymark/test/src/html_export_test.dart: UTF-8 byte limits are enforced +01:35 +363: /home/albert/busystack/busymark/test/src/html_export_test.dart: Writerside produces linked pages, hidden topics, WIP and start copy +01:35 +364: /home/albert/busystack/busymark/test/src/html_export_test.dart: official conformance fixture exports as individual pages +01:36 +365: loading /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart +01:37 +365: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside blockquotes become typed admonitions and round-trip +01:37 +366: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown blockquotes do not acquire Writerside semantics +01:37 +367: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: semantic admonition elements include quote and preserve attributes +01:37 +368: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: admonition editing emits source that reparses semantically +01:37 +369: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: editing inside an existing admonition changes its outer type +01:37 +370: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: WYSIWYG Admonition menu applies the selected type +01:38 +371: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown does not show the Writerside editing menu +01:39 +372: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside .topic preview keeps content inside its admonition +01:39 +373: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: PDF export keeps admonitions semantic and quotes neutral +01:39 +374: loading /home/albert/busystack/busymark/test/src/d2_renderer_test.dart +01:40 +374: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy rejects imports and icon assets with source locations +01:40 +375: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy does not treat comments, quoted labels, or block strings as imports +01:40 +376: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: returns normalized vector SVG for browser-independent output +01:40 +377: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes foreignObject output at PDF resolution +01:40 +378: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes browser CSS that cannot be preserved in vector form +01:40 +379: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: maps D2 diagnostics and renderer limits to typed results +01:40 +380: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: locates only executable files at deterministic bundle paths +01:40 +381: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: bundled D2 CLI renders stdin to stdout without a shell +01:41 +382: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart +01:44 +382: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations +01:45 +383: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions +01:46 +384: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart +01:47 +384: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: display images do not reserve a fixed-height letterbox +01:47 +385: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: quotes and admonitions use the existing callout presentation +01:47 +386: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF export ignores redundant blank lines between blocks +01:49 +387: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF payload preserves an explicit blank line as two breaks +01:49 +388: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders two explicit breaks as one blank PDF line +01:50 +389: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders redundant blank lines identically +01:50 +390: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template exports representative Markdown to a valid PDF +01:50 +391: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside video poster and link compile into a valid PDF +01:50 +392: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside admonitions compile into a valid PDF +01:50 +393: loading /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart +01:51 +393: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: data tables remain tables, including borderless and single-column data +01:51 +394: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: nested layout wrappers retain their inner data table and prose +01:51 +395: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: explicit presentation table keeps caption, cell order and direction +01:51 +396: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor preserves content inside a layout table +01:51 +397: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor plain paste ignores layout and rich content +01:51 +398: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource preserves content inside a layout table +01:51 +399: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource plain paste ignores layout and rich content +01:51 +400: loading /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart +01:57 +400: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: selects all candidates by default and disables OK for none +01:58 +401: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: successful import closes the dialog with selected list order +01:58 +402: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: failed import stays open and presents the localized error +01:59 +403: loading /home/albert/busystack/busymark/test/src/html_publication_test.dart +01:59 +403: /home/albert/busystack/busymark/test/src/html_publication_test.dart: single-file local video has a downloadable fallback +02:01 +404: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list starts and same-type boundaries survive HTML export +02:02 +405: /home/albert/busystack/busymark/test/src/html_publication_test.dart: repeated list includes export as separate HTML containers +02:02 +406: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list styles stay distinct across consecutive lists +02:02 +407: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside shares HTML appearance without changing TOC status or source +02:02 +408: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside module origins preserve includes, variables, file identity and nullable links +02:02 +409: /home/albert/busystack/busymark/test/src/html_publication_test.dart: definition lists preserve individual disclosure states and IDs +02:02 +410: /home/albert/busystack/busymark/test/src/html_publication_test.dart: web filename and index collisions identify both topics before publication +02:02 +411: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside publication uses canonical effective web filenames +02:02 +412: /home/albert/busystack/busymark/test/src/html_publication_test.dart: source and media are captured before progress or later editor changes +02:02 +413: /home/albert/busystack/busymark/test/src/html_publication_test.dart: publication failure retains previous HTML and referenced immutable assets +02:02 +414: /home/albert/busystack/busymark/test/src/html_publication_test.dart: duplicate explicit IDs warn, non-Latin footnotes and document IDs resolve +02:03 +415: loading /home/albert/busystack/busymark/test/src/spelling_service_test.dart +02:03 +415: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document kinds expose one authoritative spelling capability +02:03 +416: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: effective spelling language preserves document and project order +02:03 +417: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: session identity changes when a stable buffer is saved to a path +02:03 +418: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: downloaded dictionaries use revision-shared Snap storage +02:03 +419: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: first save and Save As republish source routing immediately +02:05 +420: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rereads and merges independent external changes +02:05 +421: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words coordinates writers in independent application processes +02:07 +422: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external edit injected after staging +02:07 +423: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external replacement after the atomic exchange +02:07 +424: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves a newer destination and the rejected displaced version +02:07 +425: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves case while merging canonical Unicode equivalents +02:07 +426: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rebuilds untrusted stored keys from validated display values +02:07 +427: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words case-distinct words survive restart into the native worker +02:07 +428: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words malformed storage is reported instead of overwritten +02:07 +429: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: staging validation accepts numeric header revisions and count drift +02:07 +430: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: dictionary import publishes a complete pair only after validation +02:07 +431: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation installs only one shared resource and reuses it by locale +02:07 +432: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation and checksum failure leave no installation +02:08 +433: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation observes the atomic publication commit point +02:08 +434: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale invalid record cannot remove a repaired installation +02:08 +435: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale valid descriptor cannot remove a replacement in another process +02:08 +436: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation catalog waits through a replacement publication gap +02:08 +437: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a late no-replace publisher cannot replace a completed installation +02:08 +438: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation independent process observes the published no-replace destination +02:09 +439: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation stalled response times out, cancels, and permits retry +02:09 +440: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation asynchronous output sink errors fail the receiver without zone leaks +02:09 +441: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed replacement cannot damage a working installation +02:09 +442: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed controller download exposes a working retry +02:09 +443: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller reserves an installation before coordinator startup +02:09 +444: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller releases installation ownership after setup failure +02:09 +445: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller cancellation remains with the reserved startup operation +02:09 +446: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: aliased imports remain selectable across collision, restart, and removal +02:10 +447: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: same-resource import collision is rejected before publication +02:10 +448: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an import does not impersonate the downloadable resource row +02:10 +449: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid imported installation is removable by exact record +02:10 +450: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid downloaded installation repairs through settings API +02:10 +451: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once keeps its authored anchor across editor modes +02:10 +452: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: source hit testing excludes formatting and link destination gaps +02:10 +453: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once follows one transaction across edit, undo, redo, and tabs +02:10 +454: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document ignores survive tab changes but not an actual close +02:10 +455: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed suggestion cannot revive after language changes +02:10 +456: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a manual request waits for its own result while a check runs +02:10 +457: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: checks in bounded batches and reuses unchanged run results +02:10 +458: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: cached runs cover the complete checked text across edits +02:10 +459: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a NUL suffix cannot complete checking and recovers after correction +02:10 +460: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project initialization publishes only the latest owner +02:11 +461: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older same-project Settings read cannot undo a newer snapshot +02:11 +462: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older project watcher read cannot undo Settings publication +02:11 +463: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project read begun during a mutation cannot undo its result +02:11 +464: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project conflict read preserves newer state and error +02:11 +465: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project watcher error cannot replace valid state +02:11 +466: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project watcher recovers after identical dictionary repair +02:12 +467: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project repair recovers a later failed preparation at latest revision +02:13 +468: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project reread does not clear an unrelated personal read failure +02:13 +469: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: failed personal initialization retries after repair and shares first load +02:14 +470: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: explicit checks and Settings refresh external personal words +02:14 +471: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: late personal refresh cannot undo a newer local mutation +02:14 +472: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: refresh begun during a personal mutation cannot undo its result +02:14 +473: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an older personal refresh cannot replace a newer publication +02:14 +474: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a superseded conflict read cannot replace a newer personal refresh +02:14 +475: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Settings holds a failed preparation until deliberate retry +02:16 +476: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm no-workspace Settings refreshes personal words once +02:16 +477: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm Settings observes an external dictionary removal once +02:17 +478: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: leaving Settings during preparation ignores its late completion +02:17 +479: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent first requests start exactly one worker +02:17 +480: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a project-word mutation cannot publish into a later project +02:18 +481: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: new input hides old results before preparation can fail +02:18 +482: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: external project-word edits refresh an open document +02:21 +483: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review dialog keeps one traversal through skip, back, correction, and persistence +02:23 +484: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review word-store conflict stays current and exposes preserved recovery path +02:24 +485: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: equivalent rebuild does not cancel session initialization +02:25 +486: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic session checks after an unresolved language is selected +02:25 +487: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an available but absent dictionary is not downloaded implicitly +02:25 +488: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: removing a downloaded pair keeps words and reports not installed +02:25 +489: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance refreshes external installation at explicit boundaries +02:25 +490: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance replaces an active imported dictionary fingerprint +02:26 +491: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent warm catalog preparations share one owned read +02:26 +492: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed catalog read cannot undo a local installation +02:26 +493: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a failed warm catalog refresh remains retryable +02:26 +494: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic checking rereads inventory after dictionary load fails +02:26 +495: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker catalog validation requires its resource-specific probe +02:26 +496: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projects source and rich snapshots through reusable messages +02:26 +497: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incrementally reuses unaffected plain Markdown runs +02:26 +498: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incremental Markdown projection agrees with a fresh structural parse +02:26 +499: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projection cache rebinds source targets after Save As +02:26 +500: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker project custom words do not leak between contexts +02:26 +501: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quoted corrections retain straight and curly punctuation +02:26 +502: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives projection and worker barriers +02:26 +503: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives a bounded worker chunk +02:27 +504: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker removing a custom exception does not forbid a base word +02:27 +505: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker prose around 64 KiB is checked across bounded chunks +02:27 +506: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker isolates encoding and oversized-token failures +02:27 +507: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker normal, large, and superseded checks stay bounded +spelling benchmark: normal=3ms large/latest=131ms suggestion=0ms +02:27 +508: loading /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart +02:28 +508: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: rapid navigation applies only monotonic complete configurations +02:28 +509: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: a new Dart session can restart native revisions from one +02:28 +510: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal depth is an atomic overlay on the latest page state +02:28 +511: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal barrier is retained before the first page publishes +02:28 +512: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: older runners fall back once to the ordered legacy protocol +02:28 +513: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: failed atomic apply keeps the last success and retries the same desired state +02:28 +514: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: theme map contains the native semantic visual roles +02:28 +515: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: native header labels expose only application-menu commands +02:28 +516: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart +02:30 +516: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces +02:31 +517: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark +02:31 +518: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync +02:31 +519: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces +02:31 +520: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog +02:31 +521: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present +02:32 +522: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging +02:32 +523: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface +02:32 +524: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body +02:32 +525: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters +02:32 +526: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components +02:32 +527: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers +02:32 +528: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface +02:32 +529: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry +02:32 +530: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary +02:32 +531: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer +02:32 +532: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting +02:32 +533: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI +02:32 +534: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text +02:32 +535: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration +02:32 +536: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR +02:32 +537: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface +02:32 +538: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography +02:32 +539: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style +02:32 +540: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives +02:32 +541: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries +02:32 +542: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind +02:32 +543: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces +02:32 +544: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu +02:32 +545: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback +02:32 +546: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup +02:32 +547: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel +02:32 +548: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter +02:32 +549: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu +02:32 +550: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor +02:32 +551: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors +02:32 +552: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation +02:32 +553: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row +02:33 +554: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model +02:33 +555: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row +02:33 +556: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation +02:33 +557: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span +02:33 +558: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout +02:33 +559: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts +02:33 +560: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls +02:33 +561: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds +02:33 +562: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog +02:33 +563: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release +02:33 +564: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome +02:33 +565: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart +02:33 +565: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings +02:33 +566: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded +02:33 +567: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales +02:33 +568: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale +02:33 +569: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes +02:33 +570: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs +02:34 +571: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders +02:34 +572: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct +02:34 +573: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed +02:34 +574: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys +02:34 +575: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale +02:34 +576: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose +02:34 +577: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches +02:34 +578: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form +02:34 +579: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural +02:34 +580: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology +02:34 +581: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations +02:34 +582: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits +02:34 +583: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English +02:34 +584: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog +02:34 +585: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args +02:35 +586: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart +02:36 +586: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks pasted rich content completely in both editors +02:39 +587: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: packaged catalog opens real regional and non-Latin dictionaries +Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff +02:45 +588: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks the general Markdown fixture completely +02:48 +589: loading /home/albert/busystack/busymark/test/src/command_registry_test.dart +02:49 +589: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog includes every editor command with an executable callback +02:49 +590: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog exposes stable unique IDs for all migrated shortcuts +02:49 +591: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects duplicate command IDs +02:49 +592: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects shortcut conflicts in the same command scope +02:49 +593: /home/albert/busystack/busymark/test/src/command_registry_test.dart: allows the same shortcut in distinct focus scopes +02:49 +594: /home/albert/busystack/busymark/test/src/command_registry_test.dart: executes only visible enabled bound commands +02:49 +595: /home/albert/busystack/busymark/test/src/command_registry_test.dart: contextual commands execute against the captured editor +02:49 +596: loading /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart +02:50 +596: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: Linux packages secure AI credential storage consistently +02:50 +597: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: real local AI qualification covers every shipped action +02:50 +598: loading /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart +02:51 +598: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: source line bounds treat offsets as insertion positions +02:51 +599: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: table cell spans respect meaningful outer pipes and escaping +02:51 +600: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: escaped terminal pipes remain in the final cell source span +02:51 +601: loading /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart +02:54 +601: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide preview fits identically through D2 and WebKit renderers +02:54 +602: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide PDF fits identically through D2 and WebKit renderers +02:54 +603: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: area-constrained PDF fits identically through D2 and WebKit renderers +02:54 +604: loading /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart +02:58 +604: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: real installed catalog has six default families and 22 bundled TGDP topics +03:00 +605: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: literal substitution is simultaneous, case-sensitive, XML-only escaped +03:00 +606: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save source matches installed first-match substring behavior +03:00 +607: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: TGDP brace escaping preserves attribute blocks and rewrites relative links +03:00 +608: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save, unique naming, restart, cancellation snapshot and stale edit rejection +03:00 +609: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: concurrent saves serialize without losing templates +03:00 +610: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: true) +03:00 +611: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: false) +03:00 +612: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: corrupt and symbolic-link stores are never replaced +03:00 +613: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: builtin overrides persist independently and reset reveals original source +03:00 +614: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: template bytes are published in the guarded creation transaction and rolled back on conflict +03:00 +615: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: invalid XML templates and colliding root IDs never publish a topic or TOC edit +03:00 +616: loading /home/albert/busystack/busymark/test/src/writerside_test.dart +03:01 +616: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses writerside.cfg directories and registered instances +03:01 +617: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented full writerside.cfg metadata +03:01 +618: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented config defaults +03:01 +619: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses attribute defaults for present config elements +03:01 +620: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented topic title overrides and web file names +03:01 +621: /home/albert/busystack/busymark/test/src/writerside_test.dart: Markdown web filename metadata ignores literal examples +03:01 +622: /home/albert/busystack/busymark/test/src/writerside_test.dart: XML topic metadata is scoped to direct topic children +03:01 +623: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses .tree metadata and TOC hierarchy +03:01 +624: /home/albert/busystack/busymark/test/src/writerside_test.dart: Writerside topic XML exposes semantic math to the shared preview +03:01 +625: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads basic Writerside project with topics and no missing topic diagnostics +03:01 +626: /home/albert/busystack/busymark/test/src/writerside_test.dart: does not parse a Writerside config above the byte limit +03:01 +627: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects configured paths outside the module root +03:01 +628: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a configured topic root reached through a symlink +03:01 +629: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a Writerside config file reached through a symlink +03:01 +630: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads project.ihp as an equivalent Writerside config file +03:01 +631: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads topics from multiple configured topic roots +03:01 +632: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves exact topic reference before basename fallback +03:01 +633: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports duplicate topic IDs in a help module +03:01 +634: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename fallback after exact matching misses +03:01 +635: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves Markdown links across configured topic roots +03:01 +636: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename topic references deterministically +03:01 +637: /home/albert/busystack/busymark/test/src/writerside_test.dart: broken Writerside project produces deterministic diagnostics +03:01 +638: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves basename images in nested Writerside image directories +03:01 +639: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves local images from secondary configured image roots +03:01 +640: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses the documented instance tree elements and attributes +03:01 +641: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects redirect-source attributes on empty TOC groups +03:01 +642: /home/albert/busystack/busymark/test/src/writerside_test.dart: module service retains empty-group redirect-source diagnostics +03:01 +643: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves registered TOC libraries, filters, groups, and cross-instance refs +03:01 +644: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports circular reusable tree includes without recursing +03:01 +645: /home/albert/busystack/busymark/test/src/writerside_test.dart: included content still requires a regular instance home page +03:01 +646: /home/albert/busystack/busymark/test/src/writerside_test.dart: ignores status-specific values for general instance settings +03:01 +647: /home/albert/busystack/busymark/test/src/writerside_test.dart: conformance fixture is a valid openable Writerside module +03:01 +648: loading /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart +03:03 +648: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: narrow title stays centered between the controls when resized +03:04 +649: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.rtl +03:04 +650: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.ltr +03:04 +651: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.rtl +03:04 +652: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.ltr +03:04 +653: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.dark seam paints the same subtle color across header and body +03:04 +654: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.light seam paints the same subtle color across header and body +03:04 +655: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: one viewport owns the full-height sidebar edge at every frame +03:04 +656: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: unrelated rebuild preserves partial progress and body state +03:04 +657: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: breakpoint settlement is immediate and retained state survives +03:04 +658: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: RTL and fractional device pixels share one snapped edge +03:04 +659: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: divider follows the snapped physical viewport while opening and closing +03:04 +660: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: animation setting settles a running reveal to its logical target +03:04 +661: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header receives only the presented system-control obstruction +03:04 +662: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: frame is the single owner of the full-height sidebar seam +03:04 +663: loading /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart +03:07 +663: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: tree-to-editor sync opens selected topic even with a .tree editor active +03:11 +664: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: editor-to-TOC sync resolves qualified identities and chooses breadth-first occurrence +03:13 +665: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: live removal dialog uses documented confirmation, redirect label and usage count +03:16 +666: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: New Topic surfaces expose local Markdown import only at root/sibling +03:18 +667: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty MD Topic creates an editable document when Reading mode is active, preserving other tabs +03:21 +668: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty XML Topic creates an editable document when Reading mode is active, preserving other tabs +03:23 +669: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Topic from Template... creates an editable document when Reading mode is active, preserving other tabs +03:26 +670: loading /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart +03:27 +670: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: header Escape preserves the query for the next search +03:28 +671: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: search fallback uses the normal Yaru-themed entry geometry +03:28 +672: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: focus request targets the themed text entry +03:28 +673: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: Escape clears the query and closes the owner +03:28 +674: loading /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart +03:30 +674: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: row titles, markers and included source identity use selected context +03:30 +675: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking retains source bytes and rejects a now-present candidate +03:32 +676: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: home reassignment preserves other instances and unrelated attributes +03:32 +677: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty instance +03:32 +678: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: groups only +03:32 +679: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing home +03:32 +680: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: library +03:33 +681: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty group insertion +03:33 +682: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing nested topic +03:33 +683: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: first linked topic and home assignment share the same publication guard +03:33 +684: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: title transaction rolls back both files on a concurrent dirty-buffer guard +03:33 +685: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: XML duplicate copies source, changes only root ID, adds basic sibling +03:33 +686: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: sort revalidates title dependencies before publishing the tree +03:33 +687: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: safe deletion rechecks dirty-buffer guard and rolls back earlier edits +03:34 +688: loading /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart +03:37 +688: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: repeated list includes restart numbering in the final PDF +03:37 +689: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF keeps alphabetic starts, separate decimal lists and procedure numbering +03:37 +690: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (unknown) +03:37 +691: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (shared-pdf) +03:37 +692: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=false +03:38 +693: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=true +03:38 +694: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=true) +03:38 +695: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=false) +03:38 +696: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: bundled Typst compiles semantic tables, anchors and glossary footnotes +03:38 +697: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF retains nested chapter bodies and resolves unique internal destinations +03:38 +698: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic links retain their PDF destinations +03:38 +699: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic blank lines remain explicit in Writerside PDF +03:38 +700: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native export composes the selected instance without a container runtime +03:38 +701: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: hidden topics remain content and toc-title stays navigation-only +03:38 +702: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: referenced diagrams keep resolved source and all tab panels reach PDF +03:38 +703: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: pre-cancelled native export never starts PDF compilation +03:38 +704: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unknown Writerside instance is rejected before compilation +03:38 +705: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: resolution errors prevent PDF compilation +03:38 +706: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation errors prevent PDF compilation +03:38 +707: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation warnings are returned to the caller +03:39 +708: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: nonfatal resolution diagnostics are returned as PDF warnings +03:39 +709: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native exporter failures use Writerside failure codes +03:39 +710: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native Writerside fixture compiles end to end with bundled Typst +03:39 +711: loading /home/albert/busystack/busymark/test/src/clipboard_history_test.dart +03:41 +711: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains newest first, deduplicates, removes, clears, and evicts by count +03:41 +712: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: accounts byte budget and rejects an oversized item without truncation +03:41 +713: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: collection off leaves existing entries and blocks new retention +03:41 +714: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external clipboard remains transient until explicitly retained +03:41 +715: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external HTML keeps its rich and interoperable text representations +03:41 +716: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current HTML-only clipboard is eligible without internal ownership +03:41 +717: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current source-only clipboard does not invent plain text +03:41 +718: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal visible text with different structure stays distinct +03:41 +719: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal relative markup from different origins stays distinct +03:41 +720: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains whitespace-only text and owns image bytes immutably +03:41 +721: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: a new provider session starts with no retained history +03:41 +722: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: insertion registry follows latest target and never retains disposed targets +03:41 +723: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: unknown token cannot recover rich data through equal plain text +03:41 +724: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: rich ownership is byte bounded and shares equivalent media +03:41 +725: loading /home/albert/busystack/busymark/test/src/ai_reliability_test.dart +03:44 +725: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator honors Retry-After and caps retry attempts +03:44 +726: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator never retries after partial output +03:44 +727: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator bounds all retries by one total deadline +03:44 +728: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: global permit pool limits requests across different targets +03:44 +729: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: request-id cancellation cannot cancel a newer request for the target +03:44 +730: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: model fallback stays inside the explicitly selected provider +03:44 +731: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Ollama uses an absolute deadline even while bytes keep arriving +03:44 +732: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: cancellation interrupts the preliminary Ollama model request +03:44 +733: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Retry-After supports seconds and HTTP dates without negatives +03:44 +734: loading /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart +03:45 +734: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: partially formatted URL source offsets and text atoms survive save and edit +03:45 +735: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: URL punctuation beside surrounding formatting retains literal and style boundaries +03:45 +736: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: surrounding formatting commits the same URL editing semantics as reopening +03:45 +737: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL trailing literal punctuation survives serialization and reparse +03:46 +738: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: © +03:46 +739: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: & +03:46 +740: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: &* +03:46 +741: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: © +03:46 +742: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: & +03:46 +743: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: &* +03:46 +744: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.commonMark +03:46 +745: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.writersideMarkdown +03:46 +746: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: descendant whitespace preservation prevents ancestor trimming +03:46 +747: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: ordinary and metadata inline emission are byte-identical +03:46 +748: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL offsets and text atoms stay exact through Enter, edit and save/reparse +03:46 +749: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare leaf links use raw URL positions and explicit equal-label links retain delimiters +03:46 +750: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: grouped breaks retain distinct source provenance in one traversal +03:46 +751: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: text-leaf atoms use interior spans and exclude delimiters +03:46 +752: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: table escaping translates leaf spans without changing source +03:46 +753: loading /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart +03:49 +753: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: semantic catalog uses the exact native GTK icon names +03:49 +754: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: initial load batches direction variants and preserves candidate order +03:49 +755: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: explicit Back role survives atomic theme and scale catalog replacement +03:49 +756: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart +03:50 +756: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite +03:51 +757: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback +03:51 +758: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 +03:51 +759: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error +03:51 +760: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token +03:51 +761: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails +03:52 +762: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache +03:52 +763: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox +03:52 +764: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret +03:52 +765: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry +03:52 +766: loading /home/albert/busystack/busymark/test/src/feedback_service_test.dart +03:53 +766: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: posts the serialized request and returns the server reference +03:53 +767: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps connection failures +03:53 +768: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps response timeouts +03:53 +769: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 429 and preserves Retry-After +03:53 +770: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 400 and 422 to rejected request failures +03:53 +771: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps server and malformed-response failures to server errors +03:53 +772: loading /home/albert/busystack/busymark/test/src/app_settings_test.dart +03:55 +772: /home/albert/busystack/busymark/test/src/app_settings_test.dart: hydration and redundant sidebar requests do not count as user transitions +03:55 +773: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior defaults protect unsaved changes +03:55 +774: /home/albert/busystack/busymark/test/src/app_settings_test.dart: reopen workspace setting is migration-safe +03:55 +775: /home/albert/busystack/busymark/test/src/app_settings_test.dart: document view mode defaults to editor +03:55 +776: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save defaults to enabled +03:55 +777: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings have bounded privacy-preserving defaults +03:55 +778: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings validate persisted ranges and absolute exclusions +03:55 +779: /home/albert/busystack/busymark/test/src/app_settings_test.dart: AI defaults disabled and provider settings never persist secrets +03:55 +780: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction defaults to horizontal +03:55 +781: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction round-trips through settings JSON +03:55 +782: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote images default to blocked +03:55 +783: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspaces default to untrusted +03:55 +784: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy preview visibility migrates to source mode when hidden +03:55 +785: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language defaults to system locale +03:55 +786: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language override persists as locale tag +03:55 +787: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy Norwegian locale tag migrates to Bokmal +03:55 +788: /home/albert/busystack/busymark/test/src/app_settings_test.dart: supported script variants canonicalize to the available catalog +03:55 +789: /home/albert/busystack/busymark/test/src/app_settings_test.dart: regional variants canonicalize and unsupported tags are discarded +03:55 +790: /home/albert/busystack/busymark/test/src/app_settings_test.dart: unused product settings are not persisted +03:55 +791: /home/albert/busystack/busymark/test/src/app_settings_test.dart: file settings store keeps the live JSON intact until publication +03:56 +792: /home/albert/busystack/busymark/test/src/app_settings_test.dart: failed settings publication preserves the previous valid JSON +03:56 +793: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior settings persist +03:56 +794: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save setting persists +03:56 +795: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction setting persists +03:56 +796: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Writerside instance selection and icon color persist across renames +03:56 +797: /home/albert/busystack/busymark/test/src/app_settings_test.dart: initial load preserves user actions made before it completes +03:56 +798: /home/albert/busystack/busymark/test/src/app_settings_test.dart: removing a recent workspace persists without affecting files +03:56 +799: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote image permissions persist globally and per workspace +03:56 +800: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust persists, normalizes, and can be cleared +03:56 +801: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust follows the canonical workspace identity +03:56 +802: /home/albert/busystack/busymark/test/src/app_settings_test.dart: stored Git trust does not follow a replaced canonical path +03:56 +803: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git trust preserves leading and trailing path whitespace +03:56 +804: loading /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart +03:57 +804: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: different live prose still reports incomplete instead of guessed mapping +03:57 +805: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: general Markdown fixture has complete Source and rich spelling mappings +03:58 +806: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: live HTML paste preserves prose and maps spelling before a reload +03:58 +807: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: pasted job maps tables, trailing HTML breaks and address barriers +03:58 +808: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: closing hashes are heading syntax only in an ATX heading +03:58 +809: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal unresolved and invalid apparent links checkable +03:58 +810: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection resolves only parser-recognized links and images across revisions +03:58 +811: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal trailing braces in paragraph and heading prose +03:58 +812: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection binds recognized images to their exact source occurrence +03:58 +813: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection orders formatting from image labels and surrounding body +03:58 +814: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognizes nested syntax inside exact image descriptions +03:58 +815: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes only trailing attributes recognized by the current mode +03:58 +816: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata does not split a surrounding Markdown word +03:58 +817: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection corrects a Markdown body word across independent metadata +03:58 +818: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps repeated and formatted prose without searching globally +03:58 +819: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps entities, escapes, links, and table cells source exact +03:58 +820: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps CRLF and repeated occurrence targets exact +03:58 +821: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses barriers around excluded authored syntax +03:58 +822: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes a fenced code block nested in a block quote +03:58 +823: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps quoted list fences across blank continuations +03:58 +824: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection counts tab columns in list fence continuations +03:58 +825: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps unmatched delimiters and removes only parsed formatting +03:58 +826: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps quoted HTML attribute values from quote boundaries +03:58 +827: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection preserves semantic HTML boundaries and multiline exclusions +03:58 +828: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps comparison prose and scans multiline HTML tags exactly +03:58 +829: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps escaped multiline tag-like prose checkable +03:58 +830: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection removes delimiters when a correction empties formatting +03:58 +831: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses parser-compatible percentages escapes and code spans +03:58 +832: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection retains complete formatting ancestors across opaque children +03:58 +833: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection validates formatting gaps in regional coordinates +03:58 +834: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection accepts canonically equivalent mapped replacement text +03:58 +835: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link titles use exact quote boundaries before trailing whitespace +03:58 +836: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized link and image titles use their authored boundaries +03:58 +837: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection destination-only links and images do not expose a false title +03:58 +838: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized multiline links consume one mapped occurrence +03:58 +839: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline link labels keep container prefixes out of prose +03:58 +840: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline mapped labels agree with rich prose and corrections +03:58 +841: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection inline HTML breaks in link labels agree with rich prose +03:59 +842: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection code-styled image alternative text agrees with rich image field +03:59 +843: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code and Markdown hard breaks retain image alt semantics +03:59 +844: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code hard-break corrections retain authored source +03:59 +845: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: list +03:59 +846: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: quote +03:59 +847: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: crlf-after-content +03:59 +848: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: combined-quote-list +03:59 +849: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: nested-image +03:59 +850: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-inner-spaces +03:59 +851: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-continuation-space +03:59 +852: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: literal-code-syntax +03:59 +853: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested image code inherits the enclosing container mapping +03:59 +854: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link title keeps literal inline-break markup as scalar text +03:59 +855: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline code inside a link label stays opaque +03:59 +856: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline nested-image destination stays outside outer prose +03:59 +857: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested label syntax owns its breaks before outer prose resumes +03:59 +858: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata scalar tag-like text remains checkable +03:59 +859: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection parenthesized title replacement escapes its own delimiter +03:59 +860: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection semantic leaf blocks define independent complete prose runs +03:59 +861: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection projects semantic HTML prose and trusts parser math nodes +03:59 +862: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection large formatting-heavy projection and correction stay bounded +03:59 +863: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps inline body words intact across readable attributes +03:59 +864: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection corrects XML body and encoded metadata independently +03:59 +865: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes visible addresses in encoded text and CDATA +03:59 +866: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps text, entities, CDATA, and positive attributes +03:59 +867: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection reports malformed XML as incomplete without guessed targets +03:59 +868: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection clips CDATA occurrences while preserving repeated surrounding text +03:59 +869: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps line breaks, excludes variables, and includes controls +03:59 +870: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes entity-encoded variables after XML decoding +03:59 +871: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps decomposed Unicode in XML and CDATA corrections +03:59 +872: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction nested image descriptions retain recursive spelling policy +03:59 +873: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed rich correction preserves images beside math +03:59 +874: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed table image and math correction preserves cell source +03:59 +875: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction neighboring prose in a math image field keeps exact source +03:59 +876: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image ownership continues across ordinary and math fields +03:59 +877: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image description spelling agrees across source and rich fields +03:59 +878: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich image spelling changes only the mapped source word +03:59 +879: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction container image code corrects after continuation in rich editor +03:59 +880: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction code-styled image alternative corrects through rich controller +03:59 +881: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image code punctuation correction retains literal code meaning +03:59 +882: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction multiline link label correction uses rich controller mapping +03:59 +883: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: # Introduction + +- [Overview](#overview) + - [Motivation](#motivation) +- [Discussion](#discussion) + + +## Overview + +helo **world** + +helo world + +03:59 +884: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - helo + - helo + +helo + +03:59 +885: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: + +helo + +03:59 +886: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction escaped comment prose is still an editable rich spelling field +03:59 +887: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps hard breaks by structural field identity +03:59 +888: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction removes a rich formatting container emptied by deletion +03:59 +889: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction retains current source anchors and source-only title targets +03:59 +890: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich links keep all title delimiters source-only +04:00 +891: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves formatting ownership across leaves +04:00 +892: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction keeps trailing formatting on its original leaf +04:00 +893: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves link destination and table structure +04:00 +894: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps and corrects a table-cell field containing inline math +04:00 +895: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects transformed prose in table math source fields +04:00 +896: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects formatted and encoded prose in math source fields +04:00 +897: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction owns every nested wrapper in paragraph math-source fields +04:00 +898: loading /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart +04:00 +898: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: validates availability, finite normalized RGB and payload shape +04:00 +899: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: attaches before snapshot and rejects a superseded snapshot +04:00 +900: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: replays current value, deduplicates and safely resubscribes +04:00 +901: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: missing channels are unavailable and cancellable +04:00 +902: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while snapshot is pending discards its result +04:00 +903: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: silent channels expire locally and unsuperseded late snapshot recovers +04:00 +904: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: new unavailable event invalidates older read and deadline +04:00 +905: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while both native calls pending rejects late errors +04:01 +906: loading /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart +04:03 +906: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project scaffold and loads without diagnostics +04:04 +907: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: derives the starter topic filename from its title +04:04 +908: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project with Unicode directory and instance ID +04:04 +909: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: escapes XML-sensitive project names in writerside.cfg +04:05 +910: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: sanitizes start topic title as plain Markdown heading text +04:05 +911: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects existing non-empty target directory and does not overwrite files +04:05 +912: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects an existing project target symlink without writing through it +04:05 +913: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: canonicalizes a project parent selected through a symlink +04:05 +914: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects unsafe create request names before writing files +04:05 +915: loading /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart +04:05 +915: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: cover edits survive toggling and format changes, validate, reset, and do not leak through preferences +04:08 +916: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: instance changes refresh automatic fields without replacing edited or cleared text +04:09 +917: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: settings without a document show only the reusable cover preference +04:09 +918: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Markdown forwards current defaults and export-owned text +04:10 +919: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Writerside forwards current defaults and export-owned text +04:11 +920: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Markdown forwards current defaults and export-owned text +04:11 +921: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Writerside forwards current defaults and export-owned text +04:12 +922: loading /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart +04:13 +922: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: README screenshot references resolve to checked-in images +04:13 +923: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: release metadata is consistent and production-grade +04:13 +924: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: web engines are exact, checksummed, licensed, and installed offline +04:13 +925: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: D2 is checksum pinned for amd64 and installed with notices +04:13 +926: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: Linux CI builds and exercises the bundled visualization stack +04:13 +927: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: only offscreen WebKit views disable hardware compositing +04:13 +928: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: WebKit host and harness disable persistence and external resources +04:13 +929: loading /home/albert/busystack/busymark/test/src/workspace_safety_test.dart +04:14 +929: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes dialog aborts destructive navigation on cancel +04:16 +930: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discarding unsaved changes prevents repeated prompts +04:16 +931: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: destructive dialog buttons stay readable on dark controls +04:16 +932: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes Discard action renders white in the dark dialog +04:16 +933: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overwrite confirmation stays pinned to the document being saved +04:16 +934: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overlapping manual saves write the newer requested revision +04:16 +935: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: save completes for its buffer when the active document changes +04:16 +936: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As stays pinned while the file picker is open +04:16 +937: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancel does not overwrite an existing normalized markdown path +04:16 +938: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As overwrites an existing normalized markdown path only after confirmation +04:16 +939: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancels when the document changes during path lookup +04:16 +940: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discard confirmation cannot discard a newly active document +04:16 +941: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: workspace continuation resolves inactive dirty documents too +04:17 +942: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can save it while another stays dirty +04:17 +943: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can discard it while another stays dirty +04:17 +944: loading /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart +04:17 +944: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar update retries native channel initialization after early miss +04:17 +945: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar forwards text direction updates +04:17 +946: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar action events preserve repeated identical clicks +04:17 +947: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: native search events and focus request keep semantic meaning +04:17 +948: loading /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart +04:24 +948: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source pastes a web layout table as a complete document +04:25 +949: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (current) +04:25 +950: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (find next) +04:26 +951: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (current) +04:26 +952: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (find next) +04:26 +953: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3 matches +04:27 +954: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3000 matches +04:28 +955: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search navigation retains a later window when unfolding +04:28 +956: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling review caret uses full offsets after an earlier fold +04:28 +957: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling reveal unfolds and retains the word selection +04:28 +958: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Markdown spelling painter ignores selection and tracks composition +04:29 +959: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Writerside Markdown spelling painter ignores selection and tracks composition +04:29 +960: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source XML spelling painter ignores selection and tracks composition +04:29 +961: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI action applies a selection through the editor path +04:29 +962: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu targets the pointer occurrence exactly +04:29 +963: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling language uses a checked native submenu without a dialog +04:29 +964: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu converts folded offsets to full source +04:29 +965: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI applies a user-selected insertion target +04:29 +966: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor remains LTR inside an Arabic interface +04:29 +967: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor shows large-file fallback status +04:46 +968: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor renders visible diagnostic gutter tooltip +04:46 +969: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search localizes an invalid regular expression +04:46 +970: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search reports no current match before navigation +04:46 +971: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source fold and search options use semantic icon buttons +04:46 +972: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace All is one editor operation +04:47 +973: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace and Find Next selects the logical next match +04:47 +974: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: shifted folded regions are persisted after edit debounce +04:47 +975: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source sessions ignore render notifications and coalesce scrolling +04:47 +976: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor gives glyphs, caret, and selection breathing room +04:47 +977: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading selections cover styled glyphs evenly +04:47 +978: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading caret advances after a typed space +04:47 +979: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source caret follows an immediate end-of-file contraction +04:47 +980: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Tab indents selected Source lines without replacing text +04:47 +981: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source symbol shortcuts dispatch the full source caret +04:47 +982: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Ctrl+Space opens project-aware source completion +04:47 +983: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: wordWrap false uses one horizontally scrollable layout +04:47 +984: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source input preserves an active IME composing range +04:48 +985: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Enter to the input method +04:48 +986: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Tab to the input method +04:48 +987: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers autocomplete Escape to the input method +04:48 +988: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers the autocomplete shortcut +04:48 +989: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: focused Source accepts authoritative parent text updates +04:48 +990: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source keyboard copy retains exact whitespace once +04:48 +991: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source normal HTML paste converts while plain paste uses text +04:48 +992: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source CRLF structured paste is one exact undo transaction +04:48 +993: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source plain paste keeps LF bytes in a CRLF document +04:48 +994: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste keeps surrounding text inline +04:48 +995: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured block paste adds Markdown boundaries +04:48 +996: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks keep boundaries at every position + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#f8e32(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#db76f, undoController: UndoHistoryController#856b3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9cdcf(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b8835]], state: _TextFieldState#2963a), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#78d04 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#1ac4c@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4833@Offset(425.5, 300.0), RenderPointerListener#2f545@Offset(425.5, 300.0), RenderSemanticsGestureHandler#4afd7@Offset(425.5, 300.0), RenderExcludeSemantics#64003@Offset(425.5, 300.0), RenderBlockSemantics#6f746@Offset(425.5, 300.0), RenderIgnorePointer#6fbb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#e75a2@Offset(425.5, 300.0), _RenderTheater#10839@Offset(425.5, 300.0), RenderAbsorbPointer#a4a59@Offset(425.5, 300.0), RenderPointerListener#82490@Offset(425.5, 300.0), RenderSemanticsAnnotations#8cf87@Offset(425.5, 300.0), RenderCustomPaint#3bebf@Offset(425.5, 300.0), RenderSemanticsAnnotations#67e25@Offset(425.5, 300.0), RenderSemanticsAnnotations#ff792@Offset(425.5, 300.0), RenderSemanticsAnnotations#157e2@Offset(425.5, 300.0), RenderTapRegionSurface#4d0e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#6df89@Offset(425.5, 300.0), RenderSemanticsAnnotations#93542@Offset(425.5, 300.0), HitTestEntry#813a1(_ReusableRenderView#6a9e0), HitTestEntry#81110()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2597:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:48 +997: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete heading list and code blocks retain structure at every paragraph position + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#11591(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#0e89f, undoController: UndoHistoryController#c5b74(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#c5f60(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#92287]], state: _TextFieldState#4329e), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#f4d04 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#d82a3@Offset(425.5, 300.0), RenderSemanticsAnnotations#5f29f@Offset(425.5, 300.0), RenderPointerListener#04c89@Offset(425.5, 300.0), RenderSemanticsGestureHandler#56ae0@Offset(425.5, 300.0), RenderExcludeSemantics#01352@Offset(425.5, 300.0), RenderBlockSemantics#c5144@Offset(425.5, 300.0), RenderIgnorePointer#56da8@Offset(425.5, 300.0), RenderSemanticsAnnotations#4b8b5@Offset(425.5, 300.0), _RenderTheater#24245@Offset(425.5, 300.0), RenderAbsorbPointer#aae85@Offset(425.5, 300.0), RenderPointerListener#a7453@Offset(425.5, 300.0), RenderSemanticsAnnotations#c66e2@Offset(425.5, 300.0), RenderCustomPaint#01fc8@Offset(425.5, 300.0), RenderSemanticsAnnotations#fbbd6@Offset(425.5, 300.0), RenderSemanticsAnnotations#dcce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#e3ffd@Offset(425.5, 300.0), RenderTapRegionSurface#28afb@Offset(425.5, 300.0), RenderSemanticsAnnotations#7d010@Offset(425.5, 300.0), RenderSemanticsAnnotations#ded4a@Offset(425.5, 300.0), HitTestEntry#00f1d(_ReusableRenderView#6a9e0), HitTestEntry#b914d()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#11591(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#0e89f, undoController: UndoHistoryController#c5b74(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#c5f60(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#92287]], state: _TextFieldState#4329e), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#f4d04 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#00bac@Offset(425.5, 300.0), RenderSemanticsAnnotations#221c5@Offset(425.5, 300.0), RenderPointerListener#49748@Offset(425.5, 300.0), RenderSemanticsGestureHandler#986dc@Offset(425.5, 300.0), RenderExcludeSemantics#d4518@Offset(425.5, 300.0), RenderBlockSemantics#3ef22@Offset(425.5, 300.0), RenderIgnorePointer#ed5f4@Offset(425.5, 300.0), RenderSemanticsAnnotations#7268a@Offset(425.5, 300.0), _RenderTheater#24245@Offset(425.5, 300.0), RenderAbsorbPointer#aae85@Offset(425.5, 300.0), RenderPointerListener#a7453@Offset(425.5, 300.0), RenderSemanticsAnnotations#c66e2@Offset(425.5, 300.0), RenderCustomPaint#01fc8@Offset(425.5, 300.0), RenderSemanticsAnnotations#fbbd6@Offset(425.5, 300.0), RenderSemanticsAnnotations#dcce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#e3ffd@Offset(425.5, 300.0), RenderTapRegionSurface#28afb@Offset(425.5, 300.0), RenderSemanticsAnnotations#7d010@Offset(425.5, 300.0), RenderSemanticsAnnotations#ded4a@Offset(425.5, 300.0), HitTestEntry#bff2d(_ReusableRenderView#6a9e0), HitTestEntry#82ae4()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#11591(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#0e89f, undoController: UndoHistoryController#c5b74(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#c5f60(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#92287]], state: _TextFieldState#4329e), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#f4d04 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#6ef1d@Offset(425.5, 300.0), RenderSemanticsAnnotations#6e975@Offset(425.5, 300.0), RenderPointerListener#ff6d8@Offset(425.5, 300.0), RenderSemanticsGestureHandler#e85af@Offset(425.5, 300.0), RenderExcludeSemantics#75288@Offset(425.5, 300.0), RenderBlockSemantics#884da@Offset(425.5, 300.0), RenderIgnorePointer#5585b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f9f0b@Offset(425.5, 300.0), _RenderTheater#24245@Offset(425.5, 300.0), RenderAbsorbPointer#aae85@Offset(425.5, 300.0), RenderPointerListener#a7453@Offset(425.5, 300.0), RenderSemanticsAnnotations#c66e2@Offset(425.5, 300.0), RenderCustomPaint#01fc8@Offset(425.5, 300.0), RenderSemanticsAnnotations#fbbd6@Offset(425.5, 300.0), RenderSemanticsAnnotations#dcce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#e3ffd@Offset(425.5, 300.0), RenderTapRegionSurface#28afb@Offset(425.5, 300.0), RenderSemanticsAnnotations#7d010@Offset(425.5, 300.0), RenderSemanticsAnnotations#ded4a@Offset(425.5, 300.0), HitTestEntry#78411(_ReusableRenderView#6a9e0), HitTestEntry#96484()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:49 +998: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete-block split preserves styles caret and one-step Undo +04:49 +999: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source boundary-crossing replacements restore text selection and caret +04:49 +1000: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich inline paste composes with enclosing inline syntax + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#9e490(TextEditingValue(text: ┤[leftright](https://example.test)├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#5f08f, undoController: UndoHistoryController#64749(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5f066(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#d1479]], state: _TextFieldState#714e1), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#7ce28 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#eb347@Offset(425.5, 300.0), RenderSemanticsAnnotations#d6da1@Offset(425.5, 300.0), RenderPointerListener#e2579@Offset(425.5, 300.0), RenderSemanticsGestureHandler#13d65@Offset(425.5, 300.0), RenderExcludeSemantics#2e52f@Offset(425.5, 300.0), RenderBlockSemantics#d672d@Offset(425.5, 300.0), RenderIgnorePointer#fa0a7@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5b88@Offset(425.5, 300.0), _RenderTheater#331b1@Offset(425.5, 300.0), RenderAbsorbPointer#c6bfd@Offset(425.5, 300.0), RenderPointerListener#9e8b4@Offset(425.5, 300.0), RenderSemanticsAnnotations#b90f2@Offset(425.5, 300.0), RenderCustomPaint#b5368@Offset(425.5, 300.0), RenderSemanticsAnnotations#d4cfd@Offset(425.5, 300.0), RenderSemanticsAnnotations#1d500@Offset(425.5, 300.0), RenderSemanticsAnnotations#a4eb2@Offset(425.5, 300.0), RenderTapRegionSurface#3ca4f@Offset(425.5, 300.0), RenderSemanticsAnnotations#5481b@Offset(425.5, 300.0), RenderSemanticsAnnotations#daf5a@Offset(425.5, 300.0), HitTestEntry#b5822(_ReusableRenderView#6a9e0), HitTestEntry#e589b()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2945:28) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2999:22) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:49 +1001: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline reconciliation ignores separate destination runs +04:49 +1002: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source adjacent-style reconciliation preserves literal code delimiters +04:49 +1003: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation preserves a partially consumed delimiter +04:49 +1004: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table inline reconciliation is confined to the selected cell +04:49 +1005: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table keeps multiple independent incoming style runs +04:49 +1006: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source does not treat multiple incoming bold runs as one wrapper +04:49 +1007: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences with paragraph context +04:49 +1008: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences inside table cells +04:49 +1009: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table sequence reconciliation retains authored delimiters +04:49 +1010: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation retains mixed nested styles +04:49 +1011: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves hyperlink semantics in table cells +04:50 +1012: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline mapping handles links multiline styles and literal syntax +04:50 +1013: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret mapping preserves literal bang before a following link +04:50 +1014: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits resolved reference links without changing definitions +04:50 +1015: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits multiline blockquote links without exposing prefixes +04:50 +1016: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves occurrence-specific hard-break provenance +04:50 +1017: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret remains between pasted and retained hard breaks +04:50 +1018: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste after an HTML break does not retain its layout newline +04:50 +1019: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste preserves enclosing inline HTML as one run +04:51 +1020: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source system and history rich paste map normalized HTML whitespace +04:51 +1021: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source syntax-only availability agrees with textual fallback execution +04:51 +1022: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source terminal structured failure blocks availability and text fallback +04:51 +1023: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste remaps generated grouped hard breaks +04:51 +1024: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source remaps reopened grouped breaks in a CRLF container +04:51 +1025: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps nested and reference links through container prefixes +04:51 +1026: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves autolink destination semantics +04:51 +1027: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: invalid email-like text does not invalidate another link target +04:51 +1028: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste distinguishes authored and generated URL content +04:51 +1029: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves parser-folded reference identity +04:52 +1030: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source same-destination paste preserves parser-folded reference identity +04:52 +1031: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste retains the provenance of surviving line breaks +04:52 +1032: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste keeps label break provenance independent of link titles +04:52 +1033: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: normalized code-span breaks do not shift surviving link provenance +04:52 +1034: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste combines folded references with surviving break provenance +04:52 +1035: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste tracks old and new breaks independently +04:52 +1036: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reference-link label replacement retains definitions +04:52 +1037: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps escaped brackets in collapsed and shortcut references +04:52 +1038: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links around unmatched and code-span backticks +04:52 +1039: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links with escaped and balanced label brackets +04:53 +1040: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline wrapper mapping stays bounded for paste and availability +04:53 +1041: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps all retained break offsets in one serialization traversal +04:54 +1042: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source AST boundary mapping stays linear for availability and paste +04:54 +1043: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table paste preserves multiline link titles +04:54 +1044: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table boundary paste preserves styles caret and one-step history +04:54 +1045: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste handles every line boundary +04:54 +1046: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline paste preserves unrelated syntax whitespace and caret + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#9f5b8(TextEditingValue(text: ┤__leftright__├, selection: TextSelection.collapsed(offset: 10, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#7033e, undoController: UndoHistoryController#6a90a(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#86aa5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#09908]], state: _TextFieldState#2765b), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#58aa2 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#54e4d@Offset(425.5, 300.0), RenderSemanticsAnnotations#b6159@Offset(425.5, 300.0), RenderPointerListener#8bde1@Offset(425.5, 300.0), RenderSemanticsGestureHandler#afa04@Offset(425.5, 300.0), RenderExcludeSemantics#ca62d@Offset(425.5, 300.0), RenderBlockSemantics#abba9@Offset(425.5, 300.0), RenderIgnorePointer#6c035@Offset(425.5, 300.0), RenderSemanticsAnnotations#3d5f3@Offset(425.5, 300.0), _RenderTheater#43546@Offset(425.5, 300.0), RenderAbsorbPointer#f63fc@Offset(425.5, 300.0), RenderPointerListener#05aa2@Offset(425.5, 300.0), RenderSemanticsAnnotations#b3898@Offset(425.5, 300.0), RenderCustomPaint#50a06@Offset(425.5, 300.0), RenderSemanticsAnnotations#ba7ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3249f@Offset(425.5, 300.0), RenderSemanticsAnnotations#71118@Offset(425.5, 300.0), RenderTapRegionSurface#caff5@Offset(425.5, 300.0), RenderSemanticsAnnotations#a257a@Offset(425.5, 300.0), RenderSemanticsAnnotations#e9f73@Offset(425.5, 300.0), HitTestEntry#59e7c(_ReusableRenderView#6a9e0), HitTestEntry#d0056()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6908:28) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6936:20) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:55 +1047: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table cells reconcile surrounding inline styles +04:55 +1048: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciliation reuses table-normalized inline content +04:55 +1049: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source whole-block replacement differs from surviving table and code contexts + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#25832(TextEditingValue(text: ┤```text + old + ``` + ├, selection: TextSelection.collapsed(offset: 16, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#06dc4, undoController: UndoHistoryController#82a7f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#b95f9(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#6b1c1]], state: _TextFieldState#8e790), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#43f8e +The hit test result at that offset is: HitTestResult(RenderMouseRegion#aeadf@Offset(425.5, 300.0), RenderSemanticsAnnotations#6b21f@Offset(425.5, 300.0), RenderPointerListener#229cf@Offset(425.5, 300.0), RenderSemanticsGestureHandler#997a5@Offset(425.5, 300.0), RenderExcludeSemantics#2363b@Offset(425.5, 300.0), RenderBlockSemantics#fd1c5@Offset(425.5, 300.0), RenderIgnorePointer#70c35@Offset(425.5, 300.0), RenderSemanticsAnnotations#4252a@Offset(425.5, 300.0), _RenderTheater#5baae@Offset(425.5, 300.0), RenderAbsorbPointer#8a268@Offset(425.5, 300.0), RenderPointerListener#2ff9e@Offset(425.5, 300.0), RenderSemanticsAnnotations#27add@Offset(425.5, 300.0), RenderCustomPaint#bcdc6@Offset(425.5, 300.0), RenderSemanticsAnnotations#99f86@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1d95@Offset(425.5, 300.0), RenderSemanticsAnnotations#7df99@Offset(425.5, 300.0), RenderTapRegionSurface#bb5e1@Offset(425.5, 300.0), RenderSemanticsAnnotations#72261@Offset(425.5, 300.0), RenderSemanticsAnnotations#e553b@Offset(425.5, 300.0), HitTestEntry#be724(_ReusableRenderView#6a9e0), HitTestEntry#c1baa()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7158:25) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:55 +1050: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paragraph markers escape only at block starts + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#45602(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#841fc, undoController: UndoHistoryController#153c5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5ba12(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b6f39]], state: _TextFieldState#e248f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#27ce7 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#62ed7@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb2bb@Offset(425.5, 300.0), RenderPointerListener#b59d1@Offset(425.5, 300.0), RenderSemanticsGestureHandler#7d5bc@Offset(425.5, 300.0), RenderExcludeSemantics#d59da@Offset(425.5, 300.0), RenderBlockSemantics#f4a36@Offset(425.5, 300.0), RenderIgnorePointer#64eed@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b4ba@Offset(425.5, 300.0), _RenderTheater#47274@Offset(425.5, 300.0), RenderAbsorbPointer#290a9@Offset(425.5, 300.0), RenderPointerListener#367ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8925@Offset(425.5, 300.0), RenderCustomPaint#2d11b@Offset(425.5, 300.0), RenderSemanticsAnnotations#03519@Offset(425.5, 300.0), RenderSemanticsAnnotations#2bc7b@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f0af@Offset(425.5, 300.0), RenderTapRegionSurface#6596d@Offset(425.5, 300.0), RenderSemanticsAnnotations#c856a@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bbd7@Offset(425.5, 300.0), HitTestEntry#44e9d(_ReusableRenderView#6a9e0), HitTestEntry#49a95()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#45602(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#841fc, undoController: UndoHistoryController#153c5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5ba12(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b6f39]], state: _TextFieldState#e248f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#27ce7 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#44999@Offset(425.5, 300.0), RenderSemanticsAnnotations#8814e@Offset(425.5, 300.0), RenderPointerListener#ce0e6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#97712@Offset(425.5, 300.0), RenderExcludeSemantics#37751@Offset(425.5, 300.0), RenderBlockSemantics#f6871@Offset(425.5, 300.0), RenderIgnorePointer#dcb8a@Offset(425.5, 300.0), RenderSemanticsAnnotations#bce72@Offset(425.5, 300.0), _RenderTheater#47274@Offset(425.5, 300.0), RenderAbsorbPointer#290a9@Offset(425.5, 300.0), RenderPointerListener#367ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8925@Offset(425.5, 300.0), RenderCustomPaint#2d11b@Offset(425.5, 300.0), RenderSemanticsAnnotations#03519@Offset(425.5, 300.0), RenderSemanticsAnnotations#2bc7b@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f0af@Offset(425.5, 300.0), RenderTapRegionSurface#6596d@Offset(425.5, 300.0), RenderSemanticsAnnotations#c856a@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bbd7@Offset(425.5, 300.0), HitTestEntry#2777a(_ReusableRenderView#6a9e0), HitTestEntry#63e7f()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#45602(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#841fc, undoController: UndoHistoryController#153c5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5ba12(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b6f39]], state: _TextFieldState#e248f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#27ce7 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#991a4@Offset(425.5, 300.0), RenderSemanticsAnnotations#be2c9@Offset(425.5, 300.0), RenderPointerListener#29e97@Offset(425.5, 300.0), RenderSemanticsGestureHandler#83f3d@Offset(425.5, 300.0), RenderExcludeSemantics#5d404@Offset(425.5, 300.0), RenderBlockSemantics#ba597@Offset(425.5, 300.0), RenderIgnorePointer#08172@Offset(425.5, 300.0), RenderSemanticsAnnotations#1a7c3@Offset(425.5, 300.0), _RenderTheater#47274@Offset(425.5, 300.0), RenderAbsorbPointer#290a9@Offset(425.5, 300.0), RenderPointerListener#367ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8925@Offset(425.5, 300.0), RenderCustomPaint#2d11b@Offset(425.5, 300.0), RenderSemanticsAnnotations#03519@Offset(425.5, 300.0), RenderSemanticsAnnotations#2bc7b@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f0af@Offset(425.5, 300.0), RenderTapRegionSurface#6596d@Offset(425.5, 300.0), RenderSemanticsAnnotations#c856a@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bbd7@Offset(425.5, 300.0), HitTestEntry#209bf(_ReusableRenderView#6a9e0), HitTestEntry#9959f()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7247:24) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#45602(TextEditingValue(text: ┤- right├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#841fc, undoController: UndoHistoryController#153c5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5ba12(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b6f39]], state: _TextFieldState#e248f), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#27ce7 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#5ac40@Offset(425.5, 300.0), RenderSemanticsAnnotations#bfa85@Offset(425.5, 300.0), RenderPointerListener#b8985@Offset(425.5, 300.0), RenderSemanticsGestureHandler#6a01f@Offset(425.5, 300.0), RenderExcludeSemantics#d9660@Offset(425.5, 300.0), RenderBlockSemantics#2f1b5@Offset(425.5, 300.0), RenderIgnorePointer#0f7b8@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8848@Offset(425.5, 300.0), _RenderTheater#47274@Offset(425.5, 300.0), RenderAbsorbPointer#290a9@Offset(425.5, 300.0), RenderPointerListener#367ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8925@Offset(425.5, 300.0), RenderCustomPaint#2d11b@Offset(425.5, 300.0), RenderSemanticsAnnotations#03519@Offset(425.5, 300.0), RenderSemanticsAnnotations#2bc7b@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f0af@Offset(425.5, 300.0), RenderTapRegionSurface#6596d@Offset(425.5, 300.0), RenderSemanticsAnnotations#c856a@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bbd7@Offset(425.5, 300.0), HitTestEntry#ffb6f(_ReusableRenderView#6a9e0), HitTestEntry#5e430()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7277:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:55 +1051: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native inline paste preserves edge and only whitespace + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#808bc(TextEditingValue(text: ┤leftDELETEright├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#9291b, undoController: UndoHistoryController#1b521(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#aa955(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#1a720]], state: _TextFieldState#92e34), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#16ef3 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#3f494@Offset(425.5, 300.0), RenderSemanticsAnnotations#57276@Offset(425.5, 300.0), RenderPointerListener#13a41@Offset(425.5, 300.0), RenderSemanticsGestureHandler#41694@Offset(425.5, 300.0), RenderExcludeSemantics#ec69a@Offset(425.5, 300.0), RenderBlockSemantics#5b278@Offset(425.5, 300.0), RenderIgnorePointer#4187c@Offset(425.5, 300.0), RenderSemanticsAnnotations#adcb7@Offset(425.5, 300.0), _RenderTheater#d9318@Offset(425.5, 300.0), RenderAbsorbPointer#229f1@Offset(425.5, 300.0), RenderPointerListener#a97fb@Offset(425.5, 300.0), RenderSemanticsAnnotations#90a22@Offset(425.5, 300.0), RenderCustomPaint#9cf53@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb70f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ca400@Offset(425.5, 300.0), RenderSemanticsAnnotations#b2e7e@Offset(425.5, 300.0), RenderTapRegionSurface#bd4b8@Offset(425.5, 300.0), RenderSemanticsAnnotations#c30bf@Offset(425.5, 300.0), RenderSemanticsAnnotations#9a3d3@Offset(425.5, 300.0), HitTestEntry#94eda(_ReusableRenderView#6a9e0), HitTestEntry#bb017()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7379:24) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:55 +1052: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native rich edge whitespace repeats and restores real Undo state +04:55 +1053: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paste respects table-cell semantics +04:55 +1054: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps a final table cell ending in an escaped pipe +04:55 +1055: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks preserve list and quote containers +04:55 +1056: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks remain in containers at every content boundary + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#ae53e(TextEditingValue(text: ┤> item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#714c1 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#53c95@Offset(425.5, 300.0), RenderSemanticsAnnotations#cb415@Offset(425.5, 300.0), RenderPointerListener#0210f@Offset(425.5, 300.0), RenderSemanticsGestureHandler#87e37@Offset(425.5, 300.0), RenderExcludeSemantics#49d60@Offset(425.5, 300.0), RenderBlockSemantics#52aab@Offset(425.5, 300.0), RenderIgnorePointer#4e6ae@Offset(425.5, 300.0), RenderSemanticsAnnotations#79db2@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#f1c90(_ReusableRenderView#6a9e0), HitTestEntry#8d723()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#ae53e(TextEditingValue(text: ┤> item + ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#714c1 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#0d5ad@Offset(425.5, 300.0), RenderSemanticsAnnotations#02c50@Offset(425.5, 300.0), RenderPointerListener#3f5e2@Offset(425.5, 300.0), RenderSemanticsGestureHandler#fa0b6@Offset(425.5, 300.0), RenderExcludeSemantics#31ad0@Offset(425.5, 300.0), RenderBlockSemantics#d5dd0@Offset(425.5, 300.0), RenderIgnorePointer#f6fb2@Offset(425.5, 300.0), RenderSemanticsAnnotations#89481@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#725f8(_ReusableRenderView#6a9e0), HitTestEntry#6d951()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#ae53e(TextEditingValue(text: ┤- item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#714c1 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#0354e@Offset(425.5, 300.0), RenderSemanticsAnnotations#e32a0@Offset(425.5, 300.0), RenderPointerListener#2c7ee@Offset(425.5, 300.0), RenderSemanticsGestureHandler#dd244@Offset(425.5, 300.0), RenderExcludeSemantics#c39f0@Offset(425.5, 300.0), RenderBlockSemantics#59b20@Offset(425.5, 300.0), RenderIgnorePointer#3405f@Offset(425.5, 300.0), RenderSemanticsAnnotations#86ed2@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#1851d(_ReusableRenderView#6a9e0), HitTestEntry#a0b81()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#ae53e(TextEditingValue(text: ┤- item + ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#714c1 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#bfbe6@Offset(425.5, 300.0), RenderSemanticsAnnotations#754cd@Offset(425.5, 300.0), RenderPointerListener#b4961@Offset(425.5, 300.0), RenderSemanticsGestureHandler#500fb@Offset(425.5, 300.0), RenderExcludeSemantics#b310c@Offset(425.5, 300.0), RenderBlockSemantics#f4693@Offset(425.5, 300.0), RenderIgnorePointer#b4baa@Offset(425.5, 300.0), RenderSemanticsAnnotations#2eae4@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#621a2(_ReusableRenderView#6a9e0), HitTestEntry#d19b2()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#ae53e(TextEditingValue(text: ┤> 3. item├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#714c1 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#9fe49@Offset(425.5, 300.0), RenderSemanticsAnnotations#33ba6@Offset(425.5, 300.0), RenderPointerListener#b12b3@Offset(425.5, 300.0), RenderSemanticsGestureHandler#7c610@Offset(425.5, 300.0), RenderExcludeSemantics#f8ac0@Offset(425.5, 300.0), RenderBlockSemantics#ccd76@Offset(425.5, 300.0), RenderIgnorePointer#54f21@Offset(425.5, 300.0), RenderSemanticsAnnotations#8c036@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#55ca0(_ReusableRenderView#6a9e0), HitTestEntry#d8f89()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:56 +1057: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks retain continuation-line ancestors + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#8d430(TextEditingValue(text: ┤- first + leftright + ├, selection: TextSelection.collapsed(offset: 20, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#69bfa, undoController: UndoHistoryController#c1bd4(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#dc51b(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#edecb]], state: _TextFieldState#1c4ba), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#08f15 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#e8e0a@Offset(425.5, 300.0), RenderSemanticsAnnotations#aa85f@Offset(425.5, 300.0), RenderPointerListener#2fd49@Offset(425.5, 300.0), RenderSemanticsGestureHandler#18844@Offset(425.5, 300.0), RenderExcludeSemantics#890af@Offset(425.5, 300.0), RenderBlockSemantics#ccca4@Offset(425.5, 300.0), RenderIgnorePointer#f704f@Offset(425.5, 300.0), RenderSemanticsAnnotations#efd95@Offset(425.5, 300.0), _RenderTheater#a6282@Offset(425.5, 300.0), RenderAbsorbPointer#fff48@Offset(425.5, 300.0), RenderPointerListener#bd9f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bdc1@Offset(425.5, 300.0), RenderCustomPaint#04240@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f5d3c@Offset(425.5, 300.0), RenderSemanticsAnnotations#dff2e@Offset(425.5, 300.0), RenderTapRegionSurface#20e97@Offset(425.5, 300.0), RenderSemanticsAnnotations#47a4b@Offset(425.5, 300.0), RenderSemanticsAnnotations#2e2dc@Offset(425.5, 300.0), HitTestEntry#59a97(_ReusableRenderView#6a9e0), HitTestEntry#edaeb()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#8d430(TextEditingValue(text: ┤- first + + leftright + ├, selection: TextSelection.collapsed(offset: 21, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#69bfa, undoController: UndoHistoryController#c1bd4(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#dc51b(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#edecb]], state: _TextFieldState#1c4ba), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#08f15 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#53eb2@Offset(425.5, 300.0), RenderSemanticsAnnotations#a61ce@Offset(425.5, 300.0), RenderPointerListener#adf55@Offset(425.5, 300.0), RenderSemanticsGestureHandler#26314@Offset(425.5, 300.0), RenderExcludeSemantics#87038@Offset(425.5, 300.0), RenderBlockSemantics#849ef@Offset(425.5, 300.0), RenderIgnorePointer#e045f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ee06c@Offset(425.5, 300.0), _RenderTheater#a6282@Offset(425.5, 300.0), RenderAbsorbPointer#fff48@Offset(425.5, 300.0), RenderPointerListener#bd9f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bdc1@Offset(425.5, 300.0), RenderCustomPaint#04240@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f5d3c@Offset(425.5, 300.0), RenderSemanticsAnnotations#dff2e@Offset(425.5, 300.0), RenderTapRegionSurface#20e97@Offset(425.5, 300.0), RenderSemanticsAnnotations#47a4b@Offset(425.5, 300.0), RenderSemanticsAnnotations#2e2dc@Offset(425.5, 300.0), HitTestEntry#0d93a(_ReusableRenderView#6a9e0), HitTestEntry#c7941()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: + BusyMarkSourceController#8d430(TextEditingValue(text: ┤> first + leftright + ├, selection: TextSelection.collapsed(offset: 18, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) + , focusNode: FocusNode#69bfa, undoController: UndoHistoryController#c1bd4(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#dc51b(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#edecb]], state: _TextFieldState#1c4ba), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#08f15 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#9ce3e@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1f11@Offset(425.5, 300.0), RenderPointerListener#09be1@Offset(425.5, 300.0), RenderSemanticsGestureHandler#293dc@Offset(425.5, 300.0), RenderExcludeSemantics#94463@Offset(425.5, 300.0), RenderBlockSemantics#673be@Offset(425.5, 300.0), RenderIgnorePointer#5c0b4@Offset(425.5, 300.0), RenderSemanticsAnnotations#34ab8@Offset(425.5, 300.0), _RenderTheater#a6282@Offset(425.5, 300.0), RenderAbsorbPointer#fff48@Offset(425.5, 300.0), RenderPointerListener#bd9f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bdc1@Offset(425.5, 300.0), RenderCustomPaint#04240@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f5d3c@Offset(425.5, 300.0), RenderSemanticsAnnotations#dff2e@Offset(425.5, 300.0), RenderTapRegionSurface#20e97@Offset(425.5, 300.0), RenderSemanticsAnnotations#47a4b@Offset(425.5, 300.0), RenderSemanticsAnnotations#2e2dc@Offset(425.5, 300.0), HitTestEntry#0bf80(_ReusableRenderView#6a9e0), HitTestEntry#1563e()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:56 +1058: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source container recovery is bound to the actual nested ancestors +04:56 +1059: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks use list markers rather than task prefixes +04:56 +1060: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source task items keep block kinds at every content position +04:56 +1061: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source checked ordered nested and zero lists retain inserted block kinds +04:56 +1062: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source composes mixed and continuation container ancestors +04:57 +1063: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source protected contexts use the safe source fallback +04:57 +1064: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Writerside Source preserves a structured procedure block +04:57 +1065: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source delayed paste rejects a changed selection +04:57 +1066: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves composition before and during a read +04:57 +1067: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source failed cut keeps text and does not record history +04:58 +1068: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source delayed cut revalidates selection before deletion +04:58 +1069: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: history insertion follows the latest Source selection +04:58 +1070: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history rebases retained media into Source +04:58 +1071: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history restores a local video into Source +04:58 +1072: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: standalone image history ingests and inserts one undoable Source edit +04:58 +1073: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source local image path retains imported bytes once + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#daf5b(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#65fd2, undoController: UndoHistoryController#90494(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a712f(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#5e108]], state: _TextFieldState#0e265), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#f04c7 +The hit test result at that offset is: HitTestResult(RenderMouseRegion#aedd1@Offset(425.5, 300.0), RenderSemanticsAnnotations#283c4@Offset(425.5, 300.0), RenderPointerListener#63026@Offset(425.5, 300.0), RenderSemanticsGestureHandler#00edf@Offset(425.5, 300.0), RenderExcludeSemantics#5aa3d@Offset(425.5, 300.0), RenderBlockSemantics#fb071@Offset(425.5, 300.0), RenderIgnorePointer#49ca5@Offset(425.5, 300.0), RenderSemanticsAnnotations#0e19b@Offset(425.5, 300.0), _RenderTheater#abcde@Offset(425.5, 300.0), RenderAbsorbPointer#99499@Offset(425.5, 300.0), RenderPointerListener#b0d47@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e991@Offset(425.5, 300.0), RenderCustomPaint#028b0@Offset(425.5, 300.0), RenderSemanticsAnnotations#08165@Offset(425.5, 300.0), RenderSemanticsAnnotations#f0d71@Offset(425.5, 300.0), RenderSemanticsAnnotations#96867@Offset(425.5, 300.0), RenderTapRegionSurface#4a77d@Offset(425.5, 300.0), RenderSemanticsAnnotations#307a0@Offset(425.5, 300.0), RenderSemanticsAnnotations#307e7@Offset(425.5, 300.0), HitTestEntry#52678(_ReusableRenderView#6a9e0), HitTestEntry#e98d4()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main..expectNormalReplay (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8934:7) + +#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8956:5) + +#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +04:59 +1074: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: unsafe local image candidates paste their original text + +Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ + TextField(controller: BusyMarkSourceController#5ae3c(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#13907, undoController: UndoHistoryController#acaf1(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#caea0(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#63c4b]], state: _TextFieldState#d2e6a), +]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. +Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. +The finder corresponds to this RenderBox: RenderMouseRegion#0123b +The hit test result at that offset is: HitTestResult(RenderMouseRegion#e9bbd@Offset(425.5, 300.0), RenderSemanticsAnnotations#531be@Offset(425.5, 300.0), RenderPointerListener#8fb5a@Offset(425.5, 300.0), RenderSemanticsGestureHandler#d6d5e@Offset(425.5, 300.0), RenderExcludeSemantics#e97e0@Offset(425.5, 300.0), RenderBlockSemantics#125d4@Offset(425.5, 300.0), RenderIgnorePointer#cd358@Offset(425.5, 300.0), RenderSemanticsAnnotations#42952@Offset(425.5, 300.0), _RenderTheater#ead95@Offset(425.5, 300.0), RenderAbsorbPointer#18aac@Offset(425.5, 300.0), RenderPointerListener#9ac86@Offset(425.5, 300.0), RenderSemanticsAnnotations#71fe0@Offset(425.5, 300.0), RenderCustomPaint#5b1ca@Offset(425.5, 300.0), RenderSemanticsAnnotations#7785b@Offset(425.5, 300.0), RenderSemanticsAnnotations#7a6e9@Offset(425.5, 300.0), RenderSemanticsAnnotations#aa5b4@Offset(425.5, 300.0), RenderTapRegionSurface#63f56@Offset(425.5, 300.0), RenderSemanticsAnnotations#c2208@Offset(425.5, 300.0), RenderSemanticsAnnotations#2600d@Offset(425.5, 300.0), HitTestEntry#7668a(_ReusableRenderView#6a9e0), HitTestEntry#275b3()) +#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) +#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) +#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) +#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) + +#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9010:26) + +#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + +#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) + +To silence this warning, pass "warnIfMissed: false" to "tap()". +To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. + +05:00 +1075: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: image history asks to save an untitled Source document +05:00 +1076: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: generic XML does not invent Writerside image syntax +05:00 +1077: loading /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart +05:01 +1077: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: reads the initial GTK animation setting +05:01 +1078: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: animation stream follows GTK setting changes +05:01 +1079: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: provider exposes the preloaded value before native events +05:01 +1080: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: missing GTK integration falls back without disabling motion +05:01 +1081: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: native GTK bridge observes and tears down animation preference state +05:01 +1082: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart +05:04 +1082: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft +05:05 +1083: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft +05:05 +1084: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft +05:06 +1085: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft +05:06 +1086: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft +05:06 +1087: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft +05:08 +1088: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work +05:08 +1089: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work +05:08 +1090: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work +05:08 +1091: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work +05:08 +1092: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work +05:08 +1093: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET +05:08 +1094: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET +05:08 +1095: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET +05:09 +1096: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit +05:09 +1097: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment +05:09 +1098: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor +05:09 +1099: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity +05:09 +1100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement +05:09 +1101: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart +05:10 +1101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt +05:12 +1102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption +05:12 +1103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +05:12 +1104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary +05:12 +1105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment +05:12 +1106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title +05:13 +1107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category +05:13 +1108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment +05:13 +1109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart +05:13 +1110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment +05:13 +1111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment +05:14 +1112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +05:14 +1113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +05:14 +1114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +05:14 +1115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +05:14 +1116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit +05:14 +1117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit +05:14 +1118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +05:14 +1119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice +05:15 +1120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note +05:15 +1121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +05:15 +1122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions +05:15 +1123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +05:15 +1124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +05:15 +1125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +05:15 +1126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +05:15 +1127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +05:16 +1128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +05:16 +1129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +05:16 +1130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +05:16 +1131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +05:16 +1132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +05:16 +1133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +05:16 +1134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +05:16 +1135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +05:16 +1136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +05:17 +1137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +05:17 +1138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +05:17 +1139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +05:17 +1140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +05:17 +1141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +05:18 +1142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename +05:18 +1143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +05:18 +1144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +05:18 +1145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +05:18 +1146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +05:18 +1147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +05:18 +1148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +05:19 +1149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +05:19 +1150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +05:19 +1151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +05:19 +1152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +05:19 +1153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +05:19 +1154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +05:19 +1155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +05:20 +1156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +05:20 +1157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +05:20 +1158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +05:20 +1159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +05:20 +1160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +05:20 +1161: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart +05:21 +1161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice +05:21 +1162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes +05:21 +1163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice +05:21 +1164: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart +05:21 +1164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty +05:21 +1165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty +05:21 +1166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty +05:21 +1167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body +05:21 +1168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null +05:22 +1169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 +05:22 +1170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file +05:22 +1171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file +05:22 +1172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file +05:22 +1173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file +05:22 +1174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call +05:22 +1175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin +05:22 +1176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched +05:22 +1177: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart +05:22 +1177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations +05:22 +1178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions +05:22 +1179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations +05:22 +1180: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart +05:23 +1180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated +05:24 +1181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated +05:24 +1182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated +05:24 +1183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated +05:24 +1184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated +05:24 +1185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated +05:24 +1186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated +05:24 +1187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated +05:24 +1188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request +05:24 +1189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible +05:24 +1190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content +05:24 +1191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match +05:24 +1192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted +05:24 +1193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state +05:24 +1194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility +05:24 +1195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility +05:24 +1196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility +05:24 +1197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility +05:24 +1198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility +05:24 +1199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility +05:24 +1200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility +05:24 +1201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility +05:24 +1202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects +05:24 +1203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids +05:24 +1204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body +05:24 +1205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence +05:24 +1206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path +05:24 +1207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note +05:24 +1208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials +05:24 +1209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 +05:24 +1210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references +05:24 +1211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference +05:24 +1212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update +05:24 +1213: loading /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart +05:26 +1213: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles default-a4 and preserves document data +05:27 +1214: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles letter-landscape and preserves document data +05:27 +1215: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles legal-serif and preserves document data +05:27 +1216: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles custom-sans and preserves document data +05:28 +1217: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles no-numbers and preserves document data +05:28 +1218: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles numbered-no-outline and preserves document data +05:28 +1219: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomLeft and preserves document data +05:28 +1220: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomCenter and preserves document data +05:29 +1221: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomRight and preserves document data +05:29 +1222: loading /home/albert/busystack/busymark/test/src/app_smoke_test.dart +05:30 +1222: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor shortcuts use documented cross-editor defaults +05:30 +1223: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace resize retains the sidebar and leaves room for header controls +05:32 +1224: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: document view shortcuts are distinct from existing commands +05:32 +1225: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace routes paste shortcuts only to editable document views +05:36 +1226: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace source history restores a pasted URL suffix through undo and redo +05:36 +1227: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app wires generated localization delegates and locales +05:36 +1228: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app boots to BusyMark welcome screen without login UI +05:36 +1229: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (0) +05:37 +1230: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (1) +05:37 +1231: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: false) +05:38 +1232: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: true) +05:39 +1233: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: main menu and F11 toggle full-screen mode +05:39 +1234: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Alt+Left activates the header Back command +05:39 +1235: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: restored capture failure stays owned across Back create discard create +05:40 +1236: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Escape closes header popup menus +05:40 +1237: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: report issue is in the shared main menu, not Settings content +05:41 +1238: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: global reference and settings shortcuts open targets +05:41 +1239: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings screen opens +05:43 +1240: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings uses the regular split sidebar at desktop width +05:44 +1241: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Spelling Dictionaries page groups downloadable and custom data +05:44 +1242: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt uses native controls and submits a trimmed ID +05:50 +1243: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt cancels and saves without redesign +05:56 +1244: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a default-language install keeps the previous selection +05:56 +1245: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: default language persists only after dictionary installation succeeds +06:02 +1246: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: failed dictionary install keeps the default language +06:04 +1247: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a project-language install keeps the previous selection +06:04 +1248: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings main surface matches the headerbar in light and dark +06:05 +1249: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: stored language override localizes app text +06:05 +1250: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: European Portuguese system locale renders the completed base catalog +06:05 +1251: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: language-only Chinese system locale renders the completed base catalog +06:05 +1252: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside project dialog syncs generated fields until edited +06:05 +1253: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts dialog opens from the header +06:06 +1254: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference categories expose supported authoring forms +06:07 +1255: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+Alt+M opens and Escape closes the syntax reference +06:07 +1256: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference remains usable in constrained RTL layout +06:07 +1257: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts tabs section title is localized +06:08 +1258: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: about dialog shows the BusyMark logo +unhandled element ; Picture key: Svg loader +06:08 +1259: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N chooses between Markdown and Writerside creation +06:08 +1260: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N keeps unsaved documents in independent tabs +06:09 +1261: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N creates real CommonMark inside a Writerside workspace +06:10 +1262: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions +06:15 +1263: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions with an available native host +06:20 +1264: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside topic rename uses Preview, Do Refactor, and shared entry points +06:21 +1265: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: topic rename saves every dirty Writerside project source before planning +06:22 +1266: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: tab keyboard shortcuts move and close editor tabs +06:22 +1267: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Git diff files are shown as separate editor tabs +06:23 +1268: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: File History comparison selector shares its row with match navigation +06:24 +1269: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: file tree disables Git file actions without a repository +06:24 +1270: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: sidebar view shortcuts select workspace sidebar tabs +06:26 +1271: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: real Source edits reach the visible Local History list on the fixed deadline +06:26 +1272: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: selected WYSIWYG formatting reaches Local History through workspace callbacks +06:27 +1273: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside sidebar shortcuts survive document view changes +06:29 +1274: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view colors entries by Git status +06:29 +1275: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view shows hidden, empty, and unsupported entries +06:29 +1276: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Arabic +06:29 +1277: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Persian +06:30 +1278: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Arabic untitled workspace stays RTL and diagnostic metadata stays LTR +06:30 +1279: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: RTL topic copy keeps bidi controls out of clipboard data +06:30 +1280: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Copy uses an inactive origin topic open buffer +06:31 +1281: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Paste reviews an inactive dirty tree before moving +06:31 +1282: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source undo cannot restore saved text from previous tab +06:31 +1283: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source groups typing and deletion undo with historical carets +06:32 +1284: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source remount starts a distinct undo group +06:32 +1285: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source view supports editor formatting shortcuts +06:32 +1286: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab and Shift+Tab update indentation in source view +06:32 +1287: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editing toolbar context menu changes persisted layout without toggling +06:33 +1288: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share a frame while Split stays fluid +06:33 +1289: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: rendered views ignore redundant blanks while Source preserves them +06:33 +1290: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: standalone HTML breaks preserve one blank line in every document view +06:33 +1291: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share task-list presentation and wrapping +06:33 +1292: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same quote shell geometry +06:33 +1293: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same code block presentation +06:34 +1294: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share professional heading hierarchy +06:34 +1295: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share admonition and image presentation +06:34 +1296: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Preview renders structured formatted and nested quotes +06:34 +1297: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor undo cannot restore saved text from previous tab +06:34 +1298: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab inserts a tab character in editor view paragraphs +06:34 +1299: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close still warns when active changes are unsaved +06:35 +1300: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close flushes autosave for saved files +06:35 +1301: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: startup path opens a Markdown file workspace +06:35 +1302: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline follows unsaved source headings without live validation +06:35 +1303: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline context menu edits complete heading sections +06:36 +1304: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline highlights the heading at the document viewport +06:38 +1305: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline navigates to a renamed unsaved editor heading +06:40 +1306: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: untitled outline navigates before the first save +06:40 +1307: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview tolerates duplicate heading anchors +06:40 +1308: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading opens an unindexed sibling document link +06:40 +1309: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading linked block and inline images open their targets +06:40 +1310: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: new empty document leaves remembered preview mode for editor +06:40 +1311: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: blocked remote image prompt allows the current workspace +06:40 +1312: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+O open chooser lists recent workspaces +06:41 +1313: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recent workspace menus support pointer and keyboard actions +06:41 +1314: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local images +06:41 +1315: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer blocks remote images by default +06:41 +1316: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths with spaces +06:41 +1317: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths outside workspace +06:41 +1318: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves Snap real-home paths +06:41 +1319: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local SVG images +06:41 +1320: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer rejects oversized local SVGs +06:41 +1321: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer sanitizes embedded SVG image data +06:42 +1322: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer renders generated SVG badges +06:42 +1323: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: header Search button toggles the expanded search field +06:42 +1324: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: native header Search action toggles search and Back visibility +06:43 +1325: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search awaits non-active file reads without blocking builds +06:43 +1326: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search native submit uses exact payload and selected sidebar occurrence +06:44 +1327: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search preserves query and lands on unopened destination +06:44 +1328: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search observes edits to inactive buffers +06:45 +1329: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search reports limits and continues into later files +06:46 +1330: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search exposes skipped files and regex diagnostics +06:47 +1331: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search cancels expensive regex while UI keeps building +06:48 +1332: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search replacement review loads an asynchronous plan +06:49 +1333: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search highlights preserve Unicode offsets +06:49 +1334: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: literal workspace search bounds malformed Markdown snippets around the match +06:50 +1335: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks move preview scroll repeatedly +06:50 +1336: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview lazily builds large documents +06:50 +1337: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks scroll to code block matches +06:51 +1338: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on paragraph after lists +06:51 +1339: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share ordered list styling and geometry +06:51 +1340: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders nested list children +06:51 +1341: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders raw HTML table as table cells +06:51 +1342: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading applies Markdown table column alignment +06:51 +1343: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on code block line +06:52 +1344: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S runs Save for the active workspace +06:52 +1345: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S saves source edits from an untitled Markdown document +06:52 +1346: loading /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart +06:54 +1346: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from preview +06:58 +1347: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from editor +07:03 +1348: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: an open Problems dialog updates its count and math rows +07:04 +1349: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: manual Validate supersedes queued automatic validation and presents once +07:06 +1350: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: failed and stale validation do not show Problems; concurrent clicks publish once +07:09 +1351: loading /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart +07:10 +1351: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside math forms use semantic math nodes and round-trip +07:13 +1352: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: ordinary Markdown does not reinterpret Writerside TeX forms +07:13 +1353: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside semantic and fenced diagrams share visualizers +07:13 +1354: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: referenced diagram source is constrained to the Writerside root +07:13 +1355: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside topic XML exposes TeX and diagrams to shared preview +07:17 +1356: loading /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart +07:19 +1356: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: view changes fade one live editor while ordinary data changes do not +07:20 +1357: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained destinations settle immediately under reduced motion +07:20 +1358: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained crossfade keeps two live pages and hides outgoing UI +07:20 +1359: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: keyed crossfade retains three semantic destinations +07:21 +1360: loading /home/albert/busystack/busymark/test/src/preview_builder_test.dart +07:29 +1360: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview uses one generic label and no compatibility banner +07:29 +1361: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview ignores redundant blank lines between blocks +07:29 +1362: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves an explicit blank line encoded with HTML breaks +07:29 +1363: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview headings carry parser anchors for outline navigation +07:29 +1364: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview blocks carry source locations for search navigation +07:29 +1365: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview source locations survive adjacent list items and code fences +07:29 +1366: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview list text removes Markdown markers +07:29 +1367: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves links inside list items +07:29 +1368: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves nested list children +07:29 +1369: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps ordered list numbering independent at each depth +07:29 +1370: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves inline Markdown semantics +07:29 +1371: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: inline autolinks only support launchable URI schemes +07:29 +1372: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities +07:29 +1373: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces +07:29 +1374: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities +07:29 +1375: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces +07:29 +1376: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview treats single newlines inside paragraphs as soft breaks +07:29 +1377: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview supports common Markdown block variants +07:29 +1378: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves structured and formatted quote children +07:29 +1379: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves source order for code and images +07:29 +1380: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview parses Writerside image attributes +07:29 +1381: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: front matter is skipped only at the top of the document +07:29 +1382: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML paragraph without literal tags +07:29 +1383: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table sections and inline cell formatting +07:29 +1384: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders direct rows under raw HTML table +07:29 +1385: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table captions before the table +07:29 +1386: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders inline raw HTML safely +07:29 +1387: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not make raw HTML links active without href +07:29 +1388: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects absolute local image paths in raw HTML +07:29 +1389: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects deeply nested raw HTML before conversion +07:29 +1390: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders safe raw HTML containers as child content +07:29 +1391: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders top-level raw HTML image as image block +07:29 +1392: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves raw HTML figure caption relationship +07:29 +1393: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview allows safe remote raw HTML links images and citations +07:29 +1394: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps unsafe raw HTML literal +07:29 +1395: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not parse Markdown inside raw HTML blocks +07:29 +1396: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps paired raw HTML blocks together across blank lines +07:29 +1397: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart +07:30 +1397: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields +07:31 +1398: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 +07:31 +1399: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 +07:31 +1400: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 +07:31 +1401: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 +07:31 +1402: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null +07:31 +1403: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version +07:31 +1404: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed +07:31 +1405: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 +07:31 +1406: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately +07:31 +1407: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers +07:31 +1408: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin +07:31 +1409: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 +07:31 +1410: loading /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart +07:32 +1410: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by file-size limits +07:32 +1411: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by document limits +07:32 +1412: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects topic discovery truncated by tree limits +07:32 +1413: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic-root directory listing failure +07:32 +1414: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: topic discovery traverses excluded and hidden directories but not VCS metadata +07:32 +1415: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves a Markdown reference under build +07:34 +1416: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves an XML reference under a hidden directory +07:34 +1417: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a discovered unreadable topic source +07:34 +1418: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates topic and start-page references in every tree +07:34 +1419: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename refactors links, includes, ref entries, and leaves unrelated text +07:34 +1420: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename ignores link-shaped text in image titles and HTML attributes +07:34 +1421: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds reference links outside image titles and HTML attributes +07:35 +1422: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds exact HTML hrefs outside Markdown link and image titles +07:35 +1423: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename follows origin across modules without touching a local namesake +07:35 +1424: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: project-wide rename includes an origin reference in a build module +07:35 +1425: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: renaming a local namesake preserves origin-qualified Markdown XML links +07:35 +1426: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports unquoted origin-qualified raw HTML links +07:35 +1427: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename keeps decoded whitespace safe in unquoted HTML hrefs +07:36 +1428: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates shared Markdown reference definitions once +07:36 +1429: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves escapes required by a Markdown destination +07:36 +1430: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rewrites an XML-encoded topic destination +07:36 +1431: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename escapes decoded XML attribute replacements +07:36 +1432: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates a matching XML topic root id +07:36 +1433: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: missing or mismatched XML root IDs block rename atomically +07:36 +1434: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: prepared rename is read-only and applies its exact captured changes +07:36 +1435: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: stale prepared rename fails before any partial write +07:36 +1436: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preflights collisions only in publishing instances +07:37 +1437: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: origin topic collisions block a project-wide prepared rename +07:37 +1438: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: Unicode Markdown and XML topic filenames rename safely +07:37 +1439: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports Writerside .markdown topics +07:37 +1440: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects duplicate targets and extension changes +07:37 +1441: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves a target created concurrently before exclusive create +07:37 +1442: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete reloads newly configured instances before start-page checks +07:37 +1443: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename does not claim a new same-basename nested reference +07:37 +1444: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename aborts when a concurrent topic changes basename resolution +07:37 +1445: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete aborts when a concurrent topic changes basename resolution +07:40 +1446: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename retains target when an applied tree cannot be rolled back +07:40 +1447: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: cross-module rollback retains a target after another module changes +07:40 +1448: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: clean rollback removes the harmless newly created target +07:40 +1449: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves topic and instance tree file modes +07:40 +1450: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete removes every TOC entry and promotes children in place +07:41 +1451: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic used as any instance start page +07:41 +1452: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects unsafe path components before writing +07:41 +1453: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic replaced by a symlink without touching its target +07:41 +1454: loading /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart +07:41 +1454: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic maps to full and visible line without folds +07:41 +1455: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic inside folded region is aggregated onto its fold header +07:41 +1456: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: folded layout geometry is reused for equal collapsed sets +07:42 +1457: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: incremental gutter layout matches a full measured layout +07:42 +1458: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart +07:43 +1458: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Duplicate Topic is serialized to the native dialog host +07:43 +1459: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Edit Title returns all native field values +07:43 +1460: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: native cancellation remains distinct from an unavailable host +07:43 +1461: loading /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart +07:46 +1461: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps a nested Writerside block to its source block +07:47 +1462: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps selected text when unsourced editor blocks exist +07:47 +1463: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI applies through canonical Markdown source +07:48 +1464: loading /home/albert/busystack/busymark/test/src/document_status_bar_test.dart +07:49 +1464: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: places interactive spelling at start and format at end +07:49 +1465: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: keeps passive format when spelling is unsupported +07:49 +1466: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: truncates a long one-line language without displacing format +07:50 +1467: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: uses directional start and end placement in RTL +07:50 +1468: loading /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart +07:51 +1468: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: detects and preserves UTF-8 BOM, CRLF, and final newline +07:51 +1469: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: preserves a missing final newline when saving edited text +07:51 +1470: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: requires an explicit normalization for mixed line endings +07:51 +1471: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: rejects invalid UTF-8 instead of replacing bytes +07:51 +1472: loading /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart +07:53 +1472: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: autocomplete prioritizes Writerside Markdown authoring suggestions +07:53 +1473: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion derives XML caret context and consumes the project index +07:53 +1474: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion suggests attributes legal for the element at the caret +07:53 +1475: loading /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart +07:55 +1475: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: reads the provider key through the native credential channel +07:55 +1476: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: trims a key before securely storing it +07:55 +1477: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: deletes only the selected provider key +07:55 +1478: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: surfaces the native credential-service failure +07:55 +1479: loading /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart +07:58 +1479: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pristine empty draft discards without protective storage +08:01 +1480: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace replacement retires settled bindings and retains failed baselines +08:01 +1481: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects nonempty content when history is unavailable +08:01 +1482: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects whitespace content when history is unavailable +08:01 +1483: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects edited-empty content when history is unavailable +08:01 +1484: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects recovered content when history is unavailable +08:01 +1485: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects file content when history is unavailable +08:01 +1486: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: background protective retry cannot execute a previously rejected discard +08:01 +1487: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=false) +08:01 +1488: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=true) +08:01 +1489: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=false) +08:01 +1490: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=true) +08:01 +1491: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save cannot adopt a deleted path lineage +08:01 +1492: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: vacant first save retires a stale active history owner +08:01 +1493: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save promotes an established untitled lineage over deleted history +08:01 +1494: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison uses unsaved editor source and whole restore is one undo step +08:01 +1495: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels queued restore protection +08:01 +1496: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All cancels queued restore protection +08:01 +1497: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: region restore is exact, undoable, and rejects stale ranges +08:02 +1498: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed protective capture leaves current document unchanged +08:02 +1499: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restoration rejects a revision from another history document +08:02 +1500: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled history compares and restores through stable identity +08:02 +1501: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing during a delayed reload cancels the stale replacement +08:02 +1502: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reload reparse cannot publish after another buffer becomes active +08:02 +1503: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delete skips binary and excluded history descendants +08:02 +1504: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deleted document restores through normal create flow without overwriting +08:02 +1505: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: missing history restores over an existing file without touching disk and undoes to its real source +08:02 +1506: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing open destination protects unsaved source as the restore undo baseline +08:02 +1507: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing destination restore stops when protection fails or the target changes +08:02 +1508: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: autosaved existing-destination recovery never publishes an empty file +08:02 +1509: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delayed explicit save records exactly the source that was written +08:02 +1510: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history failure cannot turn a successful save into a failure +08:02 +1511: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move keeps edits made during history remap on the destination +08:02 +1512: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reparse cannot publish after a newer edit +08:02 +1513: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move cannot remap a replacement created while loading target +08:02 +1514: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move completion cannot publish into a replacement workspace +08:02 +1515: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: monitor event emitted after invalidation cannot enter reopened workspace +08:02 +1516: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: file monitor lifecycle recovers after a failed stop +08:02 +1517: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing while monitor start is pending still enables workspace events +08:02 +1518: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: folder refresh while monitor start is pending still enables events +08:02 +1519: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed workspace ignores a delayed monitor start completion +08:02 +1520: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed file monitor cannot resume an overtaken start +08:02 +1521: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deferred monitor move cannot enter a replacement workspace +08:02 +1522: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move retains reconciliation when another process checkpoints the old identity +08:02 +1523: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move with no bound identity cannot remap replacement history +08:02 +1524: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion with no bound identity cannot delete replacement history +08:02 +1525: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection retries into the deleted lineage +08:02 +1526: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection survives restart as detached work +08:02 +1527: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move remaps nested open history +08:02 +1528: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move publishes every buffer after one decode failure +08:02 +1529: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closing a tab during an external directory move settles its journal +08:02 +1530: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory deletion marks nested open history deleted +08:02 +1531: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed recursive-delete protection survives restart on its lineage +08:02 +1532: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reconciles closed file history +08:02 +1533: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion reconciles closed file history +08:02 +1534: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce before history reconciliation +08:02 +1535: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce across an unrelated queued event +08:02 +1536: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closed source move cannot steal an open destination lineage +08:02 +1537: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external file move includes identity established by source settlement +08:02 +1538: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move includes identity established by source settlement +08:02 +1539: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: cancelled named Save As detaches source history and reopens separately +08:03 +1540: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recording disabled after first-save publication preserves untitled lineage +08:03 +1541: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, completed pending capture +08:03 +1542: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, failed pending capture +08:03 +1543: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, completed pending capture +08:03 +1544: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, failed pending capture +08:03 +1545: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, completed pending capture +08:04 +1546: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, failed pending capture +08:04 +1547: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As keeps edits made during destination capture out of source history +08:04 +1548: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot claim a dirty open buffer at a missing destination +08:04 +1549: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=false) +08:04 +1550: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=true) +08:05 +1551: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rename remaps a failed unbound baseline to the committed destination +08:05 +1552: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed prepared rename never reaches the filesystem without an execution journal +08:05 +1553: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels a prepared rename before filesystem publication +08:05 +1554: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document retains an executing rename journal across a crash +08:05 +1555: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All retains an executing rename journal across a crash +08:05 +1556: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: targetless executing rename owner survives an ambiguous restart +08:05 +1557: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: move remaps a deferred first-save destination before baseline recovery +08:05 +1558: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive folder move remaps retained baselines for every open descendant +08:05 +1559: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=false) +08:06 +1560: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=true) +08:06 +1561: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed move retries a failed history path reconciliation +08:06 +1562: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: shutdown retries first-save promotion without requiring another edit +08:06 +1563: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: second Save As preserves a failed first-save association as the source +08:06 +1564: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As partitions a failed source checkpoint +08:06 +1565: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As source checkpoint survives process restart +08:06 +1566: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As journals its source before the filesystem commit returns +08:06 +1567: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot publish a second owner when its destination opens in flight +08:06 +1568: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As rechecks destination ownership after opening its workspace +08:06 +1569: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As waits for an unbound live destination history owner +08:06 +1570: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed Save As cannot publish after losing its prepared journal owner +08:06 +1571: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As published after disposal leaves a committed recoverable journal +08:07 +1572: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As commit write failure after disposal uses the session fallback +08:07 +1573: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As publishes destination after a post-publish callback failure +08:08 +1574: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed rename reconciliation survives shutdown and restart +08:08 +1575: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: live owner keeps committed remap journal until its recovery can follow +08:08 +1576: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared rename journal repairs a crash after filesystem commit +08:08 +1577: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed deletion detaches recovery newer than stored history +08:08 +1578: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive deletion evidence cannot consume a sibling recovery +08:09 +1579: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All durably removes a previously persisted path journal +08:09 +1580: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup applies committed destination cleanup before Save As recovery +08:09 +1581: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup keeps untitled first-save source when another tab owns destination +08:09 +1582: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed Save As recovery cannot claim another process tab with the same buffer id +08:09 +1583: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session restore selects recovery by process owner before shared buffer id +08:09 +1584: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed startup reconstruction releases adopted recovery ownership +08:09 +1585: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history retry during slow failed startup cannot erase adopted recovery +08:10 +1586: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session identity restore waits for the authoritative history snapshot +08:10 +1587: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: renamed adopted recovery still honors its original path-operation owner +08:10 +1588: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: replayed durable Clear All preserves newer history +08:10 +1589: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup aborts until replayed clear refresh is authoritative +08:10 +1590: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared deletion journal repairs a crash after filesystem commit +08:10 +1591: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed deletion reconciliation survives shutdown and restart +08:10 +1592: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reopened tab adopts its unresolved first-save history association +08:10 +1593: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: unresolved shutdown promotion survives in session and retries on startup +08:10 +1594: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace rename settles a failed first-save promotion +08:10 +1595: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace directory move settles a nested failed first-save promotion +08:10 +1596: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison renders styled intraline spans without framework errors +08:11 +1597: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison restore actions wait for the current replacement result +08:11 +1598: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace refresh invalidates a completed comparison by source content +08:11 +1599: loading /home/albert/busystack/busymark/test/src/visualization_card_test.dart +08:13 +1599: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: full-screen diagram coordinates its modal and preserves pan/zoom +08:14 +1600: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: retains the last valid diagram and navigates new diagnostics +08:14 +1601: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: fits a small Mermaid diagram to the preview width +08:14 +1602: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: keeps a wide Mermaid diagram readable until fit is requested +08:14 +1603: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: shows searchable OpenAPI operations and opens the native reference +08:14 +1604: loading /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart +08:15 +1604: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: computes the diagnostic offset within fenced source +08:15 +1605: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: WYSIWYG diagnostic selects its actual source line +08:16 +1606: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +08:16 +1606: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page +08:19 +1607: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename +08:22 +1608: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones +08:25 +1609: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes +08:26 +1610: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter +08:26 +1611: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes +08:27 +1612: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state +08:27 +1613: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit +08:28 +1614: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file +08:28 +1615: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation +08:29 +1616: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata +08:29 +1617: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge +08:30 +1618: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate +08:30 +1619: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits +08:31 +1620: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite +08:31 +1621: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite +08:31 +1622: loading /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart +08:32 +1622: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table pipes cannot bind across subsequent cells +08:32 +1623: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: a\|b | a|b +08:32 +1624: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b\|c | a|b|c | +08:32 +1625: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\\\|b | a\\|b | +08:32 +1626: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | a|b\ +08:32 +1627: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | +08:32 +1628: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | `a\|b` | a|b | +08:32 +1629: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped pipes in the table header retain diagnostic positions +08:32 +1630: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | a\|b | a|b | +08:32 +1631: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | `` a\|b | a| | +08:32 +1632: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in block context +08:32 +1633: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in inline context +08:32 +1634: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline caption attributes are checked before tree construction +08:32 +1635: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline colgroup attributes are checked before tree construction +08:32 +1636: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline col attributes are checked before tree construction +08:32 +1637: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline thead attributes are checked before tree construction +08:32 +1638: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tbody attributes are checked before tree construction +08:32 +1639: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tfoot attributes are checked before tree construction +08:32 +1640: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline th attributes are checked before tree construction +08:32 +1641: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline td attributes are checked before tree construction +08:32 +1642: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline URL attributes use HTML entity decoding +08:32 +1643: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text `
Cell
` +08:32 +1644: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text \\\\\
Cell\
+08:32 +1645: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: ```html +08:32 +1646: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe:
Cell
+08:32 +1647: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text
Cell
+08:32 +1648: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html +08:32 +1649: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: +08:32 +1650: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
+08:32 +1651: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
+08:32 +1652: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^unused]: +08:32 +1653: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^used]: +08:32 +1654: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - ```html +08:32 +1655: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` then +08:32 +1656: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` `` +08:32 +1657: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > ```html +08:32 +1658: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - Example +08:32 +1659: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > - `` then +08:32 +1660: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: --- +08:32 +1661: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html +08:32 +1662: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | Code | HTML | +08:32 +1663: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | One | +08:32 +1664: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `a ` +08:32 +1665: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: unsafe Markdown URLs are located at the link, after literal examples +08:32 +1666: loading /home/albert/busystack/busymark/test/src/window_control_service_test.dart +08:33 +1666: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: button and native close requests share one pending confirmation +08:33 +1667: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: initializes prevent-close interception +08:33 +1668: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: toggles full screen and tracks native window-state changes +08:33 +1669: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: no dirty documents closes without dialog +08:33 +1670: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation enabled show dialog +08:33 +1671: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation disabled close directly +08:33 +1672: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: discard closes after disabling prevent-close +08:33 +1673: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save closes only when saving succeeds +08:33 +1674: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save failure keeps the app open +08:33 +1675: loading /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart +08:36 +1675: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: terminal code block gets a non-serializing trailing paragraph +08:36 +1676: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter inserts a newline within one code block +08:36 +1677: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: a code block created by editing also retains a trailing paragraph +08:36 +1678: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: third terminal Enter exits code and removes the two empty lines +08:37 +1679: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: exiting before existing content inserts a transient paragraph +08:37 +1680: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter in the trailing paragraph records an intentional blank +08:37 +1681: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: code Enter stays in the multiline code field +08:39 +1682: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Ctrl+Enter exits into the trailing paragraph +08:39 +1683: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Arrow Down exits a terminal code block +08:39 +1684: loading /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart +08:40 +1684: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: shows only a compact line-ending label +08:40 +1685: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: makes BOM visible and keeps final-newline detail compact +08:40 +1686: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: uses a compact technical label for mixed line endings +08:40 +1687: loading /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart +08:43 +1687: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: ordinary WYSIWYG selection never suppresses spelling underlines +08:43 +1688: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: source spelling correction is one exact transaction +08:45 +1689: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: formatted rich correction preserves structure and publishes once +08:45 +1690: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich image spelling preserves source and one undo step +08:46 +1691: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested code and math spelling preserves source and undo +08:47 +1692: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested address and math spelling preserves source and undo +08:47 +1693: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table image spelling preserves authored cell syntax +08:48 +1694: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed rich image preparation refuses a newer revision +08:48 +1695: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed math image preparation refuses a newer revision +08:48 +1696: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich correction preserves entities and translates later anchors +08:48 +1697: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich hard-break correction keeps later source anchor +08:48 +1698: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table correction preserves encoded cell source +08:49 +1699: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table-cell correction preserves link and publishes sessions once +08:49 +1700: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich underline painter keeps confirmed helo visible at caret +08:49 +1701: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: table cell underline uses the live cell composing range +08:49 +1702: loading /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart +08:50 +1702: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: inlines safe generated CSS into a vector-only SVG +08:50 +1703: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: keeps sanitized foreignObject only in the browser raster input +08:50 +1704: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes SVG and CSS animations +08:50 +1705: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects remote, executable, and escaped CSS URLs +08:50 +1706: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: allows embedded D2-style fonts but rejects remote image attributes +08:50 +1707: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: requires rasterization for CSS the vector inliner cannot preserve +08:50 +1708: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: preserves safe browser-only inline CSS and rasterizes it +08:50 +1709: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes unsafe URLs from inline CSS +08:50 +1710: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: does not claim a vector result when CSS cascade resolution is needed +08:50 +1711: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects declarations, excessive complexity, and invalid dimensions +08:50 +1712: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: applies the size limit to UTF-8 bytes +08:50 +1713: loading /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart +08:52 +1713: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: remote requests reject existing local references before reading dependencies +08:54 +1714: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: resolves local files, hashes them, and terminates circular schemas +08:54 +1715: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: keeps internal-only references independent of a saved path +08:54 +1716: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: rejects remote, absolute, malformed, and unsupported references +08:54 +1717: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: reports an unsaved document that contains a local reference +08:54 +1718: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: converts traversal and symlink escapes into typed diagnostics +08:54 +1719: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: enforces dependency count and byte limits +08:54 +1720: loading /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart +08:55 +1720: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: platform host sends reduced source and geometry over one channel +08:55 +1721: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: Linux player keeps interactive media in a restricted WebKit host +08:58 +1722: loading /home/albert/busystack/busymark/test/src/export_options_test.dart +09:00 +1722: /home/albert/busystack/busymark/test/src/export_options_test.dart: defaults retain PDF geometry and independent HTML reading appearance +09:00 +1723: /home/albert/busystack/busymark/test/src/export_options_test.dart: every option persists and copies without losing unrelated fields +09:00 +1724: /home/albert/busystack/busymark/test/src/export_options_test.dart: absent and malformed persisted values fall back per field +09:00 +1725: /home/albert/busystack/busymark/test/src/export_options_test.dart: geometry resolves dimensions, orientation and four independent margins +09:00 +1726: /home/albert/busystack/busymark/test/src/export_options_test.dart: payload contains resolved geometry and every renderer option as data +09:00 +1727: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +09:02 +1727: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab +09:05 +1728: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes +09:05 +1729: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save +09:06 +1730: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) +09:06 +1731: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) +09:06 +1732: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) +09:06 +1733: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) +09:06 +1734: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart +09:07 +1735: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation +09:07 +1736: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox +09:07 +1737: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit +09:07 +1738: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session +09:08 +1739: loading /home/albert/busystack/busymark/test/src/source_folding_test.dart +09:09 +1739: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line starts map to the following source line +09:09 +1740: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects sections lists quotes and code blocks +09:09 +1741: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding keeps shorter fence runs inside dynamic fences +09:09 +1742: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown structures inside fences do not create fold regions +09:09 +1743: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores tags inside multiline comments and CDATA +09:09 +1744: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores greater-than signs inside quoted attributes +09:09 +1745: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding scans opening tags across source lines +09:09 +1746: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding skips processing instructions and declarations +09:09 +1747: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding does not join separate indented code blocks +09:09 +1748: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsed gutter entries preserve source line numbers +09:09 +1749: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsing one repeated markdown subsection keeps peer sections visible +09:09 +1750: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding detects simple multiline tag blocks +09:09 +1751: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects nested headings task lists and blockquotes +09:09 +1752: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding handles nested same-name tags with a stack +09:09 +1753: /home/albert/busystack/busymark/test/src/source_folding_test.dart: malformed xml does not create unsafe fold ranges +09:09 +1754: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line info supports CRLF endings +09:09 +1755: loading /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart +09:10 +1755: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: shipped spelling catalog is metadata-only and revision pinned +09:10 +1756: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: ordinary Linux release does not prepare all-language pairs +09:11 +1757: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: committed spelling checksum inventory matches exact shipped bytes +09:11 +1758: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: native spelling notices are explicit installed artifacts +09:11 +1759: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: strict Snap smoke performs and verifies a local revision transition +09:11 +1760: loading /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart +09:12 +1760: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates and registers an empty instance with build settings +09:13 +1761: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates a non-publishing TOC library instance +09:13 +1762: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: imports selected Markdown and its referenced local media +09:13 +1763: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: renames an instance and refactors documented project references +09:14 +1764: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: first topic added to an empty instance becomes its home page +09:14 +1765: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: invalid project XML blocks an instance ID refactor without changing files +09:14 +1766: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: concurrent config change prevents every instance publication +09:14 +1767: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import copies selected topics, media, and inserts root entries in order +09:14 +1768: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import inserts several siblings after the exact reference in list order +09:15 +1769: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import initializes only the first imported topic as the start page +09:15 +1770: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects batch, existing-ID, target, and invalid-name conflicts +09:15 +1771: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import accepts a Unicode topic filename +09:15 +1772: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects a stale reference identity without publishing files +09:15 +1773: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import discovered-but-unparsed topic basename blocks import +09:15 +1774: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import fails closed when semantic topic discovery is incomplete +09:15 +1775: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import revalidates IDs before publishing and leaves no partial import +09:15 +1776: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import allows an unrelated topic created before publication +09:15 +1777: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects existing and selected-batch topic IDs +09:15 +1778: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects an invalid topic filename +09:15 +1779: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import fails closed on incomplete discovery +09:16 +1780: loading /home/albert/busystack/busymark/test/src/validation_consistency_test.dart +09:16 +1780: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: module load, topic validation, and config validation agree and clear fixes +09:17 +1781: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: editing a target refreshes diagnostics in the referencing topic +09:17 +1782: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variables, comments, interpolation controls and optional includes agree +09:17 +1783: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: interpolated includes agree across load, topic and config validation +09:18 +1784: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variable scope identity includes its declaring topic +09:20 +1785: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: cross-module includes refresh when their target changes +09:20 +1786: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: malformed glossary and keymap XML report the supporting file and clear after repair +09:20 +1787: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: Markdown validation preserves other files and scan warnings while clearing active errors +09:20 +1788: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: linked anchors use dirty buffers and canonical self-links, caching targets +09:20 +1789: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: large buffered targets parse asynchronously and missing saved targets use their buffers +09:21 +1790: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: front matter requires complete delimiter lines with LF and CRLF +09:21 +1791: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: HTML diagnostics exclude prose and literal code without relaxing rendering policy +09:21 +1792: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: location maps are reused within a parse and released between parses +09:21 +1793: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart +09:22 +1793: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes +09:22 +1794: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs +09:22 +1795: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin +09:22 +1796: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success +09:22 +1797: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser +09:22 +1798: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll +09:22 +1799: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll +09:22 +1800: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password +09:22 +1801: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling +09:22 +1802: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints +09:22 +1803: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors +09:22 +1804: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account +09:22 +1805: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics +09:22 +1806: loading /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart +09:23 +1806: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside Markdown collapsible chapter owns its section +09:23 +1807: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown keeps Writerside collapse syntax literal +09:23 +1808: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown does not assign semantic Writerside collapse +09:23 +1809: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside fenced code consumes its collapsible attribute line +09:23 +1810: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: edited collapsible blocks serialize valid Writerside attributes +09:23 +1811: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary fenced code does not consume a collapse attribute line +09:23 +1812: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: semantic collapsible elements become structured preview content +09:23 +1813: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside XML topic preview keeps collapsible content nested +09:24 +1814: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: shared collapse control honors default state and toggles +09:24 +1815: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: WYSIWYG collapses only Writerside chapter content +09:25 +1816: loading /home/albert/busystack/busymark/test/src/export_review_regression_test.dart +09:26 +1816: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside PDF retains percent-encoded non-ASCII footnote labels +09:28 +1817: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: included footnotes use separate document-occurrence namespaces +09:28 +1818: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=false) +09:28 +1819: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=true) +09:28 +1820: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: repeated includes receive distinct nested occurrence IDs +09:28 +1821: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: mapper cannot substitute a diagram for a colliding paragraph +09:28 +1822: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside rejects outside file URIs and symlinks while staging shared-module images +09:29 +1823: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=false) +09:29 +1824: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=true) +09:29 +1825: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=true) +09:29 +1826: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=true) +09:29 +1827: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=false) +09:29 +1828: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=false) +09:29 +1829: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: collapsible headings keep numbering and actual outline order +09:29 +1830: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false #%FF) +09:29 +1831: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false %FF.md) +09:29 +1832: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false file%FF.txt) +09:29 +1833: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true #%FF) +09:29 +1834: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true %FF.md) +09:29 +1835: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true file%FF.txt) +09:29 +1836: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: combined Writerside PDF keeps diagrams and scoped notes without reading an outside image +09:29 +1837: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: ordinary Markdown footnotes compile with retained definitions and repeated references +09:29 +1838: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart +09:30 +1838: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only committed newline and continued typing replace a table-ended selection +09:32 +1839: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table committed newline and continued typing replace a table-ended selection +09:33 +1840: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table committed newline and continued typing replace a table-ended selection +09:35 +1841: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables committed newline and continued typing replace a table-ended selection +09:36 +1842: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=false +09:36 +1843: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Up control=false +09:37 +1844: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=false +09:37 +1845: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Down control=false +09:37 +1846: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=true +09:38 +1847: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=true +09:38 +1848: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing commit uses real input +09:38 +1849: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing cancel uses real input +09:39 +1850: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=false +09:39 +1851: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Up control=false +09:39 +1852: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=false +09:39 +1853: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Down control=false +09:40 +1854: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=true +09:40 +1855: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=true +09:40 +1856: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing commit uses real input +09:40 +1857: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing cancel uses real input +09:41 +1858: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=false +09:41 +1859: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Up control=false +09:41 +1860: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=false +09:42 +1861: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Down control=false +09:42 +1862: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=true +09:42 +1863: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=true +09:42 +1864: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=false +09:43 +1865: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Up control=false +09:43 +1866: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=false +09:43 +1867: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Down control=false +09:43 +1868: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=true +09:43 +1869: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=true +09:44 +1870: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing commit uses real input +09:44 +1871: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing cancel uses real input +09:44 +1872: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=false +09:45 +1873: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Up control=false +09:45 +1874: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=false +09:45 +1875: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Down control=false +09:45 +1876: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=true +09:45 +1877: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=true +09:46 +1878: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing commit uses real input +09:46 +1879: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing cancel uses real input +09:46 +1880: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=false +09:47 +1881: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Up control=false +09:47 +1882: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=false +09:47 +1883: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Down control=false +09:47 +1884: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=true +09:47 +1885: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=true +09:48 +1886: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=false +09:48 +1887: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Up control=false +09:48 +1888: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=false +09:48 +1889: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Down control=false +09:49 +1890: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=true +09:49 +1891: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=true +09:49 +1892: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing commit uses real input +09:50 +1893: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing cancel uses real input +09:50 +1894: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=false +09:50 +1895: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Up control=false +09:51 +1896: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=false +09:51 +1897: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Down control=false +09:51 +1898: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=true +09:51 +1899: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=true +09:52 +1900: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing commit uses real input +09:52 +1901: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing cancel uses real input +09:52 +1902: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=false +09:52 +1903: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Up control=false +09:53 +1904: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=false +09:53 +1905: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Down control=false +09:53 +1906: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=true +09:53 +1907: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=true +09:53 +1908: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=false +09:53 +1909: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Up control=false +09:53 +1910: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=false +09:54 +1911: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Down control=false +09:54 +1912: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=true +09:54 +1913: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=true +09:54 +1914: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: false) +09:55 +1915: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: true) +09:55 +1916: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#80d00(keyId: "0x100000301", keyLabel: "Arrow Down", debugName: "Arrow Down"), previous: LogicalKeyboardKey#88515(keyId: "0x100000304", keyLabel: "Arrow Up", debugName: "Arrow Up"), word: false) +09:55 +1917: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after selection +09:56 +1918: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after document +09:56 +1919: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after same document source +09:56 +1920: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after disposal +09:56 +1921: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=false +09:57 +1922: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=true +09:57 +1923: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: clipboard history replaces selected table through document range +09:57 +1924: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: partial paragraph to table to paragraph replacement preserves outside text and undo +09:57 +1925: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell-local input cut paste and Tab remain local +09:58 +1926: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by up (variant: TargetPlatform.linux) +09:58 +1927: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by cancel (variant: TargetPlatform.linux) +09:59 +1928: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by document (variant: TargetPlatform.linux) +10:01 +1929: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by disposal (variant: TargetPlatform.linux) +10:02 +1930: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=false +10:02 +1931: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=true +10:03 +1932: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=false +10:03 +1933: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=true +10:04 +1934: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=false +10:04 +1935: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=true +10:04 +1936: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=false +10:04 +1937: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=true +10:05 +1938: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=false +10:05 +1939: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=true +10:06 +1940: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=false +10:06 +1941: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=true +10:06 +1942: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=false +10:07 +1943: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=true +10:10 +1944: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=false +10:10 +1945: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=true +10:11 +1946: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=false +10:11 +1947: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=true +10:11 +1948: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=false +10:12 +1949: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=true +10:13 +1950: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=false +10:13 +1951: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=true +10:14 +1952: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=false +10:14 +1953: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=true +10:14 +1954: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=false +10:14 +1955: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=true +10:15 +1956: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=false +10:15 +1957: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=true +10:15 +1958: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=false +10:16 +1959: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=true +10:16 +1960: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=false +10:16 +1961: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=true +10:17 +1962: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=false +10:17 +1963: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=true +10:17 +1964: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=false +10:21 +1965: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=true +10:21 +1966: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=false +10:22 +1967: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=true +10:26 +1968: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=false +10:26 +1969: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=true +10:27 +1970: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local paragraph accepts immediate Unicode input +10:27 +1971: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local cell accepts immediate Unicode input +10:27 +1972: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by caret before handoff +10:27 +1973: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by range before handoff +10:27 +1974: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by document before handoff +10:28 +1975: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by tab replacement before handoff +10:28 +1976: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by disposal before handoff +10:28 +1977: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input retains a scrolled viewport +10:29 +1978: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input uses clamped session offsets +10:29 +1979: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Backspace until committed input +10:29 +1980: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Delete until committed input +10:29 +1981: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Enter until committed input +10:29 +1982: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Left until committed input +10:30 +1983: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Right until committed input +10:30 +1984: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Up until committed input +10:30 +1985: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Down until committed input +10:31 +1986: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Home until committed input +10:31 +1987: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns End until committed input +10:31 +1988: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=false +10:31 +1989: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=true +10:32 +1990: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag up retains committed text input +10:32 +1991: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag cancel retains committed text input +10:33 +1992: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during clipboard preparation +10:33 +1993: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during open menu +10:34 +1994: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=false +10:35 +1995: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=true +10:36 +1996: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false switching a reused editor captures outgoing document selection +10:36 +1997: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true switching a reused editor captures outgoing document selection +10:36 +1998: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false switching a reused editor captures outgoing document selection +10:37 +1999: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true switching a reused editor captures outgoing document selection +10:37 +2000: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false switching a reused editor captures outgoing document selection +10:38 +2001: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true switching a reused editor captures outgoing document selection +10:38 +2002: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false switching a reused editor captures outgoing document selection +10:40 +2003: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true switching a reused editor captures outgoing document selection +10:40 +2004: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=false switching a reused editor captures outgoing document selection +10:41 +2005: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=true switching a reused editor captures outgoing document selection +10:41 +2006: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Cut edits only the selected table +10:42 +2007: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste edits only the selected table +10:42 +2008: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste as Plain Text edits only the selected table +10:43 +2009: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=false +10:43 +2010: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=true +10:43 +2011: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint up restores real typing +10:44 +2012: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint cancel restores real typing +10:44 +2013: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real Select All survives workspace session JSON and editor recreation +10:44 +2014: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real reverse drag survives workspace session JSON and editor recreation +10:45 +2015: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real Select All survives workspace session JSON and editor recreation +10:45 +2016: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real reverse drag survives workspace session JSON and editor recreation +10:45 +2017: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real Select All survives workspace session JSON and editor recreation +10:46 +2018: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real reverse drag survives workspace session JSON and editor recreation +10:46 +2019: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real Select All survives workspace session JSON and editor recreation +10:46 +2020: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real reverse drag survives workspace session JSON and editor recreation +10:47 +2021: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph local reverse selection restores locally +10:47 +2022: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell local reverse selection restores locally +10:47 +2023: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target removed uses current-document fallback +10:47 +2024: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed kind uses current-document fallback +10:48 +2025: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed text uses current-document fallback +10:48 +2026: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned block drag +10:48 +2027: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned cell drag +10:48 +2028: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=false +10:48 +2029: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=true +10:49 +2030: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=false +10:49 +2031: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=true +10:49 +2032: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Delete replaces the selected structured block and undoes +10:50 +2033: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Backspace replaces the selected structured block and undoes +10:50 +2034: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Cut replaces the selected structured block and undoes +10:50 +2035: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Enter replaces the selected structured block and undoes +10:50 +2036: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: plain paste replaces the selected structured block and undoes +10:51 +2037: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: structured paste replaces the selected structured block and undoes +10:51 +2038: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Delete replaces the selected structured block and undoes +10:51 +2039: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Backspace replaces the selected structured block and undoes +10:51 +2040: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Cut replaces the selected structured block and undoes +10:52 +2041: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Enter replaces the selected structured block and undoes +10:52 +2042: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: plain paste replaces the selected structured block and undoes +10:52 +2043: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: structured paste replaces the selected structured block and undoes +10:52 +2044: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Delete replaces the selected structured block and undoes +10:53 +2045: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Backspace replaces the selected structured block and undoes +10:53 +2046: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Cut replaces the selected structured block and undoes +10:53 +2047: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Enter replaces the selected structured block and undoes +10:53 +2048: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: plain paste replaces the selected structured block and undoes +10:54 +2049: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: structured paste replaces the selected structured block and undoes +10:54 +2050: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +10:54 +2051: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +10:54 +2052: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +10:54 +2053: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +10:54 +2054: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") +10:55 +2055: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") +10:55 +2056: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-ended selection accepts actual committed Unicode input once +10:55 +2057: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: captured table selection restores highlighting copy and mutation +10:56 +2058: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-block drag without changing its endpoint +10:56 +2059: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-cell drag without changing its endpoint +10:56 +2060: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated pointer cannot complete an owned document drag +10:56 +2061: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Delete cannot edit a local fallback +10:57 +2062: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Enter cannot edit a local fallback +10:57 +2063: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document plain paste cannot edit a local fallback +10:57 +2064: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document structured paste cannot edit a local fallback +10:57 +2065: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document typing cannot edit a local fallback +10:57 +2066: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: failed document deletion preserves redo history +10:58 +2067: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after failure +10:58 +2068: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after selection +10:58 +2069: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after document +10:59 +2070: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after disposal +10:59 +2071: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after failure +11:10 +2072: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after selection +11:11 +2073: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after document +11:11 +2074: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after disposal +11:11 +2075: loading /home/albert/busystack/busymark/test/src/busymark_toast_test.dart +11:14 +2075: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast works when hosted above the Navigator +11:15 +2076: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast appears at the bottom center and dismisses itself +11:18 +2077: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast action runs and dismisses the toast +11:18 +2078: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toasts queue instead of covering each other +11:19 +2079: loading /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart +11:20 +2079: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames normalizes runs, edges, case, and Unicode once +11:20 +2080: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames disabled preprocessing preserves established safe characters +11:20 +2081: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames resolves exact custom values per instance for Markdown and XML +11:20 +2082: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/default collision +11:21 +2083: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/custom collision +11:21 +2084: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses custom/custom collision +11:21 +2085: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics allows the same output name in disjoint instances +11:21 +2086: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics deduplicates repeated publication of one physical topic +11:21 +2087: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses a collision with an origin module topic +11:21 +2088: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics resolves conditioned names independently in each instance +11:21 +2089: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses invalid custom filenames before export +11:22 +2090: loading /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart +11:24 +2090: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover preference defaults off, serializes and copies independently +11:27 +2091: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover title and authors use the established metadata precedence +11:27 +2092: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: snapshot metadata, display text, explicit clears and plain JSON remain independent +11:27 +2093: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: instance title uses its display name and only known project metadata +11:27 +2094: loading /home/albert/busystack/busymark/test/src/path_utils_test.dart +11:28 +2094: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries cancels a wide directory listing at the limit +11:28 +2095: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries counts directories against the scan budget +11:28 +2096: /home/albert/busystack/busymark/test/src/path_utils_test.dart: directory listing failure marks traversal incomplete +11:28 +2097: /home/albert/busystack/busymark/test/src/path_utils_test.dart: display scan includes hidden and unsupported entries but not VCS data +11:31 +2098: loading /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart +11:35 +2098: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses multiple commits +11:35 +2099: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses merge commit with multiple parents +11:35 +2100: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: preserves author punctuation and separator-like subject text +11:35 +2101: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses empty history +11:35 +2102: loading /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart +11:36 +2102: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses clean repository status +11:36 +2103: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses modified tracked file +11:36 +2104: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged modification +11:36 +2105: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses unstaged modification +11:36 +2106: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged and unstaged same file +11:36 +2107: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: keeps staged addition and working-tree deletion separate +11:36 +2108: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: tracks rename state independently in each status column +11:36 +2109: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses untracked file +11:36 +2110: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses deleted file +11:36 +2111: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses renamed file +11:36 +2112: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses copied file +11:36 +2113: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses conflicted files +11:36 +2114: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses branch header and ahead behind counts +11:36 +2115: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses detached head header +11:36 +2116: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: preserves spaces, unicode, quotes, and newlines in filenames +11:39 +2117: loading /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart +11:40 +2117: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: process-backed Git gateway requires workspace trust +11:40 +2118: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: configures a repository author identity without terminal setup +11:42 +2119: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: runs core workflow in a temporary Git repository +11:43 +2120: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status lists every non-ignored hidden untracked file +11:43 +2121: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: resets the current branch with each explicit Git reset mode +11:44 +2122: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: refuses to reset while HEAD is detached +11:45 +2123: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: keeps staged and unstaged comparisons separate +11:46 +2124: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged rename diff and unstage preserve both paths +11:46 +2125: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: rollback restores both sides of a staged rename to HEAD +11:47 +2126: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged addition deleted from the working tree keeps separate diffs +11:47 +2127: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: preserves complete deleted content and restores a deleted version +11:48 +2128: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: failed historical blob read cannot delete the working file +11:49 +2129: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: constructs complete text and binary comparisons for untracked files +11:49 +2130: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: direct working-tree operations reject intermediate symlink escapes +11:49 +2131: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: fetch updates remote-tracking status without changing files +11:50 +2132: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: follows renames, compares complete versions, and restores one file +11:51 +2133: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: compares a merge commit with its first parent +11:51 +2134: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: switch treats an option-like branch name as an operand +11:52 +2135: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff and commit details preserve C-quoted UTF-8 paths +11:53 +2136: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: pushSetUpstream does not broaden an option-like branch to --all +11:53 +2137: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: detects conflicted files in a temporary Git repository +11:53 +2138: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status does not run a repository-configured filesystem monitor +11:54 +2139: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff APIs do not run a repository-configured textconv +11:54 +2140: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: commit details do not run a repository-configured textconv +11:55 +2141: loading /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart +11:56 +2141: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner closes child stdin so commands waiting for EOF can finish +11:56 +2142: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates commands that exceed the combined output limit +11:56 +2143: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: normal gateway commands always receive a finite timeout +11:57 +2144: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: gateway classifies a missing commit author identity +11:57 +2145: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap packages the Linux process-group launcher +11:57 +2146: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap Git uses bundled helpers, templates, and SSH +11:57 +2147: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap launcher never falls back to the confined host setsid +11:57 +2148: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves process launcher failures +11:57 +2149: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves a failed version probe result +11:57 +2150: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator reports not found for a genuinely missing command +11:57 +2151: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates descendant processes when a command times out +11:59 +2152: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: timeout covers descendants that outlive the direct child and hold stdio +12:01 +2153: loading /home/albert/busystack/busymark/test/src/git/git_widget_test.dart +12:06 +2153: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: hunk range text hides raw unified diff markers +12:06 +2154: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes are grouped correctly +12:07 +2155: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file checkboxes select files for commit +12:08 +2156: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: a path with staged and unstaged changes appears in both groups +12:08 +2157: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AD path shows staged addition and unstaged deletion without open action +12:08 +2158: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: staged rename preserves both paths and workspace scope +12:09 +2159: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: rename paths follow the selected Git status column +12:09 +2160: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit panel reports staged count and unsaved editor state +12:09 +2161: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message uses the grouped multiline form surface +12:09 +2162: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft is a secondary button immediately before Commit +12:09 +2163: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft replaces text, trims it, and moves the cursor +12:10 +2164: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history requires an active Markdown file +12:10 +2165: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file action menu does not contain commit selection actions +12:10 +2166: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untracked file menu uses an explicit delete action +12:10 +2167: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: unsupported untracked files remain stageable but cannot open +12:10 +2168: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit section colors files by Git status +12:10 +2169: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes view commit panel commits staged files with message +12:11 +2170: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit remains disabled without staged files +12:11 +2171: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: multiline commit message is retained and committed verbatim +12:11 +2172: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: failed commit preserves the commit message +12:11 +2173: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: committing disables actions and retains text until success +12:11 +2174: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message clears when repository or workspace changes +12:11 +2175: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: conflict group is visible +12:11 +2176: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: Git unavailable empty state is shown +12:11 +2177: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untrusted workspace shows repository trust prompt +12:11 +2178: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view shows no repository sync strip when clean +12:11 +2179: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not show branch dropdown +12:12 +2180: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not describe branch sync state +12:12 +2181: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history keeps comparison controls out of the sidebar +12:12 +2182: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history file rows show selected file diff +12:12 +2183: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history reset requires an explicit reset mode +12:13 +2184: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: dirty editor banner appears in diff viewer +12:13 +2185: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff hides duplicate file header but keeps open action +12:13 +2186: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action requires an explicit working-tree target +12:13 +2187: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action uses the explicit current path +12:13 +2188: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff keeps rename paths visible +12:13 +2189: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer renders patch rows with shared source view +12:13 +2190: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff can hide hunk headers and file action +12:13 +2191: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source uses full file snapshot when available +12:13 +2192: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: deleted diff shows the complete removed file snapshot +12:13 +2193: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer scrolls to the first source change on open +12:14 +2194: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source rows use configured editor font size +12:14 +2195: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff context lines show old and new number columns +12:14 +2196: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff line numbers use source gutter geometry +12:14 +2197: loading /home/albert/busystack/busymark/test/src/git/git_controller_test.dart +12:15 +2197: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: diff open target follows the current working-tree context +12:15 +2198: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: refreshes after workspace attach +12:15 +2199: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: does not expose repository Git for a single Markdown file +12:15 +2200: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust-required gateway does not inspect workspace before trust +12:15 +2201: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clearing trust immediately revokes repository access +12:15 +2202: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: status failure after trust retains the detected repository +12:15 +2203: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust is scoped to the attached workspace +12:15 +2204: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: Git executes with the canonical path that was trusted +12:15 +2205: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stage and unstage update state +12:15 +2206: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: loads only the selected change comparison and reconciles after stage +12:15 +2207: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: routes untracked selections to the untracked comparison +12:15 +2208: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: staged rename comparison preserves the original path +12:15 +2209: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: rollback forwards every validated rename path +12:15 +2210: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reactivates an open change comparison tab +12:15 +2211: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks empty message +12:15 +2212: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks when no files are staged +12:15 +2213: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: configures author identity through the active repository +12:15 +2214: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: AI staged-diff fingerprint rejects obsolete commit context +12:15 +2215: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: branch switch requires clean BusyMark editor state +12:15 +2216: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the active editor has unsaved content +12:15 +2217: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the current file is staged +12:15 +2218: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore protects a repository-relative file against the repository root +12:15 +2219: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset uses the selected commit and mode +12:15 +2220: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset is blocked by unsaved editor content +12:15 +2221: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: fetch refreshes repository status +12:15 +2222: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reports Git unavailable state +12:15 +2223: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stores operation failure state +12:15 +2224: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: exposes conflict state +12:15 +2225: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clears previous workspace Git state immediately on attach +12:15 +2226: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale refresh results after workspace switch +12:15 +2227: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: cancels set-upstream push when the workspace changes during remote lookup +12:15 +2228: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale history after a workspace switch +12:15 +2229: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: history tab reloads project history after workspace switch +12:15 +2230: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: current file history scopes selected commit details to the file +12:15 +2231: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file history switches between commit and working-tree comparisons +12:15 +2232: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history loads selected commit details without a file scope +12:15 +2233: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project commit details display the first changed file by default +12:15 +2234: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: selected commit file opens a project commit diff tab +12:15 +2235: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: closing a commit diff file tab activates the neighboring tab +12:15 +2236: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: deactivating a diff file keeps open diff tabs +12:15 +2237: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file and project history paginate and retain separate selections +12:16 +2238: loading /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart +12:18 +2238: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: Enter submits Git identity and preserves global scope +12:19 +2239: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: failed commit saves identity and retries the same commit +12:20 +2240: loading /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart +12:21 +2240: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses added file +12:21 +2241: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses deleted file +12:21 +2242: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses modified file with line numbers +12:21 +2243: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses renamed file +12:21 +2244: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted UTF-8 paths emitted by Git +12:21 +2245: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted rename metadata emitted by Git +12:21 +2246: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses binary file marker +12:21 +2247: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses multiple hunks +12:21 +2248: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: keeps no newline marker as header line +12:21 +2249: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: tolerates unknown diff header lines +12:21 +2250: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart +12:25 +2250: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export failure dialog exposes actionable detail +12:26 +2251: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export eligibility is limited to active regular Markdown +12:26 +2252: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: workspace PDF export accepts a Writerside module instance +12:26 +2253: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: atomic PDF publication never replaces without confirmation +12:28 +2254: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: service rejects compiler output that is not a PDF +12:28 +2255: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler locator prefers the explicit development override +12:28 +2256: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler cancellation force-stops an unresponsive process +12:29 +2257: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: asset staging accepts passive SVG and rejects external content +12:29 +2258: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: Linux packaging pins and installs the bundled Typst compiler +12:29 +2259: loading /home/albert/busystack/busymark/test/src/source_search_test.dart +12:29 +2259: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex uses Unicode code points and diagnoses zero-length matches +12:29 +2260: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace-style bounded matching stops after the sentinel match +12:29 +2261: /home/albert/busystack/busymark/test/src/source_search_test.dart: search worker terminates a running backtracking expression +12:29 +2262: /home/albert/busystack/busymark/test/src/source_search_test.dart: plain search finds case-insensitive matches by default +12:29 +2263: /home/albert/busystack/busymark/test/src/source_search_test.dart: case-sensitive and whole-word options constrain matches +12:29 +2264: /home/albert/busystack/busymark/test/src/source_search_test.dart: whole-word boundaries recognize Unicode letters and marks +12:29 +2265: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex search and invalid regex are safe +12:29 +2266: /home/albert/busystack/busymark/test/src/source_search_test.dart: navigation tracks current index and wraps +12:29 +2267: /home/albert/busystack/busymark/test/src/source_search_test.dart: matches inside folded content are marked hidden and revealable +12:29 +2268: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace search groups authoring content by file +12:29 +2269: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker cancels stale requests +12:29 +2270: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker bounds transferred high-match results +12:29 +2271: loading /home/albert/busystack/busymark/test/src/source_commands_test.dart +12:32 +2271: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab inserts spaces +12:32 +2272: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab indents selected lines without replacing their text +12:32 +2273: /home/albert/busystack/busymark/test/src/source_commands_test.dart: indent and outdent selected lines +12:32 +2274: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter continues unordered ordered task and blockquote lines +12:32 +2275: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter exits empty list item +12:32 +2276: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts for nested source lines +12:32 +2277: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts beneath each source parent +12:32 +2278: /home/albert/busystack/busymark/test/src/source_commands_test.dart: inline commands toggle bold italic code and links +12:32 +2279: /home/albert/busystack/busymark/test/src/source_commands_test.dart: code fence and image insertion keep source-specific placeholders +12:32 +2280: /home/albert/busystack/busymark/test/src/source_commands_test.dart: block insertion accepts localized default content +12:32 +2281: loading /home/albert/busystack/busymark/test/src/source_highlighter_test.dart +12:35 +2281: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: source highlighting bounds high-match span composition +12:35 +2282: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter colors editor syntax +12:35 +2283: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter formats fenced code +12:35 +2284: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter tracks dynamic fence delimiters +12:35 +2285: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter does not open on indented code +12:35 +2286: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: xml source highlighter colors tags attributes and strings +12:35 +2287: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: plain source highlighter keeps normal editor text color +12:35 +2288: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: controller can keep editable text transparent for custom render +12:35 +2289: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: transparent editing layout matches rendered Markdown layout +12:35 +2290: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions project body lines out of editable text +12:35 +2291: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: rendered folded regions hide collapsed header text +12:35 +2292: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions collapse measured editor height +12:35 +2293: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown editor keeps syntax markers visible while styling content +12:35 +2294: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown tracks dynamic fence delimiters +12:35 +2295: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges nested emphasis inside links +12:36 +2296: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps inline code inside list items +12:36 +2297: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges bold and italic nesting +12:36 +2298: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges links inside blockquotes +12:36 +2299: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps emphasis inside table cells +12:36 +2300: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter recognizes math without damaging code +12:36 +2301: loading /home/albert/busystack/busymark/test/src/html_export_options_test.dart +12:37 +2301: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: TOC and numbering use the semantic hierarchy and preserve anchor IDs +12:39 +2302: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.light emits complete color variables, responsive width and metadata +12:39 +2303: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.dark emits complete color variables, responsive width and metadata +12:39 +2304: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.automatic emits complete color variables, responsive width and metadata +12:39 +2305: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: custom CSS follows generated rules and is captured before processing +12:39 +2306: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF CSS hashes the text seen by the HTML parser +12:39 +2307: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF custom and built-in CSS apply in Chromium +12:44 +2308: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF CSS hashes the text seen by the HTML parser +12:44 +2309: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF custom and built-in CSS apply in Chromium +12:45 +2310: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR CSS hashes the text seen by the HTML parser +12:45 +2311: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR custom and built-in CSS apply in Chromium +12:46 +2312: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: single-file attachments retain download names and reject source data URLs +12:46 +2313: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CSS rejects unsafe URLs, imports, HTML, unreadable and oversized files +12:46 +2314: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: repeated embedded assets are bounded before publication and keep old output +12:46 +2315: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.singleFile packages validated assets without source paths or fetching +12:46 +2316: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.assetsDirectory packages validated assets without source paths or fetching +12:46 +2317: loading /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart +12:49 +2317: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: navigation glyphs resolve for both reading directions +12:49 +2318: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: editing glyphs resolve for both reading directions +12:49 +2319: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git branch glyph does not mirror with reading direction +12:49 +2320: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git action glyphs have native menu equivalents +12:49 +2321: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Arabic and Persian font fallbacks are available in the snap +12:49 +2322: loading /home/albert/busystack/busymark/test/src/source_comparison_test.dart +12:49 +2322: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: keeps separated edits as exact separate changes +12:49 +2323: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: handles repeated lines without losing exact offsets +12:49 +2324: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: refines Unicode intraline ranges on UTF-16 boundaries +12:49 +2325: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: distinguishes whitespace, final newline, empty, and XML changes +12:49 +2326: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: labels an unanchored expensive comparison as simplified +12:49 +2327: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: version identity detects stale comparison inputs +12:49 +2328: loading /home/albert/busystack/busymark/test/src/writerside_project_test.dart +12:52 +2328: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers modules, indexes symbols, and resolves origin references +12:52 +2329: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under build +12:52 +2330: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under a hidden directory +12:52 +2331: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: module discovery hard-excludes VCS metadata directories +12:52 +2332: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic ownership is project-wide and prefers the nested module +12:52 +2333: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace promotes a parent directory to a multi-module project +12:53 +2334: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic symbols cannot be renamed independently of their files +12:53 +2335: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace module and instance selection changes active context +12:53 +2336: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse overlays indexed symbols and preserves unrelated diagnostics +12:53 +2337: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of variables updates completion and resolution without reopening +12:53 +2338: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of an instance tree updates active project context +12:53 +2339: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: BusyMark matches the official builder semantic snapshot for the fixture +12:53 +2340: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: conformance fixture preserves source and resolves semantic content +12:53 +2341: loading /home/albert/busystack/busymark/test/src/math_renderer_test.dart +12:54 +2341: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: renders multiple expressions in one batch and isolates failure +12:55 +2342: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: coalesces a large page, caches successes, and rebases local IDs +12:56 +2343: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: deduplicates identical formulas pending in the same batch +12:56 +2344: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: discards an obsolete block revision +12:56 +2345: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: cancels WebKit work after a sole request is superseded +12:56 +2346: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: maps timeout and unavailable hosts to local math failures +12:56 +2347: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rejects oversized input before invoking WebKit +12:56 +2348: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: extracts baseline style and preserves vector-safe MathJax SVG +12:56 +2349: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: resolves currentColor without flattening explicit SVG colors +12:56 +2350: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rebases wide MathJax coordinates before secure normalization +12:56 +2351: loading /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart +12:56 +2351: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: stages vector/raster assets, maps OpenAPI, and preserves failed source +12:58 +2352: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: enforces the export block count without failing the document +12:58 +2353: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: loads a Writerside referenced diagram before PDF rendering +12:59 +2354: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: static OpenAPI export contains selectable reference sections +12:59 +2355: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: Typst exports generated vector/raster assets and falls back on failure +12:59 +2356: loading /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart +12:59 +2356: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: parses every GTK 3 decoration token in physical order +12:59 +2357: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: ignores unknown controls and actions safely +12:59 +2358: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: loads preferences and delegates the narrowly scoped lower action +12:59 +2359: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: window preference values have stable equality +12:59 +2360: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: null decoration layout uses the documented GTK 3 default +12:59 +2361: loading /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart +13:02 +2361: /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart: release smoke report path requires an explicit nonempty argument +13:02 +2362: loading /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart +13:06 +2362: /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart: spelling release smoke requires an explicit guarded report path +13:06 +2363: loading /home/albert/busystack/busymark/test/src/system_accent_test.dart +13:11 +2363: /home/albert/busystack/busymark/test/src/system_accent_test.dart: uses the native Yaru orange accent as the offline fallback +13:11 +2364: /home/albert/busystack/busymark/test/src/system_accent_test.dart: keeps exact RGB portal accent color values authoritative +13:11 +2365: /home/albert/busystack/busymark/test/src/system_accent_test.dart: maps Ubuntu accent names when RGB portal value is unavailable +13:11 +2366: /home/albert/busystack/busymark/test/src/system_accent_test.dart: falls back to RGB when the Ubuntu accent is unavailable +13:11 +2367: /home/albert/busystack/busymark/test/src/system_accent_test.dart: Yaru accent wins over a different generic portal RGB +13:11 +2368: /home/albert/busystack/busymark/test/src/system_accent_test.dart: a Yaru accent signal remains authoritative over generic RGB +13:11 +2369: /home/albert/busystack/busymark/test/src/system_accent_test.dart: an unavailable named accent releases the current generic RGB +13:11 +2370: /home/albert/busystack/busymark/test/src/system_accent_test.dart: portal subscribes before both reads and retains changes during reads +13:11 +2371: /home/albert/busystack/busymark/test/src/system_accent_test.dart: missing portal keys, malformed signals, cancellation and resubscription +13:11 +2372: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic portal initialization cannot overwrite a newer generic change +13:11 +2373: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=true; unavailability selects current portal +13:11 +2374: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=false; unavailability selects current portal +13:11 +2375: /home/albert/busystack/busymark/test/src/system_accent_test.dart: source errors remain independent and healthy native updates continue +13:11 +2376: /home/albert/busystack/busymark/test/src/system_accent_test.dart: startup changes supersede native snapshots, including unavailable changes +13:11 +2377: /home/albert/busystack/busymark/test/src/system_accent_test.dart: disposal completes pending startup and cancels each owned source once +13:11 +2378: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid GTK releases startup while portal reads stay pending +13:12 +2379: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic signal cannot resolve startup before pending named read +13:12 +2380: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid named portal releases startup without pending RGB +13:12 +2381: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending GTK blocks ready portal until GTK arrives before deadline +13:12 +2382: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on unavailable +13:12 +2383: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on failure +13:12 +2384: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on deadline +13:12 +2385: /home/albert/busystack/busymark/test/src/system_accent_test.dart: all silent sources time out to orange and late sources recover +13:12 +2386: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending initialization disposal cancels timers and portal session once +13:12 +2387: loading /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart +13:12 +2387: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=false section order and native links +13:13 +2388: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=true section order and native links +13:14 +2389: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=false section order and native links +13:14 +2390: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=true section order and native links +13:14 +2391: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=false section order and native links +13:14 +2392: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=true section order and native links +13:14 +2393: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=false section order and native links +13:14 +2394: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=true section order and native links +13:15 +2395: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: multipage native outline ends before any body paragraphs; links and page references stay correct +13:15 +2396: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=bottomCenter +13:15 +2397: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=off +13:15 +2398: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=bottomCenter +13:16 +2399: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=off +13:16 +2400: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif portrait margins +13:16 +2401: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif landscape margins +13:16 +2402: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif portrait margins +13:17 +2403: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif landscape margins +13:17 +2404: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: request defaults come from source metadata and native outline title stays localized +13:17 +2405: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: an oversized cover fails clearly and leaves the existing PDF untouched +13:17 +2406: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in sansSerif +13:17 +2407: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in serif +13:20 +2408: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+a0 fails without replacing the PDF +13:20 +2409: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+2060 fails without replacing the PDF +13:21 +2410: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within A4 cover bounds or fails without replacing the PDF +13:21 +2411: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within A4 cover bounds or fails without replacing the PDF +13:21 +2412: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within A4 cover bounds or fails without replacing the PDF +13:22 +2413: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within A4 cover bounds or fails without replacing the PDF +13:22 +2414: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within A4 cover bounds or fails without replacing the PDF +13:23 +2415: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within A4 cover bounds or fails without replacing the PDF +13:24 +2416: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within narrow custom cover bounds or fails without replacing the PDF +13:24 +2417: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within narrow custom cover bounds or fails without replacing the PDF +13:24 +2418: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within narrow custom cover bounds or fails without replacing the PDF +13:24 +2419: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within narrow custom cover bounds or fails without replacing the PDF +13:24 +2420: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within narrow custom cover bounds or fails without replacing the PDF +13:24 +2421: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within narrow custom cover bounds or fails without replacing the PDF +13:24 +2422: loading /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart +13:25 +2422: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: workspace spelling UI has no obsolete floating or Material chooser +13:25 +2423: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Writerside nested TOC and comment retain rich spelling through correction +13:31 +2424: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich image review preserves authored source through undo and redo +13:33 +2425: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested code image beside math through undo and redo +13:36 +2426: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested address image beside math through undo and redo +13:38 +2427: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Ctrl+N typing paints live spelling targets and corrects with undo +13:40 +2428: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: confirmed spelling underline survives continued typing +13:41 +2429: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo café + +wrld + +13:43 +2430: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo +world + +wrld + +13:46 +2431: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: | helo café | +| --- | +| hello | + +wrld + +13:48 +2432: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in editor +13:49 +2433: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in split +13:49 +2434: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: language-required state uses compact document status instead of a banner +13:51 +2435: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: general Markdown fixture finishes automatic rich spelling +13:57 +2436: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in editor +13:58 +2437: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in source +13:59 +2438: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new rich document checks spelling after choosing its language +14:00 +2439: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new source document checks spelling after choosing its language +14:02 +2440: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in editor mode +14:02 +2441: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in source mode +14:03 +2442: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in preview mode +14:04 +2443: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in split mode +14:04 +2444: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: spelling-off status remains an actionable language control +14:06 +2445: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: status initializes the chooser when automatic spelling is off +14:07 +2446: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: banner installs the required dictionary and then conceals +14:09 +2447: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed banner installation keeps the unresolved state +14:10 +2448: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: routine checking does not create persistent editor chrome +14:10 +2449: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic spelling failure is visible in the compact banner +14:11 +2450: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic incomplete projection is visible in the compact banner +14:11 +2451: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: native spelling submenu applies immediate language choices +14:12 +2452: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: cancelling document dictionary install preserves override +14:13 +2453: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: document language changes only after dictionary installation +14:16 +2454: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed document dictionary install preserves override +14:17 +2455: loading /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart +14:18 +2455: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: native fragment preserves formatting and structured blocks through JSON +14:18 +2456: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: single rich paragraphs preserve list descendants through source +14:18 +2457: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: fragment rejects invalid versions, ranges, kinds, and excessive nesting +14:18 +2458: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: relative links are rebased for another document +14:18 +2459: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: inline images retain their source media path between projects +14:18 +2460: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Writerside structure survives the fragment and insertion +14:18 +2461: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: styled table-cell insertion preserves emphasis and table structure +14:18 +2462: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard service serializes writes and reads the latest result +14:18 +2463: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard HTML carries headings, emphasis, tasks, tables, and code +14:18 +2464: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: external HTML blockquotes survive Editor serialization +14:18 +2465: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard fragment serializes its selected structure as Markdown +14:18 +2466: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: HTML normalization preserves supported CSS and checkbox state safely +14:18 +2467: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=false) +14:20 +2468: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=true) +14:20 +2469: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix < survives Enter, source reload and label edit +14:20 +2470: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix *< survives Enter, source reload and label edit +14:21 +2471: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix * survives Enter, source reload and label edit +14:21 +2472: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: © +14:22 +2473: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: & +14:22 +2474: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: &* +14:22 +2475: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=false) +14:22 +2476: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=true) +14:23 +2477: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard pasted URL retains live link coverage through split, Backspace and suffix formatting +14:23 +2478: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard fresh Editor restores system clipboard formatting and undo +14:24 +2479: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor pastes a web layout table as a complete document +14:24 +2480: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete heading list and code blocks retain structure at every paragraph position +14:25 +2481: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete blocks in list items preserve descendants and undo tree +14:26 +2482: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard single rich paragraph field replacement preserves every list subtree +14:27 +2483: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste keeps the committed caret and typing position +14:27 +2484: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard rich paste in math fields uses source coordinates +14:27 +2485: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste returns the committed block caret +14:28 +2486: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste preserves list descendants through Undo and Redo +14:28 +2487: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste persists intentional whitespace through history +14:28 +2488: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document paste preserves whitespace and heading replacement scope +14:29 +2489: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste restores table-cell focus and committed caret +14:29 +2490: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history multi-paragraph paste focuses the committed last paragraph +14:29 +2491: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copy all does not duplicate nested list children +14:29 +2492: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document copy preserves a structured blockquote +14:29 +2493: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard right-click opens the menu for a whole-document selection +14:30 +2494: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image-only clipboard context menu offers only normal Paste +14:30 +2495: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Copy Plain Text strips formatting in another Editor +14:30 +2496: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard document selection menu can copy plain text +14:30 +2497: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard partial inline copy keeps formatting inside another paragraph +14:30 +2498: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut transfers formatting before deleting the selection +14:31 +2499: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard malformed native fragment falls back to HTML +14:31 +2500: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML-only clipboard imports into a fresh Editor +14:31 +2501: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML clipboard plain paste inserts only its text +14:31 +2502: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard retained external HTML preserves structure on history paste +14:31 +2503: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard current HTML-only and malformed HTML use ordinary importer fallbacks +14:32 +2504: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard external image history retains the bytes ingested before its dialog +14:36 +2505: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history panel path paste has one editor-owned retention write +14:40 +2506: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copied local video can be pasted from history in Editor +14:40 +2507: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image paste cancellation is terminal and cleans new assets +14:47 +2508: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image picker alternatives stay provisional until acceptance +14:58 +2509: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image finalization failure preserves the inserted reference and file +14:59 +2510: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard native and history image filesystem failures are handled outcomes +15:00 +2511: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain history paste replaces a document selection ending at a non-field block +15:00 +2512: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image history follows table and multi-block destinations +15:03 +2513: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Ctrl+Shift+V pastes only interoperable plain text +15:03 +2514: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste never probes or ingests an existing image path +15:03 +2515: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard failed clipboard write leaves cut selection intact +15:03 +2516: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste does not edit a destination changed during the read +15:03 +2517: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor paste preserves composition before and during reads +15:03 +2518: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard table-cell paste shortcut is consumed during composition +15:03 +2519: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard composition starting during image ingestion invalidates and cleans paste +15:05 +2520: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut does not delete a selection changed during the write +15:05 +2521: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste is cancelled when the destination Editor is replaced +15:05 +2522: loading /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart +15:06 +2522: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed light surface palette +15:06 +2523: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed dark surface palette +15:07 +2524: loading /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart +15:09 +2524: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title edit preserves the resolved topic owner across modules +15:11 +2525: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ") +15:11 +2526: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ") +15:12 +2527: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ') +15:12 +2528: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ') +15:12 +2529: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ") +15:12 +2530: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ") +15:12 +2531: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ') +15:12 +2532: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ') +15:13 +2533: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: normalized title identity still rejects changed content and raw matching stays exact +15:13 +2534: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects missing attribute ranges before publication +15:13 +2535: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects corrupt attribute ranges before publication +15:13 +2536: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title publication rejects duplicate attributes in resulting XML +15:13 +2537: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (") +15:13 +2538: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (') +15:13 +2539: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: instance title save, reopen, unchanged OK, and edit keep one escaping layer +15:14 +2540: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: single-quoted Markdown override reopens decoded and edits without touching example +15:15 +2541: loading /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart +15:15 +2541: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: production provider consumes an older GTK accent without portals +15:16 +2542: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: non-Linux never creates platform listeners +15:16 +2543: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: missing native snapshot uses portal, then native events regain priority +15:16 +2544: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: GTK with silent portals +15:16 +2545: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: named with silent RGB +15:16 +2546: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK before deadline +15:17 +2547: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK at deadline +15:17 +2548: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes valid +15:17 +2549: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes unavailable +15:17 +2550: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named at deadline +15:17 +2551: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: all silent at deadline +15:17 +2552: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: application scope teardown cancels unresolved startup deadlines +15:17 +2553: loading /home/albert/busystack/busymark/test/src/markdown_parser_test.dart +15:22 +2553: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parsed formatting boundaries +15:22 +2554: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping locates partially consumed delimiter runs +15:22 +2555: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping retains escaped collapsed references +15:22 +2556: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping keeps original autolink semantics +15:22 +2557: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping preserves supported autolink variants +15:22 +2558: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parser case folding for references +15:22 +2559: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: ordinary reference parsing retains pinned sharp-S folding behavior +15:22 +2560: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: invalid email-like text cannot orphan a later mapped link +15:22 +2561: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects logical content to container source +15:22 +2562: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: positioned block mapping accepts a trailing empty logical line +15:22 +2563: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping ignores title and code-span source breaks +15:22 +2564: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping keeps each hard-break occurrence range +15:22 +2565: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping matches standalone HTML break layout +15:22 +2566: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects HTML break layout through containers +15:22 +2567: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: HTML break layout mapping preserves soft breaks and literal code +15:22 +2568: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts title, outline, links, images, and code fences +15:22 +2569: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts front matter title +15:22 +2570: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside Markdown title comes from H1, not front matter +15:22 +2571: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside front matter title does not satisfy missing H1 +15:22 +2572: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: parseAsync handles documents above the background threshold +15:22 +2573: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates Unicode heading anchors for supported languages +15:22 +2574: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deduplicates generated heading IDs in source order +15:22 +2575: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates heading IDs from semantic inline text +15:22 +2576: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: canonicalizes valid ATX and setext heading variants +15:22 +2577: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: retains Writerside title when complex list source needs fallback +15:22 +2578: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unresolved links, missing images, and missing alt text +15:22 +2579: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not validate schemed URIs as local references +15:22 +2580: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: resolves home-relative local image references +15:22 +2581: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: derives diagnostic links and images from Markdown AST semantics +15:22 +2582: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: normal Markdown image diagnostics stay within the workspace root +15:22 +2583: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local reference diagnostics allow absolute images but reject other escapes +15:22 +2584: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: cross-linked Markdown anchor validation does not recurse forever +15:22 +2585: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation stays inside the workspace root +15:22 +2586: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read unsupported anchor targets +15:22 +2587: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read oversized Markdown targets +15:22 +2588: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unsafe raw HTML +15:22 +2589: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe raw HTML does not produce unsafe diagnostics +15:22 +2590: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Markdown headings inside paired raw HTML are not outline headings +15:22 +2591: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML tags produce unsafe diagnostics +15:22 +2592: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML attributes produce unsafe diagnostics +15:22 +2593: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML URLs produce unsafe diagnostics +15:22 +2594: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deeply nested raw HTML produces unsafe diagnostic +15:22 +2595: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe HTML tags do not become Writerside XML blocks +15:23 +2596: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts Writerside Markdown XML blocks and variables +15:23 +2597: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: emits deterministic Markdown accessibility diagnostics +15:23 +2598: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not report populated table headers as empty +15:23 +2599: loading /home/albert/busystack/busymark/test/src/feedback_submission_test.dart +15:26 +2599: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator requires category and enforces subject and message bounds +15:26 +2600: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts inclusive subject and message boundaries +15:26 +2601: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects oversized fields and invalid optional email +15:26 +2602: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator counts Unicode code points at subject and message boundaries +15:26 +2603: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts practical valid email syntax +15:26 +2604: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects malformed email syntax and length boundaries +15:26 +2605: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes required metadata and omits unapproved details +15:26 +2606: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes only explicitly approved technical details +15:26 +2607: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission uses every declared category wire value +15:26 +2608: loading /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart +15:26 +2608: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter owns application chrome; native bridge carries no split geometry +15:26 +2609: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Workspace, Welcome and Settings use the shared full-height frame +15:26 +2610: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native clipboard, menus, Writerside media and rendering hosts remain registered +15:26 +2611: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Linux desktop identity uses the standard Snap launcher mapping +15:26 +2612: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: strict Snap keeps the GTK SVG loader ABI-aligned with GNOME +15:26 +2613: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder stages bundled Git tools +15:26 +2614: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local repack replaces clean-snap font links with new bundle fonts +15:28 +2615: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: confined dependency checks reject missing and wrong resolutions +15:29 +2616: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap reuses verified platform libraries and retains private tools +15:29 +2617: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder uses the project Flutter toolchain +15:29 +2618: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snapcraft pins the same Flutter release as the project +15:29 +2619: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder keeps compiler output off the system tmpfs +15:29 +2620: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter content menus use native GTK popup menu semantics +15:29 +2621: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native content menus clean up direct GTK popup sessions +15:29 +2622: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap packaging hooks consolidate resources and keep required fixes +15:29 +2623: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native GTK theme follows brightness without replacing a valid user theme +15:29 +2624: loading /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart +15:30 +2624: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: valid native fragment wins over HTML and text +15:30 +2625: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: malformed native fragment falls through to valid HTML +15:30 +2626: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: unusable HTML falls through to source and plain text +15:30 +2627: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: HTML-only blockquotes are usable through descendant content +15:30 +2628: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: mixed external HTML preserves every block for Editor and Markdown Source +15:30 +2629: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode uses only interoperable text +15:30 +2630: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode rejects source-only and image-only payloads +15:30 +2631: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: whitespace text is valid and empty text is unavailable +15:30 +2632: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: explicit image is first in normal mode +15:30 +2633: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: Editor and Source use their required textual fallback order +15:30 +2634: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: structured source serialization accepts the destination mode +15:30 +2635: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: native inline serialization preserves whitespace without a newline +15:30 +2636: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: table-cell fragment serialization escapes pipes and flattens lines +15:30 +2637: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: local image path detection is safe and rejects altered URI meaning +15:30 +2638: loading /home/albert/busystack/busymark/test/src/uri_utils_test.dart +15:32 +2638: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: external launch policy is an explicit safe-list +15:32 +2639: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: scheme detection remains broader than launch policy +15:32 +2640: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: remote resources only allow http and https +15:32 +2641: loading /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart +15:35 +2641: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger aggregates locally by month and provider +15:37 +2642: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger starts a clean aggregate in a new month +15:37 +2643: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: malformed ledger data is treated as empty, not surfaced +15:37 +2644: loading /home/albert/busystack/busymark/test/src/busymark_design_test.dart +15:39 +2644: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch suppresses state halos and preserves focus borders +15:40 +2645: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in dark +15:40 +2646: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in dark +15:40 +2647: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in light +15:40 +2648: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in light +15:40 +2649: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: disabled switch preserves inherited disabled styling +15:40 +2650: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch row owns its control and activates exactly once +15:40 +2651: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch preserves Yaru drag activation +15:40 +2652: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: radio suppresses state halos and preserves focus borders +15:41 +2653: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in dark +15:41 +2654: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in dark +15:41 +2655: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in light +15:41 +2656: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in light +15:41 +2657: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: informational dialog keeps the close control at the right edge +15:41 +2658: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: Split Preview stays fluid without copying Source-only chrome +15:41 +2659: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: document frame centers wide content and honors physical safe edges +15:41 +2660: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: toolbar clearance is applied only to the toolbar edge +15:41 +2661: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar header and list compose the shared vertical gap +15:41 +2662: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header controls delegate geometry and elevation to Yaru +15:41 +2663: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dark header menu delegates its tooltip to IconButton +15:41 +2664: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: settings dropdowns use the framework tooltip +15:41 +2665: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: desktop tooltips use one explicit natural-width geometry +15:41 +2666: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: popup menu rows show shortcuts without redundant hover tooltips +15:41 +2667: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup sends shortcuts and separators to GTK and maps selection +15:42 +2668: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: colored popup icons stay on the native menu path +15:42 +2669: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup preserves asynchronous menu loading +15:42 +2670: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic theme retains Yaru geometry, typography, and interaction +15:42 +2671: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: accent controls use the native Yaru foreground and fill roles +15:42 +2672: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic surfaces use one modern neutral Linux role ladder +15:42 +2673: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: equal-choice segmented selection stays neutral +15:42 +2674: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped cards use native boxed-list depth and roles +15:42 +2675: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped list headings use the native semantic heading style +15:42 +2676: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner uses semantic surfaces in light and dark +15:42 +2677: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner animates its mounted layout height +15:42 +2678: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner reveal honors reduced motion +15:42 +2679: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog grouped cards resolve the contextual native layer +15:42 +2680: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native dark hover role +15:42 +2681: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native light hover role +15:42 +2682: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped row subtitles use semantic native text roles +15:42 +2683: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog roles and popup selectors use real themed buttons +15:42 +2684: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in dark +15:43 +2685: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in light +15:44 +2686: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog actions wrap at narrow localized text widths +15:44 +2687: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: action rows use semantic destructive foreground in light and dark themes +15:44 +2688: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: shared text-entry group delegates fields to the framework +15:44 +2689: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry uses the native row-owned form surface +15:44 +2690: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry forwards readOnly without disabling input +15:44 +2691: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic standard icon button delegates to FilledButton.icon +15:44 +2692: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar surface owns one directional semantic boundary +15:44 +2693: loading /home/albert/busystack/busymark/test/src/source_document_test.dart +15:45 +2693: /home/albert/busystack/busymark/test/src/source_document_test.dart: empty document mapping is stable +15:45 +2694: /home/albert/busystack/busymark/test/src/source_document_test.dart: no-fold mapping preserves offsets and ranges +15:45 +2695: /home/albert/busystack/busymark/test/src/source_document_test.dart: single fold projects visible text and maps offsets +15:45 +2696: /home/albert/busystack/busymark/test/src/source_document_test.dart: fold-boundary selection mapping preserves direction, not coverage +15:45 +2697: /home/albert/busystack/busymark/test/src/source_document_test.dart: multiple adjacent and overlapping ranges normalize safely +15:45 +2698: /home/albert/busystack/busymark/test/src/source_document_test.dart: full and visible ranges report hidden clipping +15:45 +2699: /home/albert/busystack/busymark/test/src/source_document_test.dart: CRLF line endings keep line starts and projection correct +15:45 +2700: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits before and after folds preserve unrelated folds +15:45 +2701: /home/albert/busystack/busymark/test/src/source_document_test.dart: full editing values preserve composing through folded projection +15:45 +2702: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits incrementally retain unaffected line entries +15:45 +2703: /home/albert/busystack/busymark/test/src/source_document_test.dart: incremental line indexes match full indexes across line-break edits +15:45 +2704: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edit intersecting a fold unfolds only affected region +15:45 +2705: /home/albert/busystack/busymark/test/src/source_document_test.dart: collapsed-boundary insertion preserves hidden folded content +15:45 +2706: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible insertions before and after a fold keep hidden text +15:45 +2707: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible deletions near a fold keep hidden text +15:45 +2708: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible replacement spanning a fold replaces the hidden range +15:45 +2709: loading /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart +15:47 +2709: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: uses each heading level effective text size for inline math +15:50 +2710: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: custom typography and four margins control actual math jobs +15:50 +2711: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: prepares inline and display math as deterministic vector assets +15:50 +2712: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: footnote inline and display math retain surrounding semantics +15:50 +2713: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst compiles footnote math through the math renderer +15:51 +2714: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst keeps MathJax SVG inline and exports failed math visibly +15:51 +2715: loading /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart +15:52 +2715: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: tabs synchronize and support arrow, Home and End keys +15:53 +2716: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table sorting is numeric and excludes disabled columns +15:54 +2717: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Markdown table keeps empty columns equal width +15:54 +2718: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Writerside table preserves declared column width +15:54 +2719: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table spans preserve geometry and sticky header position +15:55 +2720: loading /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart +15:55 +2720: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: records balance a two-line source preview with visible metadata +15:56 +2721: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: large records use a short preview and do not create a tooltip +15:57 +2722: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: actions menu is right of search and owns refresh and clear +15:57 +2723: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: keyboard navigation keeps the selected history entry visible +15:58 +2724: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: Delete edits the focused search without removing history +15:58 +2725: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: unsupported payload disables paste for the destination +15:58 +2726: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: double-clicking a shared history row pastes the item +15:59 +2727: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain-text paste remains enabled when rich paste is unavailable +15:59 +2728: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: source-only payload has no plain-text action +15:59 +2729: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: image exposes plain paste only with real text +15:59 +2730: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed insertion reports visible feedback +15:59 +2731: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: cancelled insertion is terminal without an error toast +16:00 +2732: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: current external HTML is transient until panel insertion and remains reusable +16:00 +2733: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed current-item paste is not retained and plain paste stays explicit +16:01 +2734: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: successful external paste retains after the panel is disposed +16:01 +2735: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain source and Editor copies stay text and de-duplicate +16:01 +2736: loading /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart +16:02 +2736: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: loads version and build number from package metadata +16:02 +2737: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: uses zero when package build metadata is absent +16:02 +2738: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: rejects missing package version metadata +16:02 +2739: loading /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart +16:05 +2739: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates XML child topic and registers it under parent TOC node +16:08 +2740: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates Unicode Markdown and XML topic filenames +16:08 +2741: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source without a root ID before publication +16:08 +2742: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source whose root ID differs from filename +16:08 +2743: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: accepts custom XML source whose root ID matches filename +16:08 +2744: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: requires a reference for every non-root placement +16:08 +2745: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a child under an exact topic-less TOC node path +16:08 +2746: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: first real topic under an empty group becomes the home page +16:08 +2747: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: exact TOC path disambiguates sibling insertion +16:09 +2748: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects an exact TOC path whose expected node has moved +16:09 +2749: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: invalid exact TOC path does not fall back to topic reference +16:09 +2750: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects duplicate topic IDs before writing +16:09 +2751: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a missing nested topics directory +16:09 +2752: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects a symlinked topics directory without writing outside +16:09 +2753: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: does not overwrite a concurrently changed tree or leave an orphan topic +16:09 +2754: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rollback preserves a created topic changed by another writer +16:09 +2755: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: atomic tree publication preserves its POSIX mode +16:09 +2756: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID with a different extension +16:09 +2757: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in a different directory +16:09 +2758: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in another configured root +16:09 +2759: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation allows an unrelated concurrent topic ID +16:09 +2760: loading /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart +16:11 +2760: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.rtl +16:15 +2761: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.ltr +16:18 +2762: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation uses native master-detail controls and filters +16:19 +2763: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation opens both template editor entry points +16:23 +2764: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: catalog failure keeps BusyMark status and retry controls +16:24 +2765: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files editor stages new content, cancels and persists on OK +16:27 +2766: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: source surface exposes its label and focus boundary +16:29 +2767: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: New toolbar command stages an editable draft and Cancel drops it +16:30 +2768: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: custom XML template cannot publish a mismatching root ID +16:33 +2769: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: save-as-template appears under Custom; edit, duplicate and delete preserve cancel +16:34 +2770: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: stale settings reject OK and retain draft for recovery +16:36 +2771: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Internal reset is staged, cancellable, and publishable +16:39 +2772: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: true) +16:41 +2773: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: false) +16:43 +2774: loading /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart +16:44 +2774: /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart: tree exact reveal unfolds and line movement is one undoable full-source edit +16:46 +2775: loading /home/albert/busystack/busymark/test/src/math_parser_test.dart +16:49 +2775: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses several dollar formulas as semantic inline math +16:49 +2776: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses the GitHub dollar-backtick form without delimiters +16:49 +2777: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses single-line and multiline display math as blocks +16:49 +2778: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math scanner stays aligned around every neighboring block kind +16:49 +2779: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math and Writerside tex fences follow document compatibility +16:49 +2780: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math is inline and remains source-preserving +16:49 +2781: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math decodes XML entities but preserves source +16:49 +2782: /home/albert/busystack/busymark/test/src/math_parser_test.dart: escaped dollars, code, currency, empty and malformed forms stay text +16:49 +2783: /home/albert/busystack/busymark/test/src/math_parser_test.dart: inline math survives list, blockquote, and table structure +16:49 +2784: /home/albert/busystack/busymark/test/src/math_parser_test.dart: CRLF math input and every original form round-trip untouched +16:49 +2785: /home/albert/busystack/busymark/test/src/math_parser_test.dart: preview builder creates first-class inline and display math nodes +16:49 +2786: loading /home/albert/busystack/busymark/test/src/busymark_document_test.dart +16:52 +2786: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hit testing includes shared document surface borders +16:52 +2787: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: document image width resolution is bounded consistently +16:53 +2788: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: package markdown AST imports into BusyDocument core blocks +16:53 +2789: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: linked remote image paragraphs import as editable image blocks +16:53 +2790: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer emits Markdown source for edited semantic blocks +16:53 +2791: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unchanged raw blocks +16:53 +2792: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves safe raw HTML source byte for byte +16:53 +2793: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unsafe raw HTML source while preview remains raw +16:53 +2794: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer patches dirty blocks without canonicalizing unchanged source +16:53 +2795: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve unrelated block instances +16:53 +2796: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve source-only reference definitions +16:53 +2797: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: source-only definitions survive scanner and AST count mismatches +16:53 +2798: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preserved reference definitions still resolve after an edit +16:53 +2799: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve GFM footnote definitions +16:53 +2800: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: containers with nested definitions are source-protected +16:53 +2801: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: scanner mismatches conservatively protect nested definitions +16:53 +2802: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: opaque source IDs cannot collide with semantic heading IDs +16:53 +2803: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full list serialization preserves reference definitions +16:53 +2804: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full serialization omits generated footnote output +16:53 +2805: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: invalid reference-like prose remains a modeled block +16:53 +2806: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large inline-link documents do not create source-only blocks +16:53 +2807: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large adjacent definition sets stay distinct and preserved +16:54 +2808: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: destructive selections reject read-only source endpoints +16:54 +2809: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: list indentation cannot attach content to a protected item +16:54 +2810: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested list text edit updates Markdown source +16:54 +2811: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered list edits preserve nested children +16:54 +2812: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered task edits preserve marker and nested children +16:54 +2813: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested blockquote edit preserves surrounding source +16:54 +2814: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cross-block deletion prunes an emptied blockquote +16:54 +2815: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested inline edit updates Markdown source +16:54 +2816: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested block removal updates Markdown source +16:54 +2817: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser includes setext headings in heading metadata +16:54 +2818: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: live document outline follows top-level generated heading order +16:54 +2819: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: duplicate anchors retain distinct editor block identities +16:54 +2820: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preview and WYSIWYG use the same semantic document +16:54 +2821: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edit updates Markdown source +16:54 +2822: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG empty documents have one editable paragraph +16:54 +2823: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor accepts typing in an empty document +16:55 +2824: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG heading navigation skips across large documents +16:59 +2825: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders a blockquote around its editable text +16:59 +2826: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG uses one quote frame for multiple quote paragraphs +16:59 +2827: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG quote frame focuses its first editable child +16:59 +2828: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inherits RTL indentation inside a blockquote +16:59 +2829: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG keeps a generated leaf blockquote editable +16:59 +2830: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hides a definition-only source and preserves it +16:59 +2831: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor undo and redo restore document edits +16:59 +2832: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor replaces document when active file changes +17:00 +2833: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor applies heading keyboard shortcuts +17:00 +2834: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Ctrl+Shift+- inserts a thematic break +17:00 +2835: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Tab nests eligible list items and Shift+Tab lifts them +17:00 +2836: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG arrow keys move focus between paragraphs +17:01 +2837: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Arrow crosses paragraph boundaries +17:01 +2838: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Shift+Arrow extends into the next paragraph +17:01 +2839: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated arrow keys keep moving between paragraphs +17:01 +2840: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down selection continues character by character in the next paragraph +17:02 +2841: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated Shift+Arrow extends one selection +17:02 +2842: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG horizontal selection continues vertically into the next paragraph +17:02 +2843: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse Shift+Up selection continues left in the previous paragraph +17:02 +2844: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ignores redundant source blank lines +17:02 +2845: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: typing replaces a WYSIWYG selection across paragraphs +17:03 +2846: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: deleting a selected paragraph boundary merges paragraphs +17:03 +2847: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down follows visual lines before paragraphs +17:03 +2848: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Arrow selects whole grapheme clusters +17:03 +2849: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection can copy multiple paragraphs +17:03 +2850: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG click elsewhere clears previous block selection +17:04 +2851: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift click selects text across paragraphs +17:04 +2852: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag extends selection across paragraphs +17:04 +2853: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag from heading end hides native selection +17:04 +2854: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag updates selection on pointer up +17:04 +2855: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag aligns wrapped trailing word highlight +17:04 +2856: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+X cuts block selection +17:05 +2857: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves inline formatting +17:05 +2858: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves whole block formatting +17:05 +2859: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection preserves partial paragraph boundaries +17:05 +2860: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar bold applies to selected paragraphs +17:05 +2861: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar toggle stays vertically aligned when collapsed +17:05 +2862: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar reserves its document edge +17:06 +2863: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: restoring the first block does not duplicate the Editor top inset +17:07 +2864: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: vertical WYSIWYG toolbar is bounded and extends from its edge +17:07 +2865: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar corners remain physical in LTR and RTL +17:08 +2866: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar context menu changes placement and direction when shown or hidden +17:08 +2867: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar list applies to selected paragraphs +17:08 +2868: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders safe HTML blocks and edits raw source +17:09 +2869: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar inserts an HTML block +17:09 +2870: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after the active file changes +17:09 +2871: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after document generation changes +17:09 +2872: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs stop app-level tab navigation shortcuts +17:10 +2873: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs activate the native headerbar barrier +17:10 +2874: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves existing inline formatting +17:10 +2875: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Backspace at block start merges with previous block +17:10 +2876: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+A twice selects all text for deletion +17:10 +2877: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG select-all deletion preserves source-protected definitions +17:10 +2878: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline ranges do not duplicate formatted text +17:10 +2879: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands serialize bold italic and links +17:10 +2880: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG serializes italic nested at the end of bold text +17:10 +2881: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve inline ranges where possible +17:10 +2882: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve empty-alt inline images +17:10 +2883: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG edits preserve escaped literal punctuation semantics +17:10 +2884: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog submits with Enter +17:11 +2885: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when caret is inside it +17:11 +2886: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when its text is selected +17:11 +2887: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline command toggles selected mark without dropping links +17:11 +2888: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline code command serializes selected text +17:11 +2889: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer chooses inline code delimiters that preserve backticks +17:11 +2890: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link title backslashes use standards-safe character references +17:11 +2891: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: inline serialization distinguishes every hard-break run boundary +17:11 +2892: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link titles round-trip decoded punctuation and line endings +17:11 +2893: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table link titles retain multiline values without physical rows +17:11 +2894: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves fenced code delimiters and trailing whitespace +17:11 +2895: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser preserves meaningful trailing fenced-code whitespace +17:11 +2896: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser closes dynamic code fences only with a matching delimiter +17:11 +2897: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser does not treat indented code as a fenced block +17:11 +2898: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands preserve existing sibling formatting +17:11 +2899: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands apply to multiple selected blocks +17:11 +2900: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands apply to multiple selected blocks +17:11 +2901: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG image command serializes a real image block +17:11 +2902: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders Writerside images by basename +17:11 +2903: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders absolute local image paths +17:11 +2904: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders linked remote image blocks +17:11 +2905: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in commonMark +17:11 +2906: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in writersideMarkdown +17:11 +2907: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in gfm +17:11 +2908: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter uses parser URL boundaries without parsing other syntax +17:11 +2909: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter excludes code and keeps explicit equal-label links explicit +17:11 +2910: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: bare URL destinations follow edits and splits while explicit destinations stay authored +17:11 +2911: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: rejoining only extends existing bare URLs and preserves code and explicit links +17:11 +2912: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: structural URL slices update derived destinations and link editing authors an explicit destination +17:11 +2913: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter splits one block into separate Markdown paragraphs +17:11 +2914: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores an empty paragraph represented only by blanks +17:11 +2915: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores trailing blank lines +17:11 +2916: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG does not create blocks for redundant source whitespace +17:11 +2917: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in unordered list creates next item then exits list +17:11 +2918: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in ordered list creates next numbered item +17:11 +2919: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG thematic break inserts after current block +17:11 +2920: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter key creates a new paragraph block +17:12 +2921: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter carries active inline style to next paragraph +17:12 +2922: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter at paragraph end preserves inner bold span +17:12 +2923: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG newline text edit preserves inner bold span +17:12 +2924: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text input newlines become Markdown paragraphs +17:12 +2925: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves an existing hard break +17:12 +2926: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: hard-break toolbar command retains focus and advances caret +17:13 +2927: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: formatting toolbar command retains editor focus and selection +17:13 +2928: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Shift+Enter retains focus and advances past the hard break +17:13 +2929: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line toolbar command round-trips and remains one focused edit +17:13 +2930: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor lazily builds large documents +17:13 +2931: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG task checkbox toggles directly when clicked +17:13 +2932: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands serialize headings and lists +17:13 +2933: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG extended toolbar commands serialize Markdown +17:13 +2934: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line command keeps repeated terminal markers off the text line +17:13 +2935: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table and code language commands serialize Markdown +17:13 +2936: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cell pipes round-trip without shifting columns +17:13 +2937: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table escaping protects pipes inside formatted cell content +17:13 +2938: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table code preserves a backslash immediately before a pipe +17:13 +2939: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table row and column commands serialize Markdown +17:13 +2940: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table dialog validates and synchronizes its size grid +17:14 +2941: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table alignment survives parsing, edits, and structural changes +17:14 +2942: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table column alignment command supports all Markdown alignments +17:14 +2943: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells apply Markdown column alignment +17:14 +2944: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells are formatted and editable +17:15 +2945: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table overlay menus survive structural rebuilds +17:15 +2946: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Tab travels through WYSIWYG table cells and extends the table +17:15 +2947: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG list indent outdent and task toggle commands serialize +17:15 +2948: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation starts a nested list at one +17:15 +2949: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation preserves a top-level start value +17:15 +2950: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation numbers multiple nested siblings +17:15 +2951: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered outdent continues the parent list numbering +17:15 +2952: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts an unordered item to a valid ordered marker +17:15 +2953: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts selected nested items at each list depth +17:15 +2954: loading /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart +17:16 +2954: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: single rich paragraph repairs independently surviving endpoints +17:17 +2955: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: table cells repair independently formatted selection endpoints +17:17 +2956: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion replaces only a heading own prefix at content start +17:17 +2957: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion removes complete ATX and Setext heading syntax +17:17 +2958: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion retains literal paragraph hashes +17:17 +2959: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: whole heading replacement removes every authored marker +17:17 +2960: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: heading insertion at middle and end preserves only the leading heading +17:17 +2961: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequence removes nested heading marker at content start +17:17 +2962: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: external HTML blockquotes remain structured in Source +17:17 +2963: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: HTML break layout stays behind a caret after the semantic break +17:17 +2964: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: caret immediately before an HTML break keeps the break after paste +17:17 +2965: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection crossing an HTML break preserves both outside slices +17:17 +2966: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete inline HTML survives rich link insertion as one fragment +17:17 +2967: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native rich trailing space survives inherited HTML insertion +17:17 +2968: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native incoming edge whitespace survives inherited HTML styles +17:17 +2969: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection replacement retains native whitespace and link titles +17:17 +2970: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: multiple native inline runs retain text styles links and spaces +17:17 +2971: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: rich insertion maps collapsed HTML whitespace as content +17:17 +2972: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through supported raw HTML styles +17:17 +2973: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through a supported raw HTML link +17:17 +2974: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: supported content corpus always plans a rich insertion +17:17 +2975: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: repeated mapped siblings avoid fallback and preserve final paste +17:18 +2976: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete blocks split and preserve enclosing inline contexts +17:18 +2977: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph-only block sequences match Editor merge semantics +17:18 +2978: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block paste preserves independent formatted selection boundaries +17:19 +2979: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured paste spans partial first and last destination blocks +17:19 +2980: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequences retain destination block and container paths +17:19 +2981: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paste output is valid input for a second paste at returned caret +17:19 +2982: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: CRLF blockquote projection retains its authored prefixes +17:19 +2983: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured complete blocks generate only CRLF boundaries +17:19 +2984: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured inline hard breaks use destination CRLF +17:19 +2985: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: mapped and generated structured breaks retain CRLF and caret width +17:19 +2986: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: protected Source context explicitly permits textual fallback +17:19 +2987: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: syntax-only positions explicitly permit textual fallback +17:19 +2988: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: unmappable destination links stop rather than permit fallback +17:19 +2989: loading /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart +17:19 +2989: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: rejects a superseded render even when its engine finishes last +17:21 +2990: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: retains the last successful render after invalid source +17:21 +2991: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: limits concurrency and gives export work queue priority +17:21 +2992: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: reuses a successful content-addressed cache entry +17:21 +2993: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: validates concurrency and returns a typed unavailable result +17:21 +2994: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: bounds last-successful render retention with LRU eviction +17:22 +2995: loading /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart +17:22 +2995: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: source navigation distinguishes repeated references on one line +17:22 +2996: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: explicit synchronization follows installed breadth-first topic matching +17:22 +2997: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edits preserve other instances, content and occurrence +17:22 +2998: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edit changes H1 and preserves front matter title +17:22 +2999: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title round trip preserves ampersands and entity spellings +17:22 +3000: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: unchanged inherited values do not add overrides +17:22 +3001: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: XML title edits escape attributes and expand self-closing root +17:22 +3002: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: clearing overrides removes only the selected instance and occurrence +17:22 +3003: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: before-drop preserves complete subtrees and returns all moved paths +17:24 +3004: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: grouping uses source order and rejects cross-parent selections +17:24 +3005: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: line moves retain CRLF, caret, reversed selection and boundaries +17:24 +3006: loading /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart +17:26 +3006: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: section includes descendants and stops at the next sibling +17:26 +3007: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: move up and down swap complete sibling subtrees +17:26 +3008: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: promote and demote preserve descendant hierarchy +17:27 +3009: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: demote is unavailable when a descendant is already H6 +17:27 +3010: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: level changes preserve and convert Setext headings +17:27 +3011: loading /home/albert/busystack/busymark/test/src/visualization_models_test.dart +17:28 +3011: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization fence classification recognizes canonical names and aliases without changing spelling +17:28 +3012: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: preserves dependency diagnostic source locations +17:28 +3013: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys canonicalizes options and dependency order +17:28 +3014: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates on engine, source, theme, profile, option, and dependency +17:28 +3015: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates entries produced by the previous render pipeline +17:28 +3016: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache round-trips SVG, raster, and structured OpenAPI successes +17:30 +3017: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache does not persist failures and repairs malformed entries +17:30 +3018: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache derives the XDG cache path without changing the environment +17:30 +3019: loading /home/albert/busystack/busymark/test/src/writerside_video_test.dart +17:31 +3019: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside Markdown models video and preserves its exact source +17:31 +3020: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video remains blocked raw HTML outside Writerside Markdown +17:31 +3021: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: multiline Writerside video attributes remain one semantic block +17:31 +3022: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video markup inside an ordinary code fence is not interpreted +17:31 +3023: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside topic parser exposes video attributes +17:31 +3024: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside .topic preview creates a first-class video block +17:31 +3025: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: safe video resolver accepts documented hosts and local media +17:31 +3026: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside module reports invalid and incomplete video sources +17:31 +3027: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: local poster defaults to matching PNG and can be overridden +17:31 +3028: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: hosted video posters resolve from trusted provider sources +17:31 +3029: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Vimeo poster metadata cannot point images to another host +17:31 +3030: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: PDF export carries a first-class linked video poster +17:31 +3031: loading /home/albert/busystack/busymark/test/src/app_router_test.dart +17:34 +3031: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings return targets are explicit and validated +17:34 +3032: /home/albert/busystack/busymark/test/src/app_router_test.dart: opening Settings preserves a validated Settings origin +17:34 +3033: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings page routes are explicit and validated +17:34 +3034: /home/albert/busystack/busymark/test/src/app_router_test.dart: Settings opened from Welcome returns to Welcome with a stale workspace +17:35 +3035: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again +17:36 +3036: loading /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart +17:37 +3036: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: mixed Markdown protects fenced code and CDATA while preserving spans +17:37 +3037: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: lazy defaults respect caller arguments and percent escaping +17:37 +3038: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: empty links use the target title for the selected instance +17:38 +3039: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional chapter content and links follow the selected instance +17:38 +3040: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: malformed markup and unresolved reuse stay visible with diagnostics +17:38 +3041: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: Markdown IDs include whole chapters and retain mixed-content spans +17:38 +3042: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional globals and include arguments override snippet defaults +17:38 +3043: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: links resolve labels, separate anchors and nullable availability +17:38 +3044: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: included code uses its source topic and unsaved source overrides +17:38 +3045: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: summaries stay metadata and starting pages suppress outside content +17:38 +3046: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: configured shortcuts, glossary and binary resources have visible references +17:38 +3047: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: line and symbol selectors reject invalid selections +17:38 +3048: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart +17:39 +3048: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace +17:39 +3049: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret +17:39 +3050: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string +17:39 +3051: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls +17:39 +3052: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback +17:39 +3053: loading /home/albert/busystack/busymark/test/src/status_semantics_test.dart +17:43 +3053: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: status colors stay semantic across accents and brightness +17:43 +3054: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: workspace messages use semantic status roles +17:43 +3055: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: Git failures use window-level toasts +17:44 +3056: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: successful Git operations use window-level toasts +17:44 +3057: loading /home/albert/busystack/busymark/test/src/workspace_service_test.dart +17:45 +3057: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a single Markdown file workspace +17:45 +3058: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: resolves an unindexed sibling document within the workspace +17:45 +3059: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Markdown file from a file URI path +17:45 +3060: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a generic Markdown folder workspace +17:45 +3061: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: canonicalizes a workspace opened through a directory symlink +17:45 +3062: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects a workspace root replaced by a symlink after opening +17:45 +3063: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Writerside module workspace +17:45 +3064: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: untitled Markdown in Writerside reparses, previews, and outlines as CommonMark +17:45 +3065: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: genuine Writerside Markdown topic keeps Writerside semantics +17:45 +3066: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates and opens a Writerside starter project +17:46 +3067: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: reparses and previews Writerside Markdown without generic link validation +17:46 +3068: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a Writerside Markdown topic and registers it in the TOC +17:46 +3069: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: imports Markdown topics into the selected instance and opens the first +17:46 +3070: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Markdown import reloads stale UI inventory before planning +17:46 +3071: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation revalidates module IDs after its candidate is written +17:46 +3072: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a topic in the explicitly selected instance and TOC node +17:46 +3073: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: unparsed topic basename reserves its module-wide topic ID for creation +17:46 +3074: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under build reserves its module-wide ID for creation +17:46 +3075: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under a hidden directory reserves its module-wide ID for creation +17:46 +3076: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: duplicate topic cannot reuse an unparsed topic basename +17:46 +3077: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: template source cannot reuse an unparsed topic basename +17:47 +3078: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation refuses incomplete topic discovery +17:47 +3079: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects topic creation when the configured instance tree is outside the module +17:47 +3080: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename is stale when a new module is discovered +17:47 +3081: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic rename planning rejects incomplete project module discovery +17:47 +3082: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename rejects incomplete module discovery on apply +17:47 +3083: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: project module discovery reports directory listing failure +17:47 +3084: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: ordinary directory creation does not stale a prepared rename +17:47 +3085: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: normalizes portal-style document paths as filesystem paths +17:47 +3086: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText writes content and returns the saved file snapshot +17:47 +3087: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: file change detection ignores timestamp-only changes +17:47 +3088: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText writes a missing file and returns its snapshot +17:47 +3089: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText refuses an existing file without changing it +17:47 +3090: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not replace a file arriving before publication +17:47 +3091: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not write inside a directory arriving before publication +17:47 +3092: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveTextReplacingPath replaces a final symlink without following it +17:47 +3093: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement cannot overwrite a post-validation writer +17:47 +3094: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement validates a displaced relative symlink +17:47 +3095: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement detects a changed relative symlink target +17:47 +3096: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation directory +17:47 +3097: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation FIFO without reading +17:47 +3098: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText follows file symlinks and preserves target permissions +17:47 +3099: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: createFile rejects a directory reached through an intermediate symlink +17:47 +3100: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: renameEntity rejects a source reached through an intermediate symlink +17:47 +3101: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: moveEntity rejects a target reached through an intermediate symlink +17:47 +3102: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity rejects a directory reached through an intermediate symlink +17:47 +3103: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity removes a final symlink without deleting its target +17:47 +3104: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: generic deletion rejects topics and containing folders in a non-active module +17:47 +3105: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: an unparsed topic cannot bypass generic deletion +17:47 +3106: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: missing nested mutation paths keep domain-specific errors +17:47 +3107: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince treats deleted files as changed +17:47 +3108: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince detects content changes with unchanged modified time +17:48 +3109: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists all content except version-control metadata +17:48 +3110: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists unsupported legacy Markdown extensions +17:48 +3111: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: limited folder scan prefers shallow siblings before deep subtree +17:48 +3112: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: invalid UTF-8 Markdown does not fail the whole workspace +17:48 +3113: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Markdown files are listed but not parsed automatically +17:48 +3114: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Writerside topics are listed but not parsed automatically +17:48 +3115: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Writerside topic loading honors the document limit +17:48 +3116: loading /home/albert/busystack/busymark/test/src/ai_policy_test.dart +17:48 +3116: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: AI editing is enabled only for Markdown document kinds +17:48 +3117: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation accepts a prose-only replacement in the complete document +17:49 +3118: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation rejects swapped URL associations even when the URL set is equal +17:49 +3119: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation full-document validation catches edits made inside protected syntax +17:49 +3120: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects front matter, references, footnotes, tables, HTML and IDs +17:49 +3121: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects list and heading structure +17:49 +3122: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects implicit heading identifiers from prose rewrites +17:49 +3123: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: the prompt contains only the context explicitly selected by the user +17:49 +3124: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: instructions and direct prompts have explicit token budgets +17:49 +3125: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: token estimates are independent from UTF-8 transport bytes +17:49 +3126: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: generated-output byte limits are independent from provider tokens +17:49 +3127: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context selection target and block context remain independent +17:49 +3128: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context insert-after-block target can send no document context +17:49 +3129: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current block can use complete-document context +17:49 +3130: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current section includes descendants but not its sibling +17:49 +3131: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context complete-document target is explicit +17:49 +3132: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context partial protected selections are rejected instead of expanded +17:49 +3133: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context validation and application use the exact block insertion +17:49 +3134: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: commit proposals require a bounded subject and blank separator +17:49 +3135: loading /home/albert/busystack/busymark/test/src/linux_window_host_test.dart +17:52 +3135: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: dialogs cover application header actions while system Close uses the guarded service +17:53 +3136: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: icon uses its physical GTK side and contributes to the inset +unhandled element ; Picture key: Svg loader +17:54 +3137: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fallback application menu is absent while titlebar menu still works +17:54 +3138: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: window-state stream survives unrelated host rebuilds +17:54 +3139: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: normal maximize decoration has matching behavior +17:54 +3140: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: maximized maximize decoration has matching behavior +17:54 +3141: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen maximize decoration has matching behavior +17:54 +3142: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen titlebar double-click still restores +17:54 +3143: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: the document title itself handles titlebar double-click +17:54 +3144: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: live GTK layout removal retains each decoration identity +17:54 +3145: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=false) +17:54 +3146: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=true) +17:54 +3147: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK reduced motion settles window-control hover immediately +17:54 +3148: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion settles an in-flight window icon morph +17:54 +3149: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabled motion retains the normal active-window fade +17:54 +3150: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: Flutter reduced motion settles the host fade immediately +17:54 +3151: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK animation policy reaches the actual host overlay +17:54 +3152: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion stops a fade and later fades can run +17:54 +3153: loading /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart +17:56 +3153: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: source editor overlays use shared semantic surfaces +17:56 +3154: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: WYSIWYG content actions and table menus use shared controls +17:56 +3155: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: problems dialog delegates its list surface to shared grouping +17:57 +3156: loading /home/albert/busystack/busymark/test/src/writerside_document_test.dart +17:58 +3156: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=false) +17:58 +3157: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=true) +17:58 +3158: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside heading aliases prefer exact IDs and reject ambiguity +17:58 +3159: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: malformed semantic XML is still reported after a scanner mismatch +17:58 +3160: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: lossless XML nodes preserve exact duplicate ranges and generic markup +17:58 +3161: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside Markdown round-trips native and generic markup +17:58 +3162: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified semantic XML reconstructs equivalent escaped markup +17:58 +3163: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified conformance topic retains qualified namespace names +17:58 +3164: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver applies includes, filters, groups, variables, and cycles +17:58 +3165: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver negates the complete instance list +17:58 +3166: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML list type is inherited by every list item +17:58 +3167: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML lists retain numeric ordinals and their container identity +17:58 +3168: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: repeated list includes have distinct occurrence IDs and original source spans +17:58 +3169: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: workspace exposes resolver errors with exact source spans +17:58 +3170: loading /home/albert/busystack/busymark/test/src/writerside_api_test.dart +18:02 +3170: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: platform-backed API model remains on the host path and transfers complete semantics +18:03 +3171: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API tags select operations through the existing OpenAPI parser +18:03 +3172: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API child selectors inherit the specification and preserve sample overrides +18:03 +3173: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API schemas resolve references and honor nesting depth +18:03 +3174: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: schema and webhook elements are visible +18:03 +3175: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: invalid API selection has a visible fallback and source diagnostic +18:03 +3176: loading /home/albert/busystack/busymark/test/src/local_history_store_test.dart +18:04 +3176: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=false) +18:04 +3177: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=true) +18:04 +3178: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: real process contention waits and captures without a warning +18:20 +3179: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: lock timeout closes acquisition and queues recover without late capture +18:24 +3180: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: non-contention acquisition failure is prompt and closes the handle +18:24 +3181: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: body contention-shaped error never replays the transaction +18:24 +3182: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: independent production writers preserve both identities and revisions +18:30 +3183: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation cannot mutate process replacements +18:35 +3184: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation rejects an intervening process checkpoint +18:39 +3185: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=false) +18:39 +3186: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=true) +18:39 +3187: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists full revisions and stable document identity across restart +18:39 +3188: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists untitled first-save promotion without a new revision +18:40 +3189: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: untitled promotion refuses an already-owned destination path +18:40 +3190: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deleted paths never own promotion, lookup, or remap +18:40 +3191: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deduplicates only adjacent ordinary captures and preserves A-B-A +18:40 +3192: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: forced protective capture preserves an identical revision +18:40 +3193: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture identity makes a protective retry idempotent +18:40 +3194: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: idempotent capture stays complete after its lineage advances +18:40 +3195: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion retry accepts the same lineage after a later move +18:40 +3196: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: atomic path preflight accepts the same target already reconciled elsewhere +18:40 +3197: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clearing one identity does not poison another identity capture +18:41 +3198: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repairs a damaged index from intact independently checksummed records +18:41 +3199: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repair rejects a record associated with a different document +18:41 +3200: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: does not resurrect explicitly cleared revisions during repair +18:41 +3201: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rejects an unknown future index format without rewriting it +18:41 +3202: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention uses the injected capture time deterministically +18:41 +3203: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention is enforced when an idle store is reopened +18:41 +3204: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rename, directory move, delete, and per-document clearing retain lineage +18:41 +3205: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: ID-bound captures cannot implicitly move document paths +18:42 +3206: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: serializes concurrent captures without losing index entries +18:42 +3207: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: oversized capture cannot evict the previous revision +18:43 +3208: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: different paths with the same basename keep separate identities +18:43 +3209: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: an intentional empty revision after content is retained +18:43 +3210: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: missing and corrupt revision records do not damage intact entries +18:43 +3211: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: incomplete staging artifacts are never discovered as revisions +18:43 +3212: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: global clear tombstones prevent repair resurrection +18:43 +3213: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear All replay cannot erase post-clear history +18:43 +3214: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear Document replay cannot erase replacement history +18:43 +3215: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=false) +18:44 +3216: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=false) +18:44 +3217: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=true) +18:44 +3218: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=true) +18:44 +3219: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=false) +18:44 +3220: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=true) +18:44 +3221: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file capture rolls back cancellation during revision publication +18:44 +3222: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file dedup capture rolls back cancellation during index publication +18:44 +3223: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: multiple store instances coordinate concurrent index publication +18:44 +3224: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: storage permission failures surface without touching document data +18:44 +3225: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: path exclusions use injected Windows path semantics +18:44 +3226: loading /home/albert/busystack/busymark/test/src/web_render_host_test.dart +18:45 +3226: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends explicit request IDs and decodes a typed map response +18:45 +3227: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends a MathJax batch in one cancellable host request +18:45 +3228: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: scales the MathJax timeout for sequential batch conversion +18:45 +3229: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: applies the scaled timeout to a maximum accepted batch +18:45 +3230: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: cancels the matching native request and rejects a late success +18:45 +3231: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: times out and requests native cancellation +18:45 +3232: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: rejects an invalid native response shape +18:45 +3233: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: decodes OpenAPI references with source locations +18:45 +3234: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends PNG bytes to the native image clipboard +18:45 +3235: loading /home/albert/busystack/busymark/test/src/document_persistence_test.dart +18:48 +3235: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: file-backed edits update final-newline metadata +18:48 +3236: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session store keeps tab state and pending history identity without text +18:53 +3237: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session merge keys first-save promotions by durable operation owner +18:53 +3238: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery store distinguishes clean and unclean runs +18:54 +3239: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery keeps valid entries when another record is malformed +18:54 +3240: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery ownership keeps same buffer IDs isolated by process +18:54 +3241: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: restored dead-owner recovery is adopted and can be retired +18:54 +3242: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery state is written with private POSIX permissions +18:55 +3243: loading /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart +18:55 +3243: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: intrinsic width remeasures only edited source lines +18:56 +3244: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: large source width uses a bounded estimate +18:56 +3245: loading /home/albert/busystack/busymark/test/src/search_replace_service_test.dart +18:59 +3245: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: Unicode regex replacement preserves complete characters +18:59 +3246: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: zero-length replacement limitation survives worker transfer +18:59 +3247: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 4999 actual matches +18:59 +3248: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5000 actual matches +18:59 +3249: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5001 actual matches +18:59 +3250: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement cancels a running expensive regex +18:59 +3251: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace scope includes closed Writerside documents and ignores unrelated open files +18:59 +3252: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: previews and applies plain whole-word replacements +18:59 +3253: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: text replacement previews enforce their match limit +18:59 +3254: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker expands one accepted regex match +18:59 +3255: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker cancels stale plans +18:59 +3256: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: expands numbered and named regex capture groups +18:59 +3257: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: applies only selected preview matches +18:59 +3258: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace preview uses dirty buffers and writes closed files +19:00 +3259: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply skips stale dirty buffers +19:00 +3260: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: truncated workspace previews cannot be applied +19:00 +3261: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: stale later files abort before earlier files are changed +19:00 +3262: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: rollback preserves a concurrent edit and reports displaced content +19:00 +3263: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply revalidates open buffers after disk writes +19:00 +3264: loading /home/albert/busystack/busymark/test/src/export_options_editor_test.dart +19:00 +3264: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Escape closes Export before a control receives focus +19:02 +3265: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Export keeps breathing room below its final option +19:02 +3266: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown PDF loads confirmed settings and shares controls +19:03 +3267: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside PDF loads confirmed settings and shares controls +19:04 +3268: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown HTML loads confirmed settings and shares controls +19:04 +3269: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside HTML loads confirmed settings and shares controls +19:05 +3270: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: one Export modal switches between PDF and HTML +19:05 +3271: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: custom geometry controls, TOC enablement and invalid input at minimum size +19:06 +3272: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: cancelling settings does not confirm or persist edits +19:06 +3273: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: JSON settings store retains both format settings across controllers +19:07 +3274: loading /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart +19:07 +3274: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: existing-topic picker filters names and selects by keyboard +19:09 +3275: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: picker returns the supplied topic identity for duplicate names +19:09 +3276: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: Group keeps raw input and Enter-only acceptance +19:09 +3277: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: rename preserves validation and Preview/Refactor results +19:09 +3278: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.rtl +19:10 +3279: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.rtl +19:10 +3280: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.ltr +19:10 +3281: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.ltr +19:11 +3282: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart +19:11 +3282: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: Linux Writerside title and duplicate dialogs are GTK-owned +19:13 +3283: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: GTK Writerside contents follow application direction, filenames stay LTR +19:14 +3284: loading /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart +19:14 +3284: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw HTML preserves inherited and overridden block directions +19:15 +3285: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: preview model retains HTML direction for code and quotes +19:15 +3286: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML honors rtl, ltr, and auto directions +19:15 +3287: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: nested WYSIWYG blocks indent from the RTL start edge +19:16 +3288: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: English prose stays LTR in a Persian RTL UI and navigates LTR +19:16 +3289: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: Arabic prose stays RTL in an English UI and navigates RTL +19:16 +3290: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw Writerside technical blocks stay LTR with Arabic content +19:17 +3291: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered Arabic HTML without dir follows its content +19:17 +3292: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: WYSIWYG technical dialog inputs stay LTR in an RTL UI +19:17 +3293: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL horizontal arrows cross paragraph boundaries visually +19:18 +3294: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL Ctrl+Shift+Arrow extends word selection across paragraphs +19:18 +3295: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: code blocks stay LTR and use LTR boundary arrows in RTL UI +19:18 +3296: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML pre is LTR unless dir overrides it +19:18 +3297: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL prefix hit testing maps the text start at the right edge +19:18 +3298: loading /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart +19:19 +3298: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote source AI proposal applies with logical identity +19:20 +3299: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote WYSIWYG AI proposal applies with logical identity +19:21 +3300: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: document-only AI snapshot opens a usable configuration +19:21 +3301: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI configuration uses native rows without duplicate choices +19:21 +3302: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: Refine with AI sends the explicitly selected model +19:22 +3303: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI proposal uses an explicitly selected provider +19:22 +3304: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: provider chooser exposes only configured providers +19:22 +3305: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: configured local provider remains available when Gemini is default +19:22 +3306: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: fixed AI target cannot widen a sidebar selection +19:22 +3307: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: proposal Apply refuses stale external source content +19:22 +3308: loading /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart +19:23 +3308: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial prefix grows compatibly +19:24 +3309: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial becomes complete and clears marker +19:24 +3310: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations identical complete listings remain consistent +19:24 +3311: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations incompatible repeated listing rejects +19:24 +3312: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations known failed prefix recovers completely +19:24 +3313: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations failure without a known prefix cannot prove recovery +19:24 +3314: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations successful listing followed by failure rejects +19:24 +3315: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry replacement between complete reads rejects +19:24 +3316: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry removal between complete reads rejects +19:24 +3317: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter compatible scan keeps stronger proof +19:24 +3318: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete proof survives compatible limited rescan +19:24 +3319: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial rescan cannot erase a previous failure +19:24 +3320: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete recovery must retain failed-prefix entries +19:24 +3321: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter failed retry retains its consumed prefix +19:24 +3322: loading /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart +19:26 +3322: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: ingests workspace images with safe names and portable paths +19:26 +3323: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: reuses identical assets and resolves name collisions +19:27 +3324: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping identical publications keep the committed owner +19:27 +3325: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping different publications keep the committed owner +19:27 +3326: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect identical pending publications with equal filenames +19:31 +3327: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect different pending publications with equal filenames +19:34 +3328: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: failed publication releases only its own filesystem reservation +19:37 +3329: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: terminated provisional owner remains reserved across processes +19:41 +3330: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: rollback cannot delete an asset after its publication is committed +19:41 +3331: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: uses the configured Writerside images directory +19:41 +3332: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: restores retained Writerside video bytes without widening image paste +19:41 +3333: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: requires saving untitled documents and rejects non-images +19:41 +3334: loading /home/albert/busystack/busymark/test/src/ai_test.dart +19:42 +3334: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy allows literal loopback and localhost origins +19:42 +3335: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy rejects remote, credential-bearing, and path endpoints +19:42 +3336: /home/albert/busystack/busymark/test/src/ai_test.dart: prompt serializes untrusted document data as a JSON field +19:42 +3337: /home/albert/busystack/busymark/test/src/ai_test.dart: plain-text edit prompts never request Markdown +19:42 +3338: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard accepts prose edits that retain protected Markdown +19:42 +3339: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard rejects changed links and fenced code +19:42 +3340: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard protects fences with longer valid closing markers +19:42 +3341: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder handles UTF-8 and JSON split across arbitrary byte chunks +19:42 +3342: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder rejects malformed records and oversized responses +19:42 +3343: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider lists models and streams chat content and usage +19:42 +3344: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider stops at completion and ignores trailing stream records +19:42 +3345: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider uses the documented low thinking level for GPT-OSS +19:42 +3346: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider bounds the model-list response while reading it +19:42 +3347: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider rejects redirects without following them +19:42 +3348: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider does not list or run Ollama cloud models +19:42 +3349: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider cancellation interrupts a silent response stream +19:42 +3350: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator cancels the older request for the same target +19:42 +3351: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator rejects a provider stream without completion +19:42 +3352: loading /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart +19:45 +3352: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: formatting a URL suffix retains the complete live link and round trips +19:47 +3353: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter URL recognition preserves formatting, literal syntax, anchors, breaks and descendants +19:47 +3354: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter recognition preserves formatting within a URL and does not enter math fields +19:47 +3355: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: text whitespace preservation metadata follows pasted whitespace +19:47 +3356: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: paste-only whitespace keeps list descendants exactly once +19:47 +3357: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: plain whitespace paste keeps list descendants through Undo and Redo +19:51 +3358: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: replacement scope distinguishes a heading field from its document block +19:51 +3359: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete blocks inserted in list content retain every descendant +19:51 +3360: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: generic block commands cannot convert tables or preserved raw blocks +19:51 +3361: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: nested list-to-blockquote conversion preserves parent text +19:51 +3362: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: every admonition style preserves nested list parent text +19:51 +3363: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves the current list item descendants +19:51 +3364: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves descendants of an empty list item +19:51 +3365: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace rejects a merge that cannot represent descendants +19:51 +3366: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete clipboard snapshots reconstruct a table transactionally +19:51 +3367: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: same-editor cut and paste preserves complete tables +19:51 +3368: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits normalize every newline form before updating +19:51 +3369: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits preserve block-marker prefixes as literal text +19:51 +3370: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary table cell edits preserve formatting and links +19:51 +3371: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary cell edits retain toolbar-applied formatting +19:51 +3372: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve empty-alt inline images +19:51 +3373: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve existing hard line breaks +19:51 +3374: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing preserves a literal bang before an inline link +19:51 +3375: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing escapes block syntax at the start of a list item +19:51 +3376: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table field edits preserve rendered formatting and links +19:51 +3377: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields reject multiline input and reconcile the model +19:52 +3378: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields preserve block-marker-prefixed cell values +19:52 +3379: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source ranges select repeated text and table cells +19:52 +3380: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source navigation rebases spans after earlier edits +19:53 +3381: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: source navigation expands collapsed Writerside ancestors +19:53 +3382: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: outline navigation expands a collapsed heading ancestor +19:53 +3383: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cells own shortcuts, formatting, and restored selection +19:53 +3384: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external undo groups continuous typing but not transactions +19:53 +3385: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external history coalesces editor typing without local copies +19:53 +3386: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: undo controllers are disposed when blocks disappear +19:53 +3387: loading /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart +19:54 +3387: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: SSE decoder handles split UTF-8 frames and multiline data +19:54 +3388: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: OpenAI Responses adapter is stateless and maps text and usage +19:54 +3389: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini Interactions adapter uses stable v1 and text deltas only +19:54 +3390: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider never includes a secret in surfaced failures +19:54 +3391: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects malformed usage records +19:54 +3392: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini rejects an incomplete status update +19:54 +3393: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects EOF without a typed completion event +19:58 +3394: loading /home/albert/busystack/busymark/test/src/modal_barrier_test.dart +19:59 +3394: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.light modal barriers use the semantic shade role +20:03 +3395: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.dark modal barriers use the semantic shade role +20:03 +3396: loading /home/albert/busystack/busymark/test/src/native_menu_service_test.dart +20:03 +3396: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: show serializes native menu presentation and returns its selection +20:06 +3397: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: dismiss is scoped to the native menu session +20:06 +3398: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: missing native host reports unavailable for a themed fallback +20:07 +3399: loading /home/albert/busystack/busymark/test/src/workspace_controller_test.dart +20:11 +3399: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside tab preparation loads once and current activation loads zero +20:15 +3400: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: configuration preview does not reparse in a derived loop and closing all buffers relinquishes overlays +20:15 +3401: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all Writerside tabs completes override relinquishment +20:15 +3402: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closed-tab reconciliation rejects obsolete disk models and keeps tabs closed +20:16 +3403: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: active +20:16 +3404: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: inactive +20:16 +3405: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: closure +20:16 +3406: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: workspace +20:16 +3407: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: external +20:17 +3408: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: disposal +20:18 +3409: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: rapid Writerside activation keeps derived work bounded and publishes the latest request +20:18 +3410: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered creation notifications are acknowledged, external same-size writes remain visible +20:19 +3411: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: a failed mutation cannot acknowledge its write notifications +20:19 +3412: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: quarantine and duplicate delayed deletion events acknowledge incorporated absence +20:20 +3413: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: an external same-size write during acknowledgement invalidates the consumed fingerprint +20:21 +3414: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: anchor +20:21 +3415: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: disk +20:21 +3416: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered TOC removal notifications require no subsequent module processing +20:22 +3417: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=false +20:22 +3418: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=true +20:23 +3419: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=false +20:23 +3420: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=true +20:23 +3421: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=false +20:23 +3422: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=true +20:23 +3423: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects inactive edit after clean navigation +20:23 +3424: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects reopen after clean navigation +20:24 +3425: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects close all after clean navigation +20:24 +3426: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects dispose after clean navigation +20:24 +3427: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects disk input after clean navigation +20:24 +3428: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects inactive edit after clean navigation +20:24 +3429: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects reopen after clean navigation +20:24 +3430: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects close all after clean navigation +20:25 +3431: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects dispose after clean navigation +20:25 +3432: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects disk input after clean navigation +20:25 +3433: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects inactive edit after clean navigation +20:25 +3434: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects reopen after clean navigation +20:25 +3435: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects close all after clean navigation +20:25 +3436: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects dispose after clean navigation +20:25 +3437: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects disk input after clean navigation +20:25 +3438: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining resource discovery presents stable limited inputs +20:26 +3439: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects edit during verification +20:26 +3440: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects inactive edit during verification +20:26 +3441: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects workspace replacement during verification +20:26 +3442: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects same-project reopening during verification +20:26 +3443: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects edit during verification +20:26 +3444: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects inactive edit during verification +20:26 +3445: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects workspace replacement during verification +20:26 +3446: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects same-project reopening during verification +20:26 +3447: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects edit during verification +20:27 +3448: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects inactive edit during verification +20:27 +3449: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects workspace replacement during verification +20:27 +3450: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects same-project reopening during verification +20:27 +3451: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=false +20:27 +3452: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=true +20:27 +3453: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=false +20:27 +3454: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=true +20:28 +3455: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=false +20:28 +3456: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=true +20:28 +3457: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=false +20:28 +3458: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=true +20:28 +3459: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded inactive edit +20:28 +3460: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded configuration write +20:28 +3461: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction discovery refresh keeps the live selected instance through reconciliation +20:28 +3462: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=4 +20:29 +3463: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=2 +20:30 +3464: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome creation cannot overwrite an edit made during history flush +20:30 +3465: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: starting a Welcome workspace cannot discard a dirty buffer +20:30 +3466: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome replaces clean buffers but workspace New remains additive +20:30 +3467: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete closes the topic buffer, selects a survivor, and records history +20:30 +3468: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete journal removes the deleted tab after refresh failure restart +20:30 +3469: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC writes reject an inactive dirty tree without discarding either buffer +20:30 +3470: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC creation defers its monitor events until the new document is open +20:31 +3471: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown topic import opens its first topic in an editable buffer +20:31 +3472: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed Markdown import preserves the active document and workspace +20:31 +3473: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Validate publishes a valid table containing an escaped pipe +20:31 +3474: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation reports stale, busy and failed outcomes without publishing old results +20:31 +3475: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=false +20:31 +3476: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=true +20:31 +3477: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math callbacks from an older editor revision cannot republish errors +20:31 +3478: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown validation uses the unsaved linked tab snapshot +20:31 +3479: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=true +20:31 +3480: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=false +20:31 +3481: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside rename stages verified edits across unsaved tabs with undo +20:32 +3482: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened Markdown files by file path in recent workspaces +20:32 +3483: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened folders by folder path in recent workspaces +20:32 +3484: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace file operations refresh and preserve active moved files +20:32 +3485: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates an unsaved Markdown file without adding it to recent +20:32 +3486: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates CommonMark inside Writerside without replacing project or dirty topic +20:32 +3487: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: identical untitled buffers remain distinct by buffer id +20:32 +3488: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: delayed untitled preview cannot publish into another untitled tab +20:32 +3489: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files leave preview mode for editor mode +20:32 +3490: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files preserve non-preview view modes +20:32 +3491: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an untitled Markdown file clears the workspace +20:32 +3492: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding a saved file reloads disk text and clears dirty state +20:32 +3493: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside project and records it as recent +20:32 +3494: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside topic and opens it without changing recents +20:32 +3495: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: topic TOC actions refresh the workspace and preserve file state +20:33 +3496: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: reviewed topic rename is rejected after a project buffer becomes dirty +20:33 +3497: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as writes a new Markdown file and records it as recent +20:33 +3498: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown in Writerside keeps ordinary files CommonMark +20:33 +3499: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside refresh preserves saved Markdown outside the workspace root +20:33 +3500: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown into discovered topics reclassifies it +20:33 +3501: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving multiple untitled documents creates normal file buffers +20:33 +3502: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as refuses an existing file unless overwrite is explicit +20:33 +3503: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as explicit overwrite replaces the final symlink only +20:33 +3504: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves source edits for an untitled Markdown file +20:33 +3505: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while writing the file +20:33 +3506: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as completes against its buffer after switching tabs +20:33 +3507: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while reopening the file +20:33 +3508: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: switching active files reparses outline for the new file +20:34 +3509: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale validation after save and tab switch does not restore previous file +20:34 +3510: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation completing after save preserves the saved snapshot +20:34 +3511: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source defers preview work until a preview mode is visible +20:34 +3512: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source-only validation still runs when validate-on-edit is enabled +20:34 +3513: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale text update from previous file cannot dirty active tab +20:34 +3514: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: folder workspaces track open file tabs without duplicates +20:34 +3515: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All writes every dirty file-backed buffer +20:34 +3516: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All can be scoped without saving unrelated dirty buffers +20:34 +3517: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: selected dirty buffers can be discarded without changing tabs +20:34 +3518: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing active file tabs selects a neighboring tab +20:34 +3519: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: activating sibling file tabs wraps around the open tabs +20:34 +3520: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all file tabs clears the active editor state +20:34 +3521: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs aborts when a document changes during history flush +20:34 +3522: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs cannot clear workspace state replaced during flush +20:34 +3523: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed open clears stale workspace state +20:34 +3524: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math renderer failures become source-linked runtime diagnostics +20:34 +3525: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validate on edit setting controls live diagnostics only +20:34 +3526: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save waits for an idle delay before writing +20:36 +3527: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Undo and Redo reschedule autosave after the prior save settled +20:41 +3528: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: inactive document updates schedule autosave without changing tabs +20:42 +3529: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed workspace refresh restores eligible autosave scheduling +20:44 +3530: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disabled autosave stays disabled after a failed refresh +20:45 +3531: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save remains scheduled independently for inactive tabs +20:47 +3532: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save preserves dirty state when edits happen during save +20:47 +3533: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: overlapping manual save writes the newer requested revision +20:47 +3534: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save completes against its buffer after switching tabs +20:47 +3535: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing a buffer waits for its in-flight autosave +20:47 +3536: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard aborts when the document changes during protective history capture +20:47 +3537: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard waits for its buffer in-flight autosave +20:47 +3538: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save waits for an in-flight autosave of the same buffer +20:47 +3539: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All waits for an in-flight autosave of the same buffer +20:47 +3540: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save As waits for an in-flight autosave of the same buffer +20:47 +3541: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean shutdown waits for in-flight document writes +20:47 +3542: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: pending history from a closed clean tab prevents a clean shutdown marker +20:48 +3543: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save refuses to overwrite external file changes without force +20:48 +3544: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save treats a deleted active file as an external conflict +20:48 +3545: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save detects external rewrites with unchanged modified time +20:48 +3546: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving preserves a manually removed final newline +20:48 +3547: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: WYSIWYG list edits preserve a missing final newline +20:48 +3548: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: spelling correction undo and redo restore source and rich selections +20:48 +3549: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Keep Mine retains the conflict snapshot until explicit overwrite +20:49 +3550: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitor refresh waits for an active foreground refresh +20:49 +3551: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves an active edit and editor history made during reparse +20:49 +3552: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation reconciles edits accepted while its reparse is pending +20:49 +3553: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: opening a new tab preserves live edits and editor history in the visible document +20:49 +3554: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing the active tab aborts if it changes during next-tab activation +20:49 +3555: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: aborted discard close preserves dirty state after an editor-only change +20:49 +3556: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: aborted +20:49 +3557: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: closed +20:49 +3558: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: disabled +20:49 +3559: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: shutdown +20:49 +3560: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: replaced +20:49 +3561: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation does not resurrect another tab closed while waiting +20:49 +3562: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves inactive edits and does not resurrect a closed tab +20:49 +3563: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh rejects a disk load superseded by typing +20:49 +3564: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: external file moves remap the open document buffer +20:49 +3565: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitors saved standalone tabs outside the workspace root +20:50 +3566: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: standalone refresh preserves saved tabs in different directories +20:50 +3567: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup leaves a clean session closed unless reopening is enabled +20:50 +3568: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup restores an interrupted session without an opt-in +20:50 +3569: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored sessions retain tabs whose files are missing +20:50 +3570: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored standalone sessions retain a missing document +20:50 +3571: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: mixed untitled and saved session restores as a standalone workspace +20:50 +3572: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark active +20:50 +3573: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark inactive +20:50 +3574: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean marker cannot hide remaining recovery entries +20:50 +3575: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: recovery text remains restorable when the later session save fails +20:50 +3576: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: single-document session uses no workspace path after saved tabs close +20:50 +3577: loading /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart +20:50 +3577: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped image-description text follows Markdown image alt semantics +20:50 +3578: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: annotated parsing has ordinary semantics across supported corpus +20:50 +3579: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: image ranges identify only resolved source occurrences +20:50 +3580: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: positioned label breaks retain raw endings and container prefixes +20:50 +3581: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped link and image titles retain exact raw boundaries +20:50 +3582: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: destination-only links and images have no mapped title +20:50 +3583: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: position records do not change HTML or link semantics +20:50 +3584: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: selection endpoints crossing HTML retain one semantic fragment +20:50 +3585: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: supported HTML whitespace positions have complete position records +20:50 +3586: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: only operation-local markers are ignored +20:51 +3587: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: delimiter-only positions are explicitly incomplete +20:51 +3588: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: syntax-boundary probes retain the ordinary semantic oracle +20:51 +3589: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: deterministic inline combinations preserve annotated semantics +20:51 +3590: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: standalone HTML break ownership uses one indexed lookup per break +20:51 +3591: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: AST source boundary lookahead is linear and maps the final link +20:51 +3592: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: fallback mapping is bounded for entities repetitions and code spans +20:51 +3593: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: tag-looking attribute text does not claim break layout +20:51 +3594: loading /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart +20:55 +3594: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: restores WYSIWYG selection from document session state +20:56 +3595: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: reports the old document session before switching tabs +20:56 +3596: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: defers session provider updates until document rebuild ends +20:56 +3597: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: workspace mode delegates WYSIWYG undo to buffer history +20:57 +3598: loading /home/albert/busystack/busymark/test/src/writerside_identity_test.dart +20:58 +3598: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: anchor identity includes topic and all instances participate in usages +20:58 +3599: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: conditional globals and snippet variables have distinct scopes +20:58 +3600: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: completion filters context and target identity before limiting +20:58 +3601: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: validation uses relationships, typed values and current configuration syntax +20:58 +3602: loading /home/albert/busystack/busymark/test/src/html_export_ui_test.dart +21:02 +3602: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: one Export command retains Ctrl+Shift+E +21:02 +3603: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Flutter Main menu exposes document export +21:02 +3604: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: untitled active text stays captured while destination picker is open +21:05 +3605: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Cancel handling before instance selection +21:05 +3606: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Discard handling before instance selection +21:06 +3607: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Save handling before instance selection +21:14 +3608: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart +21:15 +3608: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication +21:15 +3609: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path +21:15 +3610: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content +21:15 +3611: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document +21:15 +3612: loading /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart +21:17 +3612: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Writerside numeric list starts and container boundaries reach PDF +21:17 +3613: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: list items and visualization replacements retain source anchors +21:17 +3614: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: maps Markdown semantics into renderer-neutral export blocks +21:17 +3615: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: omits reference definitions while preserving their resolved links +21:17 +3616: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Typst payload contains data but never raw local image paths +21:17 +3617: loading /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart +21:21 +3617: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: basic fixture uses a renderable OpenAPI fence +21:21 +3618: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: visualizer fences remain generic code and round-trip byte-for-byte +21:22 +3619: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: dedicated visualizer rules highlight comments, keys, and keywords +21:23 +3620: loading /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart +21:26 +3620: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-topic-create-10-100-0 +21:26 +3621: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-topic-create-10-100-0 +21:26 +3622: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-safe-delete-10-100-0 +21:26 +3623: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-safe-delete-10-100-0 +21:26 +3624: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 +21:26 +3625: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 +21:26 +3626: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: external moves, missing destinations and authored hidden names stay visible +21:26 +3627: loading /home/albert/busystack/busymark/test/src/html_rich_export_test.dart +21:27 +3627: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered mermaid retains a linked Writerside block ID +21:29 +3628: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered openapi retains a linked Writerside block ID +21:29 +3629: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: HTML uses unique occurrence jobs, standalone math and diagram/static API engines +21:29 +3630: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: custom HTML metrics and embedded rich assets stay self-contained +21:29 +3631: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: all diagram dependencies are captured before rendering begins +21:29 +3632: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: cancelling an active render retains existing output and removes staging +21:29 +3633: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: render timeout is bounded and cancellation interrupts a pending job +21:30 +3634: loading /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart +21:30 +3634: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: finds exact href and body spans for every supported quote form +21:30 +3635: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: ignores comments, fenced code, and inline code but keeps containers +21:30 +3636: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: multiline anchors are exact and malformed anchors remain manual +21:30 +3637: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/gtk-accent-host.log b/delivery/nextcloud-explicit-adoption/evidence/gtk-accent-host.log new file mode 100644 index 00000000..45f8665c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/gtk-accent-host.log @@ -0,0 +1,25 @@ +dbus-daemon[739764]: [session uid=1000 pid=739764] Activating service name='org.a11y.Bus' requested by ':1.0' (uid=1000 pid=739765 comm="/tmp/busymark-gtk-accent-host.9JEEOy/probe /tmp/bu" label="unconfined") +dbus-daemon[739764]: [session uid=1000 pid=739764] Successfully activated service 'org.a11y.Bus' +dbus-daemon[739764]: [session uid=1000 pid=739764] Activating service name='org.gtk.vfs.Daemon' requested by ':1.2' (uid=1000 pid=739765 comm="/tmp/busymark-gtk-accent-host.9JEEOy/probe /tmp/bu" label="unconfined") +dbus-daemon[739764]: [session uid=1000 pid=739764] Successfully activated service 'org.gtk.vfs.Daemon' +fusermount3: failed to access mountpoint /run/user/1000/gvfs: Permission denied +libEGL warning: DRI3 error: Could not get DRI3 device +libEGL warning: Ensure your X server supports DRI3 to get accelerated rendering +PASS production getAccent method and exact standard-codec payload +dbus-daemon[739774]: Activating service name='org.a11y.atspi.Registry' requested by ':1.0' (uid=1000 pid=739765 comm="/tmp/busymark-gtk-accent-host.9JEEOy/probe /tmp/bu" label="unconfined") +PASS actual event channel replay, live GTK/dark changes and unavailability +PASS channel cancellation and current-state reattachment +PASS host free cancels queued refresh and detaches channel callbacks +embedder.cc (2605): 'FlutterEngineRemoveView' returned 'kInvalidArguments'. Engine handle was invalid. +dbus-daemon[739774]: Successfully activated service 'org.a11y.atspi.Registry' +SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry +libEGL warning: DRI3 error: Could not get DRI3 device +libEGL warning: Ensure your X server supports DRI3 to get accelerated rendering +embedder.cc (2605): 'FlutterEngineRemoveView' returned 'kInvalidArguments'. Engine handle was invalid. +PASS window-first destruction, subsequent cleanup and no events after shutdown +libEGL warning: DRI3 error: Could not get DRI3 device +libEGL warning: Ensure your X server supports DRI3 to get accelerated rendering +embedder.cc (2605): 'FlutterEngineRemoveView' returned 'kInvalidArguments'. Engine handle was invalid. +PASS view-first destruction, subsequent cleanup and no events after shutdown +PASS Flutter messenger shutdown releases both channel objects +A connection to the bus can't be made diff --git a/delivery/nextcloud-explicit-adoption/evidence/gtk-accent.log b/delivery/nextcloud-explicit-adoption/evidence/gtk-accent.log new file mode 100644 index 00000000..cb97f2ec --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/gtk-accent.log @@ -0,0 +1,7 @@ +PASS older-only lookup: #336699 (modern symbol absent) +PASS listener attachment replays current modern color +PASS runtime theme-name and dark-preference notifications read refreshed CSS +PASS transparent and missing lookups remain unavailable; duplicates suppressed +PASS header CSS refresh produces no accent feedback +PASS cancellation, resubscription and queued-callback cleanup +GTK 3.24.41; backend=GdkX11Display; fixture package=unpackaged native probe diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock-persistent.json b/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock-persistent.json new file mode 100644 index 00000000..18865be2 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock-persistent.json @@ -0,0 +1,20 @@ +{ + "ok": false, + "checks": { + "notesVersion": "6.1.0", + "apiVersion": "1.4", + "lockFixtureState": "locked", + "lockFixturePending": true, + "unrelatedDuringLockState": "synced", + "real423PreservesLocalOutboxAndOtherNotesSync": true, + "locallyDurableCreation": true, + "contentCategoryFavoriteCanonicalTitle": true, + "titleSanitized": true, + "attachmentDelete": true, + "attachmentUploadFetchRename": true, + "secondActorEtagConflictAndMerge": true, + "offlineNewNoteAttachmentRestartReconnect": true + }, + "failureType": "StateError", + "failure": "Discovery mutated the candidate or published an attachment." +} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock.json b/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock.json new file mode 100644 index 00000000..3c899831 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock.json @@ -0,0 +1,12 @@ +{ + "ok": false, + "checks": { + "notesVersion": "6.1.0", + "apiVersion": "1.4", + "lockFixtureState": "synced", + "lockFixturePending": false, + "unrelatedDuringLockState": "synced" + }, + "failureType": "StateError", + "failure": "Real 423 did not preserve the local outbox and isolate unrelated notes." +} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.json b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.json new file mode 100644 index 00000000..a64e36ae --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/home/tester/busymark-release/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": true, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": false + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.log new file mode 100644 index 00000000..73824465 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.log @@ -0,0 +1,7 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(process:2): GLib-GIO-CRITICAL **: 10:54:38.174: Error while sending AddMatch() message: The connection is closed + +(process:2): GLib-GIO-CRITICAL **: 10:54:38.178: Error while sending GetNameOwner() message: The connection is closed + +(process:2): GLib-GIO-CRITICAL **: 10:54:38.178: Error while sending AddMatch() message: The connection is closed diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.json b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.json new file mode 100644 index 00000000..4a0f27d7 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.json @@ -0,0 +1,17 @@ +{ + "ok": false, + "checks": { + "resourceRoot": "/home/tester/busymark-release/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": false, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true + }, + "error": "TimeoutException after 0:00:05.000000: Future not completed", + "stackTrace": "#0 Future.timeout. (dart:async/future_impl.dart:1042)\n\n#1 _settleSmokeFrames (package:busymark/src/spellcheck/spelling_release_smoke.dart:696)\n\n#2 _unmountSmokeEditor (package:busymark/src/spellcheck/spelling_release_smoke.dart:671)\n\n#3 runSpellingReleaseSmoke (package:busymark/src/spellcheck/spelling_release_smoke.dart:299)\n\n#4 main (package:busymark/main.dart:29)\n\n" +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.log new file mode 100644 index 00000000..89658a12 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.log @@ -0,0 +1,12 @@ + +(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:56:22.512: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:56:49.913: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:57:06.137: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed +Gdk-Message: 10:57:06.153: Unable to load from the cursor theme + +(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:57:07.797: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:57:09.421: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.json b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.json new file mode 100644 index 00000000..fa26aee8 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/home/tester/busymark-release/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": false, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": true + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.log new file mode 100644 index 00000000..31d4ef8f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.log @@ -0,0 +1,7 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(process:2): GLib-GIO-CRITICAL **: 10:56:18.355: Error while sending AddMatch() message: The connection is closed + +(process:2): GLib-GIO-CRITICAL **: 10:56:18.366: Error while sending GetNameOwner() message: The connection is closed + +(process:2): GLib-GIO-CRITICAL **: 10:56:18.366: Error while sending AddMatch() message: The connection is closed diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/weston.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/weston.log new file mode 100644 index 00000000..7c7f2fb1 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/weston.log @@ -0,0 +1,32 @@ +Date: 2026-10-07 UTC +[10:56:18.509] weston 13.0.0 + https://wayland.freedesktop.org + Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/ + Build: 13.0.0 +[10:56:18.519] Command line: weston --backend=headless --renderer=pixman --socket=wayland-native --idle-time=0 --log=/home/tester/native-evidence/weston.log +[10:56:18.519] OS: Linux, 6.8.0-142-generic, #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026, x86_64 +[10:56:18.519] Flight recorder: enabled +[10:56:18.527] Starting with no config file. +[10:56:18.534] Output repaint window is 7 ms maximum. +[10:56:18.536] Loading module '/usr/lib/x86_64-linux-gnu/libweston-13/headless-backend.so' +[10:56:18.573] Using Pixman renderer +[10:56:18.574] Registered plugin API 'weston_windowed_output_api_v2' of size 16 +[10:56:18.575] Color manager: no-op +[10:56:18.578] Output 'headless' attempts EOTF mode: SDR +[10:56:18.579] Output 'headless' using color profile: stock sRGB color profile +[10:56:18.586] Output 'headless' enabled with head(s) headless +[10:56:18.587] Compositor capabilities: + arbitrary surface rotation: yes + screen capture uses y-flip: no + cursor planes: no + arbitrary resolutions: no + view mask clipping: yes + explicit sync: no + color operations: no + presentation clock: CLOCK_MONOTONIC_RAW, id 4 + presentation clock resolution: 0.000000001 s +[10:56:18.590] Loading module '/usr/lib/x86_64-linux-gnu/weston/desktop-shell.so' +[10:56:18.600] launching '/usr/libexec/weston-keyboard' +[10:56:18.606] launching '/usr/libexec/weston-desktop-shell' +[10:57:33.516] caught signal 15 +[10:57:33.540] BUG: finalizing a layer with views still on it. diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/xvfb.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/xvfb.log new file mode 100644 index 00000000..9d6a58c7 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/xvfb.log @@ -0,0 +1,57 @@ +The XKEYBOARD keymap compiler (xkbcomp) reports: +> Warning: Could not resolve keysym XF86CameraAccessEnable +> Warning: Could not resolve keysym XF86CameraAccessDisable +> Warning: Could not resolve keysym XF86CameraAccessToggle +> Warning: Could not resolve keysym XF86NextElement +> Warning: Could not resolve keysym XF86PreviousElement +> Warning: Could not resolve keysym XF86AutopilotEngageToggle +> Warning: Could not resolve keysym XF86MarkWaypoint +> Warning: Could not resolve keysym XF86Sos +> Warning: Could not resolve keysym XF86NavChart +> Warning: Could not resolve keysym XF86FishingChart +> Warning: Could not resolve keysym XF86SingleRangeRadar +> Warning: Could not resolve keysym XF86DualRangeRadar +> Warning: Could not resolve keysym XF86RadarOverlay +> Warning: Could not resolve keysym XF86TraditionalSonar +> Warning: Could not resolve keysym XF86ClearvuSonar +> Warning: Could not resolve keysym XF86SidevuSonar +> Warning: Could not resolve keysym XF86NavInfo +Errors from xkbcomp are not fatal to the X server +The XKEYBOARD keymap compiler (xkbcomp) reports: +> Warning: Could not resolve keysym XF86CameraAccessEnable +> Warning: Could not resolve keysym XF86CameraAccessDisable +> Warning: Could not resolve keysym XF86CameraAccessToggle +> Warning: Could not resolve keysym XF86NextElement +> Warning: Could not resolve keysym XF86PreviousElement +> Warning: Could not resolve keysym XF86AutopilotEngageToggle +> Warning: Could not resolve keysym XF86MarkWaypoint +> Warning: Could not resolve keysym XF86Sos +> Warning: Could not resolve keysym XF86NavChart +> Warning: Could not resolve keysym XF86FishingChart +> Warning: Could not resolve keysym XF86SingleRangeRadar +> Warning: Could not resolve keysym XF86DualRangeRadar +> Warning: Could not resolve keysym XF86RadarOverlay +> Warning: Could not resolve keysym XF86TraditionalSonar +> Warning: Could not resolve keysym XF86ClearvuSonar +> Warning: Could not resolve keysym XF86SidevuSonar +> Warning: Could not resolve keysym XF86NavInfo +Errors from xkbcomp are not fatal to the X server +The XKEYBOARD keymap compiler (xkbcomp) reports: +> Warning: Could not resolve keysym XF86CameraAccessEnable +> Warning: Could not resolve keysym XF86CameraAccessDisable +> Warning: Could not resolve keysym XF86CameraAccessToggle +> Warning: Could not resolve keysym XF86NextElement +> Warning: Could not resolve keysym XF86PreviousElement +> Warning: Could not resolve keysym XF86AutopilotEngageToggle +> Warning: Could not resolve keysym XF86MarkWaypoint +> Warning: Could not resolve keysym XF86Sos +> Warning: Could not resolve keysym XF86NavChart +> Warning: Could not resolve keysym XF86FishingChart +> Warning: Could not resolve keysym XF86SingleRangeRadar +> Warning: Could not resolve keysym XF86DualRangeRadar +> Warning: Could not resolve keysym XF86RadarOverlay +> Warning: Could not resolve keysym XF86TraditionalSonar +> Warning: Could not resolve keysym XF86ClearvuSonar +> Warning: Could not resolve keysym XF86SidevuSonar +> Warning: Could not resolve keysym XF86NavInfo +Errors from xkbcomp are not fatal to the X server diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/change.patch b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/change.patch new file mode 100644 index 00000000..87e1ceb9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/change.patch @@ -0,0 +1,28 @@ +--- a/linux/runner/web_render_host.cc ++++ b/linux/runner/web_render_host.cc +@@ -486,7 +486,13 @@ + self->active_cancellable = g_cancellable_new(); + g_autoptr(GVariant) arguments = + javascript_arguments(request->operation, request->arguments_json); ++ // WebKit can lose an async function's result when its pending Promise is ++ // collected. Keep the complete render task reachable until it settles, ++ // including harness readiness and font/layout waits during HTML exports. + constexpr char kBody[] = ++ "const pending = window.busymarkPendingTasks ||" ++ "(window.busymarkPendingTasks = new Set());" ++ "const task = (async () => {" + "if (typeof window.busymarkRender !== 'function') {" + "await new Promise((resolve, reject) => {" + "const timer = window.setTimeout(() => reject(new Error(" +@@ -498,7 +504,10 @@ + "}" + "const request = JSON.parse(requestJson);" + "request.operation = operation;" +- "return JSON.stringify(await window.busymarkRender(request));"; ++ "return JSON.stringify(await window.busymarkRender(request));" ++ "})();" ++ "pending.add(task);" ++ "try { return await task; } finally { pending.delete(task); }"; + webkit_web_view_call_async_javascript_function( + self->web_view, kBody, -1, arguments, nullptr, kHarnessUri, + self->active_cancellable, javascript_finished_cb, request); diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/identity.json b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/identity.json new file mode 100644 index 00000000..60a2c5f0 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/identity.json @@ -0,0 +1,18 @@ +{ + "historical": true, + "reverted": true, + "reason": "Promise retention did not fix actual installed visualization acceptance. No renderer change is delivered.", + "experimentSourceSha256": "bf268868ef2baf322b91fe1efaaeebd0829a7b6b3dd25b9aaf36f8339359940d", + "experimentSnapSha256": "a4124cdcd8667c0cf51e3bb0a9a41f7dd3fdda033468cae3fa610dde4aa624ae", + "fullFlutter": { + "passed": 3638, + "failed": 0, + "duration": "18:28", + "historicalExperiment": true + }, + "nativeVisualization": { + "x11Checks": 23, + "waylandChecks": 23 + }, + "installedVisualizationPassed": false +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/linux-build-render-root.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/linux-build-render-root.log new file mode 100644 index 00000000..0134c64b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/linux-build-render-root.log @@ -0,0 +1,65 @@ +Resolving dependencies... +Downloading packages... + _fe_analyzer_shared 99.0.0 (109.0.0 available) + analyzer 12.1.0 (14.5.0 available) + animated_vector 0.2.2 (0.2.3 available) + animated_vector_annotations 0.2.2 (0.3.0 available) + archive 4.0.9 (4.3.0 available) + assorted_layout_widgets 11.0.0 (13.1.0 available) + clock 1.1.2 (1.1.3 available) + code_assets 1.2.1 (2.1.0 available) + cross_file 0.3.5+4 (0.4.0 available) + dbus 0.7.13 (0.8.0 available) + file_selector_android 0.5.2+8 (0.5.2+11 available) + file_selector_ios 0.5.3+5 (0.5.3+6 available) + file_selector_linux 0.9.4 (0.9.4+1 available) + file_selector_macos 0.9.5 (0.9.5+1 available) + file_selector_windows 0.9.3+5 (0.9.3+6 available) + flutter_riverpod 3.3.2 (3.4.3 available) + frontend_server_client 4.0.0 (4.1.0 available) + glob 2.1.3 (2.2.0 available) + go_router 17.3.0 (18.0.2 available) + gsettings 0.2.8 (0.2.9 available) + html 0.15.6 (0.15.7 available) + image 4.9.1 (4.10.1 available) + io 1.0.5 (1.1.0 available) + jni 1.0.0 (1.1.0 available) + jni_flutter 1.0.1 (1.0.4+1 available) + material_color_utilities 0.13.0 (0.13.1 available) + mime 2.0.0 (2.1.0 available) + native_toolchain_c 0.19.3 (0.19.5 available) + objective_c 9.4.1 (9.6.2 available) + package_config 2.2.0 (3.0.0 available) + package_info_plus 10.2.1 (10.2.2 available) + petitparser 7.0.2 (7.1.0 available) + platform 3.1.6 (3.2.0 available) + pool 1.5.2 (1.5.3 available) + posix 6.5.0 (6.5.2 available) + pub_semver 2.2.0 (2.2.1 available) + riverpod 3.3.2 (3.4.3 available) + source_maps 0.10.13 (0.10.14 available) + stack_trace 1.12.1 (1.12.2 available) + test 1.31.1 (1.32.0 available) + test_api 0.7.12 (0.7.14 available) + test_core 0.6.18 (0.6.20 available) + ubuntu_localizations 0.5.2+3 (0.5.2+4 available) + unorm_dart 0.3.2 (0.3.3 available) + url_launcher 6.3.2 (6.3.3 available) + url_launcher_android 6.3.32 (6.3.33 available) + url_launcher_ios 6.4.1 (6.4.2 available) + url_launcher_linux 3.2.2 (3.2.3 available) + url_launcher_macos 3.2.5 (3.2.6 available) + url_launcher_windows 3.1.5 (3.1.6 available) + vector_graphics 1.2.2 (1.2.3 available) + vector_graphics_compiler 1.2.6 (1.3.0 available) + vector_math 2.4.2 (2.4.3 available) + vm_service 15.2.0 (15.3.0 available) + win32 6.3.0 (6.4.0 available) + xml 7.0.1 (7.1.0 available) + yaml 3.1.3 (3.1.4 available) + yaru 10.2.0 (11.0.0 available) +Got dependencies! +58 packages have newer versions incompatible with dependency constraints. +Try `flutter pub outdated` for more information. +Building Linux application... +✓ Built build/linux/x64/release/bundle/busymark diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-wayland-render.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-wayland-render.log new file mode 100644 index 00000000..976d56c9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-wayland-render.log @@ -0,0 +1,26 @@ + +(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.306: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:1415271): dbind-WARNING **: 06:34:27.310: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory + +(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.416: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:1415271): Atk-CRITICAL **: 06:34:27.417: atk_socket_embed: assertion 'plug_id != NULL' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.519: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed +Gdk-Message: 06:34:27.520: Unable to load from the cursor theme + +(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.644: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.703: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (process:2): WARNING **: 06:34:27.732: Failed to connect to bus: Could not connect: No such file or directory + +** (process:2): WARNING **: 06:34:27.734: Can't connect to a11y bus: Error receiving data: Connection reset by peer + +(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:29.112: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (process:2): WARNING **: 06:34:29.192: Failed to connect to bus: Could not connect: No such file or directory + +** (process:2): WARNING **: 06:34:29.194: Can't connect to a11y bus: Error receiving data: Connection reset by peer diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-x11-render.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-x11-render.log new file mode 100644 index 00000000..70bf1956 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-x11-render.log @@ -0,0 +1,13 @@ + +(io.busystack.busymark:1404609): dbind-WARNING **: 06:30:47.740: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory + +(io.busystack.busymark:1404609): Atk-CRITICAL **: 06:30:47.886: atk_socket_embed: assertion 'plug_id != NULL' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +** (process:2): WARNING **: 06:30:48.401: Failed to connect to bus: Could not connect: No such file or directory + +** (process:2): WARNING **: 06:30:48.607: Can't connect to a11y bus: Error receiving data: Connection reset by peer + +** (process:2): WARNING **: 06:30:50.317: Failed to connect to bus: Could not connect: No such file or directory + +** (process:2): WARNING **: 06:30:50.319: Can't connect to a11y bus: Error receiving data: Connection reset by peer diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-clean-render.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-clean-render.log new file mode 100644 index 00000000..37ba8dad --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-clean-render.log @@ -0,0 +1,8848 @@ +Cleaning all parts +Initialising lifecycle +Installing build-packages +The following snaps are required but not installed as the application is running inside docker or podman container: gnome-46-2404, gtk-common-themes, mesa-2404, core24, node/24/stable, gnome-46-2404-sdk. +Please ensure the environment is properly setup before continuing. +Ignore this message if the appropriate measures have already been taken. +Pulling busymark +Fetching stage-packages +Downloading package: fontconfig +/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/fontconfig_2.15.0-1.1ubuntu2_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) + acq.run() +Downloading package: libvulkan1 +Downloading package: libsvtav1enc1d1 +Downloading package: libhwy1t64 +Downloading package: libxcb-present0 +Downloading package: yaru-theme-icon +Downloading package: libyajl2 +Downloading package: libv4lconvert0t64 +Downloading package: libgomp1 +Downloading package: libzxing3 +Downloading package: libpulse0 +Downloading package: libwebpmux3 +Downloading package: libopenal-data +Downloading package: libltc11 +Downloading package: libvpl2 +Downloading package: libserd-0-0 +Downloading package: libvpx9 +Downloading package: libxxf86vm1 +Downloading package: libcodec2-1.2 +Downloading package: librubberband2 +Downloading package: libsharpyuv0 +Downloading package: libnghttp2-14 +Downloading package: openssh-client +Downloading package: libglx-mesa0 +Downloading package: libtwolame0 +Downloading package: gstreamer1.0-plugins-ugly +Downloading package: libzvbi-common +Downloading package: libjack-jackd2-0 +Downloading package: libfreeaptx0 +Downloading package: libdatrie1 +Downloading package: libthai0 +Downloading package: libssh-4 +Downloading package: libxrender1 +Downloading package: libldap2 +Downloading package: libglvnd0 +Downloading package: libproxy1v5 +Downloading package: libgdbm-compat4t64 +Downloading package: libraptor2-0 +Downloading package: libsensors-config +Downloading package: hicolor-icon-theme +Downloading package: git +Downloading package: libglib2.0-bin +Downloading package: perl +Downloading package: libx11-xcb1 +Downloading package: libxshmfence1 +Downloading package: libfluidsynth3 +Downloading package: libunwind8 +Downloading package: libdecor-0-0 +Downloading package: libpango-1.0-0 +Downloading package: libvo-aacenc0 +Downloading package: libwavpack1 +Downloading package: libavtp0 +Downloading package: libsrt1.5-gnutls +Downloading package: libwayland-cursor0 +Downloading package: libx264-164 +Downloading package: libshine3 +Downloading package: libaom3 +Downloading package: lsb-base +Downloading package: libjpeg-turbo8 +Downloading package: libv4l-0t64 +Downloading package: libavahi-common-data +Downloading package: libcolord2 +Downloading package: libpsl5t64 +Downloading package: libx265-199 +Downloading package: libass9 +Downloading package: libsasl2-2 +Downloading package: libxcb-dri3-0 +Downloading package: libcairo2 +Downloading package: libgbm1 +Downloading package: libxcursor1 +Downloading package: libbluray2 +Downloading package: libvorbisfile3 +Downloading package: libdv4t64 +Downloading package: libblas3 +Downloading package: libdeflate0 +Downloading package: libqrencode4 +Downloading package: libjpeg8 +Downloading package: x11-common +Downloading package: libiec61883-0 +Downloading package: libsphinxbase3t64 +Downloading package: libbs2b0 +Downloading package: libfftw3-double3 +Downloading package: libglx0 +Downloading package: libgme0 +Downloading package: libdav1d7 +Downloading package: libcaca0 +Downloading package: libfribidi0 +Downloading package: mesa-libgallium +Downloading package: libraw1394-11 +Downloading package: librtmp1 +Downloading package: adwaita-icon-theme +Downloading package: libgpm2 +Downloading package: libtiff6 +Downloading package: libgfortran5 +Downloading package: libpixman-1-0 +Downloading package: libtag1v5 +Downloading package: libvidstab1.1 +Downloading package: libva-x11-2 +Downloading package: librist4 +Downloading package: libgsm1 +Downloading package: libgupnp-1.6-0 +Downloading package: libcjson1 +Downloading package: libshout3 +Downloading package: libxau6 +Downloading package: libgtk2.0-0t64 +Downloading package: libxcb1 +Downloading package: libgstreamer-gl1.0-0 +Downloading package: libssh-gcrypt-4 +Downloading package: libllvm20 +Downloading package: libxcomposite1 +Downloading package: libmfx1 +Downloading package: libmpcdec6 +Downloading package: libnuma1 +Downloading package: libcdio19t64 +Downloading package: libdirectfb-1.7-7t64 +Downloading package: libxdamage1 +Downloading package: libgdk-pixbuf-2.0-0 +Downloading package: libsasl2-modules-db +Downloading package: libfaad2 +Downloading package: timgm6mb-soundfont +Downloading package: libcairo-gobject2 +Downloading package: fonts-noto-mono +Downloading package: liblerc4 +Downloading package: ubuntu-mono +Downloading package: libgupnp-igd-1.6-0 +Downloading package: libgdbm6t64 +Downloading package: libxml2 +Downloading package: libglib2.0-data +Downloading package: humanity-icon-theme +Downloading package: libgtk2.0-common +Downloading package: libgraphite2-3 +Downloading package: util-linux +Downloading package: libdconf1 +Downloading package: libfontconfig1 +Downloading package: libcups2t64 +Downloading package: libvdpau1 +Downloading package: libsbc1 +Downloading package: libmodplug1 +Downloading package: libopenexr-3-1-30 +Downloading package: libopenh264-7 +Downloading package: libpostproc57 +Downloading package: libxss1 +Downloading package: shared-mime-info +Downloading package: libatspi2.0-0t64 +Downloading package: glib-networking-common +Downloading package: libgles2 +Downloading package: libgl1-mesa-dri +Downloading package: libcurl3t64-gnutls +Downloading package: libasound2t64 +Downloading package: libxrandr2 +Downloading package: libjxl0.7 +Downloading package: fontconfig-config +Downloading package: gtk2-engines-murrine +Downloading package: libmp3lame0 +Downloading package: libsoxr0 +Downloading package: libx11-data +Downloading package: libsoup-3.0-0 +Downloading package: libgudev-1.0-0 +Downloading package: libgstreamer-plugins-good1.0-0 +Downloading package: libavc1394-0 +Downloading package: libsodium23 +Downloading package: libudfread0 +Downloading package: libjson-glib-1.0-common +Downloading package: libmjpegutils-2.1-0t64 +Downloading package: gnome-themes-extra-data +Downloading package: libmbedcrypto7t64 +Downloading package: libsnappy1v5 +Downloading package: libsndio7.0 +Downloading package: libopus0 +Downloading package: libpangocairo-1.0-0 +Downloading package: libnorm1t64 +Downloading package: libxtst6 +Downloading package: glib-networking-services +Downloading package: libmysofa1 +Downloading package: yaru-theme-gtk +Downloading package: libavcodec60 +Downloading package: libzimg2 +Downloading package: libgstreamer-plugins-bad1.0-0 +Downloading package: libxcb-render0 +Downloading package: libusb-1.0-0 +Downloading package: libvisual-0.4-0 +Downloading package: libgssdp-1.6-0 +Downloading package: libimath-3-1-29t64 +Downloading package: libzvbi0t64 +Downloading package: gsettings-desktop-schemas +Downloading package: fonts-noto-core +Downloading package: libdvdread8t64 +Downloading package: gstreamer1.0-plugins-good +Downloading package: libwebrtc-audio-processing1 +Downloading package: libopenni2-0 +Downloading package: gstreamer1.0-plugins-base +Downloading package: libopenal1 +Downloading package: libvorbisenc2 +Downloading package: libasyncns0 +Downloading package: libunibreak5 +Downloading package: libnss3 +Downloading package: libpangoft2-1.0-0 +Downloading package: libtheora0 +Downloading package: libxvidcore4 +Downloading package: libpocketsphinx3 +Downloading package: libspandsp2t64 +Downloading package: libsndfile1 +Downloading package: libavutil58 +Downloading package: liborc-0.4-0t64 +Downloading package: libwebp7 +Downloading package: libsidplay1v5 +Downloading package: libwildmidi2 +Downloading package: libxslt1.1 +Downloading package: libswscale7 +Downloading package: fonts-dejavu-mono +Downloading package: liblc3-1 +Downloading package: libatk1.0-0t64 +Downloading package: libspeex1 +Downloading package: libmpeg2-4 +Downloading package: libasound2-data +Downloading package: adduser +Downloading package: libflac12t64 +Downloading package: libthai-data +Downloading package: libgstreamer1.0-0 +Downloading package: libdca0 +Downloading package: libavahi-common3 +Downloading package: liblrdf0 +Downloading package: librsvg2-2 +Downloading package: libsamplerate0 +Downloading package: liberror-perl +Downloading package: ocl-icd-libopencl1 +Downloading package: libxcb-glx0 +Downloading package: libldacbt-enc2 +Downloading package: libogg0 +Downloading package: libxinerama1 +Downloading package: libsord-0-0 +Downloading package: libjbig0 +Downloading package: libflite1 +Downloading package: libopenjp2-7 +Downloading package: libwayland-egl1 +Downloading package: libcdparanoia0 +Downloading package: libplacebo338 +Downloading package: libzix-0-0 +Downloading package: libvorbis0a +Downloading package: libsdl2-2.0-0 +Downloading package: libdw1t64 +Downloading package: libjson-glib-1.0-0 +Downloading package: perl-base +Downloading package: libspa-0.2-modules +Downloading package: libzmq5 +Downloading package: libdrm-amdgpu1 +Downloading package: gtk2-engines-pixbuf +Downloading package: dconf-gsettings-backend +Downloading package: libchromaprint1 +Downloading package: libsensors5 +Downloading package: libxcb-randr0 +Downloading package: libvo-amrwbenc0 +Downloading package: libswresample4 +Downloading package: librabbitmq4 +Downloading package: libpipewire-0.3-0t64 +Downloading package: gtk-update-icon-cache +Downloading package: libxcb-xkb1 +Downloading package: libsrtp2-1 +Downloading package: libxext6 +Downloading package: libsoup-3.0-common +Downloading package: libgtk-3-common +Downloading package: libdvdnav4 +Downloading package: libdc1394-25 +Downloading package: libmplex2-2.1-0t64 +Downloading package: liba52-0.7.4 +Downloading package: libnice10 +Downloading package: libmpeg2encpp-2.1-0t64 +Downloading package: libharfbuzz0b +Downloading package: fonts-dejavu-core +Downloading package: libinstpatch-1.0-2 +Downloading package: libsoundtouch1 +Downloading package: libavformat60 +Downloading package: libaa1 +Downloading package: liblilv-0-0 +Downloading package: libmpg123-0t64 +Downloading package: gstreamer1.0-plugins-bad +Downloading package: libslang2 +Downloading package: libegl-mesa0 +Downloading package: session-migration +Downloading package: libva-drm2 +Downloading package: libxcb-shm0 +Downloading package: libgtk-3-0t64 +Downloading package: gnome-themes-extra +Downloading package: dconf-service +Downloading package: perl-modules-5.38 +Downloading package: libgl1 +Downloading package: libzbar0t64 +Downloading package: libegl1 +Downloading package: libx11-6 +Downloading package: libgstreamer-plugins-base1.0-0 +Downloading package: libtag1v5-vanilla +Downloading package: libwayland-client0 +Downloading package: gstreamer1.0-libav +Downloading package: liblapack3 +Downloading package: libopenmpt0t64 +Downloading package: libperl5.38t64 +Downloading package: libxkbcommon-x11-0 +Downloading package: liblcms2-2 +Downloading package: git-man +Downloading package: libatk-bridge2.0-0t64 +Downloading package: libde265-0 +Downloading package: libepoxy0 +Downloading package: libpgm-5.3-0t64 +Downloading package: libxcb-sync1 +Downloading package: libicu74 +Downloading package: libneon27t64 +Downloading package: at-spi2-common +Downloading package: libavahi-client3 +Downloading package: glib-networking +Downloading package: librav1e0 +Downloading package: libva2 +Downloading package: libdrm-intel1 +Downloading package: libxfixes3 +Downloading package: libxdmcp6 +Downloading package: libncurses6 +Downloading package: libxi6 +Downloading package: iso-codes +Downloading package: libxcb-xfixes0 +Downloading package: libavfilter9 +Downloading package: libnspr4 +Downloading package: libsratom-0-0 +Downloading package: libgdk-pixbuf2.0-common +Extracting stage package: fontconfig +Extracting stage package: libvulkan1 +Extracting stage package: libsvtav1enc1d1 +Extracting stage package: libhwy1t64 +Extracting stage package: libxcb-present0 +Extracting stage package: yaru-theme-icon +Extracting stage package: libyajl2 +Extracting stage package: libv4lconvert0t64 +Extracting stage package: libgomp1 +Extracting stage package: libzxing3 +Extracting stage package: libpulse0 +Extracting stage package: libwebpmux3 +Extracting stage package: libopenal-data +Extracting stage package: libltc11 +Extracting stage package: libvpl2 +Extracting stage package: libserd-0-0 +Extracting stage package: libvpx9 +Extracting stage package: libxxf86vm1 +Extracting stage package: libcodec2-1.2 +Extracting stage package: librubberband2 +Extracting stage package: libsharpyuv0 +Extracting stage package: libnghttp2-14 +Extracting stage package: openssh-client +Extracting stage package: libglx-mesa0 +Extracting stage package: libtwolame0 +Extracting stage package: gstreamer1.0-plugins-ugly +Extracting stage package: libzvbi-common +Extracting stage package: libjack-jackd2-0 +Extracting stage package: libfreeaptx0 +Extracting stage package: libdatrie1 +Extracting stage package: libthai0 +Extracting stage package: libssh-4 +Extracting stage package: libxrender1 +Extracting stage package: libldap2 +Extracting stage package: libglvnd0 +Extracting stage package: libproxy1v5 +Extracting stage package: libgdbm-compat4t64 +Extracting stage package: libraptor2-0 +Extracting stage package: libsensors-config +Extracting stage package: hicolor-icon-theme +Extracting stage package: git +Extracting stage package: libglib2.0-bin +Extracting stage package: perl +Extracting stage package: libx11-xcb1 +Extracting stage package: libxshmfence1 +Extracting stage package: libfluidsynth3 +Extracting stage package: libunwind8 +Extracting stage package: libdecor-0-0 +Extracting stage package: libpango-1.0-0 +Extracting stage package: libvo-aacenc0 +Extracting stage package: libwavpack1 +Extracting stage package: libavtp0 +Extracting stage package: libsrt1.5-gnutls +Extracting stage package: libwayland-cursor0 +Extracting stage package: libx264-164 +Extracting stage package: libshine3 +Extracting stage package: libaom3 +Extracting stage package: lsb-base +Extracting stage package: libjpeg-turbo8 +Extracting stage package: libv4l-0t64 +Extracting stage package: libavahi-common-data +Extracting stage package: libcolord2 +Extracting stage package: libpsl5t64 +Extracting stage package: libx265-199 +Extracting stage package: libass9 +Extracting stage package: libsasl2-2 +Extracting stage package: libxcb-dri3-0 +Extracting stage package: libcairo2 +Extracting stage package: libgbm1 +Extracting stage package: libxcursor1 +Extracting stage package: libbluray2 +Extracting stage package: libvorbisfile3 +Extracting stage package: libdv4t64 +Extracting stage package: libblas3 +Extracting stage package: libdeflate0 +Extracting stage package: libqrencode4 +Extracting stage package: libjpeg8 +Extracting stage package: x11-common +Extracting stage package: libiec61883-0 +Extracting stage package: libsphinxbase3t64 +Extracting stage package: libbs2b0 +Extracting stage package: libfftw3-double3 +Extracting stage package: libglx0 +Extracting stage package: libgme0 +Extracting stage package: libdav1d7 +Extracting stage package: libcaca0 +Extracting stage package: libfribidi0 +Extracting stage package: mesa-libgallium +Extracting stage package: libraw1394-11 +Extracting stage package: librtmp1 +Extracting stage package: adwaita-icon-theme +Extracting stage package: libgpm2 +Extracting stage package: libtiff6 +Extracting stage package: libgfortran5 +Extracting stage package: libpixman-1-0 +Extracting stage package: libtag1v5 +Extracting stage package: libvidstab1.1 +Extracting stage package: libva-x11-2 +Extracting stage package: librist4 +Extracting stage package: libgsm1 +Extracting stage package: libgupnp-1.6-0 +Extracting stage package: libcjson1 +Extracting stage package: libshout3 +Extracting stage package: libxau6 +Extracting stage package: libgtk2.0-0t64 +Extracting stage package: libxcb1 +Extracting stage package: libgstreamer-gl1.0-0 +Extracting stage package: libssh-gcrypt-4 +Extracting stage package: libllvm20 +Extracting stage package: libxcomposite1 +Extracting stage package: libmfx1 +Extracting stage package: libmpcdec6 +Extracting stage package: libnuma1 +Extracting stage package: libcdio19t64 +Extracting stage package: libdirectfb-1.7-7t64 +Extracting stage package: libxdamage1 +Extracting stage package: libgdk-pixbuf-2.0-0 +Extracting stage package: libsasl2-modules-db +Extracting stage package: libfaad2 +Extracting stage package: timgm6mb-soundfont +Extracting stage package: libcairo-gobject2 +Extracting stage package: fonts-noto-mono +Extracting stage package: liblerc4 +Extracting stage package: ubuntu-mono +Extracting stage package: libgupnp-igd-1.6-0 +Extracting stage package: libgdbm6t64 +Extracting stage package: libxml2 +Extracting stage package: libglib2.0-data +Extracting stage package: humanity-icon-theme +Extracting stage package: libgtk2.0-common +Extracting stage package: libgraphite2-3 +Extracting stage package: util-linux +Extracting stage package: libdconf1 +Extracting stage package: libfontconfig1 +Extracting stage package: libcups2t64 +Extracting stage package: libvdpau1 +Extracting stage package: libsbc1 +Extracting stage package: libmodplug1 +Extracting stage package: libopenexr-3-1-30 +Extracting stage package: libopenh264-7 +Extracting stage package: libpostproc57 +Extracting stage package: libxss1 +Extracting stage package: shared-mime-info +Extracting stage package: libatspi2.0-0t64 +Extracting stage package: glib-networking-common +Extracting stage package: libgles2 +Extracting stage package: libgl1-mesa-dri +Extracting stage package: libcurl3t64-gnutls +Extracting stage package: libasound2t64 +Extracting stage package: libxrandr2 +Extracting stage package: libjxl0.7 +Extracting stage package: fontconfig-config +Extracting stage package: gtk2-engines-murrine +Extracting stage package: libmp3lame0 +Extracting stage package: libsoxr0 +Extracting stage package: libx11-data +Extracting stage package: libsoup-3.0-0 +Extracting stage package: libgudev-1.0-0 +Extracting stage package: libgstreamer-plugins-good1.0-0 +Extracting stage package: libavc1394-0 +Extracting stage package: libsodium23 +Extracting stage package: libudfread0 +Extracting stage package: libjson-glib-1.0-common +Extracting stage package: libmjpegutils-2.1-0t64 +Extracting stage package: gnome-themes-extra-data +Extracting stage package: libmbedcrypto7t64 +Extracting stage package: libsnappy1v5 +Extracting stage package: libsndio7.0 +Extracting stage package: libopus0 +Extracting stage package: libpangocairo-1.0-0 +Extracting stage package: libnorm1t64 +Extracting stage package: libxtst6 +Extracting stage package: glib-networking-services +Extracting stage package: libmysofa1 +Extracting stage package: yaru-theme-gtk +Extracting stage package: libavcodec60 +Extracting stage package: libzimg2 +Extracting stage package: libgstreamer-plugins-bad1.0-0 +Extracting stage package: libxcb-render0 +Extracting stage package: libusb-1.0-0 +Extracting stage package: libvisual-0.4-0 +Extracting stage package: libgssdp-1.6-0 +Extracting stage package: libimath-3-1-29t64 +Extracting stage package: libzvbi0t64 +Extracting stage package: gsettings-desktop-schemas +Extracting stage package: fonts-noto-core +Extracting stage package: libdvdread8t64 +Extracting stage package: gstreamer1.0-plugins-good +Extracting stage package: libwebrtc-audio-processing1 +Extracting stage package: libopenni2-0 +Extracting stage package: gstreamer1.0-plugins-base +Extracting stage package: libopenal1 +Extracting stage package: libvorbisenc2 +Extracting stage package: libasyncns0 +Extracting stage package: libunibreak5 +Extracting stage package: libnss3 +Extracting stage package: libpangoft2-1.0-0 +Extracting stage package: libtheora0 +Extracting stage package: libxvidcore4 +Extracting stage package: libpocketsphinx3 +Extracting stage package: libspandsp2t64 +Extracting stage package: libsndfile1 +Extracting stage package: libavutil58 +Extracting stage package: liborc-0.4-0t64 +Extracting stage package: libwebp7 +Extracting stage package: libsidplay1v5 +Extracting stage package: libwildmidi2 +Extracting stage package: libxslt1.1 +Extracting stage package: libswscale7 +Extracting stage package: fonts-dejavu-mono +Extracting stage package: liblc3-1 +Extracting stage package: libatk1.0-0t64 +Extracting stage package: libspeex1 +Extracting stage package: libmpeg2-4 +Extracting stage package: libasound2-data +Extracting stage package: adduser +Extracting stage package: libflac12t64 +Extracting stage package: libthai-data +Extracting stage package: libgstreamer1.0-0 +Extracting stage package: libdca0 +Extracting stage package: libavahi-common3 +Extracting stage package: liblrdf0 +Extracting stage package: librsvg2-2 +Extracting stage package: libsamplerate0 +Extracting stage package: liberror-perl +Extracting stage package: ocl-icd-libopencl1 +Extracting stage package: libxcb-glx0 +Extracting stage package: libldacbt-enc2 +Extracting stage package: libogg0 +Extracting stage package: libxinerama1 +Extracting stage package: libsord-0-0 +Extracting stage package: libjbig0 +Extracting stage package: libflite1 +Extracting stage package: libopenjp2-7 +Extracting stage package: libwayland-egl1 +Extracting stage package: libcdparanoia0 +Extracting stage package: libplacebo338 +Extracting stage package: libzix-0-0 +Extracting stage package: libvorbis0a +Extracting stage package: libsdl2-2.0-0 +Extracting stage package: libdw1t64 +Extracting stage package: libjson-glib-1.0-0 +Extracting stage package: perl-base +Extracting stage package: libspa-0.2-modules +Extracting stage package: libzmq5 +Extracting stage package: libdrm-amdgpu1 +Extracting stage package: gtk2-engines-pixbuf +Extracting stage package: dconf-gsettings-backend +Extracting stage package: libchromaprint1 +Extracting stage package: libsensors5 +Extracting stage package: libxcb-randr0 +Extracting stage package: libvo-amrwbenc0 +Extracting stage package: libswresample4 +Extracting stage package: librabbitmq4 +Extracting stage package: libpipewire-0.3-0t64 +Extracting stage package: gtk-update-icon-cache +Extracting stage package: libxcb-xkb1 +Extracting stage package: libsrtp2-1 +Extracting stage package: libxext6 +Extracting stage package: libsoup-3.0-common +Extracting stage package: libgtk-3-common +Extracting stage package: libdvdnav4 +Extracting stage package: libdc1394-25 +Extracting stage package: libmplex2-2.1-0t64 +Extracting stage package: liba52-0.7.4 +Extracting stage package: libnice10 +Extracting stage package: libmpeg2encpp-2.1-0t64 +Extracting stage package: libharfbuzz0b +Extracting stage package: fonts-dejavu-core +Extracting stage package: libinstpatch-1.0-2 +Extracting stage package: libsoundtouch1 +Extracting stage package: libavformat60 +Extracting stage package: libaa1 +Extracting stage package: liblilv-0-0 +Extracting stage package: libmpg123-0t64 +Extracting stage package: gstreamer1.0-plugins-bad +Extracting stage package: libslang2 +Extracting stage package: libegl-mesa0 +Extracting stage package: session-migration +Extracting stage package: libva-drm2 +Extracting stage package: libxcb-shm0 +Extracting stage package: libgtk-3-0t64 +Extracting stage package: gnome-themes-extra +Extracting stage package: dconf-service +Extracting stage package: perl-modules-5.38 +Extracting stage package: libgl1 +Extracting stage package: libzbar0t64 +Extracting stage package: libegl1 +Extracting stage package: libx11-6 +Extracting stage package: libgstreamer-plugins-base1.0-0 +Extracting stage package: libtag1v5-vanilla +Extracting stage package: libwayland-client0 +Extracting stage package: gstreamer1.0-libav +Extracting stage package: liblapack3 +Extracting stage package: libopenmpt0t64 +Extracting stage package: libperl5.38t64 +Extracting stage package: libxkbcommon-x11-0 +Extracting stage package: liblcms2-2 +Extracting stage package: git-man +Extracting stage package: libatk-bridge2.0-0t64 +Extracting stage package: libde265-0 +Extracting stage package: libepoxy0 +Extracting stage package: libpgm-5.3-0t64 +Extracting stage package: libxcb-sync1 +Extracting stage package: libicu74 +Extracting stage package: libneon27t64 +Extracting stage package: at-spi2-common +Extracting stage package: libavahi-client3 +Extracting stage package: glib-networking +Extracting stage package: librav1e0 +Extracting stage package: libva2 +Extracting stage package: libdrm-intel1 +Extracting stage package: libxfixes3 +Extracting stage package: libxdmcp6 +Extracting stage package: libncurses6 +Extracting stage package: libxi6 +Extracting stage package: iso-codes +Extracting stage package: libxcb-xfixes0 +Extracting stage package: libavfilter9 +Extracting stage package: libnspr4 +Extracting stage package: libsratom-0-0 +Extracting stage package: libgdk-pixbuf2.0-common +Pulling desktop-integration +Pulling gnome/sdk +Building busymark +Removing suid/guid from /project/parts/busymark/install/usr/bin/su +Removing suid/guid from /project/parts/busymark/install/usr/lib/openssh/ssh-keysign +:: + rm -rf /project/parts/busymark/build/build +:: + rm -rf /project/parts/busymark/build/.dart_tool +:: + rm -rf /project/parts/busymark/build/linux/flutter/ephemeral +:: + flutter_sdk=/project/parts/busymark/build/flutter-distro +:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD +:: ++ true +:: + flutter_sdk_version= +:: + '[' '!' -x /project/parts/busymark/build/flutter-distro/bin/flutter ']' +:: + rm -rf /project/parts/busymark/build/flutter-distro +:: + git clone --depth 1 --branch 3.47.5 https://github.com/flutter/flutter.git /project/parts/busymark/build/flutter-distro +:: Cloning into '/project/parts/busymark/build/flutter-distro'... +:: Note: switching to '6a19cca56475dbfba1478ee68d7bd0c2ef891da1'. +:: +:: You are in 'detached HEAD' state. You can look around, make experimental +:: changes and commit them, and you can discard any commits you make in this +:: state without impacting any branches by switching back to a branch. +:: +:: If you want to create a new branch to retain commits you create, you may +:: do so (now or later) by using -c with the switch command. Example: +:: +:: git switch -c +:: +:: Or undo this operation with: +:: +:: git switch - +:: +:: Turn off this advice by setting config variable advice.detachedHead to false +:: +:: Updating files: 78% (12539/16074) Updating files: 79% (12699/16074) Updating files: 80% (12860/16074) Updating files: 81% (13020/16074) Updating files: 82% (13181/16074) Updating files: 83% (13342/16074) Updating files: 84% (13503/16074) Updating files: 85% (13663/16074) Updating files: 86% (13824/16074) Updating files: 87% (13985/16074) Updating files: 88% (14146/16074) Updating files: 89% (14306/16074) Updating files: 90% (14467/16074) Updating files: 91% (14628/16074) Updating files: 92% (14789/16074) Updating files: 93% (14949/16074) Updating files: 94% (15110/16074) Updating files: 95% (15271/16074) Updating files: 96% (15432/16074) Updating files: 97% (15592/16074) Updating files: 98% (15753/16074) Updating files: 99% (15914/16074) Updating files: 100% (16074/16074) Updating files: 100% (16074/16074), done. +:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD +:: + test 3.47.5 = 3.47.5 +:: + export CI=true +:: + CI=true +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check precache --linux +:: Downloading Linux x64 Dart SDK from Flutter engine af7e796e161ae0bb1ff0758c71a7105418bd9ded... +:: % Total % Received % Xferd Average Speed Time Time Time Current +:: Dload Upload Total Spent Left Speed +:: 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 5 227M 5 12.2M 0 0 10.4M 0 0:00:21 0:00:01 0:00:20 10.4M 13 227M 13 30.0M 0 0 11.7M 0 0:00:19 0:00:02 0:00:17 11.7M 21 227M 21 48.9M 0 0 15.4M 0 0:00:14 0:00:03 0:00:11 15.4M 37 227M 37 84.7M 0 0 20.3M 0 0:00:11 0:00:04 0:00:07 20.3M 50 227M 50 114M 0 0 22.2M 0 0:00:10 0:00:05 0:00:05 23.2M 60 227M 60 136M 0 0 22.1M 0 0:00:10 0:00:06 0:00:04 24.9M 66 227M 66 151M 0 0 18.0M 0 0:00:12 0:00:08 0:00:04 20.7M 76 227M 76 173M 0 0 18.9M 0 0:00:12 0:00:09 0:00:03 20.7M 89 227M 89 203M 0 0 20.0M 0 0:00:11 0:00:10 0:00:01 19.8M 100 227M 100 227M 0 0 20.5M 0 0:00:11 0:00:11 --:--:-- 19.1M +:: Building flutter tool... +:: Resolving dependencies... +:: Downloading packages... +:: + _fe_analyzer_shared 95.0.0 (109.0.0 available) +:: + analyzer 10.1.0 (14.5.0 available) +:: + archive 3.6.1 (4.3.0 available) +:: + args 2.7.0 +:: + async 2.13.1 +:: + boolean_selector 2.1.2 +:: + browser_launcher 1.1.3 (1.2.0 available) +:: + built_collection 5.1.1 (5.1.2 available) +:: + built_value 8.12.6 (8.13.0 available) +:: + checked_yaml 2.0.4 +:: + cli_config 0.2.0 +:: + clock 1.1.2 (1.1.3 available) +:: + code_assets 1.2.1 (2.1.0 available) +:: + code_builder 4.11.1 (4.12.0 available) +:: + collection 1.19.1 +:: + completion 1.0.2 +:: + convert 3.1.2 +:: + coverage 1.15.1 +:: + crypto 3.0.7 +:: + csslib 1.0.2 +:: + dap 1.4.0 +:: + dart_service_protocol_shared 0.0.3 +:: + dart_style 3.1.7 (3.1.13 available) +:: + data_assets 0.20.0 +:: + dds 5.4.0 +:: + dds_service_extensions 2.1.0 +:: + devtools_shared 13.1.0 (14.0.0 available) +:: + dtd 4.0.0 +:: + dwds 27.1.2 (27.1.4 available) +:: + extension_discovery 2.1.0 +:: + fake_async 1.3.3 +:: + ffi 2.2.0 +:: + file 7.0.1 +:: + file_testing 3.0.2 (3.1.0 available) +:: + fixnum 1.1.1 +:: + flutter_template_images 5.0.0 (5.0.1 available) +:: + frontend_server_client 4.0.0 (4.1.0 available) +:: + glob 2.1.3 (2.2.0 available) +:: + graphs 2.3.2 +:: + hooks 2.0.2 (2.2.0 available) +:: + hooks_runner 1.5.0 (1.6.4 available) +:: + html 0.15.6 (0.15.7 available) +:: + http 1.6.0 +:: + http_multi_server 3.2.2 +:: + http_parser 4.1.2 +:: + intl 0.20.3 +:: + io 1.0.5 (1.1.0 available) +:: + js 0.7.2 (discontinued) +:: + json_annotation 4.12.0 +:: + json_rpc_2 4.1.0 +:: + logging 1.3.0 +:: + matcher 0.12.20 +:: + meta 1.18.3 (1.19.0 available) +:: + mime 2.0.0 (2.1.0 available) +:: + multicast_dns 0.3.3+1 +:: + mustache_template 2.0.5 (2.0.6 available) +:: + native_stack_traces 0.6.1 (0.7.0 available) +:: + node_preamble 2.0.2 +:: + package_config 2.2.0 (3.0.0 available) +:: + path 1.9.1 +:: + petitparser 7.0.2 (7.1.0 available) +:: + platform 3.1.6 (3.2.0 available) +:: + pool 1.5.2 (1.5.3 available) +:: + process 5.0.5 (5.0.6 available) +:: + pub_semver 2.2.0 (2.2.1 available) +:: + pubspec_parse 1.5.0 (1.6.0 available) +:: + record_use 0.6.0 (1.1.1 available) +:: + shelf 1.4.2 +:: + shelf_packages_handler 3.0.2 +:: + shelf_proxy 1.0.5 +:: + shelf_static 1.1.3 +:: + shelf_web_socket 3.0.0 +:: + source_map_stack_trace 2.1.2 +:: + source_maps 0.10.13 (0.10.14 available) +:: + source_span 1.10.2 +:: + sprintf 7.0.0 +:: + sse 4.2.0 +:: + stack_trace 1.12.1 (1.12.2 available) +:: + standard_message_codec 0.0.1+5 +:: + stream_channel 2.1.4 +:: + string_scanner 1.4.1 +:: + sync_http 0.3.1 +:: + term_glyph 1.2.2 +:: + test 1.31.1 (1.32.0 available) +:: + test_api 0.7.12 (0.7.14 available) +:: + test_core 0.6.18 (0.6.20 available) +:: + typed_data 1.4.0 +:: + unified_analytics 8.0.15 (8.0.18 available) +:: + uuid 4.5.3 (4.6.0 available) +:: + vm_service 15.2.0 (15.3.0 available) +:: + vm_service_interface 2.0.1 +:: + vm_snapshot_analysis 0.7.6 +:: + watcher 1.2.1 +:: + web 1.1.1 +:: + web_socket 1.0.1 +:: + web_socket_channel 3.0.3 +:: + webdriver 3.1.0 (3.2.0 available) +:: + webkit_inspection_protocol 1.2.1 +:: + xml 6.6.1 (7.1.0 available) +:: + yaml 3.1.3 (3.1.4 available) +:: + yaml_edit 2.2.4 +:: Changed 101 dependencies! +:: 1 package is discontinued. +:: 43 packages have newer versions incompatible with dependency constraints. +:: Try `dart pub outdated` for more information. +:: [1/11] Material Fonts 5.5s +:: [2/11] Gradle Wrapper 196ms +:: [3/11] Flutter SDK +:: ├─ [1/5] sky_engine 171ms +:: ├─ [2/5] flutter_gpu 51ms +:: ├─ [3/5] flutter_patched_sdk 192ms +:: ├─ [4/5] flutter_patched_sdk_product 156ms +:: └─ [5/5] linux-x64 2,451ms +:: [4/11] Linux SDK +:: ├─ [1/3] linux-x64-debug/linux-x64-flutter-gtk 615ms +:: ├─ [2/3] linux-x64-profile/linux-x64-flutter-gtk 453ms +:: └─ [3/3] linux-x64-release/linux-x64-flutter-gtk 496ms +:: [11/11] linux-x64/font-subset 127ms +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get +:: Resolving dependencies... +:: Downloading packages... +:: _fe_analyzer_shared 99.0.0 (109.0.0 available) +:: analyzer 12.1.0 (14.5.0 available) +:: animated_vector 0.2.2 (0.2.3 available) +:: animated_vector_annotations 0.2.2 (0.3.0 available) +:: archive 4.0.9 (4.3.0 available) +:: assorted_layout_widgets 11.0.0 (13.1.0 available) +:: clock 1.1.2 (1.1.3 available) +:: code_assets 1.2.1 (2.1.0 available) +:: cross_file 0.3.5+4 (0.4.0 available) +:: dbus 0.7.13 (0.8.0 available) +:: file_selector_android 0.5.2+8 (0.5.2+11 available) +:: file_selector_ios 0.5.3+5 (0.5.3+6 available) +:: file_selector_linux 0.9.4 (0.9.4+1 available) +:: file_selector_macos 0.9.5 (0.9.5+1 available) +:: file_selector_windows 0.9.3+5 (0.9.3+6 available) +:: flutter_riverpod 3.3.2 (3.4.3 available) +:: frontend_server_client 4.0.0 (4.1.0 available) +:: glob 2.1.3 (2.2.0 available) +:: go_router 17.3.0 (18.0.2 available) +:: gsettings 0.2.8 (0.2.9 available) +:: html 0.15.6 (0.15.7 available) +:: image 4.9.1 (4.10.1 available) +:: io 1.0.5 (1.1.0 available) +:: jni 1.0.0 (1.1.0 available) +:: jni_flutter 1.0.1 (1.0.4+1 available) +:: material_color_utilities 0.13.0 (0.13.1 available) +:: mime 2.0.0 (2.1.0 available) +:: native_toolchain_c 0.19.3 (0.19.5 available) +:: objective_c 9.4.1 (9.6.2 available) +:: package_config 2.2.0 (3.0.0 available) +:: package_info_plus 10.2.1 (10.2.2 available) +:: petitparser 7.0.2 (7.1.0 available) +:: platform 3.1.6 (3.2.0 available) +:: pool 1.5.2 (1.5.3 available) +:: posix 6.5.0 (6.5.2 available) +:: pub_semver 2.2.0 (2.2.1 available) +:: riverpod 3.3.2 (3.4.3 available) +:: source_maps 0.10.13 (0.10.14 available) +:: stack_trace 1.12.1 (1.12.2 available) +:: test 1.31.1 (1.32.0 available) +:: test_api 0.7.12 (0.7.14 available) +:: test_core 0.6.18 (0.6.20 available) +:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) +:: unorm_dart 0.3.2 (0.3.3 available) +:: url_launcher 6.3.2 (6.3.3 available) +:: url_launcher_android 6.3.32 (6.3.33 available) +:: url_launcher_ios 6.4.1 (6.4.2 available) +:: url_launcher_linux 3.2.2 (3.2.3 available) +:: url_launcher_macos 3.2.5 (3.2.6 available) +:: url_launcher_windows 3.1.5 (3.1.6 available) +:: vector_graphics 1.2.2 (1.2.3 available) +:: vector_graphics_compiler 1.2.6 (1.3.0 available) +:: vector_math 2.4.2 (2.4.3 available) +:: vm_service 15.2.0 (15.3.0 available) +:: win32 6.3.0 (6.4.0 available) +:: xml 7.0.1 (7.1.0 available) +:: yaml 3.1.3 (3.1.4 available) +:: yaru 10.2.0 (11.0.0 available) +:: Got dependencies! +:: 58 packages have newer versions incompatible with dependency constraints. +:: Try `flutter pub outdated` for more information. +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart +:: [ +11 ms] Unable to locate an Android SDK. +:: [ +7 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ +30 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ +16 ms] executing: [/project/parts/busymark/build/] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart pub --suppress-analytics --directory . get --example +:: Resolving dependencies... +:: Downloading packages... +:: _fe_analyzer_shared 99.0.0 (109.0.0 available) +:: analyzer 12.1.0 (14.5.0 available) +:: animated_vector 0.2.2 (0.2.3 available) +:: animated_vector_annotations 0.2.2 (0.3.0 available) +:: archive 4.0.9 (4.3.0 available) +:: assorted_layout_widgets 11.0.0 (13.1.0 available) +:: clock 1.1.2 (1.1.3 available) +:: code_assets 1.2.1 (2.1.0 available) +:: cross_file 0.3.5+4 (0.4.0 available) +:: dbus 0.7.13 (0.8.0 available) +:: file_selector_android 0.5.2+8 (0.5.2+11 available) +:: file_selector_ios 0.5.3+5 (0.5.3+6 available) +:: file_selector_linux 0.9.4 (0.9.4+1 available) +:: file_selector_macos 0.9.5 (0.9.5+1 available) +:: file_selector_windows 0.9.3+5 (0.9.3+6 available) +:: flutter_riverpod 3.3.2 (3.4.3 available) +:: frontend_server_client 4.0.0 (4.1.0 available) +:: glob 2.1.3 (2.2.0 available) +:: go_router 17.3.0 (18.0.2 available) +:: gsettings 0.2.8 (0.2.9 available) +:: html 0.15.6 (0.15.7 available) +:: image 4.9.1 (4.10.1 available) +:: io 1.0.5 (1.1.0 available) +:: jni 1.0.0 (1.1.0 available) +:: jni_flutter 1.0.1 (1.0.4+1 available) +:: material_color_utilities 0.13.0 (0.13.1 available) +:: mime 2.0.0 (2.1.0 available) +:: native_toolchain_c 0.19.3 (0.19.5 available) +:: objective_c 9.4.1 (9.6.2 available) +:: package_config 2.2.0 (3.0.0 available) +:: package_info_plus 10.2.1 (10.2.2 available) +:: petitparser 7.0.2 (7.1.0 available) +:: platform 3.1.6 (3.2.0 available) +:: pool 1.5.2 (1.5.3 available) +:: posix 6.5.0 (6.5.2 available) +:: pub_semver 2.2.0 (2.2.1 available) +:: riverpod 3.3.2 (3.4.3 available) +:: source_maps 0.10.13 (0.10.14 available) +:: stack_trace 1.12.1 (1.12.2 available) +:: test 1.31.1 (1.32.0 available) +:: test_api 0.7.12 (0.7.14 available) +:: test_core 0.6.18 (0.6.20 available) +:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) +:: unorm_dart 0.3.2 (0.3.3 available) +:: url_launcher 6.3.2 (6.3.3 available) +:: url_launcher_android 6.3.32 (6.3.33 available) +:: url_launcher_ios 6.4.1 (6.4.2 available) +:: url_launcher_linux 3.2.2 (3.2.3 available) +:: url_launcher_macos 3.2.5 (3.2.6 available) +:: url_launcher_windows 3.1.5 (3.1.6 available) +:: vector_graphics 1.2.2 (1.2.3 available) +:: vector_graphics_compiler 1.2.6 (1.3.0 available) +:: vector_math 2.4.2 (2.4.3 available) +:: vm_service 15.2.0 (15.3.0 available) +:: win32 6.3.0 (6.4.0 available) +:: xml 7.0.1 (7.1.0 available) +:: yaml 3.1.3 (3.1.4 available) +:: yaru 10.2.0 (11.0.0 available) +:: Got dependencies! +:: 58 packages have newer versions incompatible with dependency constraints. +:: Try `flutter pub outdated` for more information. +:: [ +518 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ +5 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ +4 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ +2 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ +2 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +21 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ +12 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ +1 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ +20 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ +23 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ ] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ +1 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ +1 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ ] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ ] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ ] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ +1 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +8 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ ] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ ] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ ] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ ] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ ] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ ] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ +5 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ ] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ ] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ ] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ +16 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ +7 ms] Skipping generating generated_plugin_registrant.h because it is up-to-date. +:: [ +2 ms] Skipping generating generated_plugin_registrant.cc because it is up-to-date. +:: [ +1 ms] Skipping generating generated_plugins.cmake because it is up-to-date. +:: [ +17 ms] Building Linux application... +:: [ +2 ms] executing: [/project/parts/busymark/build/build/linux/x64/release/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DFLUTTER_TARGET_PLATFORM=linux-x64 /project/parts/busymark/build/linux +:: [ +651 ms] -- The CXX compiler identification is Clang 18.1.3 +:: [ +37 ms] -- Detecting CXX compiler ABI info +:: [ +148 ms] -- Detecting CXX compiler ABI info - done +:: [ +5 ms] -- Check for working CXX compiler: /usr/bin/clang++ - skipped +:: [ +1 ms] -- Detecting CXX compile features +:: [ ] -- Detecting CXX compile features - done +:: [ +7 ms] -- Found PkgConfig: /snap/gnome-46-2404-sdk/current/usr/bin/pkg-config (found version "1.8.1") +:: [ ] -- Checking for module 'gtk+-3.0' +:: [ +32 ms] -- Found gtk+-3.0, version 3.24.50 +:: [ +178 ms] -- Checking for module 'glib-2.0' +:: [ +8 ms] -- Found glib-2.0, version 2.84.4 +:: [ +18 ms] -- Checking for module 'gio-2.0' +:: [ +8 ms] -- Found gio-2.0, version 2.84.4 +:: [ +28 ms] -- Checking for module 'libhandy-1' +:: [ +15 ms] -- Found libhandy-1, version 1.8.3 +:: [ +175 ms] -- Checking for module 'libsecret-1' +:: [ +11 ms] -- Found libsecret-1, version 0.21.7 +:: [ +26 ms] -- Checking for module 'webkit2gtk-4.1' +:: [ +19 ms] -- Found webkit2gtk-4.1, version 2.52.6 +:: [ +321 ms] -- The C compiler identification is Clang 18.1.3 +:: [ +30 ms] -- Detecting C compiler ABI info +:: [ +95 ms] -- Detecting C compiler ABI info - done +:: [ +7 ms] -- Check for working C compiler: /usr/bin/clang - skipped +:: [ ] -- Detecting C compile features +:: [ ] -- Detecting C compile features - done +:: [ +14 ms] -- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JVM) +:: [ +1 ms] -- Configuring done (1.8s) +:: [ +51 ms] -- Generating done (0.0s) +:: [ +6 ms] -- Build files have been written to: /project/parts/busymark/build/build/linux/x64/release +:: [ +7 ms] executing: ninja -C /project/parts/busymark/build/build/linux/x64/release install +:: [ +4 ms] ninja: Entering directory `/project/parts/busymark/build/build/linux/x64/release' +:: [+2772 ms] [1/34] Preparing checksum-pinned D2 renderer +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 47 20.2M 47 9855k 0 0 6156k 0 0:00:03 0:00:01 0:00:02 6156k +:: [ ] 100 20.2M 100 20.2M 0 0 9444k 0 0:00:02 0:00:02 --:--:-- 17.9M +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] Prepared D2 0.7.1 in /project/parts/busymark/build/build/linux/x64/release/d2/linux-x86_64 +:: [+1279 ms] [2/34] Preparing pinned Typst compiler for PDF export +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 31 16.6M 31 5324k 0 0 3326k 0 0:00:05 0:00:01 0:00:04 5389k +:: [ ] 100 16.6M 100 16.6M 0 0 6723k 0 0:00:02 0:00:02 --:--:-- 8868k +:: [ ] Prepared Typst 0.15.1 in /project/parts/busymark/build/build/linux/x64/release/typst/linux-x86_64 +:: [+15373 ms] [3/34] Preparing pinned offline visualization web engines +:: [ ] npm warn deprecated nomnom@1.5.2: Package no longer supported. Contact support@npmjs.com for more info. +:: [ ] added 435 packages in 9s +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 90353 0 90353 0 0 48986 0 --:--:-- 0:00:01 --:--:-- 48986 +:: [ ] 100 5395k 0 5395k 0 0 2155k 0 --:--:-- 0:00:02 --:--:-- 8066k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 2584k 100 2584k 0 0 3952k 0 --:--:-- --:--:-- --:--:-- 3952k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 109k 100 109k 0 0 484k 0 --:--:-- --:--:-- --:--:-- 485k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 1 2862k 1 56149 0 0 304k 0 0:00:09 --:--:-- 0:00:09 302k +:: [ ] 100 2862k 100 2862k 0 0 6621k 0 --:--:-- --:--:-- --:--:-- 6610k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 50065 100 50065 0 0 196k 0 --:--:-- --:--:-- --:--:-- 197k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 109k 100 109k 0 0 486k 0 --:--:-- --:--:-- --:--:-- 488k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 7334k 100 7334k 0 0 10.9M 0 --:--:-- --:--:-- --:--:-- 10.9M +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 13.2M 100 13.2M 0 0 15.7M 0 --:--:-- --:--:-- --:--:-- 15.7M +:: [ ] ▲ [WARNING] Cannot find base config file "../../tsconfig.json" [tsconfig.json] +:: [ ] ../../../../../../../../tmp/tmp.sxEkIqD9Dv/tool/mermaid-source/tsconfig.json:2:13: +:: [ ] 2 │ "extends": "../../tsconfig.json", +:: [ ] ╵ ~~~~~~~~~~~~~~~~~~~~~ +:: [ ] Prepared offline visualization web assets in /project/parts/busymark/build/build/linux/x64/release/visualization/web +:: [+70404 ms] [4/34] Generating /project/parts/busymark/build/linux/flutter/ephemeral/libflutter_linux_gtk.so, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_value.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_view.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_ +:: [ ] [ +13 ms] Unable to locate an Android SDK. +:: [ ] [ +9 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ ] [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ +39 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ ] [ +10 ms] Initializing file store +:: [ ] [ +28 ms] build_hooks: Starting due to {} +:: [ ] [ +1 ms] gen_localizations: Starting due to {} +:: [ ] [ +658 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/package_config.json} +:: [ ] [ +2 ms] unpack_linux: Starting due to {} +:: [ ] [ +149 ms] unpack_linux: Complete +:: [ ] [ +295 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ ] [ +6 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ ] [ +8 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ ] [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ ] [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ ] [ +2 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ ] [ +3 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ ] [ +4 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ ] [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ ] [ +3 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ ] [ +41 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ ] [ +2 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ ] [ +4 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ ] [ +4 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ ] [ +3 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ ] [ +2 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ ] [ +3 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ ] [ +25 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ ] [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ ] [ +3 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ ] [ +2 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ ] [ +4 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ ] [ +2 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ ] [ +2 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ ] [ +3 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ ] [ +28 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ ] [ +2 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] [ +1 ms] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] [ +1 ms] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] [ +1 ms] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] [ +1 ms] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ ] [ +18 ms] gen_dart_plugin_registrant: Complete +:: [ ] [ +100 ms] Running build hooks for linux_x64. +:: [ +1 ms] [ +50 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/hook/build.dart`. +:: [ ] [ +762 ms] gen_localizations: Complete +:: [ ] [ +66 ms] kernel_snapshot_program: Starting due to {} +:: [ +39 ms] [ +12 ms] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dartaotruntime /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/snapshots/frontend_server_aot.dart.snapshot --sdk-root /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/common/flutter_patched_sdk_product/ --target=flutter --no-print-incremental-dependencies -DFLUTTER_BUILD_NAME=0.6.1 -DFLUTTER_VERSION=3.47.5 -DFLUTTER_CHANNEL=[user-branch] -DFLUTTER_GIT_URL=https://github.com/flutter/flutter.git -DFLUTTER_FRAMEWORK_REVISION=6a19cca564 -DFLUTTER_ENGINE_REVISION=af7e796e16 -DFLUTTER_DART_VERSION=3.13.4 -Ddart.vm.profile=false -Ddart.vm.product=true --delete-tostring-package-uri=dart:ui --delete-tostring-package-uri=package:flutter --aot --tfa --target-os linux --packages /project/parts/busymark/build/.dart_tool/package_config.json --output-dill /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --depfile /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/kernel_snapshot_program.d --source file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --source package:flutter/src/dart_plugin_registrant.dart -Dflutter.dart_plugin_registrant=file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --verbosity=error --recorded-uses=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/recorded_uses.json package:busymark/main.dart +:: [ +1 ms] [ +251 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/objective_c/build/", +:: [ +1 ms] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/output.json", +:: [ +11 ms] "package_name": "objective_c", +:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +9 ms] [ +3 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/input.json )`. +:: [ +4 ms] [ +177 ms] output.json contents: +:: [ ] { +:: [ ] "assets_for_linking": {}, +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 13:10:53.000" +:: [ ] } +:: [ +3 ms] [ +36 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill.d /project/parts/busymark/build/packages/busymark_spellcheck_native/hook/build.dart`. +:: [ +1 ms] [+1377 ms] input.json contents: +:: [ +4 ms] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ +5 ms] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/output.json", +:: [ ] "package_name": "busymark_spellcheck_native", +:: [ ] "package_root": "/project/parts/busymark/build/packages/busymark_spellcheck_native/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +9 ms] [ +1 ms] Running `(cd /project/parts/busymark/build/packages/busymark_spellcheck_native/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/input.json )`. +:: [ +3 ms] [+26703 ms] output.json contents: +:: [ ] { +:: [ ] "assets": [ +:: [ ] { +:: [ ] "encoding": { +:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/cd73a1e2e2/libbusymark_spellcheck_native.so", +:: [ ] "id": "package:busymark_spellcheck_native/busymark_spellcheck_native_bindings_generated.dart", +:: [ ] "link_mode": { +:: [ ] "type": "dynamic_loading_bundle" +:: [ +3 ms] } +:: [ ] }, +:: [ ] "type": "code_assets/code" +:: [ ] } +:: [ ] ], +:: [ ] "assets_for_linking": {}, +:: [ ] "dependencies": [ +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx", +:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx", +:: [ +3 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx", +:: [ +3 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx", +:: [ +2 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am", +:: [ +2 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx" +:: [ +4 ms] ], +:: [ +4 ms] "status": "success", +:: [ ] "timestamp": "2026-10-07 13:10:55.000" +:: [ ] } +:: [ +1 ms] [ +72 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/hook/build.dart`. +:: [ ] [ +760 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ +3 ms] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/output.json", +:: [ ] "package_name": "sqlite3", +:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +8 ms] [ ] Running `(cd /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/input.json )`. +:: [ +2 ms] [ +867 ms] output.json contents: +:: [ ] { +:: [ ] "assets": [ +:: [ ] { +:: [ ] "encoding": { +:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/download-0f947ebe/libsqlite3.so", +:: [ ] "id": "package:sqlite3/src/ffi/libsqlite3.g.dart", +:: [ ] "link_mode": { +:: [ +1 ms] "type": "dynamic_loading_bundle" +:: [ ] } +:: [ ] }, +:: [ ] "type": "code_assets/code" +:: [ ] } +:: [ ] ], +:: [ ] "assets_for_linking": {}, +:: [ ] "status": "success", +:: [ +2 ms] "timestamp": "2026-10-07 13:11:22.000" +:: [ ] } +:: [ ] [ +28 ms] Running build hooks for linux_x64 done. +:: [ ] [ +2 ms] build_hooks: Complete +:: [ ] [+8521 ms] kernel_snapshot_program: Complete +:: [ ] [+1195 ms] link_hooks: Starting due to {} +:: [ +10 ms] [ +1 ms] aot_elf_release: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/flutter-distro/packages/flutter_tools/lib/src/build_system/targets/common.dart,/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so} +:: [ ] [ +1 ms] targetingApplePlatform = false +:: [ ] [ ] extractAppleDebugSymbols = true +:: [ ] [ ] targetingAndroidPlatform = false +:: [ ] [ ] Will strip AOT snapshot during build. +:: [ +8 ms] [ +1 ms] executing: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64-release/gen_snapshot --deterministic --snapshot_kind=app-aot-elf --elf=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so --strip /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill +:: [ ] [ +25 ms] Running link hooks for linux_x64. +:: [ +3 ms] [ +24 ms] Running link hooks for linux_x64 done. +:: [ ] [ +5 ms] link_hooks: Complete +:: [ ] [ +1 ms] install_code_assets: Starting due to {} +:: [ ] [ +12 ms] Copying native assets to /project/parts/busymark/build/build/native_assets/linux/. +:: [ ] [ +4 ms] Copying native assets done. +:: [ ] [ ] Writing native assets json to file:///project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json. +:: [ ] [ +2 ms] Writing /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json done. +:: [ ] [ ] install_code_assets: Complete +:: [ ] [+33583 ms] aot_elf_release: Complete +:: [ +2 ms] [ +127 ms] linux_aot_bundle: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/build/lib/libapp.so} +:: [ +1 ms] [ +15 ms] linux_aot_bundle: Complete +:: [ +1 ms] [ +118 ms] release_bundle_linux-x64_assets: Starting due to {} +:: [ +9 ms] [+6974 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders/ink_sparkle.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] +:: [ +13 ms] [ ] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders/stretch_effect.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] +:: [ +10 ms] [ +54 ms] Running command: /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/const_finder.dart.snapshot --kernel-file /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --class-library-uri package:flutter/src/widgets/icon_data.dart --class-name IconData --annotation-class-name _StaticIconProvider --annotation-class-library-uri package:flutter/src/widgets/icon_data.dart +:: [ +1 ms] [+1824 ms] Expected to find fontFamily for constant IconData with codepoint: 128842, but found fontFamily: null. This usually means you are relying on the system font. Alternatively, font families in an IconData class can be provided in the assets section of your pubspec.yaml, or you are missing "uses-material-design: true". +:: [ +8 ms] [ +2 ms] Expected to find fonts for (packages/yaru/YaruIcons, MaterialIcons, packages/cupertino_icons/CupertinoIcons), but found (MaterialIcons, packages/yaru/YaruIcons). This usually means you are referring to font families in an IconData class but not including them in the assets section of your pubspec.yaml, are missing the package that would include them, or are missing "uses-material-design: true". +:: [ +3 ms] [ +1 ms] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/fonts/MaterialIcons-Regular.otf /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/material_fonts/MaterialIcons-Regular.otf, using codepoints 58061 984332 57490 62832 57706 58332 57502 57501 57496 58372 +:: [ +14 ms] [ +1 ms] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/packages/yaru/assets/yaru_icons.otf /root/.pub-cache/hosted/pub.dev/yaru-10.2.0/assets/yaru_icons.otf, using codepoints 57724 57723 57952 58031 58004 58087 57763 57862 57935 57945 57958 57799 57778 57937 57907 57846 57850 57890 57848 57564 58100 57845 58015 57647 57786 57547 57732 58149 57607 57622 57556 58143 58041 58094 57785 57936 57932 57668 58081 57756 57631 57853 57873 57869 58146 57666 57660 57743 57685 57688 57542 57684 58009 57614 57686 57483 57573 57802 57502 58104 57820 57485 57960 57777 57891 57581 57803 57828 57844 57822 58034 57623 57830 58011 57956 57541 58089 57562 57490 57492 57871 57868 57721 57722 57747 58086 57507 57832 57906 57880 58090 57717 +:: [ ] [ +30 ms] Font asset "MaterialIcons-Regular.otf" was tree-shaken, reducing it from 1645184 to 1748 bytes (99.9% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. +:: [ +1 ms] [ +573 ms] Font asset "yaru_icons.otf" was tree-shaken, reducing it from 203588 to 18772 bytes (90.8% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. +:: [ ] [+3639 ms] release_bundle_linux-x64_assets: Complete +:: [ ] [ +51 ms] Persisting file store +:: [ ] [ +12 ms] Done persisting file store +:: [ ] [ +28 ms] build succeeded. +:: [ ] [ ] "flutter assemble" took 89,515ms. +:: [ ] [ +1 ms] Running 1 shutdown hook +:: [ ] [ ] Shutdown hooks complete +:: [ ] [ ] exiting with code 0 +:: [+1189 ms] [5/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window.cc.o +:: [ +41 ms] [6/34] Building CXX object runner/CMakeFiles/busymark.dir/main.cc.o +:: [ +30 ms] [7/34] Building CXX object plugins/screen_retriever_linux/CMakeFiles/screen_retriever_linux_plugin.dir/screen_retriever_linux_plugin.cc.o +:: [ +47 ms] [8/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/messages.g.cc.o +:: [ +11 ms] [9/34] Building CXX object runner/CMakeFiles/busymark.dir/secure_credential_host.cc.o +:: [ +10 ms] [10/34] Building CXX object plugins/gtk/CMakeFiles/gtk_plugin.dir/gtk_plugin.cc.o +:: [ +128 ms] [11/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/file_selector_plugin.cc.o +:: [ +6 ms] [12/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/url_launcher_plugin.cc.o +:: [ +141 ms] [13/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window_linux_plugin.cc.o +:: [ +148 ms] [14/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/messages.g.cc.o +:: [ +8 ms] [15/34] Linking CXX shared library plugins/gtk/libgtk_plugin.so +:: [ +32 ms] [16/34] Linking CXX shared library plugins/file_selector_linux/libfile_selector_linux_plugin.so +:: [ +57 ms] [17/34] Linking CXX shared library plugins/screen_retriever_linux/libscreen_retriever_linux_plugin.so +:: [ +112 ms] [18/34] Linking CXX shared library plugins/yaru_window_linux/libyaru_window_linux_plugin.so +:: [ +86 ms] [19/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_window_preferences.cc.o +:: [ +35 ms] [20/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent_host.cc.o +:: [ +1 ms] [21/34] Linking CXX shared library plugins/url_launcher_linux/liburl_launcher_linux_plugin.so +:: [ +14 ms] [22/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent.cc.o +:: [ +8 ms] [23/34] Building CXX object runner/CMakeFiles/busymark.dir/rich_clipboard_host.cc.o +:: [ +55 ms] [24/34] Building CXX object plugins/window_manager/CMakeFiles/window_manager_plugin.dir/window_manager_plugin.cc.o +:: [ +12 ms] [25/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_header_icons.cc.o +:: [ +195 ms] [26/34] Linking CXX shared library plugins/window_manager/libwindow_manager_plugin.so +:: [ +146 ms] [27/34] Building CXX object runner/CMakeFiles/busymark.dir/linux_chrome_host.cc.o +:: [ +46 ms] [28/34] Building CXX object runner/CMakeFiles/busymark.dir/__/flutter/generated_plugin_registrant.cc.o +:: [ +27 ms] [29/34] Building CXX object runner/CMakeFiles/busymark.dir/my_application.cc.o +:: [ +78 ms] [30/34] Building CXX object runner/CMakeFiles/busymark.dir/writerside_dialog_host.cc.o +:: [ +190 ms] [31/34] Building CXX object runner/CMakeFiles/busymark.dir/web_render_host.cc.o +:: [ +35 ms] [32/34] Building CXX object runner/CMakeFiles/busymark.dir/video_player_host.cc.o +:: [ +321 ms] [33/34] Linking CXX executable intermediates_do_not_run/busymark +:: [ ] [33/34] Install the project... +:: [ +7 ms] -- Install configuration: "Release" +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/typst +:: [ +29 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMarchen-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMusic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPersian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansShavian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNushu-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansChakma-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsage-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMono-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansUgaritic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinagh-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLepcha-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeroitic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiLe-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElbasan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGrantha-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsmanya-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifAhom-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuginese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOgham-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDogra-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCuneiform-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTangut-Regular.ttf +:: [ +10 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBatak-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLydian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAvestan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansManichaean-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMongolian-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSiddham-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBalinese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansYi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGothic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSogdian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhoenician-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTirhuta-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoyombo-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMultani-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLimbu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRejang-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRunic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDeseret-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMro-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCypriot-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHatran-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearA-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansVai-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhojki-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuhid-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSignWriting-Regular.ttf +:: [ +14 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMahajani-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCarian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearB-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBrahmi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols2-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSyriac-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewa-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPermic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElymaic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansModi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMandaic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldItalic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWancho-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMath-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagalog-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSharada-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTakri-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGrantha-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDuployan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBassaVah-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLycian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNKo-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSamaritan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMiao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNabataean-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKaithi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanunoo-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiViet-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCoptic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-core/copyright +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-mono/copyright +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/d2 +:: [ +28 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/package-lock.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/THIRD_PARTY_NOTICES.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/license +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/license +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/LICENSE.md +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/LICENSE.BSD +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/license +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/license.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.BSD +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.source-map +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/render-engines.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/scalar.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/harness.html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/viz-global.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/bootstrap.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/dictionaries.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_NO.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_hyph_NO.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_hyph_et_EE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_et_EE.txt +:: [ +51 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB.txt +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB_thes.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_GB.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_lightproof_en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/WordNet_license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_US.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_AU.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_ZA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_CA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_US.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/README_fa_IR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/license-thes.readme +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_hyph_pt_BR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_pt_BR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-thes +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-dict.adoc +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-thes +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-dict +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-vi.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/README.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl_PL.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_ru_RU.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/README.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_th_uk_UA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_hyph_uk_UA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_uk_UA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hyph_es.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_th_es.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hunspell_es.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_it_IT.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_hyph_it_IT.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.1st +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_README +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_th_it_IT.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_de_DE_frami.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.1.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv3 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.0.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_OASIS.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_thesaurus.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv2 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_hyph_de.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_extension_owner.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/README_ar.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/COPYING.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR/README_ko_KR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/README_hi_IN.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/CHECKSUMS.sha256 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/DEPENDENCIES.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/Apache-2.0.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.MPL +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.myspell +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.hunspell +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.LESSER +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/busymark +:: [ ] -- Set non-toolchain portion of runtime path of "/project/parts/busymark/build/build/linux/x64/release/bundle/busymark" to "$ORIGIN/lib" +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/applications/io.busystack.busymark.desktop +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/metainfo/io.busystack.busymark.metainfo.xml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/icudtl.dat +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libflutter_linux_gtk.so +:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libfile_selector_linux_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libgtk_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libscreen_retriever_linux_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/liburl_launcher_linux_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libwindow_manager_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libyaru_window_linux_plugin.so +:: [ ] -- Up-to-date: /project/parts/busymark/build/build/linux/x64/release/bundle/lib +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libbusymark_spellcheck_native.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libsqlite3.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts/MaterialIcons-Regular.otf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/html.css +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/markdown.typ +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling/dictionaries.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding/busymark_logo.svg +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside/templates.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/stretch_effect.frag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/ink_sparkle.frag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/UbuntuMono-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-R.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-RI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-M.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-MI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-B.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-LI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-BI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-L.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/yaru_icons.otf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NativeAssetsManifest.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/version.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NOTICES.Z +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/AssetManifest.bin +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/FontManifest.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libapp.so +:: [ +16 ms] Building Linux application... (completed in 96.1s) +:: [ +5 ms] ✓ Built build/linux/x64/release/bundle/busymark +:: [ ] "flutter linux" took 96,876ms. +:: [ +1 ms] Running 1 shutdown hook +:: [ ] Shutdown hooks complete +:: [ ] exiting with code 0 +:: + cp -r build/linux/x64/release/bundle/busymark build/linux/x64/release/bundle/data build/linux/x64/release/bundle/lib build/linux/x64/release/bundle/libexec build/linux/x64/release/bundle/share /project/parts/busymark/install/ +Skipping pull for busymark (already ran) +Skipping build for busymark (already ran) +Staging busymark (required to build 'desktop-integration') +Building desktop-integration +Building gnome/sdk +:: + make -j16 GPU_WRAPPER=gpu-2404-wrapper +:: make: 'Makefile' is up to date. +:: + make -j16 install GPU_WRAPPER=gpu-2404-wrapper DESTDIR=/project/parts/gnome/sdk/install +:: install -D -m755 "hooks-configure-fonts" "/project/parts/gnome/sdk/install/snap/command-chain"/"hooks-configure-fonts" +:: install -D -m755 "desktop-launch" "/project/parts/gnome/sdk/install/snap/command-chain"/"desktop-launch" +:: install -D -m755 "run" "/project/parts/gnome/sdk/install/snap/command-chain"/"run" +:: install -D -m755 "gpu-2404-wrapper" "/project/parts/gnome/sdk/install/snap/command-chain"/"gpu-2404-wrapper" +Skipping stage for busymark (already ran) +Staging desktop-integration +Staging gnome/sdk +Priming busymark +Patch ELF file: 'busymark' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=['$ORIGIN/lib'] + Proposed rpath=['$ORIGIN/usr/lib/x86_64-linux-gnu', '$ORIGIN/lib', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libbusymark_spellcheck_native.so' + Current rpath=['$ORIGIN'] + Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libfile_selector_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libflutter_linux_gtk.so' + Current rpath=['$ORIGIN'] + Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libgtk_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libscreen_retriever_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libsqlite3.so' + Current rpath=['$ORIGIN'] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/liburl_launcher_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libwindow_manager_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libyaru_window_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/addpart' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/choom' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/chrt' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/delpart' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/dmesg' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fallocate' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-cache' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-cat' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-conflist' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-list' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-match' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-pattern' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-query' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-scan' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-validate' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/findmnt' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/flock' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gapplication' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gdbus' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/getopt' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gio' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/git' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/git-shell' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gresource' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gsettings' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gtk-update-icon-cache' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/hardlink' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ionice' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ipcmk' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ipcrm' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ipcs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/last' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsblk' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lscpu' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsipc' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lslocks' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lslogins' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsmem' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsns' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/mcookie' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/mesg' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/more' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/mountpoint' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/namei' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/nsenter' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/partx' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/perl' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/perl5.38-x86_64-linux-gnu' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/perl5.38.2' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/prlimit' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/rename.ul' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/resizepart' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/rev' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/scalar' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/scp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/session-migration' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setarch' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setpriv' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setsid' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setterm' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/sftp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-add' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-agent' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-keygen' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-keyscan' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/su' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/taskset' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/uclampset' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/unshare' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/update-mime-database' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/utmpdump' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/wdctl' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/whereis' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-daemon' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-http-backend' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-http-fetch' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-http-push' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-imap-send' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-remote-http' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-sh-i18n--envsubst' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-shell' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/scalar' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/openssh/ssh-keysign' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/openssh/ssh-pkcs11-helper' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/openssh/ssh-sk-helper' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libDummyDevice.so.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libOniFile.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPS1080.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPSLink.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/blas/libblas.so.3.12.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libx11_plugin.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ati128.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ep9x.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gl.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gles2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i810.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i830.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_mach64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_matrox.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_neomagic.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nsc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nvidia.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_pxa3xx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_sis315.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_tdfx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_input_hub.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_joystick.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_keyboard.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_linux_input.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_lirc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_mutouch.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_penmount.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_ps2mouse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_serialmouse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_sonypi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_wm97xx_ts.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_zytronic.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBFont/libidirectfbfont_dgiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_dfiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_gif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_v4l.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBWindows/libidirectfbwindows_default.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IWater/libiwater_default.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_devmem.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_dummy.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_fbdev.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/wm/libdirectfbwm_default.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/dri/libdril_dri.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gbm/dri_gbm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ani.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-gif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-icns.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pnm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tga.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xbm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognomeproxy.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '$ORIGIN/../../libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsta52dec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaccurip.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaes.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstanalyticsoverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaom.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasfmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstassrender.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiobuffersplit.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofxbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiolatency.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixmatrix.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiovisualizers.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautoconvert.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavtp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbayer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbluez.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbs2b.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbz2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstchromaprint.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstclosedcaption.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodec2json.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodecalpha.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodectimestamper.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoloreffects.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcolormanagement.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcurl.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdash.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdc1394.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstde265.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebugutilsbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdecklink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdirectfb.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtls.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtsdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvb.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsubenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsuboverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdlpcmdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdread.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdspu.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdsub.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaceoverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfbdevsink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfestival.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfieldanalysis.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflite.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfluidsynthmidi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfreeverb.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfrei0r.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgaudieffects.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgeometrictransform.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgme.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgsm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgtkwayland.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsthls.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3tag.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinsertbin.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinter.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterlace.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstipcpipeline.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivfparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivtc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjp2kdecimator.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstkms.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstladspa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlc3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstldac.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlegacyrawparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibav.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../lapack', '$ORIGIN/../blas', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlv2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmidi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmodplug.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2dec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2enc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsdemux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsdemux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmplex.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmsdk.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmusepack.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmxf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstneonhttpsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnetsim.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnvcodec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenal.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenaptx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenexr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenh264.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenjpeg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenmpt.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenni2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopusparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpcapparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpnm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstproxy.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqroverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqsv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrealmedia.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstremovesilence.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstresindvd.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrfbsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrist.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrsvg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanagerbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtponvif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsbc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsctp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsdpelem.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsegmentclip.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsid.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsiren.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmooth.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmoothstreaming.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsndfile.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoundtouch.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspandsp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeed.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrt.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrtp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsvtav1.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstswitchbin.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstteletext.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttimecode.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttranscode.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstttmlsubs.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstunixfd.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvcgadget.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvch264.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstv4l2codecs.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstva.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofiltersbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoframe_audiolevel.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideosignal.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvmnc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoaacenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoamrwbenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvulkan.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwaylandsink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebrtc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwildmidi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx264.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx265.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4mdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzbar.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzxing.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libadwaita.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libmurrine.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libpixmap.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-am-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cedilla.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cyrillic-translit.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-inuktitut.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ipa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-multipress.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-thai.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-er.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-viqr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-xim.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-lpr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-test.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../blas', '$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL.so.1.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libFLAC.so.12.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGL.so.1.7.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLESv2.so.2.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIex-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIlmThread-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libImath-3_1.so.29.8.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLLVM.so.20.1' + Current rpath=['$ORIGIN/../lib'] + Proposed rpath=['$ORIGIN/../lib', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLerc.so.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXR-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRCore-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenNI2.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.3000.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouch.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSvtAv1Enc.so.1.7.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libWildMidi.so.2.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libX11.so.6.4.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXau.so.6.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXext.so.6.4.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXi.so.6.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXss.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libZXing.so.2.2.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liba52-0.7.4.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaom.so.3.8.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasound.so.2.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libass.so.9.2.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasyncns.so.0.3.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.25209.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatspi.so.0.0.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-client.so.3.2.9' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-common.so.3.5.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavcodec.so.60.31.102' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavfilter.so.9.12.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/lapack', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavformat.so.60.16.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavutil.so.58.29.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbluray.so.2.4.3' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbs2b.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca.so.0.99.20' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo-gobject.so.2.11800.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo.so.2.11800.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_interface.so.0.10.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdio.so.19.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libchromaprint.so.1.5.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson.so.1.7.17' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcodec2.so.1.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcups.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.8.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdatrie.so.1.4.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdav1d.so.7.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdc1394.so.25.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdca.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libde265.so.0.1.8' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdecor-0.so.0.200.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdeflate.so.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirect-1.7.so.7.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirectfb-1.7.so.7.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.125.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.125.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdnav.so.4.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdread.so.8.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdw-0.190.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libepoxy.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad.so.2.11.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3.so.3.6.10' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lang.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_awb.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal16.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_rms.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_slt.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmulex.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_usenglish.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfluidsynth.so.3.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfontconfig.so.1.12.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libform.so.6.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeaptx.so.0.1.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreebl3.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfribidi.so.0.4.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfusion-1.7.so.7.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm.so.6.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm_compat.so.4.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.33' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.4200.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgme.so.0.6.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgpm.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgraphite2.so.3.2.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsm.so.1.0.19' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgssdp-1.6.so.0.106.3' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstadaptivedemux-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstanalytics-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbadaudio-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecparsers-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecs-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcuda-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstgl-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstinsertbin-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstisoff-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmpegts-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmse-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplay-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsctp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsturidownloader-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstva-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvulkan-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwayland-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtc-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtcnice-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.33' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk2.0-0t64/gtk-query-immodules-2.0' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgudev-1.0.so.0.3.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-1.6.so.0.106.6' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-igd-1.6.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.60830.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy.so.1.0.7' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicui18n.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutu.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuuc.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2.2.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjack.so.0.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjbig.so.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjpeg.so.8.2.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.800.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl.so.0.7.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl_threads.so.0.7.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblber.so.2.0.200' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblc3.so.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblcms2.so.2.0.14' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldacBT_enc.so.2.0.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldap.so.2.0.200' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblilv-0.so.0.24.22' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblrdf.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libltc.so.11.2.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmbedcrypto.so.2.28.8' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx.so.1.35' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmjpegutils-2.1.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmodplug.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmp3lame.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpcdec.so.6.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2.so.0.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2encpp-2.1.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpg123.so.0.48.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmplex2-2.1.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmysofa.so.1.3.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libncurses.so.6.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libneon.so.27.6.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnghttp2.so.14.26.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnice.so.10.13.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnorm.so.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnspr4.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnss3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssckbi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssdbm3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssutil3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnuma.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libogg.so.0.8.5' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenal.so.1.23.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenh264.so.2.4.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenjp2.so.2.5.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenmpt.so.0.4.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopus.so.0.9.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.38.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libperl.so.5.38.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpgm-5.3.so.0.0.128' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpipewire-0.3.so.0.1005.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpixman-1.so.0.42.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplacebo.so.338' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplc4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplds4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpocketsphinx.so.3.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/blas', '$ORIGIN/lapack', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpostproc.so.57.3.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy/libpxbackend-1.0.so' + Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy.so.0.5.4' + Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] + Proposed rpath=['$ORIGIN', '$ORIGIN/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpsl.so.5.3.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse-simple.so.0.1.1' + Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] + Proposed rpath=['$ORIGIN/pulseaudio', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse.so.0.24.2' + Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libqrencode.so.4.1.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librabbitmq.so.4.5.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraptor2.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librav1e.so.0.7.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraw1394.so.11.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librist.so.4.3.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librtmp.so.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librubberband.so.2.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsamplerate.so.0.2.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsbc.so.1.3.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsensors.so.5.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libserd-0.so.0.32.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsharpyuv.so.0.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshine.so.3.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsidplay.so.1.0.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libslang.so.2.3.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsmime3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsnappy.so.1.1.10' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndfile.so.1.0.37' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndio.so.7.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsodium.so.23.3.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoftokn3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsord-0.so.0.16.16' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoup-3.0.so.0.7.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoxr.so.0.1.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspandsp.so.2.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspeex.so.1.5.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/lapack', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsratom-0.so.0.6.16' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrt-gnutls.so.1.5.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrtp2.so.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh-gcrypt.so.4.9.6' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh.so.4.9.6' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssl3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswresample.so.4.12.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswscale.so.7.5.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libthai.so.0.3.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheora.so.0.3.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoradec.so.1.1.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoraenc.so.1.1.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtiff.so.6.0.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtwolame.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libudfread.so.0.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunibreak.so.5.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind.so.8.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libusb-1.0.so.0.4.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/plugins/libv4l-mplane.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l2convert.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l1.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l2.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov511-decomp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov518-decomp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-drm.so.2.2000.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-x11.so.2.2000.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva.so.2.2000.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvdpau.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvidstab.so.1.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-aacenc.so.0.0.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-amrwbenc.so.0.0.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbis.so.0.4.9' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisenc.so.2.0.12' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisfile.so.3.3.8' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpl.so.2.9' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpx.so.9.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvulkan.so.1.3.275' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebp.so.7.1.8' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebpmux.so.3.0.13' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebrtc_audio_processing.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx264.so.164' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx265.so.199' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xkb.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxml2.so.2.9.14' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxslt.so.1.1.39' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxvidcore.so.4.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libyajl.so.2.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzbar.so.0.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzimg.so.2.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzix-0.so.0.4.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzmq.so.5.2.5' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi.so.0.13.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_h264la_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevc_fei_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevcd_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevce_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp8d_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9d_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9e_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/B/B.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Bzip2/Bzip2.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Zlib/Zlib.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Cwd/Cwd.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/DB_File/DB_File.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Data/Dumper/Dumper.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Devel/Peek/Peek.so' +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/MD5/MD5.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/SHA/SHA.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Byte/Byte.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/CN/CN.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/EBCDIC/EBCDIC.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Encode.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/JP/JP.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/KR/KR.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Symbol/Symbol.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/TW/TW.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Unicode/Unicode.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/File/Glob/Glob.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Filter/Util/Call/Call.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/GDBM_File/GDBM_File.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/FieldHash/FieldHash.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/I18N/Langinfo/Langinfo.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IO/IO.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IPC/SysV/SysV.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/List/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/MIME/Base64/Base64.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Math/BigInt/FastCalc/FastCalc.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/NDBM_File/NDBM_File.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/ODBM_File/ODBM_File.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Opcode/Opcode.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/POSIX/POSIX.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/encoding/encoding.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/mmap/mmap.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/scalar/scalar.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/via/via.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/SDBM_File/SDBM_File.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Socket/Socket.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Storable/Storable.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Hostname/Hostname.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Syslog/Syslog.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/HiRes/HiRes.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/Piece/Piece.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Collate/Collate.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Normalize/Normalize.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/attributes/attributes.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/mro/mro.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/re/re.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/shared/shared.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/threads.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Cwd/Cwd.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/File/Glob/Glob.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Hash/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/IO/IO.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/List/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/POSIX/POSIX.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Socket/Socket.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/attributes/attributes.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/re/re.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-16.1.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/sasl2/libsasldb.so.2.0.25' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-null.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-webrtc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/alsa/libspa-alsa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audioconvert/libspa-audioconvert.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiomixer/libspa-audiomixer.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiotestsrc/libspa-audiotestsrc.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/avb/libspa-avb.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/control/libspa-control.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-dbus.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-journal.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/test/libspa-test.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/v4l2/libspa-v4l2.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videoconvert/libspa-videoconvert.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videotestsrc/libspa-videotestsrc.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/vdpau/libvdpau_trace.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/vpl/libvpl_wayland.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/libexec/dconf-service' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/libexec/glib-pacrunner' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '$ORIGIN/../lib/x86_64-linux-gnu/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/agetty' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blkdiscard' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blkid' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blkzone' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blockdev' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/chcpu' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/chmem' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/ctrlaltdel' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/findfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsck' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsck.cramfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsck.minix' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsfreeze' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fstrim' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/isosize' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/ldattach' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs.bfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs.cramfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs.minix' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkswap' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/pivot_root' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/readprofile' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/rtcwake' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/runuser' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/sulogin' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/swaplabel' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/switch_root' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/wipefs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/zramctl' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Priming desktop-integration +:: + craftctl default +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/busymark +:: + existing_rpath='$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/busymark +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libapp.so +:: + existing_rpath= +:: + '[' -n '' ']' +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libbusymark_spellcheck_native.so +:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libbusymark_spellcheck_native.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libfile_selector_linux_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libfile_selector_linux_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libflutter_linux_gtk.so +:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libflutter_linux_gtk.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libgtk_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libgtk_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libscreen_retriever_linux_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libscreen_retriever_linux_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libsqlite3.so +:: + existing_rpath='$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libsqlite3.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/liburl_launcher_linux_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/liburl_launcher_linux_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libwindow_manager_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libwindow_manager_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libyaru_window_linux_plugin.so +:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libyaru_window_linux_plugin.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs +:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs ']' +:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs +:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs ']' +:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs +:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs ']' +:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs +:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs ']' +:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs +:: + IFS= +:: + read -r runtime_path +:: + patchelf --set-rpath '$ORIGIN/lapack:$ORIGIN/blas:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0 +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0 /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0 +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/librsvg-2.so.2 /project/prime/usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0 +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoKufiArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoKufiArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoMono-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoMusic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoNaskhArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoNaskhArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoRashiHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoRashiHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArmenian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArmenian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAvestan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBalinese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBalinese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBamum-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBamum-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBassaVah-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBatak-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBengali-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBengali-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBrahmi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBuginese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBuhid-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCarian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansChakma-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCham-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCherokee-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCherokee-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCoptic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCuneiform-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCypriot-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDeseret-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDevanagari-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDevanagari-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDuployan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansElbasan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansElymaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEthiopic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEthiopic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGeorgian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGeorgian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGothic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGrantha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGujarati-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGujarati-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanunoo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHatran-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansJavanese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansJavanese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKaithi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKannada-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKannada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKayahLi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKayahLi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhmer-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhmer-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhojki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLepcha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLimbu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLinearA-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLinearB-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLisu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLisu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLycian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLydian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMahajani-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMalayalam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMalayalam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMandaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansManichaean-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMarchen-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMath-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeroitic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMiao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansModi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMongolian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMono-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMono-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMro-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMultani-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMyanmar-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMyanmar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNKo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNabataean-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNewa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNushu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOgham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOlChiki-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOlChiki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldItalic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldPermic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldPersian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOriya-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOriya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOsage-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOsmanya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPhoenician-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansRejang-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansRunic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSamaritan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSharada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansShavian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSiddham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSignWriting-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSinhala-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSinhala-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSogdian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoyombo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSundanese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSundanese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols2-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSyriac-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTagalog-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiLe-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiTham-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiTham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiViet-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTakri-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamil-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamil-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTelugu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTelugu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThaana-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThaana-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinagh-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTirhuta-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansUgaritic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansVai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansWancho-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansYi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifAhom-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifArmenian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifArmenian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBalinese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBengali-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBengali-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDogra-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGrantha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGujarati-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGujarati-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKannada-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKannada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhmer-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhmer-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhojki-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhojki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifSinhala-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifSinhala-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamil-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamil-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTangut-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTelugu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTelugu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTibetan-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTibetan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifYezidi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifYezidi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf +:: + rm -rf /project/prime/share/busymark/fonts +:: + ln -s ../../usr/share/fonts/truetype/noto /project/prime/share/busymark/fonts +:: + mkdir -p /project/prime/share/themes /project/prime/share/icons +:: + for resource_kind in themes icons +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru +:: + resource_name=Yaru +:: + linked_resource=/project/prime/share/themes/Yaru +:: + rm -rf /project/prime/share/themes/Yaru +:: + ln -s ../../usr/share/themes/Yaru /project/prime/share/themes/Yaru +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-bark +:: + resource_name=Yaru-bark +:: + linked_resource=/project/prime/share/themes/Yaru-bark +:: + rm -rf /project/prime/share/themes/Yaru-bark +:: + ln -s ../../usr/share/themes/Yaru-bark /project/prime/share/themes/Yaru-bark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-bark-dark +:: + resource_name=Yaru-bark-dark +:: + linked_resource=/project/prime/share/themes/Yaru-bark-dark +:: + rm -rf /project/prime/share/themes/Yaru-bark-dark +:: + ln -s ../../usr/share/themes/Yaru-bark-dark /project/prime/share/themes/Yaru-bark-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-blue +:: + resource_name=Yaru-blue +:: + linked_resource=/project/prime/share/themes/Yaru-blue +:: + rm -rf /project/prime/share/themes/Yaru-blue +:: + ln -s ../../usr/share/themes/Yaru-blue /project/prime/share/themes/Yaru-blue +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-blue-dark +:: + resource_name=Yaru-blue-dark +:: + linked_resource=/project/prime/share/themes/Yaru-blue-dark +:: + rm -rf /project/prime/share/themes/Yaru-blue-dark +:: + ln -s ../../usr/share/themes/Yaru-blue-dark /project/prime/share/themes/Yaru-blue-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-dark +:: + resource_name=Yaru-dark +:: + linked_resource=/project/prime/share/themes/Yaru-dark +:: + rm -rf /project/prime/share/themes/Yaru-dark +:: + ln -s ../../usr/share/themes/Yaru-dark /project/prime/share/themes/Yaru-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-dark-hdpi +:: + resource_name=Yaru-dark-hdpi +:: + linked_resource=/project/prime/share/themes/Yaru-dark-hdpi +:: + rm -rf /project/prime/share/themes/Yaru-dark-hdpi +:: + ln -s ../../usr/share/themes/Yaru-dark-hdpi /project/prime/share/themes/Yaru-dark-hdpi +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-dark-xhdpi +:: + resource_name=Yaru-dark-xhdpi +:: + linked_resource=/project/prime/share/themes/Yaru-dark-xhdpi +:: + rm -rf /project/prime/share/themes/Yaru-dark-xhdpi +:: + ln -s ../../usr/share/themes/Yaru-dark-xhdpi /project/prime/share/themes/Yaru-dark-xhdpi +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-hdpi +:: + resource_name=Yaru-hdpi +:: + linked_resource=/project/prime/share/themes/Yaru-hdpi +:: + rm -rf /project/prime/share/themes/Yaru-hdpi +:: + ln -s ../../usr/share/themes/Yaru-hdpi /project/prime/share/themes/Yaru-hdpi +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-magenta +:: + resource_name=Yaru-magenta +:: + linked_resource=/project/prime/share/themes/Yaru-magenta +:: + rm -rf /project/prime/share/themes/Yaru-magenta +:: + ln -s ../../usr/share/themes/Yaru-magenta /project/prime/share/themes/Yaru-magenta +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-magenta-dark +:: + resource_name=Yaru-magenta-dark +:: + linked_resource=/project/prime/share/themes/Yaru-magenta-dark +:: + rm -rf /project/prime/share/themes/Yaru-magenta-dark +:: + ln -s ../../usr/share/themes/Yaru-magenta-dark /project/prime/share/themes/Yaru-magenta-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-olive +:: + resource_name=Yaru-olive +:: + linked_resource=/project/prime/share/themes/Yaru-olive +:: + rm -rf /project/prime/share/themes/Yaru-olive +:: + ln -s ../../usr/share/themes/Yaru-olive /project/prime/share/themes/Yaru-olive +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-olive-dark +:: + resource_name=Yaru-olive-dark +:: + linked_resource=/project/prime/share/themes/Yaru-olive-dark +:: + rm -rf /project/prime/share/themes/Yaru-olive-dark +:: + ln -s ../../usr/share/themes/Yaru-olive-dark /project/prime/share/themes/Yaru-olive-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-prussiangreen +:: + resource_name=Yaru-prussiangreen +:: + linked_resource=/project/prime/share/themes/Yaru-prussiangreen +:: + rm -rf /project/prime/share/themes/Yaru-prussiangreen +:: + ln -s ../../usr/share/themes/Yaru-prussiangreen /project/prime/share/themes/Yaru-prussiangreen +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-prussiangreen-dark +:: + resource_name=Yaru-prussiangreen-dark +:: + linked_resource=/project/prime/share/themes/Yaru-prussiangreen-dark +:: + rm -rf /project/prime/share/themes/Yaru-prussiangreen-dark +:: + ln -s ../../usr/share/themes/Yaru-prussiangreen-dark /project/prime/share/themes/Yaru-prussiangreen-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-purple +:: + resource_name=Yaru-purple +:: + linked_resource=/project/prime/share/themes/Yaru-purple +:: + rm -rf /project/prime/share/themes/Yaru-purple +:: + ln -s ../../usr/share/themes/Yaru-purple /project/prime/share/themes/Yaru-purple +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-purple-dark +:: + resource_name=Yaru-purple-dark +:: + linked_resource=/project/prime/share/themes/Yaru-purple-dark +:: + rm -rf /project/prime/share/themes/Yaru-purple-dark +:: + ln -s ../../usr/share/themes/Yaru-purple-dark /project/prime/share/themes/Yaru-purple-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-red +:: + resource_name=Yaru-red +:: + linked_resource=/project/prime/share/themes/Yaru-red +:: + rm -rf /project/prime/share/themes/Yaru-red +:: + ln -s ../../usr/share/themes/Yaru-red /project/prime/share/themes/Yaru-red +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-red-dark +:: + resource_name=Yaru-red-dark +:: + linked_resource=/project/prime/share/themes/Yaru-red-dark +:: + rm -rf /project/prime/share/themes/Yaru-red-dark +:: + ln -s ../../usr/share/themes/Yaru-red-dark /project/prime/share/themes/Yaru-red-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-sage +:: + resource_name=Yaru-sage +:: + linked_resource=/project/prime/share/themes/Yaru-sage +:: + rm -rf /project/prime/share/themes/Yaru-sage +:: + ln -s ../../usr/share/themes/Yaru-sage /project/prime/share/themes/Yaru-sage +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-sage-dark +:: + resource_name=Yaru-sage-dark +:: + linked_resource=/project/prime/share/themes/Yaru-sage-dark +:: + rm -rf /project/prime/share/themes/Yaru-sage-dark +:: + ln -s ../../usr/share/themes/Yaru-sage-dark /project/prime/share/themes/Yaru-sage-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-viridian +:: + resource_name=Yaru-viridian +:: + linked_resource=/project/prime/share/themes/Yaru-viridian +:: + rm -rf /project/prime/share/themes/Yaru-viridian +:: + ln -s ../../usr/share/themes/Yaru-viridian /project/prime/share/themes/Yaru-viridian +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-viridian-dark +:: + resource_name=Yaru-viridian-dark +:: + linked_resource=/project/prime/share/themes/Yaru-viridian-dark +:: + rm -rf /project/prime/share/themes/Yaru-viridian-dark +:: + ln -s ../../usr/share/themes/Yaru-viridian-dark /project/prime/share/themes/Yaru-viridian-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-xhdpi +:: + resource_name=Yaru-xhdpi +:: + linked_resource=/project/prime/share/themes/Yaru-xhdpi +:: + rm -rf /project/prime/share/themes/Yaru-xhdpi +:: + ln -s ../../usr/share/themes/Yaru-xhdpi /project/prime/share/themes/Yaru-xhdpi +:: + for resource_kind in themes icons +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru +:: + resource_name=Yaru +:: + linked_resource=/project/prime/share/icons/Yaru +:: + rm -rf /project/prime/share/icons/Yaru +:: + ln -s ../../usr/share/icons/Yaru /project/prime/share/icons/Yaru +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-bark +:: + resource_name=Yaru-bark +:: + linked_resource=/project/prime/share/icons/Yaru-bark +:: + rm -rf /project/prime/share/icons/Yaru-bark +:: + ln -s ../../usr/share/icons/Yaru-bark /project/prime/share/icons/Yaru-bark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-bark-dark +:: + resource_name=Yaru-bark-dark +:: + linked_resource=/project/prime/share/icons/Yaru-bark-dark +:: + rm -rf /project/prime/share/icons/Yaru-bark-dark +:: + ln -s ../../usr/share/icons/Yaru-bark-dark /project/prime/share/icons/Yaru-bark-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-blue +:: + resource_name=Yaru-blue +:: + linked_resource=/project/prime/share/icons/Yaru-blue +:: + rm -rf /project/prime/share/icons/Yaru-blue +:: + ln -s ../../usr/share/icons/Yaru-blue /project/prime/share/icons/Yaru-blue +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-blue-dark +:: + resource_name=Yaru-blue-dark +:: + linked_resource=/project/prime/share/icons/Yaru-blue-dark +:: + rm -rf /project/prime/share/icons/Yaru-blue-dark +:: + ln -s ../../usr/share/icons/Yaru-blue-dark /project/prime/share/icons/Yaru-blue-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-dark +:: + resource_name=Yaru-dark +:: + linked_resource=/project/prime/share/icons/Yaru-dark +:: + rm -rf /project/prime/share/icons/Yaru-dark +:: + ln -s ../../usr/share/icons/Yaru-dark /project/prime/share/icons/Yaru-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-magenta +:: + resource_name=Yaru-magenta +:: + linked_resource=/project/prime/share/icons/Yaru-magenta +:: + rm -rf /project/prime/share/icons/Yaru-magenta +:: + ln -s ../../usr/share/icons/Yaru-magenta /project/prime/share/icons/Yaru-magenta +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-magenta-dark +:: + resource_name=Yaru-magenta-dark +:: + linked_resource=/project/prime/share/icons/Yaru-magenta-dark +:: + rm -rf /project/prime/share/icons/Yaru-magenta-dark +:: + ln -s ../../usr/share/icons/Yaru-magenta-dark /project/prime/share/icons/Yaru-magenta-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-olive +:: + resource_name=Yaru-olive +:: + linked_resource=/project/prime/share/icons/Yaru-olive +:: + rm -rf /project/prime/share/icons/Yaru-olive +:: + ln -s ../../usr/share/icons/Yaru-olive /project/prime/share/icons/Yaru-olive +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-olive-dark +:: + resource_name=Yaru-olive-dark +:: + linked_resource=/project/prime/share/icons/Yaru-olive-dark +:: + rm -rf /project/prime/share/icons/Yaru-olive-dark +:: + ln -s ../../usr/share/icons/Yaru-olive-dark /project/prime/share/icons/Yaru-olive-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-prussiangreen +:: + resource_name=Yaru-prussiangreen +:: + linked_resource=/project/prime/share/icons/Yaru-prussiangreen +:: + rm -rf /project/prime/share/icons/Yaru-prussiangreen +:: + ln -s ../../usr/share/icons/Yaru-prussiangreen /project/prime/share/icons/Yaru-prussiangreen +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-prussiangreen-dark +:: + resource_name=Yaru-prussiangreen-dark +:: + linked_resource=/project/prime/share/icons/Yaru-prussiangreen-dark +:: + rm -rf /project/prime/share/icons/Yaru-prussiangreen-dark +:: + ln -s ../../usr/share/icons/Yaru-prussiangreen-dark /project/prime/share/icons/Yaru-prussiangreen-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-purple +:: + resource_name=Yaru-purple +:: + linked_resource=/project/prime/share/icons/Yaru-purple +:: + rm -rf /project/prime/share/icons/Yaru-purple +:: + ln -s ../../usr/share/icons/Yaru-purple /project/prime/share/icons/Yaru-purple +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-purple-dark +:: + resource_name=Yaru-purple-dark +:: + linked_resource=/project/prime/share/icons/Yaru-purple-dark +:: + rm -rf /project/prime/share/icons/Yaru-purple-dark +:: + ln -s ../../usr/share/icons/Yaru-purple-dark /project/prime/share/icons/Yaru-purple-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-red +:: + resource_name=Yaru-red +:: + linked_resource=/project/prime/share/icons/Yaru-red +:: + rm -rf /project/prime/share/icons/Yaru-red +:: + ln -s ../../usr/share/icons/Yaru-red /project/prime/share/icons/Yaru-red +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-red-dark +:: + resource_name=Yaru-red-dark +:: + linked_resource=/project/prime/share/icons/Yaru-red-dark +:: + rm -rf /project/prime/share/icons/Yaru-red-dark +:: + ln -s ../../usr/share/icons/Yaru-red-dark /project/prime/share/icons/Yaru-red-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-sage +:: + resource_name=Yaru-sage +:: + linked_resource=/project/prime/share/icons/Yaru-sage +:: + rm -rf /project/prime/share/icons/Yaru-sage +:: + ln -s ../../usr/share/icons/Yaru-sage /project/prime/share/icons/Yaru-sage +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-sage-dark +:: + resource_name=Yaru-sage-dark +:: + linked_resource=/project/prime/share/icons/Yaru-sage-dark +:: + rm -rf /project/prime/share/icons/Yaru-sage-dark +:: + ln -s ../../usr/share/icons/Yaru-sage-dark /project/prime/share/icons/Yaru-sage-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-viridian +:: + resource_name=Yaru-viridian +:: + linked_resource=/project/prime/share/icons/Yaru-viridian +:: + rm -rf /project/prime/share/icons/Yaru-viridian +:: + ln -s ../../usr/share/icons/Yaru-viridian /project/prime/share/icons/Yaru-viridian +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-viridian-dark +:: + resource_name=Yaru-viridian-dark +:: + linked_resource=/project/prime/share/icons/Yaru-viridian-dark +:: + rm -rf /project/prime/share/icons/Yaru-viridian-dark +:: + ln -s ../../usr/share/icons/Yaru-viridian-dark /project/prime/share/icons/Yaru-viridian-dark +:: + install -Dm644 /project/linux/io.busystack.busymark.desktop /project/prime/share/applications/io.busystack.busymark.desktop +:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/meta/gui/io.busystack.busymark.svg +:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/meta/gui/icon.svg +:: + install -Dm644 /project/linux/io.busystack.busymark.metainfo.xml /project/prime/share/metainfo/io.busystack.busymark.metainfo.xml +:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg +Priming gnome/sdk +Packing... +Reading snap metadata... +Running linters... +Running linter: classic +Running linter: library +Lint warnings: +- library: libEGL_mesa.so.0: unused library 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libGLX_mesa.so.0: unused library 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libOpenEXRUtil-3_1.so.30: unused library 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libSoundTouchDll.so.1: unused library 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libXtst.so.6: unused library 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libaa.so.1: unused library 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libavc1394.so.0: unused library 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcaca++.so.0: unused library 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcdda_paranoia.so.0: unused library 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcjson_utils.so.1: unused library 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcolord.so.2: unused library 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcolordprivate.so.2: unused library 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libdconf.so.1: unused library 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libdv.so.4: unused library 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libexslt.so.0: unused library 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfaad_drm.so.2: unused library 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfftw3_omp.so.3: unused library 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfftw3_threads.so.3: unused library 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libflite_cmu_grapheme_lang.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libflite_cmu_grapheme_lex.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libflite_cmu_indic_lex.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libflite_cmu_time_awb.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libform.so.6: unused library 'usr/lib/x86_64-linux-gnu/libform.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfreebl3.so: unused library 'usr/lib/x86_64-linux-gnu/libfreebl3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfreeblpriv3.so: unused library 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libgstdxva-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libgstplayer-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libgsttranscoder-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libhwy_contrib.so.1: unused library 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libhwy_test.so.1: unused library 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libicuio.so.74: unused library 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libicutest.so.74: unused library 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libiec61883.so.0: unused library 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libjacknet.so.0: unused library 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libjackserver.so.0: unused library 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libmenu.so.6: unused library 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libmfx-tracer.so.1: unused library 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libmfxhw64.so.1: unused library 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libmpeg2convert.so.0: unused library 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libnssckbi.so: unused library 'usr/lib/x86_64-linux-gnu/libnssckbi.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libnssdbm3.so: unused library 'usr/lib/x86_64-linux-gnu/libnssdbm3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: liborc-test-0.4.so.0: unused library 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libpanel.so.6: unused library 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: librom1394.so.0: unused library 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libshout.so.3: unused library 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libsmime3.so: unused library 'usr/lib/x86_64-linux-gnu/libsmime3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libsoftokn3.so: unused library 'usr/lib/x86_64-linux-gnu/libsoftokn3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libsphinxad.so.3: unused library 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libssl3.so: unused library 'usr/lib/x86_64-linux-gnu/libssl3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libtag.so.1: unused library 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libunwind-coredump.so.0: unused library 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libunwind-ptrace.so.0: unused library 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libunwind-x86_64.so.8: unused library 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libvisual-0.4.so.0: unused library 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libwavpack.so.1: unused library 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libzvbi-chains.so.0: unused library 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +Creating snap package... +Packed busymark_0.6.1_amd64.snap diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.json b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.json new file mode 100644 index 00000000..f63de1c9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.json @@ -0,0 +1 @@ +{"ok":false,"checks":{},"error":"PlatformException(visualization.webRenderFailed, Unsupported result type, null, null)","stackTrace":"#0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:653)\n#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:366)\n\n#2 Future.timeout. (dart:async/future_impl.dart:1061)\n\n#3 PlatformWebRenderHost._invokeCancellable (package:busymark/src/visualization/web_render_host.dart:292)\n\n#4 PlatformWebRenderHost._invokeMap (package:busymark/src/visualization/web_render_host.dart:261)\n\n#5 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:74)\n\n#6 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.log new file mode 100644 index 00000000..2d2ddf28 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.log @@ -0,0 +1,13 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:36321): IBUS-WARNING **: 13:33:47.737: Failed to mkdir /home/tester/snap/busymark/x4/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:36321): WARNING **: 13:33:48.383: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:36321): WARNING **: 13:33:48.385: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:36426): GLib-GIO-WARNING **: 13:33:55.365: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:36441): GLib-GIO-WARNING **: 13:33:56.938: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:36583): GLib-GIO-WARNING **: 13:34:19.442: Error releasing name io.busystack.busymark.Sandboxed.WebProcess-21fbd502-7ce7-4477-9638-98f3a384e64b: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.62" (uid=1000 pid=36583 comm="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitWeb" label="snap.busymark.busymark (enforce)") interface="org.freedesktop.DBus" member="ReleaseName" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.json b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.json new file mode 100644 index 00000000..11ab939f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.json @@ -0,0 +1 @@ +{"ok":false,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true},"error":"Bad state: MathJax did not recover with the WebKit process.","stackTrace":"#0 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:203)\n\n#1 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.log new file mode 100644 index 00000000..c6cdd122 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.log @@ -0,0 +1,18 @@ +busymark 0.6.1 installed +Warning: Schema “org.gnome.system.locale” has path “/system/locale/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy” has path “/system/proxy/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.http” has path “/system/proxy/http/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.https” has path “/system/proxy/https/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.ftp” has path “/system/proxy/ftp/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.socks” has path “/system/proxy/socks/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:35579): IBUS-WARNING **: 13:30:43.835: Failed to mkdir /home/tester/snap/busymark/x4/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:35579): WARNING **: 13:30:44.499: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:35579): WARNING **: 13:30:44.499: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:35974): GLib-GIO-WARNING **: 13:30:49.923: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:35997): GLib-GIO-WARNING **: 13:30:52.547: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/01-verify-gtk-svg-icon-loader.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/01-verify-gtk-svg-icon-loader.sh new file mode 100644 index 00000000..77917cef --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/01-verify-gtk-svg-icon-loader.sh @@ -0,0 +1,12 @@ +#!/bin/bash +set -euo pipefail +export RUNNER_TEMP=/home/tester/acceptance +mkdir -p "$RUNNER_TEMP" +snap run --shell busymark -c ' + test ! -e \ + "$SNAP/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/librsvg-2.so.2" + query="$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" + loader="$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader_svg.so" + "$query" "$loader" | grep -q "\"svg\" 6 \"gdk-pixbuf\"" +' + diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/02-verify-shared-runtimes-packaged-tools-media-and-resources.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/02-verify-shared-runtimes-packaged-tools-media-and-resources.sh new file mode 100644 index 00000000..a39453d5 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/02-verify-shared-runtimes-packaged-tools-media-and-resources.sh @@ -0,0 +1,100 @@ +#!/bin/bash +set -euo pipefail +export RUNNER_TEMP=/home/tester/acceptance +mkdir -p "$RUNNER_TEMP" +snap run --shell busymark -c ' + set -eu + inspect_dependencies() { + dependency_object="$1" + if dependency_output="$(ldd "$dependency_object" 2>&1)"; then + : + else + printf "Dependency inspection failed: %s\n%s\n" \ + "$dependency_object" "$dependency_output" >&2 + exit 1 + fi + case "$dependency_output" in + *"not found"*) + printf "Unresolved dependencies: %s\n%s\n" \ + "$dependency_object" "$dependency_output" >&2 + exit 1 + ;; + esac + } + require_resolution() { + required_library="$1" + required_path="$2" + resolved_path="$(printf "%s\n" "$dependency_output" | \ + awk -v name="$required_library" \ + "\$1 == name && \$2 == \"=>\" { print \$3; exit }")" + if [ -z "$resolved_path" ] || \ + ! expected_real="$(readlink -e "$required_path")" || \ + ! resolved_real="$(readlink -e "$resolved_path")" || \ + [ "$resolved_real" != "$expected_real" ]; then + printf "Unexpected resolution for %s in %s; expected %s\n%s\n" \ + "$required_library" "$dependency_object" \ + "$required_path" "$dependency_output" >&2 + exit 1 + fi + } + app_lib="$SNAP/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET" + inspect_dependencies "$SNAP/busymark" + for library in \ + libhandy-1.so.0 libsecret-1.so.0 libwebkit2gtk-4.1.so.0 \ + libgtk-3.so.0 libglib-2.0.so.0 libpango-1.0.so.0; do + test ! -e "$app_lib/$library" + require_resolution "$library" \ + "$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/$library" + done + graphics_lib="$SNAP/gpu-2404/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET" + for library in \ + libX11.so.6 libXdamage.so.1 libXext.so.6 libXfixes.so.3 \ + libxcb-shm.so.0 libxcb.so.1 libwayland-client.so.0 \ + libwayland-cursor.so.0 libwayland-egl.so.1; do + test ! -e "$app_lib/$library" + test -e "$graphics_lib/$library" + require_resolution "$library" "$graphics_lib/$library" + done + for helper in WebKitWebProcess WebKitNetworkProcess WebKitGPUProcess; do + test -x "$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/webkit2gtk-4.1/$helper" + done + test -x "$SNAP/usr/bin/git" + test -x "$SNAP/usr/bin/ssh" + test -x "$SNAP/usr/bin/setsid" + inspect_dependencies "$SNAP/usr/lib/git-core/git-remote-http" + require_resolution libcurl-gnutls.so.4 \ + "$app_lib/libcurl-gnutls.so.4" + GIT_EXEC_PATH="$SNAP/usr/lib/git-core" \ + "$SNAP/usr/bin/git" --exec-path | grep -Fx "$SNAP/usr/lib/git-core" + "$SNAP/usr/bin/ssh" -V + provider_plugins="$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/gstreamer-1.0" + for plugin in libgstavi.so libgstisomp4.so libgstmatroska.so \ + libgstogg.so libgsttheora.so libgstvpx.so; do + test -f "$provider_plugins/$plugin" + inspect_dependencies "$provider_plugins/$plugin" + done + private_plugins="$SNAP/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/gstreamer-1.0" + for plugin in libgstavi.so libgstisomp4.so libgstmatroska.so \ + libgstogg.so libgsttheora.so libgstvpx.so; do + test ! -e "$private_plugins/$plugin" + done + for plugin in libgstlibav.so libgstvideoparsersbad.so \ + libgstmpeg2dec.so; do + test -f "$private_plugins/$plugin" + inspect_dependencies "$private_plugins/$plugin" + done + test -L "$SNAP/share/busymark/fonts" + test "$(readlink "$SNAP/share/busymark/fonts")" = \ + ../../usr/share/fonts/truetype/noto + test -f "$SNAP/share/busymark/fonts/NotoSans-Regular.ttf" + test -f "$SNAP/usr/share/doc/fonts-noto-core/copyright" + test -f "$SNAP/usr/share/doc/fonts-noto-mono/copyright" + for resource_kind in themes icons; do + for resource_name in Yaru Yaru-dark; do + resource="$SNAP/share/$resource_kind/$resource_name" + test -L "$resource" + test -e "$resource" + done + done +' + diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh new file mode 100644 index 00000000..254f159f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh @@ -0,0 +1,29 @@ +#!/bin/bash +set -euo pipefail +export RUNNER_TEMP=/home/tester/acceptance +mkdir -p "$RUNNER_TEMP" +report="$HOME/snap/busymark/common/spelling-release.json" +rm -f "$report" +xvfb-run -a -s '-screen 0 1280x1024x24' \ + env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ + LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ + --spelling-release-smoke="$report" +python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert report["checks"]["bundledDictionaryFileCount"] == 0, report; assert report["checks"]["dictionaryInstalledDuringRun"], report; assert report["checks"]["installedDictionaryCount"] == 1, report' "$report" +test -d "$HOME/snap/busymark/common/spelling/dictionaries/downloaded/en-US" +before_revision="$(snap list busymark | awk 'NR == 2 {print $3}')" +sudo snap install --dangerous \ + "/home/tester/package.snap" +after_revision="$(snap list busymark | awk 'NR == 2 {print $3}')" +test -n "$before_revision" +test -n "$after_revision" +test "$before_revision" != "$after_revision" +sudo snap disconnect busymark:network +trap 'sudo snap connect busymark:network >/dev/null' EXIT +xvfb-run -a -s '-screen 0 1280x1024x24' \ + env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ + LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ + --spelling-release-smoke="$report" +python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert not report["checks"]["dictionaryInstalledDuringRun"], report; assert report["checks"]["installedDictionaryCount"] == 1, report; assert report["checks"]["personalWordPresentBeforeRun"], report' "$report" +sudo snap connect busymark:network +trap - EXIT + diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh new file mode 100644 index 00000000..6c9ff71c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh @@ -0,0 +1,14 @@ +#!/bin/bash +set -euo pipefail +export RUNNER_TEMP=/home/tester/acceptance +mkdir -p "$RUNNER_TEMP" +report="$HOME/snap/busymark/common/visualization-release-x11.json" +mkdir -p "$(dirname "$report")" +timeout --signal=TERM 300s \ + xvfb-run -a -s '-screen 0 1280x1024x24' \ + env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ + LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ + --visualization-release-smoke="$report" +python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report' "$report" +test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" + diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh new file mode 100644 index 00000000..a665db7a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh @@ -0,0 +1,40 @@ +#!/bin/bash +set -euo pipefail +export RUNNER_TEMP=/home/tester/acceptance +mkdir -p "$RUNNER_TEMP" +runtime_dir="/run/user/$(id -u)" +sudo install -d -m 700 -o "$(id -u)" -g "$(id -g)" "$runtime_dir" +XDG_RUNTIME_DIR="$runtime_dir" \ + weston --backend=headless-backend.so --socket=wayland-99 \ + --idle-time=0 --log="${RUNNER_TEMP}/weston-snap.log" & +weston_pid=$! +sudo snap disconnect busymark:network +trap 'sudo snap connect busymark:network >/dev/null; kill "$weston_pid" 2>/dev/null || true' EXIT +for attempt in {1..40}; do + if [ -S "$runtime_dir/wayland-99" ]; then + break + fi + if ! kill -0 "$weston_pid" 2>/dev/null; then + cat "${RUNNER_TEMP}/weston-snap.log" + exit 1 + fi + sleep 0.25 +done +test -S "$runtime_dir/wayland-99" +spelling_report="$HOME/snap/busymark/common/spelling-release-wayland.json" +XDG_RUNTIME_DIR="$runtime_dir" WAYLAND_DISPLAY=wayland-99 \ + GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 \ + LIBGL_ALWAYS_SOFTWARE=1 \ + timeout --signal=TERM 300s snap run busymark \ + --spelling-release-smoke="$spelling_report" +python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert report["checks"]["sourceEditorTransaction"], report; assert report["checks"]["formattedRichEditorTransaction"], report; assert report["checks"]["tableCellEditorTransaction"], report' "$spelling_report" +report="$HOME/snap/busymark/common/visualization-release-wayland.json" +XDG_RUNTIME_DIR="$runtime_dir" WAYLAND_DISPLAY=wayland-99 \ + GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 \ + LIBGL_ALWAYS_SOFTWARE=1 \ + timeout --signal=TERM 300s snap run busymark \ + --visualization-release-smoke="$report" +python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report' "$report" +test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" +sudo snap connect busymark:network +trap 'kill "$weston_pid" 2>/dev/null || true' EXIT diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/README.md b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/README.md new file mode 100644 index 00000000..ac36a41b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/README.md @@ -0,0 +1,72 @@ +# Installed strict-Snap acceptance: final KVM run + +The unchanged recipe-built Snap passed all 23 visualization checks on X11 and +Wayland twice after configuring a functioning disposable desktop session. +Spelling passed 20 checks for online installation, refresh/offline X11 restart, +and offline Wayland restart. Wayland visualization also ran with the Snap's +network interface disconnected. `results.json` indexes the successful reports; +`acceptance/installed-identity-final.log` proves the installed bytes, recipe, +runtime revisions, interfaces, and enforced AppArmor profile. + +The guest was Ubuntu 24.04.5, kernel 6.8.0-142, KVM with 4 CPUs/4 GiB. The official +cloud image checksum is in `results.json`. The disposable user was `tester`. +No Nextcloud account or production profile was used in this additional VM. +Browser Login Flow, libsecret/restart, actual uncertain-creation confirmation, +attachment publication and denied-network recovery already passed on this exact +Snap, recorded in the parent evidence directory. + +The numbered shell scripts are the existing `.github/workflows/flutter-linux.yml` +Snap checks. Only its runner temporary directory and selected Snap path are +substituted. They retain every assertion and timeout. The exact installed package +SHA-256 is `2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce`. + +After normal Ubuntu cloud-init setup: + +```sh +sudo snap install --dangerous /home/tester/package.snap +sudo snap connect busymark:password-manager-service +# Use the normal systemd user session, with /run/user/1000/bus. +bash 01-verify-gtk-svg-icon-loader.sh +bash 02-verify-shared-runtimes-packaged-tools-media-and-resources.sh +bash 03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh +``` + +The initial bare VM lacked a desktop activation environment. A private +`dbus-run-session` failed Snap cgroup creation (`acceptance-session-fixture/`). +The normal user session fixed that. Its GTK portal then could not start on a +display and waited repeatedly for service timeouts; the initial X11 render +timed out (`acceptance/04-*/`). The desktop setup was completed with: + +```sh +Xvfb :97 -screen 0 1280x1024x24 -nolisten tcp & +dbus-update-activation-environment --systemd DISPLAY=:97 XDG_CURRENT_DESKTOP=GNOME +mkdir -p ~/.config/xdg-desktop-portal +cp acceptance/portals.conf ~/.config/xdg-desktop-portal/portals.conf +systemctl --user restart xdg-desktop-portal-gtk.service xdg-desktop-portal.service +gdbus call --session --dest org.freedesktop.portal.Desktop \ + --object-path /org/freedesktop/portal/desktop \ + --method org.freedesktop.portal.Settings.Read org.gnome.desktop.interface color-scheme +bash 04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh +bash 05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh +bash repeat-acceptance.sh +``` + +The copied configuration is `acceptance/portals.conf`; the Settings result and +activation environment are beside it. The numbered scripts create their own +X11/Wayland displays. Display :97 keeps the desktop portal available. No AppArmor +rule, application timeout or assertion was relaxed. The experimental +`NO_AT_BRIDGE=1` run is retained separately; both final runs and repeats omit it. +The new fixture failures do not establish the cause of every older TCG error. +`snap-acceptance-before-kvm.json` preserves that earlier incomplete status. + +`acceptance/rendered-exports.tar.gz` contains the resulting HTML/PDF exports; +each successful backend directory also contains its PDF. `status.tsv` retains +both initial failed and subsequent successful exit statuses. The configured X11 +run is recorded by its successful report and command log; the repeat took 10s. +The configured Wayland sequence took 16s and its repeat took 18s. + +Public CI publication was approved but the GitHub connector returned 403 and +existing SSH authentication failed. `public-ci-access.json` records that +unavailable route; no remote branch, PR, upload or CI success is claimed. +The authorized VM completed acceptance. Private VM keys, disks and Snap cookies +are excluded, and the VM is destroyed after evidence collection. diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log new file mode 100644 index 00000000..2c007245 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log @@ -0,0 +1 @@ +/user.slice/user-1000.slice/session-14.scope is not a snap cgroup for tag snap.busymark.busymark diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/status.tsv b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/status.tsv new file mode 100644 index 00000000..520bb357 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/status.tsv @@ -0,0 +1 @@ +01-verify-gtk-svg-icon-loader 1 0 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log new file mode 100644 index 00000000..77cd5475 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log @@ -0,0 +1,6 @@ +Warning: Schema “org.gnome.system.locale” has path “/system/locale/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy” has path “/system/proxy/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.http” has path “/system/proxy/http/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.https” has path “/system/proxy/https/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.ftp” has path “/system/proxy/ftp/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.socks” has path “/system/proxy/socks/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log new file mode 100644 index 00000000..cf9a5ee6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log @@ -0,0 +1,2 @@ +/snap/busymark/x1/usr/lib/git-core +OpenSSH_9.6p1 Ubuntu-3ubuntu13.19, OpenSSL 3.0.13 30 Jan 2024 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log new file mode 100644 index 00000000..56314a09 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log @@ -0,0 +1,35 @@ + +(io.busystack.busymark:8399): dbind-WARNING **: 18:42:59.218: AT-SPI: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.7" (uid=1000 pid=8399 comm="/snap/busymark/x1/busymark --spelling-release-smok" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) + +(io.busystack.busymark:8399): Atk-CRITICAL **: 18:43:24.845: atk_socket_embed: assertion 'plug_id != NULL' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:8399): IBUS-WARNING **: 18:43:50.686: Failed to mkdir /home/tester/snap/busymark/x1/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:8399): WARNING **: 18:43:50.771: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:8399): WARNING **: 18:43:50.771: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied +Can't find a11y bus: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.6" (uid=1000 pid=8399 comm="/snap/busymark/x1/busymark --spelling-release-smok" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) + +** (process:8593): ERROR **: 18:44:32.833: WebProcess didn't exit as expected after the UI process connection was closed +busymark 0.6.1 installed +Warning: Schema “org.gnome.system.locale” has path “/system/locale/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy” has path “/system/proxy/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.http” has path “/system/proxy/http/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.https” has path “/system/proxy/https/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.ftp” has path “/system/proxy/ftp/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.socks” has path “/system/proxy/socks/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. + +(io.busystack.busymark:9265): dbind-WARNING **: 18:44:48.412: AT-SPI: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.14" (uid=1000 pid=9265 comm="/snap/busymark/x2/busymark --spelling-release-smok" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) + +(io.busystack.busymark:9265): Atk-CRITICAL **: 18:44:59.561: atk_socket_embed: assertion 'plug_id != NULL' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:9265): IBUS-WARNING **: 18:45:25.166: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:9265): WARNING **: 18:45:25.220: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:9265): WARNING **: 18:45:25.220: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied +Can't find a11y bus: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.13" (uid=1000 pid=9265 comm="/snap/busymark/x2/busymark --spelling-release-smok" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) + +** (process:9704): ERROR **: 18:46:04.611: WebProcess didn't exit as expected after the UI process connection was closed diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/spelling-release.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/spelling-release.json new file mode 100644 index 00000000..325a720e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/spelling-release.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/snap/busymark/x2/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": false, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": true + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log new file mode 100644 index 00000000..92500754 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log @@ -0,0 +1,12 @@ + +(io.busystack.busymark:9929): dbind-WARNING **: 18:45:55.634: AT-SPI: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.21" (uid=1000 pid=9929 comm="/snap/busymark/x2/busymark --visualization-release" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) + +(io.busystack.busymark:9929): Atk-CRITICAL **: 18:46:20.793: atk_socket_embed: assertion 'plug_id != NULL' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:9929): IBUS-WARNING **: 18:46:45.933: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:9929): WARNING **: 18:46:45.963: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:9929): WARNING **: 18:46:45.963: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied +Can't find a11y bus: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.20" (uid=1000 pid=9929 comm="/snap/busymark/x2/busymark --visualization-release" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/spelling-release.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/spelling-release.json new file mode 100644 index 00000000..325a720e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/spelling-release.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/snap/busymark/x2/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": false, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": true + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/visualization-release-x11.json new file mode 100644 index 00000000..4db394ed --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/visualization-release-x11.json @@ -0,0 +1 @@ +{"ok":false,"checks":{},"error":"TimeoutException after 0:00:45.000000: Future not completed","stackTrace":"#0 Future.timeout. (dart:async/future_impl.dart:1042)\n\n#1 PlatformWebRenderHost._invokeCancellable (package:busymark/src/visualization/web_render_host.dart:292)\n\n#2 PlatformWebRenderHost._invokeMap (package:busymark/src/visualization/web_render_host.dart:261)\n\n#3 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:74)\n\n#4 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-environment.txt b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-environment.txt new file mode 100644 index 00000000..3a178107 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-environment.txt @@ -0,0 +1,2 @@ +DISPLAY=:97 +XDG_CURRENT_DESKTOP=GNOME diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-xvfb.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-xvfb.log new file mode 100644 index 00000000..d1c38491 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-xvfb.log @@ -0,0 +1,19 @@ +The XKEYBOARD keymap compiler (xkbcomp) reports: +> Warning: Could not resolve keysym XF86CameraAccessEnable +> Warning: Could not resolve keysym XF86CameraAccessDisable +> Warning: Could not resolve keysym XF86CameraAccessToggle +> Warning: Could not resolve keysym XF86NextElement +> Warning: Could not resolve keysym XF86PreviousElement +> Warning: Could not resolve keysym XF86AutopilotEngageToggle +> Warning: Could not resolve keysym XF86MarkWaypoint +> Warning: Could not resolve keysym XF86Sos +> Warning: Could not resolve keysym XF86NavChart +> Warning: Could not resolve keysym XF86FishingChart +> Warning: Could not resolve keysym XF86SingleRangeRadar +> Warning: Could not resolve keysym XF86DualRangeRadar +> Warning: Could not resolve keysym XF86RadarOverlay +> Warning: Could not resolve keysym XF86TraditionalSonar +> Warning: Could not resolve keysym XF86ClearvuSonar +> Warning: Could not resolve keysym XF86SidevuSonar +> Warning: Could not resolve keysym XF86NavInfo +Errors from xkbcomp are not fatal to the X server diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity-final.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity-final.log new file mode 100644 index 00000000..b97c545a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity-final.log @@ -0,0 +1,59 @@ +2026-10-07T18:56:34+00:00 +PRETTY_NAME="Ubuntu 24.04.5 LTS" +NAME="Ubuntu" +VERSION_ID="24.04" +VERSION="24.04.5 LTS (Noble Numbat)" +VERSION_CODENAME=noble +ID=ubuntu +ID_LIKE=debian +HOME_URL="https://www.ubuntu.com/" +SUPPORT_URL="https://help.ubuntu.com/" +BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" +PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" +UBUNTU_CODENAME=noble +LOGO=ubuntu-logo +Linux busymark-adoption-kvm 6.8.0-142-generic #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux +kvm +CPU(s): 4 +Model name: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz +Hypervisor vendor: KVM +Virtualization type: full +snap 2.77.1 +snapd 2.77.1 +series 16 +ubuntu 24.04 +kernel 6.8.0-142-generic +architecture amd64 +Name Version Rev Tracking Publisher Notes +bare 1.0 5 latest/stable canonical** base +busymark 0.6.1 x2 - - - +core24 20260824 2124 latest/stable canonical** base +gnome-46-2404 0+git.b31ceab-sdk0+git.f80dd8b 168 latest/stable canonical** - +gtk-common-themes 0.1-81-g442e511 1535 latest/stable canonical** - +mesa-2404 25.2.8-snap288 1839 latest/stable canonical** - +snapd 2.77.1 28254 latest/stable canonical** snapd +Interface Plug Slot Notes +audio-playback busymark:audio-playback :audio-playback - +browser-support busymark:browser-support :browser-support - +content[gnome-46-2404] busymark:gnome-46-2404 gnome-46-2404:gnome-46-2404 - +content[gpu-2404] busymark:gpu-2404 mesa-2404:gpu-2404 - +content[gtk-3-themes] busymark:gtk-3-themes gtk-common-themes:gtk-3-themes - +content[icon-themes] busymark:icon-themes gtk-common-themes:icon-themes - +content[sound-themes] busymark:sound-themes gtk-common-themes:sound-themes - +desktop busymark:desktop :desktop - +desktop-legacy busymark:desktop-legacy :desktop-legacy - +gsettings busymark:gsettings :gsettings - +home busymark:home :home - +network busymark:network :network manual +opengl busymark:opengl :opengl - +password-manager-service busymark:password-manager-service :password-manager-service manual +removable-media busymark:removable-media - - +ssh-keys busymark:ssh-keys - - +wayland busymark:wayland :wayland - +x11 busymark:x11 :x11 - +/var/lib/snapd/snaps/busymark_x2.snap: OK +snap.busymark.busymark (enforce) +Installed embedded recipe SHA-256: c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d +/snap/busymark/x2/gnome-platform/usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.1.so.0.21.10 +82f152048842ffcd0a70d08d12df10bf9b24da4b230f971c692ec781019dbef9 /snap/busymark/x2/busymark +87acd7e0dc6ebe33a6c06a9d57d22954cfb5db18e7e99a2537908055ee7e8013 /snap/busymark/x2/lib/libapp.so diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity.log new file mode 100644 index 00000000..faef690c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity.log @@ -0,0 +1,59 @@ +2026-10-07T18:46:53+00:00 +PRETTY_NAME="Ubuntu 24.04.5 LTS" +NAME="Ubuntu" +VERSION_ID="24.04" +VERSION="24.04.5 LTS (Noble Numbat)" +VERSION_CODENAME=noble +ID=ubuntu +ID_LIKE=debian +HOME_URL="https://www.ubuntu.com/" +SUPPORT_URL="https://help.ubuntu.com/" +BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" +PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" +UBUNTU_CODENAME=noble +LOGO=ubuntu-logo +Linux busymark-adoption-kvm 6.8.0-142-generic #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux +kvm +CPU(s): 4 +Model name: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz +Hypervisor vendor: KVM +Virtualization type: full +snap 2.77.1 +snapd 2.77.1 +series 16 +ubuntu 24.04 +kernel 6.8.0-142-generic +architecture amd64 +Name Version Rev Tracking Publisher Notes +bare 1.0 5 latest/stable canonical** base +busymark 0.6.1 x2 - - - +core24 20260824 2124 latest/stable canonical** base +gnome-46-2404 0+git.b31ceab-sdk0+git.f80dd8b 168 latest/stable canonical** - +gtk-common-themes 0.1-81-g442e511 1535 latest/stable canonical** - +mesa-2404 25.2.8-snap288 1839 latest/stable canonical** - +snapd 2.77.1 28254 latest/stable canonical** snapd +Interface Plug Slot Notes +audio-playback busymark:audio-playback :audio-playback - +browser-support busymark:browser-support :browser-support - +content[gnome-46-2404] busymark:gnome-46-2404 gnome-46-2404:gnome-46-2404 - +content[gpu-2404] busymark:gpu-2404 mesa-2404:gpu-2404 - +content[gtk-3-themes] busymark:gtk-3-themes gtk-common-themes:gtk-3-themes - +content[icon-themes] busymark:icon-themes gtk-common-themes:icon-themes - +content[sound-themes] busymark:sound-themes gtk-common-themes:sound-themes - +desktop busymark:desktop :desktop - +desktop-legacy busymark:desktop-legacy :desktop-legacy - +gsettings busymark:gsettings :gsettings - +home busymark:home :home - +network busymark:network :network manual +opengl busymark:opengl :opengl - +password-manager-service busymark:password-manager-service :password-manager-service manual +removable-media busymark:removable-media - - +ssh-keys busymark:ssh-keys - - +wayland busymark:wayland :wayland - +x11 busymark:x11 :x11 - +/var/lib/snapd/snaps/busymark_x2.snap: OK +snap.busymark.busymark (enforce) +Installed embedded recipe SHA-256: c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d +/snap/busymark/x2/gnome-platform/usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.1.so.0.21.10 +82f152048842ffcd0a70d08d12df10bf9b24da4b230f971c692ec781019dbef9 /snap/busymark/x2/busymark +87acd7e0dc6ebe33a6c06a9d57d22954cfb5db18e7e99a2537908055ee7e8013 /snap/busymark/x2/lib/libapp.so diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/kernel-audit.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/kernel-audit.log new file mode 100644 index 00000000..b9ffdb0a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/kernel-audit.log @@ -0,0 +1,1009 @@ +Oct 07 18:36:06 ubuntu kernel: Linux version 6.8.0-142-generic (buildd@lcy02-amd64-049) (x86_64-linux-gnu-gcc-13 (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0, GNU ld (GNU Binutils for Ubuntu) 2.42) #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026 (Ubuntu 6.8.0-142.142-generic 6.8.12) +Oct 07 18:36:06 ubuntu kernel: Command line: BOOT_IMAGE=/vmlinuz-6.8.0-142-generic root=LABEL=cloudimg-rootfs ro console=tty1 console=ttyS0 +Oct 07 18:36:06 ubuntu kernel: KERNEL supported cpus: +Oct 07 18:36:06 ubuntu kernel: Intel GenuineIntel +Oct 07 18:36:06 ubuntu kernel: AMD AuthenticAMD +Oct 07 18:36:06 ubuntu kernel: Hygon HygonGenuine +Oct 07 18:36:06 ubuntu kernel: Centaur CentaurHauls +Oct 07 18:36:06 ubuntu kernel: zhaoxin Shanghai +Oct 07 18:36:06 ubuntu kernel: BIOS-provided physical RAM map: +Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable +Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reserved +Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved +Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x0000000000100000-0x00000000bffdcfff] usable +Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x00000000bffdd000-0x00000000bfffffff] reserved +Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x00000000feffc000-0x00000000feffffff] reserved +Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved +Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x0000000100000000-0x000000013fffffff] usable +Oct 07 18:36:06 ubuntu kernel: NX (Execute Disable) protection: active +Oct 07 18:36:06 ubuntu kernel: APIC: Static calls initialized +Oct 07 18:36:06 ubuntu kernel: SMBIOS 3.0.0 present. +Oct 07 18:36:06 ubuntu kernel: DMI: QEMU Ubuntu 24.04 PC v2 (i440FX + PIIX, arch_caps fix, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 +Oct 07 18:36:06 ubuntu kernel: Hypervisor detected: KVM +Oct 07 18:36:06 ubuntu kernel: kvm-clock: Using msrs 4b564d01 and 4b564d00 +Oct 07 18:36:06 ubuntu kernel: kvm-clock: using sched offset of 2005542894 cycles +Oct 07 18:36:06 ubuntu kernel: clocksource: kvm-clock: mask: 0xffffffffffffffff max_cycles: 0x1cd42e4dffb, max_idle_ns: 881590591483 ns +Oct 07 18:36:06 ubuntu kernel: tsc: Detected 3599.892 MHz processor +Oct 07 18:36:06 ubuntu kernel: e820: update [mem 0x00000000-0x00000fff] usable ==> reserved +Oct 07 18:36:06 ubuntu kernel: e820: remove [mem 0x000a0000-0x000fffff] usable +Oct 07 18:36:06 ubuntu kernel: last_pfn = 0x140000 max_arch_pfn = 0x400000000 +Oct 07 18:36:06 ubuntu kernel: MTRR map: 4 entries (3 fixed + 1 variable; max 19), built from 8 variable MTRRs +Oct 07 18:36:06 ubuntu kernel: x86/PAT: Configuration [0-7]: WB WC UC- UC WB WP UC- WT +Oct 07 18:36:06 ubuntu kernel: last_pfn = 0xbffdd max_arch_pfn = 0x400000000 +Oct 07 18:36:06 ubuntu kernel: found SMP MP-table at [mem 0x000f5470-0x000f547f] +Oct 07 18:36:06 ubuntu kernel: Using GB pages for direct mapping +Oct 07 18:36:06 ubuntu kernel: RAMDISK: [mem 0x3455f000-0x362a6fff] +Oct 07 18:36:06 ubuntu kernel: ACPI: Early table checksum verification disabled +Oct 07 18:36:06 ubuntu kernel: ACPI: RSDP 0x00000000000F5260 000014 (v00 BOCHS ) +Oct 07 18:36:06 ubuntu kernel: ACPI: RSDT 0x00000000BFFE1D6F 000034 (v01 BOCHS BXPC 00000001 BXPC 00000001) +Oct 07 18:36:06 ubuntu kernel: ACPI: FACP 0x00000000BFFE1C0B 000074 (v01 BOCHS BXPC 00000001 BXPC 00000001) +Oct 07 18:36:06 ubuntu kernel: ACPI: DSDT 0x00000000BFFE0040 001BCB (v01 BOCHS BXPC 00000001 BXPC 00000001) +Oct 07 18:36:06 ubuntu kernel: ACPI: FACS 0x00000000BFFE0000 000040 +Oct 07 18:36:06 ubuntu kernel: ACPI: APIC 0x00000000BFFE1C7F 000090 (v03 BOCHS BXPC 00000001 BXPC 00000001) +Oct 07 18:36:06 ubuntu kernel: ACPI: HPET 0x00000000BFFE1D0F 000038 (v01 BOCHS BXPC 00000001 BXPC 00000001) +Oct 07 18:36:06 ubuntu kernel: ACPI: WAET 0x00000000BFFE1D47 000028 (v01 BOCHS BXPC 00000001 BXPC 00000001) +Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving FACP table memory at [mem 0xbffe1c0b-0xbffe1c7e] +Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving DSDT table memory at [mem 0xbffe0040-0xbffe1c0a] +Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving FACS table memory at [mem 0xbffe0000-0xbffe003f] +Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving APIC table memory at [mem 0xbffe1c7f-0xbffe1d0e] +Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving HPET table memory at [mem 0xbffe1d0f-0xbffe1d46] +Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving WAET table memory at [mem 0xbffe1d47-0xbffe1d6e] +Oct 07 18:36:06 ubuntu kernel: No NUMA configuration found +Oct 07 18:36:06 ubuntu kernel: Faking a node at [mem 0x0000000000000000-0x000000013fffffff] +Oct 07 18:36:06 ubuntu kernel: NODE_DATA(0) allocated [mem 0x13ffd3000-0x13fffdfff] +Oct 07 18:36:06 ubuntu kernel: Zone ranges: +Oct 07 18:36:06 ubuntu kernel: DMA [mem 0x0000000000001000-0x0000000000ffffff] +Oct 07 18:36:06 ubuntu kernel: DMA32 [mem 0x0000000001000000-0x00000000ffffffff] +Oct 07 18:36:06 ubuntu kernel: Normal [mem 0x0000000100000000-0x000000013fffffff] +Oct 07 18:36:06 ubuntu kernel: Device empty +Oct 07 18:36:06 ubuntu kernel: Movable zone start for each node +Oct 07 18:36:06 ubuntu kernel: Early memory node ranges +Oct 07 18:36:06 ubuntu kernel: node 0: [mem 0x0000000000001000-0x000000000009efff] +Oct 07 18:36:06 ubuntu kernel: node 0: [mem 0x0000000000100000-0x00000000bffdcfff] +Oct 07 18:36:06 ubuntu kernel: node 0: [mem 0x0000000100000000-0x000000013fffffff] +Oct 07 18:36:06 ubuntu kernel: Initmem setup node 0 [mem 0x0000000000001000-0x000000013fffffff] +Oct 07 18:36:06 ubuntu kernel: On node 0, zone DMA: 1 pages in unavailable ranges +Oct 07 18:36:06 ubuntu kernel: On node 0, zone DMA: 97 pages in unavailable ranges +Oct 07 18:36:06 ubuntu kernel: On node 0, zone Normal: 35 pages in unavailable ranges +Oct 07 18:36:06 ubuntu kernel: ACPI: PM-Timer IO Port: 0x608 +Oct 07 18:36:06 ubuntu kernel: ACPI: LAPIC_NMI (acpi_id[0xff] dfl dfl lint[0x1]) +Oct 07 18:36:06 ubuntu kernel: IOAPIC[0]: apic_id 0, version 17, address 0xfec00000, GSI 0-23 +Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) +Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level) +Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level) +Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level) +Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level) +Oct 07 18:36:06 ubuntu kernel: ACPI: Using ACPI (MADT) for SMP configuration information +Oct 07 18:36:06 ubuntu kernel: ACPI: HPET id: 0x8086a201 base: 0xfed00000 +Oct 07 18:36:06 ubuntu kernel: TSC deadline timer available +Oct 07 18:36:06 ubuntu kernel: smpboot: Allowing 4 CPUs, 0 hotplug CPUs +Oct 07 18:36:06 ubuntu kernel: kvm-guest: APIC: eoi() replaced with kvm_guest_apic_eoi_write() +Oct 07 18:36:06 ubuntu kernel: kvm-guest: KVM setup pv remote TLB flush +Oct 07 18:36:06 ubuntu kernel: kvm-guest: setup PV sched yield +Oct 07 18:36:06 ubuntu kernel: PM: hibernation: Registered nosave memory: [mem 0x00000000-0x00000fff] +Oct 07 18:36:06 ubuntu kernel: PM: hibernation: Registered nosave memory: [mem 0x0009f000-0x000fffff] +Oct 07 18:36:06 ubuntu kernel: PM: hibernation: Registered nosave memory: [mem 0xbffdd000-0xffffffff] +Oct 07 18:36:06 ubuntu kernel: [mem 0xc0000000-0xfeffbfff] available for PCI devices +Oct 07 18:36:06 ubuntu kernel: Booting paravirtualized kernel on KVM +Oct 07 18:36:06 ubuntu kernel: clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1910969940391419 ns +Oct 07 18:36:06 ubuntu kernel: setup_percpu: NR_CPUS:8192 nr_cpumask_bits:4 nr_cpu_ids:4 nr_node_ids:1 +Oct 07 18:36:06 ubuntu kernel: percpu: Embedded 86 pages/cpu s229376 r8192 d114688 u524288 +Oct 07 18:36:06 ubuntu kernel: pcpu-alloc: s229376 r8192 d114688 u524288 alloc=1*2097152 +Oct 07 18:36:06 ubuntu kernel: pcpu-alloc: [0] 0 1 2 3 +Oct 07 18:36:06 ubuntu kernel: kvm-guest: PV spinlocks enabled +Oct 07 18:36:06 ubuntu kernel: PV qspinlock hash table entries: 256 (order: 0, 4096 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: Kernel command line: BOOT_IMAGE=/vmlinuz-6.8.0-142-generic root=LABEL=cloudimg-rootfs ro console=tty1 console=ttyS0 +Oct 07 18:36:06 ubuntu kernel: random: crng init done +Oct 07 18:36:06 ubuntu kernel: Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: Fallback order for Node 0: 0 +Oct 07 18:36:06 ubuntu kernel: Built 1 zonelists, mobility grouping on. Total pages: 1031901 +Oct 07 18:36:06 ubuntu kernel: Policy zone: Normal +Oct 07 18:36:06 ubuntu kernel: mem auto-init: stack:all(zero), heap alloc:on, heap free:off +Oct 07 18:36:06 ubuntu kernel: software IO TLB: area num 4. +Oct 07 18:36:06 ubuntu kernel: Memory: 3969952K/4193772K available (22528K kernel code, 4441K rwdata, 14428K rodata, 4932K init, 4776K bss, 223560K reserved, 0K cma-reserved) +Oct 07 18:36:06 ubuntu kernel: SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 +Oct 07 18:36:06 ubuntu kernel: ftrace: allocating 58336 entries in 228 pages +Oct 07 18:36:06 ubuntu kernel: ftrace: allocated 228 pages with 4 groups +Oct 07 18:36:06 ubuntu kernel: Dynamic Preempt: voluntary +Oct 07 18:36:06 ubuntu kernel: rcu: Preemptible hierarchical RCU implementation. +Oct 07 18:36:06 ubuntu kernel: rcu: RCU restricting CPUs from NR_CPUS=8192 to nr_cpu_ids=4. +Oct 07 18:36:06 ubuntu kernel: Trampoline variant of Tasks RCU enabled. +Oct 07 18:36:06 ubuntu kernel: Rude variant of Tasks RCU enabled. +Oct 07 18:36:06 ubuntu kernel: Tracing variant of Tasks RCU enabled. +Oct 07 18:36:06 ubuntu kernel: rcu: RCU calculated value of scheduler-enlistment delay is 100 jiffies. +Oct 07 18:36:06 ubuntu kernel: rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4 +Oct 07 18:36:06 ubuntu kernel: RCU Tasks: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4. +Oct 07 18:36:06 ubuntu kernel: RCU Tasks Rude: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4. +Oct 07 18:36:06 ubuntu kernel: RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4. +Oct 07 18:36:06 ubuntu kernel: NR_IRQS: 524544, nr_irqs: 456, preallocated irqs: 16 +Oct 07 18:36:06 ubuntu kernel: rcu: srcu_init: Setting srcu_struct sizes based on contention. +Oct 07 18:36:06 ubuntu kernel: Console: colour VGA+ 80x25 +Oct 07 18:36:06 ubuntu kernel: printk: legacy console [tty1] enabled +Oct 07 18:36:06 ubuntu kernel: printk: legacy console [ttyS0] enabled +Oct 07 18:36:06 ubuntu kernel: ACPI: Core revision 20230628 +Oct 07 18:36:06 ubuntu kernel: clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604467 ns +Oct 07 18:36:06 ubuntu kernel: APIC: Switch to symmetric I/O mode setup +Oct 07 18:36:06 ubuntu kernel: x2apic enabled +Oct 07 18:36:06 ubuntu kernel: APIC: Switched APIC routing to: physical x2apic +Oct 07 18:36:06 ubuntu kernel: kvm-guest: APIC: send_IPI_mask() replaced with kvm_send_ipi_mask() +Oct 07 18:36:06 ubuntu kernel: kvm-guest: APIC: send_IPI_mask_allbutself() replaced with kvm_send_ipi_mask_allbutself() +Oct 07 18:36:06 ubuntu kernel: kvm-guest: setup PV IPIs +Oct 07 18:36:06 ubuntu kernel: ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 +Oct 07 18:36:06 ubuntu kernel: clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles: 0x33e3ed16497, max_idle_ns: 440795313184 ns +Oct 07 18:36:06 ubuntu kernel: Calibrating delay loop (skipped) preset value.. 7199.78 BogoMIPS (lpj=3599892) +Oct 07 18:36:06 ubuntu kernel: x86/cpu: User Mode Instruction Prevention (UMIP) activated +Oct 07 18:36:06 ubuntu kernel: Last level iTLB entries: 4KB 0, 2MB 0, 4MB 0 +Oct 07 18:36:06 ubuntu kernel: Last level dTLB entries: 4KB 0, 2MB 0, 4MB 0, 1GB 0 +Oct 07 18:36:06 ubuntu kernel: Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization +Oct 07 18:36:06 ubuntu kernel: Spectre V2 : Spectre BHI mitigation: SW BHB clearing on vm exit +Oct 07 18:36:06 ubuntu kernel: Spectre V2 : Spectre BHI mitigation: SW BHB clearing on syscall +Oct 07 18:36:06 ubuntu kernel: Spectre V2 : Mitigation: IBRS +Oct 07 18:36:06 ubuntu kernel: Spectre V2 : Spectre v2 / SpectreRSB: Filling RSB on context switch and VMEXIT +Oct 07 18:36:06 ubuntu kernel: RETBleed: Mitigation: IBRS +Oct 07 18:36:06 ubuntu kernel: Spectre V2 : mitigation: Enabling conditional Indirect Branch Prediction Barrier +Oct 07 18:36:06 ubuntu kernel: Speculative Store Bypass: Mitigation: Speculative Store Bypass disabled via prctl +Oct 07 18:36:06 ubuntu kernel: MDS: Mitigation: Clear CPU buffers +Oct 07 18:36:06 ubuntu kernel: MMIO Stale Data: Mitigation: Clear CPU buffers +Oct 07 18:36:06 ubuntu kernel: SRBDS: Unknown: Dependent on hypervisor status +Oct 07 18:36:06 ubuntu kernel: GDS: Unknown: Dependent on hypervisor status +Oct 07 18:36:06 ubuntu kernel: active return thunk: its_return_thunk +Oct 07 18:36:06 ubuntu kernel: ITS: Mitigation: Aligned branch/return thunks +Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers' +Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers' +Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers' +Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x008: 'MPX bounds registers' +Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x010: 'MPX CSR' +Oct 07 18:36:06 ubuntu kernel: x86/fpu: xstate_offset[2]: 576, xstate_sizes[2]: 256 +Oct 07 18:36:06 ubuntu kernel: x86/fpu: xstate_offset[3]: 832, xstate_sizes[3]: 64 +Oct 07 18:36:06 ubuntu kernel: x86/fpu: xstate_offset[4]: 896, xstate_sizes[4]: 64 +Oct 07 18:36:06 ubuntu kernel: x86/fpu: Enabled xstate features 0x1f, context size is 960 bytes, using 'compacted' format. +Oct 07 18:36:06 ubuntu kernel: Freeing SMP alternatives memory: 48K +Oct 07 18:36:06 ubuntu kernel: pid_max: default: 32768 minimum: 301 +Oct 07 18:36:06 ubuntu kernel: LSM: initializing lsm=lockdown,capability,landlock,yama,apparmor,integrity +Oct 07 18:36:06 ubuntu kernel: landlock: Up and running. +Oct 07 18:36:06 ubuntu kernel: Yama: becoming mindful. +Oct 07 18:36:06 ubuntu kernel: AppArmor: AppArmor initialized +Oct 07 18:36:06 ubuntu kernel: Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: smpboot: CPU0: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz (family: 0x6, model: 0x9e, stepping: 0xc) +Oct 07 18:36:06 ubuntu kernel: Performance Events: Skylake events, full-width counters, Intel PMU driver. +Oct 07 18:36:06 ubuntu kernel: ... version: 2 +Oct 07 18:36:06 ubuntu kernel: ... bit width: 48 +Oct 07 18:36:06 ubuntu kernel: ... generic registers: 4 +Oct 07 18:36:06 ubuntu kernel: ... value mask: 0000ffffffffffff +Oct 07 18:36:06 ubuntu kernel: ... max period: 00007fffffffffff +Oct 07 18:36:06 ubuntu kernel: ... fixed-purpose events: 3 +Oct 07 18:36:06 ubuntu kernel: ... event mask: 000000070000000f +Oct 07 18:36:06 ubuntu kernel: signal: max sigframe size: 2032 +Oct 07 18:36:06 ubuntu kernel: rcu: Hierarchical SRCU implementation. +Oct 07 18:36:06 ubuntu kernel: rcu: Max phase no-delay instances is 400. +Oct 07 18:36:06 ubuntu kernel: smp: Bringing up secondary CPUs ... +Oct 07 18:36:06 ubuntu kernel: smpboot: x86: Booting SMP configuration: +Oct 07 18:36:06 ubuntu kernel: .... node #0, CPUs: #1 #2 #3 +Oct 07 18:36:06 ubuntu kernel: smp: Brought up 1 node, 4 CPUs +Oct 07 18:36:06 ubuntu kernel: smpboot: Max logical packages: 1 +Oct 07 18:36:06 ubuntu kernel: smpboot: Total of 4 processors activated (28799.13 BogoMIPS) +Oct 07 18:36:06 ubuntu kernel: devtmpfs: initialized +Oct 07 18:36:06 ubuntu kernel: x86/mm: Memory block size: 128MB +Oct 07 18:36:06 ubuntu kernel: clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns +Oct 07 18:36:06 ubuntu kernel: futex hash table entries: 1024 (order: 4, 65536 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: pinctrl core: initialized pinctrl subsystem +Oct 07 18:36:06 ubuntu kernel: PM: RTC time: 18:36:02, date: 2026-10-07 +Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_NETLINK/PF_ROUTE protocol family +Oct 07 18:36:06 ubuntu kernel: DMA: preallocated 512 KiB GFP_KERNEL pool for atomic allocations +Oct 07 18:36:06 ubuntu kernel: DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations +Oct 07 18:36:06 ubuntu kernel: DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations +Oct 07 18:36:06 ubuntu kernel: audit: initializing netlink subsys (disabled) +Oct 07 18:36:06 ubuntu kernel: audit: type=2000 audit(1791398163.503:1): state=initialized audit_enabled=0 res=1 +Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'fair_share' +Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'bang_bang' +Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'step_wise' +Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'user_space' +Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'power_allocator' +Oct 07 18:36:06 ubuntu kernel: cpuidle: using governor ladder +Oct 07 18:36:06 ubuntu kernel: cpuidle: using governor menu +Oct 07 18:36:06 ubuntu kernel: acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 +Oct 07 18:36:06 ubuntu kernel: PCI: Using configuration type 1 for base access +Oct 07 18:36:06 ubuntu kernel: kprobes: kprobe jump-optimization is enabled. All kprobes are optimized if possible. +Oct 07 18:36:06 ubuntu kernel: HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages +Oct 07 18:36:06 ubuntu kernel: HugeTLB: 16380 KiB vmemmap can be freed for a 1.00 GiB page +Oct 07 18:36:06 ubuntu kernel: HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages +Oct 07 18:36:06 ubuntu kernel: HugeTLB: 28 KiB vmemmap can be freed for a 2.00 MiB page +Oct 07 18:36:06 ubuntu kernel: ACPI: Added _OSI(Module Device) +Oct 07 18:36:06 ubuntu kernel: ACPI: Added _OSI(Processor Device) +Oct 07 18:36:06 ubuntu kernel: ACPI: Added _OSI(Processor Aggregator Device) +Oct 07 18:36:06 ubuntu kernel: ACPI: 1 ACPI AML tables successfully acquired and loaded +Oct 07 18:36:06 ubuntu kernel: ACPI: _OSC evaluation for CPUs failed, trying _PDC +Oct 07 18:36:06 ubuntu kernel: ACPI: Interpreter enabled +Oct 07 18:36:06 ubuntu kernel: ACPI: PM: (supports S0 S3 S4 S5) +Oct 07 18:36:06 ubuntu kernel: ACPI: Using IOAPIC for interrupt routing +Oct 07 18:36:06 ubuntu kernel: PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug +Oct 07 18:36:06 ubuntu kernel: PCI: Using E820 reservations for host bridge windows +Oct 07 18:36:06 ubuntu kernel: ACPI: Enabled 2 GPEs in block 00 to 0F +Oct 07 18:36:06 ubuntu kernel: ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) +Oct 07 18:36:06 ubuntu kernel: acpi PNP0A03:00: _OSC: OS supports [ASPM ClockPM Segments MSI EDR HPX-Type3] +Oct 07 18:36:06 ubuntu kernel: acpi PNP0A03:00: _OSC: not requesting OS control; OS requires [ExtendedConfig ASPM ClockPM MSI] +Oct 07 18:36:06 ubuntu kernel: acpi PNP0A03:00: fail to add MMCONFIG information, can't access extended configuration space under this bridge +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [3] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [4] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [5] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [6] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [7] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [8] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [9] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [10] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [11] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [12] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [13] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [14] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [15] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [16] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [17] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [18] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [19] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [20] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [21] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [22] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [23] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [24] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [25] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [26] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [27] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [28] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [29] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [30] registered +Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [31] registered +Oct 07 18:36:06 ubuntu kernel: PCI host bridge to bus 0000:00 +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7 window] +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [io 0x0d00-0xffff window] +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window] +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [mem 0xc0000000-0xfebfffff window] +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [mem 0x7000000000-0x707fffffff window] +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [bus 00-ff] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:00.0: [8086:1237] type 00 class 0x060000 conventional PCI endpoint +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.0: [8086:7000] type 00 class 0x060100 conventional PCI endpoint +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: [8086:7010] type 00 class 0x010180 conventional PCI endpoint +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 4 [io 0xc0a0-0xc0af] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 0 [io 0x01f0-0x01f7]: legacy IDE quirk +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 1 [io 0x03f6]: legacy IDE quirk +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 2 [io 0x0170-0x0177]: legacy IDE quirk +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 3 [io 0x0376]: legacy IDE quirk +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.3: [8086:7113] type 00 class 0x068000 conventional PCI endpoint +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.3: quirk: [io 0x0600-0x063f] claimed by PIIX4 ACPI +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.3: quirk: [io 0x0700-0x070f] claimed by PIIX4 SMB +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: [1234:1111] type 00 class 0x030000 conventional PCI endpoint +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: BAR 0 [mem 0xfd000000-0xfdffffff pref] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: BAR 2 [mem 0xfeb90000-0xfeb90fff] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: ROM [mem 0xfeb80000-0xfeb8ffff pref] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: Video device with shadowed ROM at [mem 0x000c0000-0x000dffff] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: [1af4:1000] type 00 class 0x020000 conventional PCI endpoint +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: BAR 0 [io 0xc080-0xc09f] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: BAR 1 [mem 0xfeb91000-0xfeb91fff] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: BAR 4 [mem 0x7000000000-0x7000003fff 64bit pref] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: ROM [mem 0xfeb00000-0xfeb7ffff pref] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:04.0: [1af4:1001] type 00 class 0x010000 conventional PCI endpoint +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:04.0: BAR 0 [io 0xc000-0xc07f] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:04.0: BAR 1 [mem 0xfeb92000-0xfeb92fff] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:04.0: BAR 4 [mem 0x7000004000-0x7000007fff 64bit pref] +Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKA configured for IRQ 10 +Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKB configured for IRQ 10 +Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKC configured for IRQ 11 +Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKD configured for IRQ 11 +Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKS configured for IRQ 9 +Oct 07 18:36:06 ubuntu kernel: iommu: Default domain type: Translated +Oct 07 18:36:06 ubuntu kernel: iommu: DMA domain TLB invalidation policy: lazy mode +Oct 07 18:36:06 ubuntu kernel: SCSI subsystem initialized +Oct 07 18:36:06 ubuntu kernel: libata version 3.00 loaded. +Oct 07 18:36:06 ubuntu kernel: ACPI: bus type USB registered +Oct 07 18:36:06 ubuntu kernel: usbcore: registered new interface driver usbfs +Oct 07 18:36:06 ubuntu kernel: usbcore: registered new interface driver hub +Oct 07 18:36:06 ubuntu kernel: usbcore: registered new device driver usb +Oct 07 18:36:06 ubuntu kernel: pps_core: LinuxPPS API ver. 1 registered +Oct 07 18:36:06 ubuntu kernel: pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti +Oct 07 18:36:06 ubuntu kernel: PTP clock support registered +Oct 07 18:36:06 ubuntu kernel: EDAC MC: Ver: 3.0.0 +Oct 07 18:36:06 ubuntu kernel: NetLabel: Initializing +Oct 07 18:36:06 ubuntu kernel: NetLabel: domain hash size = 128 +Oct 07 18:36:06 ubuntu kernel: NetLabel: protocols = UNLABELED CIPSOv4 CALIPSO +Oct 07 18:36:06 ubuntu kernel: NetLabel: unlabeled traffic allowed by default +Oct 07 18:36:06 ubuntu kernel: mctp: management component transport protocol core +Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_MCTP protocol family +Oct 07 18:36:06 ubuntu kernel: PCI: Using ACPI for IRQ routing +Oct 07 18:36:06 ubuntu kernel: PCI: pci_cache_line_size set to 64 bytes +Oct 07 18:36:06 ubuntu kernel: e820: reserve RAM buffer [mem 0x0009fc00-0x0009ffff] +Oct 07 18:36:06 ubuntu kernel: e820: reserve RAM buffer [mem 0xbffdd000-0xbfffffff] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: vgaarb: setting as boot VGA device +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: vgaarb: bridge control possible +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none +Oct 07 18:36:06 ubuntu kernel: vgaarb: loaded +Oct 07 18:36:06 ubuntu kernel: hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0 +Oct 07 18:36:06 ubuntu kernel: hpet0: 3 comparators, 64-bit 100.000000 MHz counter +Oct 07 18:36:06 ubuntu kernel: clocksource: Switched to clocksource kvm-clock +Oct 07 18:36:06 ubuntu kernel: VFS: Disk quotas dquot_6.6.0 +Oct 07 18:36:06 ubuntu kernel: VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes) +Oct 07 18:36:06 ubuntu kernel: AppArmor: AppArmor Filesystem Enabled +Oct 07 18:36:06 ubuntu kernel: pnp: PnP ACPI init +Oct 07 18:36:06 ubuntu kernel: pnp 00:02: [dma 2] +Oct 07 18:36:06 ubuntu kernel: pnp: PnP ACPI: found 6 devices +Oct 07 18:36:06 ubuntu kernel: clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns +Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_INET protocol family +Oct 07 18:36:06 ubuntu kernel: IP idents hash table entries: 65536 (order: 7, 524288 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: tcp_listen_portaddr_hash hash table entries: 2048 (order: 3, 32768 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: TCP bind hash table entries: 32768 (order: 8, 1048576 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: TCP: Hash tables configured (established 32768 bind 32768) +Oct 07 18:36:06 ubuntu kernel: MPTCP token hash table entries: 4096 (order: 5, 98304 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: UDP hash table entries: 2048 (order: 4, 65536 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes, linear) +Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_UNIX/PF_LOCAL protocol family +Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_XDP protocol family +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 4 [io 0x0000-0x0cf7 window] +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 5 [io 0x0d00-0xffff window] +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff window] +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 7 [mem 0xc0000000-0xfebfffff window] +Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 8 [mem 0x7000000000-0x707fffffff window] +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.0: PIIX3: Enabling Passive Release +Oct 07 18:36:06 ubuntu kernel: pci 0000:00:00.0: Limiting direct PCI/PCI transfers +Oct 07 18:36:06 ubuntu kernel: PCI: CLS 0 bytes, default 64 +Oct 07 18:36:06 ubuntu kernel: PCI-DMA: Using software bounce buffering for IO (SWIOTLB) +Oct 07 18:36:06 ubuntu kernel: Trying to unpack rootfs image as initramfs... +Oct 07 18:36:06 ubuntu kernel: software IO TLB: mapped [mem 0x00000000bbfdd000-0x00000000bffdd000] (64MB) +Oct 07 18:36:06 ubuntu kernel: clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x33e3ed16497, max_idle_ns: 440795313184 ns +Oct 07 18:36:06 ubuntu kernel: sgx: There are zero EPC sections. +Oct 07 18:36:06 ubuntu kernel: Initialise system trusted keyrings +Oct 07 18:36:06 ubuntu kernel: Key type blacklist registered +Oct 07 18:36:06 ubuntu kernel: workingset: timestamp_bits=36 max_order=20 bucket_order=0 +Oct 07 18:36:06 ubuntu kernel: zbud: loaded +Oct 07 18:36:06 ubuntu kernel: squashfs: version 4.0 (2009/01/31) Phillip Lougher +Oct 07 18:36:06 ubuntu kernel: fuse: init (API version 7.39) +Oct 07 18:36:06 ubuntu kernel: integrity: Platform Keyring initialized +Oct 07 18:36:06 ubuntu kernel: integrity: Machine keyring initialized +Oct 07 18:36:06 ubuntu kernel: Key type asymmetric registered +Oct 07 18:36:06 ubuntu kernel: Asymmetric key parser 'x509' registered +Oct 07 18:36:06 ubuntu kernel: Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243) +Oct 07 18:36:06 ubuntu kernel: io scheduler mq-deadline registered +Oct 07 18:36:06 ubuntu kernel: shpchp: Standard Hot Plug PCI Controller Driver version: 0.4 +Oct 07 18:36:06 ubuntu kernel: input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 +Oct 07 18:36:06 ubuntu kernel: ACPI: button: Power Button [PWRF] +Oct 07 18:36:06 ubuntu kernel: ACPI: \_SB_.LNKC: Enabled at IRQ 11 +Oct 07 18:36:06 ubuntu kernel: ACPI: \_SB_.LNKD: Enabled at IRQ 10 +Oct 07 18:36:06 ubuntu kernel: Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled +Oct 07 18:36:06 ubuntu kernel: 00:04: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A +Oct 07 18:36:06 ubuntu kernel: Linux agpgart interface v0.103 +Oct 07 18:36:06 ubuntu kernel: loop: module loaded +Oct 07 18:36:06 ubuntu kernel: virtio_blk virtio1: 4/0/0 default/read/poll queues +Oct 07 18:36:06 ubuntu kernel: virtio_blk virtio1: [vda] 33554432 512-byte logical blocks (17.2 GB/16.0 GiB) +Oct 07 18:36:06 ubuntu kernel: GPT:Primary header thinks Alt. header is not at the end of the disk. +Oct 07 18:36:06 ubuntu kernel: GPT:7340031 != 33554431 +Oct 07 18:36:06 ubuntu kernel: GPT:Alternate GPT header not at the end of the disk. +Oct 07 18:36:06 ubuntu kernel: GPT:7340031 != 33554431 +Oct 07 18:36:06 ubuntu kernel: GPT: Use GNU Parted to correct GPT errors. +Oct 07 18:36:06 ubuntu kernel: vda: vda1 vda14 vda15 vda16 +Oct 07 18:36:06 ubuntu kernel: ata_piix 0000:00:01.1: version 2.13 +Oct 07 18:36:06 ubuntu kernel: scsi host0: ata_piix +Oct 07 18:36:06 ubuntu kernel: scsi host1: ata_piix +Oct 07 18:36:06 ubuntu kernel: ata1: PATA max MWDMA2 cmd 0x1f0 ctl 0x3f6 bmdma 0xc0a0 irq 14 lpm-pol 0 +Oct 07 18:36:06 ubuntu kernel: ata2: PATA max MWDMA2 cmd 0x170 ctl 0x376 bmdma 0xc0a8 irq 15 lpm-pol 0 +Oct 07 18:36:06 ubuntu kernel: ACPI: bus type drm_connector registered +Oct 07 18:36:06 ubuntu kernel: tun: Universal TUN/TAP device driver, 1.6 +Oct 07 18:36:06 ubuntu kernel: PPP generic driver version 2.4.2 +Oct 07 18:36:06 ubuntu kernel: i8042: PNP: PS/2 Controller [PNP0303:KBD,PNP0f13:MOU] at 0x60,0x64 irq 1,12 +Oct 07 18:36:06 ubuntu kernel: serio: i8042 KBD port at 0x60,0x64 irq 1 +Oct 07 18:36:06 ubuntu kernel: serio: i8042 AUX port at 0x60,0x64 irq 12 +Oct 07 18:36:06 ubuntu kernel: mousedev: PS/2 mouse device common for all mice +Oct 07 18:36:06 ubuntu kernel: rtc_cmos 00:05: RTC can wake from S4 +Oct 07 18:36:06 ubuntu kernel: rtc_cmos 00:05: registered as rtc0 +Oct 07 18:36:06 ubuntu kernel: input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input1 +Oct 07 18:36:06 ubuntu kernel: rtc_cmos 00:05: setting system clock to 2026-10-07T18:36:03 UTC (1791398163) +Oct 07 18:36:06 ubuntu kernel: rtc_cmos 00:05: alarms up to one day, y3k, 242 bytes nvram, hpet irqs +Oct 07 18:36:06 ubuntu kernel: i2c_dev: i2c /dev entries driver +Oct 07 18:36:06 ubuntu kernel: device-mapper: core: CONFIG_IMA_DISABLE_HTABLE is disabled. Duplicate IMA measurements will not be recorded in the IMA log. +Oct 07 18:36:06 ubuntu kernel: device-mapper: uevent: version 1.0.3 +Oct 07 18:36:06 ubuntu kernel: device-mapper: ioctl: 4.48.0-ioctl (2023-03-01) initialised: dm-devel@redhat.com +Oct 07 18:36:06 ubuntu kernel: intel_pstate: CPU model not supported +Oct 07 18:36:06 ubuntu kernel: ledtrig-cpu: registered to indicate activity on CPUs +Oct 07 18:36:06 ubuntu kernel: drop_monitor: Initializing network drop monitor service +Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_INET6 protocol family +Oct 07 18:36:06 ubuntu kernel: Freeing initrd memory: 29984K +Oct 07 18:36:06 ubuntu kernel: Segment Routing with IPv6 +Oct 07 18:36:06 ubuntu kernel: In-situ OAM (IOAM) with IPv6 +Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_PACKET protocol family +Oct 07 18:36:06 ubuntu kernel: Key type dns_resolver registered +Oct 07 18:36:06 ubuntu kernel: IPI shorthand broadcast: enabled +Oct 07 18:36:06 ubuntu kernel: sched_clock: Marking stable (1249007917, 195137836)->(1493930758, -49785005) +Oct 07 18:36:06 ubuntu kernel: registered taskstats version 1 +Oct 07 18:36:06 ubuntu kernel: Loading compiled-in X.509 certificates +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Build time autogenerated kernel key: aaf6cface807121d2b25f83f2288de5f0eb7acff' +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Live Patch Signing 2025 Kmod: d541cef61dc7e793b7eb7e899970a2eef0b5dc8c' +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Live Patch Signing: 14df34d1a87cf37625abec039ef2bf521249b969' +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Kernel Module Signing 2025 Kmod: 4627603d2357a2a3f81006370894c221175893e9' +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Kernel Module Signing: 88f752e560a1e0737e31163a466ad7b70a850c19' +Oct 07 18:36:06 ubuntu kernel: blacklist: Loading compiled-in revocation X.509 certificates +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing: 61482aa2830d0ab2ad5af10b7250da9033ddcef0' +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2017): 242ade75ac4a15e50d50c84b0d45ff3eae707a03' +Oct 07 18:36:06 ubuntu kernel: ata1: found unknown device (class 0) +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (ESM 2018): 365188c1d374d6b07c3c8f240f8ef722433d6a8b' +Oct 07 18:36:06 ubuntu kernel: ata2: found unknown device (class 0) +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2019): c0746fd6c5da3ae827864651ad66ae47fe24b3e8' +Oct 07 18:36:06 ubuntu kernel: ata1.00: ATAPI: QEMU DVD-ROM, 2.5+, max UDMA/100 +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2021 v1): a8d54bbb3825cfb94fa13c9f8a594a195c107b8d' +Oct 07 18:36:06 ubuntu kernel: ata2.00: ATAPI: QEMU DVD-ROM, 2.5+, max UDMA/100 +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2021 v2): 4cf046892d6fd3c9a5b03f98d845f90851dc6a8c' +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2021 v3): 100437bb6de6e469b581e61cd66bce3ef4ed53af' +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (Ubuntu Core 2019): c1d57b8f6b743f23ee41f4f7ee292f06eecadfb9' +Oct 07 18:36:06 ubuntu kernel: scsi 0:0:0:0: CD-ROM QEMU QEMU DVD-ROM 2.5+ PQ: 0 ANSI: 5 +Oct 07 18:36:06 ubuntu kernel: Key type .fscrypt registered +Oct 07 18:36:06 ubuntu kernel: Key type fscrypt-provisioning registered +Oct 07 18:36:06 ubuntu kernel: sr 0:0:0:0: [sr0] scsi3-mmc drive: 4x/4x cd/rw xa/form2 tray +Oct 07 18:36:06 ubuntu kernel: cryptd: max_cpu_qlen set to 1000 +Oct 07 18:36:06 ubuntu kernel: cdrom: Uniform CD-ROM driver Revision: 3.20 +Oct 07 18:36:06 ubuntu kernel: sr 0:0:0:0: Attached scsi CD-ROM sr0 +Oct 07 18:36:06 ubuntu kernel: sr 0:0:0:0: Attached scsi generic sg0 type 5 +Oct 07 18:36:06 ubuntu kernel: scsi 1:0:0:0: CD-ROM QEMU QEMU DVD-ROM 2.5+ PQ: 0 ANSI: 5 +Oct 07 18:36:06 ubuntu kernel: sr 1:0:0:0: [sr1] scsi3-mmc drive: 4x/4x cd/rw xa/form2 tray +Oct 07 18:36:06 ubuntu kernel: sr 1:0:0:0: Attached scsi CD-ROM sr1 +Oct 07 18:36:06 ubuntu kernel: sr 1:0:0:0: Attached scsi generic sg1 type 5 +Oct 07 18:36:06 ubuntu kernel: AVX2 version of gcm_enc/dec engaged. +Oct 07 18:36:06 ubuntu kernel: AES CTR mode by8 optimization enabled +Oct 07 18:36:06 ubuntu kernel: Key type encrypted registered +Oct 07 18:36:06 ubuntu kernel: AppArmor: AppArmor sha256 policy hashing enabled +Oct 07 18:36:06 ubuntu kernel: ima: No TPM chip found, activating TPM-bypass! +Oct 07 18:36:06 ubuntu kernel: Loading compiled-in module X.509 certificates +Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Build time autogenerated kernel key: aaf6cface807121d2b25f83f2288de5f0eb7acff' +Oct 07 18:36:06 ubuntu kernel: ima: Allocated hash algorithm: sha256 +Oct 07 18:36:06 ubuntu kernel: ima: No architecture policies found +Oct 07 18:36:06 ubuntu kernel: evm: Initialising EVM extended attributes: +Oct 07 18:36:06 ubuntu kernel: evm: security.selinux +Oct 07 18:36:06 ubuntu kernel: evm: security.SMACK64 +Oct 07 18:36:06 ubuntu kernel: evm: security.SMACK64EXEC +Oct 07 18:36:06 ubuntu kernel: evm: security.SMACK64TRANSMUTE +Oct 07 18:36:06 ubuntu kernel: evm: security.SMACK64MMAP +Oct 07 18:36:06 ubuntu kernel: evm: security.apparmor +Oct 07 18:36:06 ubuntu kernel: evm: security.ima +Oct 07 18:36:06 ubuntu kernel: evm: security.capability +Oct 07 18:36:06 ubuntu kernel: evm: HMAC attrs: 0x1 +Oct 07 18:36:06 ubuntu kernel: PM: Magic number: 14:42:645 +Oct 07 18:36:06 ubuntu kernel: RAS: Correctable Errors collector initialized. +Oct 07 18:36:06 ubuntu kernel: clk: Disabling unused clocks +Oct 07 18:36:06 ubuntu kernel: Freeing unused decrypted memory: 2028K +Oct 07 18:36:06 ubuntu kernel: Freeing unused kernel image (initmem) memory: 4932K +Oct 07 18:36:06 ubuntu kernel: Write protecting the kernel read-only data: 38912k +Oct 07 18:36:06 ubuntu kernel: Freeing unused kernel image (rodata/data gap) memory: 1956K +Oct 07 18:36:06 ubuntu kernel: x86/mm: Checked W+X mappings: passed, no W+X pages found. +Oct 07 18:36:06 ubuntu kernel: Run /init as init process +Oct 07 18:36:06 ubuntu kernel: with arguments: +Oct 07 18:36:06 ubuntu kernel: /init +Oct 07 18:36:06 ubuntu kernel: with environment: +Oct 07 18:36:06 ubuntu kernel: HOME=/ +Oct 07 18:36:06 ubuntu kernel: TERM=linux +Oct 07 18:36:06 ubuntu kernel: virtio_net virtio0 ens3: renamed from eth0 +Oct 07 18:36:06 ubuntu kernel: Floppy drive(s): fd0 is 2.88M AMI BIOS +Oct 07 18:36:06 ubuntu kernel: input: VirtualPS/2 VMware VMMouse as /devices/platform/i8042/serio1/input/input4 +Oct 07 18:36:06 ubuntu kernel: input: VirtualPS/2 VMware VMMouse as /devices/platform/i8042/serio1/input/input3 +Oct 07 18:36:06 ubuntu kernel: FDC 0 is a S82078B +Oct 07 18:36:06 ubuntu kernel: raid6: avx2x4 gen() 24651 MB/s +Oct 07 18:36:06 ubuntu kernel: raid6: avx2x2 gen() 24761 MB/s +Oct 07 18:36:06 ubuntu kernel: raid6: avx2x1 gen() 22417 MB/s +Oct 07 18:36:06 ubuntu kernel: raid6: using algorithm avx2x2 gen() 24761 MB/s +Oct 07 18:36:06 ubuntu kernel: raid6: .... xor() 15663 MB/s, rmw enabled +Oct 07 18:36:06 ubuntu kernel: raid6: using avx2x2 recovery algorithm +Oct 07 18:36:06 ubuntu kernel: xor: automatically using best checksumming function avx +Oct 07 18:36:06 ubuntu kernel: async_tx: api initialized (async) +Oct 07 18:36:06 ubuntu kernel: Btrfs loaded, zoned=yes, fsverity=yes +Oct 07 18:36:06 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 +Oct 07 18:36:06 ubuntu kernel: floppy: error 10 while reading block 0 +Oct 07 18:36:06 ubuntu kernel: EXT4-fs (vda1): mounted filesystem 1bfefdfb-34c9-46c7-854f-399d0a1dea04 ro with ordered data mode. Quota mode: none. +Oct 07 18:36:06 ubuntu systemd[1]: Inserted module 'autofs4' +Oct 07 18:36:06 ubuntu systemd[1]: systemd 255.4-1ubuntu8.17 running in system mode (+PAM +AUDIT +SELINUX +APPARMOR +IMA +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSETUP +LIBFDISK +PCRE2 -PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=unified) +Oct 07 18:36:06 ubuntu systemd[1]: Detected virtualization kvm. +Oct 07 18:36:06 ubuntu systemd[1]: Detected architecture x86-64. +Oct 07 18:36:06 ubuntu systemd[1]: Hostname set to . +Oct 07 18:36:06 ubuntu systemd[1]: Initializing machine ID from random generator. +Oct 07 18:36:06 ubuntu systemd[1]: Installed transient /etc/machine-id file. +Oct 07 18:36:06 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 +Oct 07 18:36:06 ubuntu kernel: floppy: error 10 while reading block 0 +Oct 07 18:36:06 ubuntu systemd[1]: Queued start job for default target graphical.target. +Oct 07 18:36:06 ubuntu systemd[1]: Created slice system-modprobe.slice - Slice /system/modprobe. +Oct 07 18:36:06 ubuntu systemd[1]: Created slice system-serial\x2dgetty.slice - Slice /system/serial-getty. +Oct 07 18:36:06 ubuntu systemd[1]: Created slice system-systemd\x2dfsck.slice - Slice /system/systemd-fsck. +Oct 07 18:36:06 ubuntu systemd[1]: Created slice user.slice - User and Session Slice. +Oct 07 18:36:06 ubuntu systemd[1]: Started systemd-ask-password-wall.path - Forward Password Requests to Wall Directory Watch. +Oct 07 18:36:06 ubuntu systemd[1]: Set up automount proc-sys-fs-binfmt_misc.automount - Arbitrary Executable File Formats File System Automount Point. +Oct 07 18:36:06 ubuntu systemd[1]: Expecting device dev-disk-by\x2dlabel-BOOT.device - /dev/disk/by-label/BOOT... +Oct 07 18:36:06 ubuntu systemd[1]: Expecting device dev-disk-by\x2dlabel-UEFI.device - /dev/disk/by-label/UEFI... +Oct 07 18:36:06 ubuntu systemd[1]: Expecting device dev-ttyS0.device - /dev/ttyS0... +Oct 07 18:36:06 ubuntu systemd[1]: Reached target integritysetup.target - Local Integrity Protected Volumes. +Oct 07 18:36:06 ubuntu systemd[1]: Reached target slices.target - Slice Units. +Oct 07 18:36:06 ubuntu systemd[1]: Reached target snapd.mounts-pre.target - Mounting snaps. +Oct 07 18:36:06 ubuntu systemd[1]: Reached target snapd.mounts.target - Mounted snaps. +Oct 07 18:36:06 ubuntu systemd[1]: Reached target swap.target - Swaps. +Oct 07 18:36:06 ubuntu systemd[1]: Reached target veritysetup.target - Local Verity Protected Volumes. +Oct 07 18:36:06 ubuntu systemd[1]: Listening on dm-event.socket - Device-mapper event daemon FIFOs. +Oct 07 18:36:06 ubuntu systemd[1]: Listening on lvm2-lvmpolld.socket - LVM2 poll daemon socket. +Oct 07 18:36:06 ubuntu systemd[1]: Listening on multipathd.socket - multipathd control socket. +Oct 07 18:36:06 ubuntu systemd[1]: Listening on syslog.socket - Syslog Socket. +Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-fsckd.socket - fsck to fsckd communication Socket. +Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-initctl.socket - initctl Compatibility Named Pipe. +Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-journald-dev-log.socket - Journal Socket (/dev/log). +Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-journald.socket - Journal Socket. +Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-networkd.socket - Network Service Netlink Socket. +Oct 07 18:36:06 ubuntu systemd[1]: systemd-pcrextend.socket - TPM2 PCR Extension (Varlink) was skipped because of an unmet condition check (ConditionSecurity=measured-uki). +Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-udevd-control.socket - udev Control Socket. +Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-udevd-kernel.socket - udev Kernel Socket. +Oct 07 18:36:06 ubuntu systemd[1]: Mounting dev-hugepages.mount - Huge Pages File System... +Oct 07 18:36:06 ubuntu systemd[1]: Mounting dev-mqueue.mount - POSIX Message Queue File System... +Oct 07 18:36:06 ubuntu systemd[1]: Mounting sys-kernel-debug.mount - Kernel Debug File System... +Oct 07 18:36:06 ubuntu systemd[1]: Mounting sys-kernel-tracing.mount - Kernel Trace File System... +Oct 07 18:36:06 ubuntu systemd[1]: Starting systemd-journald.service - Journal Service... +Oct 07 18:36:06 ubuntu systemd[1]: Starting keyboard-setup.service - Set the console keyboard layout... +Oct 07 18:36:06 ubuntu systemd[1]: Starting kmod-static-nodes.service - Create List of Static Device Nodes... +Oct 07 18:36:06 ubuntu systemd[1]: Starting lvm2-monitor.service - Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling... +Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@configfs.service - Load Kernel Module configfs... +Oct 07 18:36:06 ubuntu systemd-journald[325]: Collecting audit messages is disabled. +Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@dm_mod.service - Load Kernel Module dm_mod... +Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@drm.service - Load Kernel Module drm... +Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@efi_pstore.service - Load Kernel Module efi_pstore... +Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@fuse.service - Load Kernel Module fuse... +Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@loop.service - Load Kernel Module loop... +Oct 07 18:36:06 ubuntu systemd[1]: netplan-ovs-cleanup.service - OpenVSwitch configuration for cleanup was skipped because of an unmet condition check (ConditionFileIsExecutable=/usr/bin/ovs-vsctl). +Oct 07 18:36:06 ubuntu systemd[1]: Starting systemd-fsck-root.service - File System Check on Root Device... +Oct 07 18:36:06 ubuntu systemd[1]: Starting systemd-modules-load.service - Load Kernel Modules... +Oct 07 18:36:06 ubuntu systemd[1]: systemd-pcrmachine.service - TPM2 PCR Machine ID Measurement was skipped because of an unmet condition check (ConditionSecurity=measured-uki). +Oct 07 18:36:06 ubuntu systemd[1]: systemd-tpm2-setup-early.service - TPM2 SRK Setup (Early) was skipped because of an unmet condition check (ConditionSecurity=measured-uki). +Oct 07 18:36:06 ubuntu systemd[1]: Starting systemd-udev-trigger.service - Coldplug All udev Devices... +Oct 07 18:36:06 ubuntu systemd[1]: Started systemd-journald.service - Journal Service. +Oct 07 18:36:06 ubuntu kernel: EXT4-fs (vda1): re-mounted 1bfefdfb-34c9-46c7-854f-399d0a1dea04 r/w. +Oct 07 18:36:06 ubuntu systemd-journald[325]: Received client request to flush runtime journal. +Oct 07 18:36:07 ubuntu kernel: parport_pc 00:03: reported by Plug and Play ACPI +Oct 07 18:36:07 ubuntu kernel: parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] +Oct 07 18:36:07 ubuntu kernel: EXT4-fs (vda16): mounted filesystem fb8b4264-587e-4a60-a103-a1d39552f189 r/w with ordered data mode. Quota mode: none. +Oct 07 18:36:07 ubuntu kernel: ppdev: user-space parallel port driver +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.464:2): apparmor="STATUS" operation="profile_load" profile="unconfined" name=4D6F6E676F444220436F6D70617373 pid=518 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.464:3): apparmor="STATUS" operation="profile_load" profile="unconfined" name="Discord" pid=517 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.465:4): apparmor="STATUS" operation="profile_load" profile="unconfined" name="QtWebEngineProcess" pid=519 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.465:5): apparmor="STATUS" operation="profile_load" profile="unconfined" name="1password" pid=516 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.467:6): apparmor="STATUS" operation="profile_load" profile="unconfined" name="balena-etcher" pid=524 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.467:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="brave" pid=525 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.469:8): apparmor="STATUS" operation="profile_load" profile="unconfined" name="buildah" pid=526 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.470:9): apparmor="STATUS" operation="profile_load" profile="unconfined" name="ch-checkns" pid=528 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.470:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="cam" pid=527 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: kauditd_printk_skb: 81 callbacks suppressed +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.855:92): apparmor="STATUS" operation="profile_load" profile="unconfined" name="ubuntu_pro_apt_news" pid=615 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.899:93): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/man" pid=620 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.899:94): apparmor="STATUS" operation="profile_load" profile="unconfined" name="man_filter" pid=620 comm="apparmor_parser" +Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.901:95): apparmor="STATUS" operation="profile_load" profile="unconfined" name="man_groff" pid=620 comm="apparmor_parser" +Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.032:96): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/snapd/snap-confine" pid=622 comm="apparmor_parser" +Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.083:97): apparmor="STATUS" operation="profile_load" profile="unconfined" name="tcpdump" pid=621 comm="apparmor_parser" +Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.085:98): apparmor="STATUS" operation="profile_load" profile="unconfined" name="rsyslogd" pid=624 comm="apparmor_parser" +Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.088:99): apparmor="STATUS" operation="profile_load" profile="unconfined" name="uwsgi-core" pid=625 comm="apparmor_parser" +Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.090:100): apparmor="STATUS" operation="profile_load" profile="unconfined" name="vdens" pid=626 comm="apparmor_parser" +Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.094:101): apparmor="STATUS" operation="profile_load" profile="unconfined" name="virtiofsd" pid=627 comm="apparmor_parser" +Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 +Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 +Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 +Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 +Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 +Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 +Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 +Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 +Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 +Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 +Oct 07 18:36:09 ubuntu kernel: ISO 9660 Extensions: Microsoft Joliet Level 3 +Oct 07 18:36:09 ubuntu kernel: ISO 9660 Extensions: RRIP_1991A +Oct 07 18:36:22 busymark-adoption-kvm kernel: EXT4-fs (vda1): resizing filesystem from 655099 to 3931899 blocks +Oct 07 18:36:22 busymark-adoption-kvm kernel: EXT4-fs (vda1): resized filesystem to 3931899 +Oct 07 18:36:24 busymark-adoption-kvm kernel: kauditd_printk_skb: 17 callbacks suppressed +Oct 07 18:36:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398184.050:119): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="rsyslogd" pid=831 comm="apparmor_parser" +Oct 07 18:36:24 busymark-adoption-kvm kernel: loop0: detected capacity change from 0 to 8 +Oct 07 18:36:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398184.732:120): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/lib/snapd/snap-confine" pid=995 comm="apparmor_parser" +Oct 07 18:37:34 busymark-adoption-kvm kernel: clocksource: Long readout interval, skipping watchdog check: cs_nsec: 1194682541 wd_nsec: 1194682058 +Oct 07 18:37:44 busymark-adoption-kvm kernel: clocksource: Long readout interval, skipping watchdog check: cs_nsec: 10083645115 wd_nsec: 10083641487 +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.139:121): apparmor="STATUS" operation="profile_load" profile="unconfined" name="ping" pid=4873 comm="apparmor_parser" +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.175:122): apparmor="STATUS" operation="profile_load" profile="unconfined" name="php-fpm" pid=4879 comm="apparmor_parser" +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.216:123): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-bgqd" pid=4885 comm="apparmor_parser" +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.250:124): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-dcerpcd" pid=4891 comm="apparmor_parser" +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.287:125): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-rpcd" pid=4897 comm="apparmor_parser" +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.324:126): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-rpcd-classic" pid=4903 comm="apparmor_parser" +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.358:127): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-rpcd-spoolss" pid=4911 comm="apparmor_parser" +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.374:128): apparmor="STATUS" operation="profile_load" profile="unconfined" name="klogd" pid=4917 comm="apparmor_parser" +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.426:129): apparmor="STATUS" operation="profile_load" profile="unconfined" name="syslog-ng" pid=4923 comm="apparmor_parser" +Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.465:130): apparmor="STATUS" operation="profile_load" profile="unconfined" name="syslogd" pid=4929 comm="apparmor_parser" +Oct 07 18:38:52 busymark-adoption-kvm kernel: loop0: detected capacity change from 0 to 8 +Oct 07 18:38:52 busymark-adoption-kvm kernel: kauditd_printk_skb: 11 callbacks suppressed +Oct 07 18:38:52 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398332.733:142): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/usr/lib/snapd/snap-confine" pid=5739 comm="apparmor_parser" +Oct 07 18:39:22 busymark-adoption-kvm kernel: loop0: detected capacity change from 0 to 91568 +Oct 07 18:39:23 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398363.365:143): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=5920 comm="apparmor_parser" +Oct 07 18:39:28 busymark-adoption-kvm kernel: loop1: detected capacity change from 0 to 8 +Oct 07 18:39:28 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398368.912:144): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=6077 comm="apparmor_parser" +Oct 07 18:39:29 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398369.387:145): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=6090 comm="apparmor_parser" +Oct 07 18:39:38 busymark-adoption-kvm kernel: loop1: detected capacity change from 0 to 136784 +Oct 07 18:39:41 busymark-adoption-kvm kernel: loop2: detected capacity change from 0 to 604976 +Oct 07 18:39:43 busymark-adoption-kvm kernel: loop3: detected capacity change from 0 to 8 +Oct 07 18:40:09 busymark-adoption-kvm kernel: loop4: detected capacity change from 0 to 823256 +Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.143:146): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap-update-ns.mesa-2404" pid=6688 comm="apparmor_parser" +Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.304:147): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.hook.connect-plug-kernel-gpu-2404" pid=6690 comm="apparmor_parser" +Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.324:148): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.component-monitor" pid=6689 comm="apparmor_parser" +Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.429:149): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.hook.disconnect-plug-kernel-gpu-2404" pid=6691 comm="apparmor_parser" +Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.438:150): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.hook.install" pid=6692 comm="apparmor_parser" +Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.525:151): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.hook.post-refresh" pid=6693 comm="apparmor_parser" +Oct 07 18:40:24 busymark-adoption-kvm kernel: loop5: detected capacity change from 0 to 187776 +Oct 07 18:41:02 busymark-adoption-kvm kernel: loop6: detected capacity change from 0 to 1260056 +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.395:152): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=7203 comm="apparmor_parser" +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.669:153): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap-update-ns.busymark" pid=7205 comm="apparmor_parser" +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.727:154): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.busymark.busymark" pid=7206 comm="apparmor_parser" +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.808:155): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.component-monitor" pid=7208 comm="apparmor_parser" +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.809:156): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.busymark.hook.configure" pid=7207 comm="apparmor_parser" +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.888:157): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.connect-plug-kernel-gpu-2404" pid=7209 comm="apparmor_parser" +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.895:158): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.disconnect-plug-kernel-gpu-2404" pid=7210 comm="apparmor_parser" +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.967:159): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.install" pid=7211 comm="apparmor_parser" +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.978:160): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.post-refresh" pid=7212 comm="apparmor_parser" +Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.982:161): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.mesa-2404" pid=7214 comm="apparmor_parser" +Oct 07 18:42:47 busymark-adoption-kvm kernel: kauditd_printk_skb: 12 callbacks suppressed +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.000:174): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.0" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.008:175): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libc.so.6" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.009:176): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.11.2" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.009:177): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.009:178): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.009:179): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.8000.0" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.010:180): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.0" pid=7883 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.010:181): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.8000.0" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.010:182): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libc.so.6" pid=7883 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.010:183): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.11.2" pid=7883 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: kauditd_printk_skb: 782 callbacks suppressed +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.071:966): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpng16.so.16.43.0" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.071:967): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libfreetype.so.6.20.1" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:968): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/liblzma.so.5.4.5" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:969): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libexpat.so.1.9.1" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:970): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libexpat.so.1.9.1" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:971): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbz2.so.1.0.4" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:972): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.073:973): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.33" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.073:974): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.33" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.073:975): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:24 busymark-adoption-kvm kernel: kauditd_printk_skb: 295 callbacks suppressed +Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.418:1271): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.418:1272): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.418:1273): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.419:1274): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398604.482:1275): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=8399 comm="busymark" exe="/snap/busymark/x1/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x725696ed47d1 code=0x50000 +Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398604.856:1276): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=8399 comm="busymark" exe="/snap/busymark/x1/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x725696ed47d1 code=0x50000 +Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.972:1277): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/sys/vm/max_map_count" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398630.746:1278): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=8399 comm="busymark" exe="/snap/busymark/x1/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x725696ed47d1 code=0x50000 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.770:1279): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/devices/virtual/dmi/id/chassis_type" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.770:1280): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/firmware/acpi/pm_profile" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.779:1281): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=8582 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.783:1282): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=8593 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.784:1283): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=8593 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.784:1284): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=8582 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.785:1285): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=8593 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.785:1286): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=8582 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.786:1287): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=8582 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:55 busymark-adoption-kvm kernel: kauditd_printk_skb: 50 callbacks suppressed +Oct 07 18:43:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398635.767:1338): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:43:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398635.767:1339): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-c5c9f0d1-8d60-4656-a511-3e3cbbe52535.scope/memory.current" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:43:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398635.767:1340): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-c5c9f0d1-8d60-4656-a511-3e3cbbe52535.scope/memory.max" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:43:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398635.767:1341): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-c5c9f0d1-8d60-4656-a511-3e3cbbe52535.scope/memory.high" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:44:00 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398640.768:1342): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:05 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398645.770:1343): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:10 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398650.770:1344): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:15 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398655.771:1345): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398660.772:1346): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:32 busymark-adoption-kvm kernel: traps: WatchDogQueue[8800] trap int3 ip:7b9830a1b6b7 sp:7b97cd7f9600 error:0 in libglib-2.0.so.0.8400.4[7b98309cc000+be000] +Oct 07 18:44:34 busymark-adoption-kvm kernel: loop7: detected capacity change from 0 to 604976 +Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.382:1347): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=9059 comm="apparmor_parser" +Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.715:1348): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap-update-ns.busymark" pid=9061 comm="apparmor_parser" +Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.763:1349): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=9062 comm="apparmor_parser" +Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.851:1350): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.hook.configure" pid=9075 comm="apparmor_parser" +Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.856:1351): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.mesa-2404" pid=9081 comm="apparmor_parser" +Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.857:1352): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.component-monitor" pid=9082 comm="apparmor_parser" +Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.859:1353): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.connect-plug-kernel-gpu-2404" pid=9083 comm="apparmor_parser" +Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.860:1354): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.disconnect-plug-kernel-gpu-2404" pid=9084 comm="apparmor_parser" +Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.863:1355): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.install" pid=9085 comm="apparmor_parser" +Oct 07 18:44:37 busymark-adoption-kvm kernel: kauditd_printk_skb: 10 callbacks suppressed +Oct 07 18:44:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398677.837:1366): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=9231 comm="apparmor_parser" +Oct 07 18:44:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398677.844:1367): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=9245 comm="apparmor_parser" +Oct 07 18:44:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398677.850:1368): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=9247 comm="apparmor_parser" +Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.193:1369): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.194:1370): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpng16.so.16.43.0" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.206:1371): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.206:1372): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpng16.so.16.43.0" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.207:1373): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.207:1374): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpng16.so.16.43.0" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.212:1375): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libduktape.so.207" pid=9360 comm="gio-querymodule" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: kauditd_printk_skb: 724 callbacks suppressed +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.527:2100): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.564:2101): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.564:2102): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.590:2103): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2104): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2105): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2106): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2107): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2108): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2109): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:59 busymark-adoption-kvm kernel: kauditd_printk_skb: 21 callbacks suppressed +Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.309:2131): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.309:2132): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.309:2133): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.309:2134): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398699.371:2135): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9265 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x75cfe9d747d1 code=0x50000 +Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398699.571:2136): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9265 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x75cfe9d747d1 code=0x50000 +Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.673:2137): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/sys/vm/max_map_count" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2138): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2139): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2140): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2141): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2142): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2143): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2144): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2145): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2146): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2147): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:30 busymark-adoption-kvm kernel: kauditd_printk_skb: 50 callbacks suppressed +Oct 07 18:45:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398730.218:2198): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398730.218:2199): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-4e697578-41cb-4322-8c77-692e7c21794b.scope/memory.current" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:45:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398730.218:2200): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-4e697578-41cb-4322-8c77-692e7c21794b.scope/memory.max" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:45:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398730.218:2201): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-4e697578-41cb-4322-8c77-692e7c21794b.scope/memory.high" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:45:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398735.220:2202): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:40 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398740.220:2203): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398745.221:2204): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398750.221:2205): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398750.248:2206): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9677 comm="WebKitNetworkPr" exe="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitNetworkProcess" sig=0 arch=c000003e syscall=41 compat=0 ip=0x70ecdd02b57b code=0x50000 +Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398750.248:2207): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9677 comm="WebKitNetworkPr" exe="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitNetworkProcess" sig=0 arch=c000003e syscall=41 compat=0 ip=0x70ecdd02b57b code=0x50000 +Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398750.275:2208): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9709 comm="WebKitNetworkPr" exe="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitNetworkProcess" sig=0 arch=c000003e syscall=41 compat=0 ip=0x7c1daf60f57b code=0x50000 +Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398750.275:2209): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9709 comm="WebKitNetworkPr" exe="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitNetworkProcess" sig=0 arch=c000003e syscall=41 compat=0 ip=0x7c1daf60f57b code=0x50000 +Oct 07 18:45:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398754.754:2210): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=9863 comm="apparmor_parser" +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.175:2211): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.busymark" pid=9885 comm="apparmor_parser" +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.244:2212): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=9886 comm="apparmor_parser" +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.252:2213): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=9900 comm="apparmor_parser" +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.563:2214): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.567:2215): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.567:2216): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2217): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2218): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2219): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2220): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2221): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:04 busymark-adoption-kvm kernel: show_signal: 23 callbacks suppressed +Oct 07 18:46:04 busymark-adoption-kvm kernel: traps: WatchDogQueue[9828] trap int3 ip:734c6df686b7 sp:734c07ffe600 error:0 in libglib-2.0.so.0.8400.4[734c6df19000+be000] +Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.722:2245): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.722:2246): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.722:2247): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.722:2248): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398780.761:2249): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9929 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x7c283ed667d1 code=0x50000 +Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398780.798:2250): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9929 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x7c283ed667d1 code=0x50000 +Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.826:2251): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/sys/vm/max_map_count" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398805.941:2252): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9929 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x7c283ed667d1 code=0x50000 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.944:2253): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.944:2254): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2255): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2256): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2257): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2258): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2259): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2260): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2261): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:50 busymark-adoption-kvm kernel: kauditd_printk_skb: 50 callbacks suppressed +Oct 07 18:46:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398810.961:2312): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:46:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398810.961:2313): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-72a32545-d3e1-4200-83d3-30f840a7c951.scope/memory.current" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:46:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398810.961:2314): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-72a32545-d3e1-4200-83d3-30f840a7c951.scope/memory.max" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:46:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398810.961:2315): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-72a32545-d3e1-4200-83d3-30f840a7c951.scope/memory.high" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:46:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398815.962:2316): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:00 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398820.962:2317): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:05 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398825.963:2318): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:10 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398830.964:2319): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:15 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398835.964:2320): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398840.966:2321): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.215:2322): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.215:2323): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.215:2324): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2325): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2326): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2327): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2328): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2329): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2330): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.967:2331): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398850.967:2332): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398855.968:2333): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:47:40 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398860.969:2334): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.411:2335): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.432:2336): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.432:2337): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.440:2338): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2339): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2340): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2341): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2342): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2343): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2344): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:57 busymark-adoption-kvm kernel: kauditd_printk_skb: 21 callbacks suppressed +Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.593:2366): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.593:2367): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.593:2368): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.593:2369): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398997.623:2370): auid=1000 uid=1000 gid=1000 ses=34 subj=snap.busymark.busymark pid=10926 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x73d0a904c7d1 code=0x50000 +Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398997.657:2371): auid=1000 uid=1000 gid=1000 ses=34 subj=snap.busymark.busymark pid=10926 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x73d0a904c7d1 code=0x50000 +Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.684:2372): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/sys/vm/max_map_count" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1326 audit(1791399022.801:2373): auid=1000 uid=1000 gid=1000 ses=34 subj=snap.busymark.busymark pid=10926 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x73d0a904c7d1 code=0x50000 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.804:2374): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.804:2375): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2376): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2377): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2378): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2379): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2380): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2381): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2382): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:27 busymark-adoption-kvm kernel: kauditd_printk_skb: 50 callbacks suppressed +Oct 07 18:50:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399027.820:2433): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399027.820:2434): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-0ba8df11-b35a-4cb5-8682-dfe7b93bacc6.scope/memory.current" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:50:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399027.820:2435): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-0ba8df11-b35a-4cb5-8682-dfe7b93bacc6.scope/memory.max" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:50:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399027.820:2436): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-0ba8df11-b35a-4cb5-8682-dfe7b93bacc6.scope/memory.high" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:50:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399032.821:2437): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399037.823:2438): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399042.824:2439): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399047.825:2440): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:52 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399052.826:2441): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:50:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399057.826:2442): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:02 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399062.829:2443): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:07 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399067.831:2444): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399072.832:2445): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.401:2446): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.401:2447): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.401:2448): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2449): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2450): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2451): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2452): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2453): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2454): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399077.833:2455): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399082.834:2456): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399087.834:2457): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.503:2458): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.514:2459): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.515:2460): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.516:2461): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.516:2462): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.517:2463): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.517:2464): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.517:2465): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.517:2466): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: kauditd_printk_skb: 10 callbacks suppressed +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.835:2477): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.967:2478): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.967:2479): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.967:2480): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.970:2481): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.970:2482): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.970:2483): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.971:2484): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.971:2485): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.971:2486): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399097.835:2487): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399098.969:2488): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=11512 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:51:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399098.969:2489): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=11512 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399098.969:2490): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=11512 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399098.969:2491): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=11512 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:39 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399099.508:2492): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=11517 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:51:39 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399099.508:2493): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=11517 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:39 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399099.508:2494): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=11517 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:51:39 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399099.508:2495): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=11517 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.591:2496): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.595:2497): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.595:2498): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2499): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2500): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2501): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2502): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2503): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2504): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2505): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:48 busymark-adoption-kvm kernel: kauditd_printk_skb: 125 callbacks suppressed +Oct 07 18:52:48 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399168.038:2631): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=11688 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:48 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399168.038:2632): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-b605a2b5-9061-45f4-aa0d-ab731e23b43a.scope/memory.current" pid=11688 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:52:48 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399168.038:2633): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-b605a2b5-9061-45f4-aa0d-ab731e23b43a.scope/memory.max" pid=11688 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:52:48 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399168.038:2634): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-b605a2b5-9061-45f4-aa0d-ab731e23b43a.scope/memory.high" pid=11688 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.362:2635): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=12076 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.362:2636): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=12076 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.362:2637): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=12076 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.362:2638): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=12076 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.686:2639): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=12081 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.686:2640): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=12081 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:21 busymark-adoption-kvm kernel: kauditd_printk_skb: 2 callbacks suppressed +Oct 07 18:54:21 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399261.870:2643): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=12273 comm="apparmor_parser" +Oct 07 18:54:21 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399261.878:2644): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=12292 comm="apparmor_parser" +Oct 07 18:54:21 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399261.879:2645): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.busymark" pid=12291 comm="apparmor_parser" +Oct 07 18:54:21 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399261.886:2646): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=12294 comm="apparmor_parser" +Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.127:2647): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.133:2648): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.133:2649): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.135:2650): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.135:2651): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.135:2652): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: kauditd_printk_skb: 100 callbacks suppressed +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.250:2753): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.255:2754): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.255:2755): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2756): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2757): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2758): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2759): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2760): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2761): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2762): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:32 busymark-adoption-kvm kernel: kauditd_printk_skb: 124 callbacks suppressed +Oct 07 18:54:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399272.671:2887): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=12611 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399272.671:2888): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-01ad018c-0d51-47cb-b2ed-e5243f03226f.scope/memory.current" pid=12611 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:54:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399272.672:2889): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-01ad018c-0d51-47cb-b2ed-e5243f03226f.scope/memory.max" pid=12611 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:54:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399272.672:2890): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-01ad018c-0d51-47cb-b2ed-e5243f03226f.scope/memory.high" pid=12611 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.516:2891): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=12986 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.516:2892): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=12986 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.516:2893): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=12986 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.516:2894): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=12986 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.826:2895): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=12991 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.826:2896): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=12991 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: kauditd_printk_skb: 6 callbacks suppressed +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.734:2903): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.797:2904): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.797:2905): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.829:2906): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2907): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2908): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2909): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2910): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2911): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2912): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:12 busymark-adoption-kvm kernel: kauditd_printk_skb: 125 callbacks suppressed +Oct 07 18:56:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399372.378:3038): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=13272 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399372.378:3039): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-47628d0f-cf4c-493a-b393-bbec38f0d427.scope/memory.current" pid=13272 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399372.378:3040): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-47628d0f-cf4c-493a-b393-bbec38f0d427.scope/memory.max" pid=13272 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399372.378:3041): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-47628d0f-cf4c-493a-b393-bbec38f0d427.scope/memory.high" pid=13272 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399373.921:3042): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=13660 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399373.921:3043): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=13660 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399373.921:3044): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=13660 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399373.921:3045): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=13660 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:14 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399374.262:3046): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=13665 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:14 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399374.262:3047): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=13665 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:17 busymark-adoption-kvm kernel: kauditd_printk_skb: 2 callbacks suppressed +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.395:3050): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.busymark" pid=13751 comm="apparmor_parser" +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.432:3051): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=13752 comm="apparmor_parser" +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.439:3052): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=13766 comm="apparmor_parser" +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.445:3053): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=13768 comm="apparmor_parser" +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.680:3054): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.684:3055): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.684:3056): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.686:3057): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.686:3058): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.686:3059): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:22 busymark-adoption-kvm kernel: kauditd_printk_skb: 122 callbacks suppressed +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.565:3182): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.565:3183): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.565:3184): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.565:3185): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3186): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3187): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3188): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3189): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3190): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3191): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:27 busymark-adoption-kvm kernel: kauditd_printk_skb: 102 callbacks suppressed +Oct 07 18:56:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399387.959:3294): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399387.959:3295): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-e48b261d-c893-444d-ac17-bcc668dcb18f.scope/memory.current" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399387.959:3296): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-e48b261d-c893-444d-ac17-bcc668dcb18f.scope/memory.max" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399387.959:3297): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-e48b261d-c893-444d-ac17-bcc668dcb18f.scope/memory.high" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.107:3298): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=14462 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.107:3299): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=14462 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.107:3300): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=14462 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.107:3301): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=14462 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.469:3302): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=14467 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 +Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.469:3303): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=14467 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:32 busymark-adoption-kvm kernel: kauditd_printk_skb: 2 callbacks suppressed +Oct 07 18:56:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399392.960:3306): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 +Oct 07 18:56:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399393.571:3307): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=14517 comm="apparmor_parser" +Oct 07 18:56:34 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399394.381:3308): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=14539 comm="apparmor_parser" +Oct 07 18:56:34 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399394.457:3309): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.busymark" pid=14538 comm="apparmor_parser" +Oct 07 18:56:34 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399394.467:3310): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=14569 comm="apparmor_parser" diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portal-settings.txt b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portal-settings.txt new file mode 100644 index 00000000..7b7b424c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portal-settings.txt @@ -0,0 +1 @@ +(<<'default'>>,) diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portals.conf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portals.conf new file mode 100644 index 00000000..1d575940 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portals.conf @@ -0,0 +1,3 @@ +[preferred] +default=gtk +org.freedesktop.impl.portal.Secret=gnome-keyring diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/rendered-exports.tar.gz b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/rendered-exports.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..157f49cc80b038bf368600123aef9c9e8c840b07 GIT binary patch literal 118776 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 WPBv|=~06}!2Fd+)GtnnTZrO~vyT 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 N{ZFc-5%&PV0{}@V%76d> literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/spelling-online-install.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/spelling-online-install.json new file mode 100644 index 00000000..eb845573 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/spelling-online-install.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/snap/busymark/x1/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": true, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": false + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/status.tsv b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/status.tsv new file mode 100644 index 00000000..39fe3fa0 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/status.tsv @@ -0,0 +1,7 @@ +01-verify-gtk-svg-icon-loader 0 8 +02-verify-shared-runtimes-packaged-tools-media-and-resources 0 1 +03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use 0 180 +04-exercise-strict-snap-visualization-and-pdf-paths-under-x11 1 110 +wayland-configured-desktop 0 16 +x11-repeat 0 10 +wayland-repeat 0 18 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/run.log new file mode 100644 index 00000000..528f51b3 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/run.log @@ -0,0 +1,52 @@ +could not load cursor 'dnd-move' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-none' +could not load cursor 'dnd-move' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-none' + +(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:22.285: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:22.451: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:22.572: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:12300): IBUS-WARNING **: 18:54:22.574: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory +Gdk-Message: 18:54:22.575: Unable to load from the cursor theme + +(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:22.621: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (io.busystack.busymark:12300): WARNING **: 18:54:22.622: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:12300): WARNING **: 18:54:22.622: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:12432): GLib-GIO-WARNING **: 18:54:22.727: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:12458): GLib-GIO-WARNING **: 18:54:22.764: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:23.146: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:27.373: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:27.522: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:27.627: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:12611): IBUS-WARNING **: 18:54:27.628: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory +Gdk-Message: 18:54:27.628: Unable to load from the cursor theme + +(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:27.673: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (io.busystack.busymark:12611): WARNING **: 18:54:27.674: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:12611): WARNING **: 18:54:27.674: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:12740): GLib-GIO-WARNING **: 18:54:27.783: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:12765): GLib-GIO-WARNING **: 18:54:27.815: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:28.187: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:29.770: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/spelling-release-wayland.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/spelling-release-wayland.json new file mode 100644 index 00000000..325a720e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/spelling-release-wayland.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/snap/busymark/x2/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": false, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": true + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json new file mode 100644 index 00000000..1a76cd88 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json @@ -0,0 +1 @@ +{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-smoke.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7ae4d8cd92295b074b153d37351409496754dcec GIT binary patch literal 71212 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�HUr>Fn9K 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/run.log new file mode 100644 index 00000000..36226cb2 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/run.log @@ -0,0 +1,52 @@ +could not load cursor 'dnd-move' +could not load cursor 'dnd-move' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-none' +could not load cursor 'dnd-none' + +(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:17.807: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:17.949: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:18.056: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:13774): IBUS-WARNING **: 18:56:18.058: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory +Gdk-Message: 18:56:18.058: Unable to load from the cursor theme + +(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:18.102: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (io.busystack.busymark:13774): WARNING **: 18:56:18.103: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:13774): WARNING **: 18:56:18.103: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:13907): GLib-GIO-WARNING **: 18:56:18.214: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:13932): GLib-GIO-WARNING **: 18:56:18.243: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:18.621: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:22.477: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:22.701: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:22.869: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:14086): IBUS-WARNING **: 18:56:22.871: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory +Gdk-Message: 18:56:22.872: Unable to load from the cursor theme + +(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:22.961: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (io.busystack.busymark:14086): WARNING **: 18:56:22.963: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:14086): WARNING **: 18:56:22.963: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:14215): GLib-GIO-WARNING **: 18:56:23.131: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:14240): GLib-GIO-WARNING **: 18:56:23.184: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:23.492: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:25.816: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/spelling-release-wayland.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/spelling-release-wayland.json new file mode 100644 index 00000000..325a720e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/spelling-release-wayland.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/snap/busymark/x2/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": false, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": true + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json new file mode 100644 index 00000000..1a76cd88 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json @@ -0,0 +1 @@ +{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-smoke.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7ae4d8cd92295b074b153d37351409496754dcec GIT binary patch literal 71212 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�HUr>Fn9K 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/weston-snap.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/weston-snap.log new file mode 100644 index 00000000..f8c9d222 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/weston-snap.log @@ -0,0 +1,62 @@ +Date: 2026-10-07 UTC +[18:54:21.109] weston 13.0.0 + https://wayland.freedesktop.org + Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/ + Build: 13.0.0 +[18:54:21.109] Command line: weston --backend=headless-backend.so --socket=wayland-99 --idle-time=0 --log=/home/tester/acceptance/weston-snap.log +[18:54:21.109] OS: Linux, 6.8.0-142-generic, #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026, x86_64 +[18:54:21.109] Flight recorder: enabled +[18:54:21.110] Starting with no config file. +[18:54:21.110] Output repaint window is 7 ms maximum. +[18:54:21.110] Loading module '/usr/lib/x86_64-linux-gnu/libweston-13/headless-backend.so' +[18:54:21.119] Registered plugin API 'weston_windowed_output_api_v2' of size 16 +[18:54:21.119] Color manager: no-op +[18:54:21.119] Output 'headless' attempts EOTF mode: SDR +[18:54:21.119] Output 'headless' using color profile: stock sRGB color profile +[18:54:21.119] Output 'headless' enabled with head(s) headless +[18:54:21.119] Compositor capabilities: + arbitrary surface rotation: no + screen capture uses y-flip: no + cursor planes: no + arbitrary resolutions: no + view mask clipping: no + explicit sync: no + color operations: no + presentation clock: CLOCK_MONOTONIC_RAW, id 4 + presentation clock resolution: 0.000000001 s +[18:54:21.120] Loading module '/usr/lib/x86_64-linux-gnu/weston/desktop-shell.so' +[18:54:21.120] launching '/usr/libexec/weston-keyboard' +[18:54:21.121] launching '/usr/libexec/weston-desktop-shell' +[18:54:37.465] caught signal 15 +[18:54:37.466] no-op renderer SHM seed: 77 +Date: 2026-10-07 UTC +[18:56:16.863] weston 13.0.0 + https://wayland.freedesktop.org + Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/ + Build: 13.0.0 +[18:56:16.863] Command line: weston --backend=headless-backend.so --socket=wayland-99 --idle-time=0 --log=/home/tester/acceptance/weston-snap.log +[18:56:16.863] OS: Linux, 6.8.0-142-generic, #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026, x86_64 +[18:56:16.863] Flight recorder: enabled +[18:56:16.863] Starting with no config file. +[18:56:16.863] Output repaint window is 7 ms maximum. +[18:56:16.863] Loading module '/usr/lib/x86_64-linux-gnu/libweston-13/headless-backend.so' +[18:56:16.867] Registered plugin API 'weston_windowed_output_api_v2' of size 16 +[18:56:16.867] Color manager: no-op +[18:56:16.867] Output 'headless' attempts EOTF mode: SDR +[18:56:16.867] Output 'headless' using color profile: stock sRGB color profile +[18:56:16.867] Output 'headless' enabled with head(s) headless +[18:56:16.867] Compositor capabilities: + arbitrary surface rotation: no + screen capture uses y-flip: no + cursor planes: no + arbitrary resolutions: no + view mask clipping: no + explicit sync: no + color operations: no + presentation clock: CLOCK_MONOTONIC_RAW, id 4 + presentation clock resolution: 0.000000001 s +[18:56:16.867] Loading module '/usr/lib/x86_64-linux-gnu/weston/desktop-shell.so' +[18:56:16.867] launching '/usr/libexec/weston-keyboard' +[18:56:16.867] launching '/usr/libexec/weston-desktop-shell' +[18:56:34.537] caught signal 15 +[18:56:34.537] no-op renderer SHM seed: 77 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/run.log new file mode 100644 index 00000000..7ede4206 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/run.log @@ -0,0 +1,11 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:11688): IBUS-WARNING **: 18:52:43.011: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:11688): WARNING **: 18:52:43.041: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:11688): WARNING **: 18:52:43.041: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:11827): GLib-GIO-WARNING **: 18:52:43.160: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:11841): GLib-GIO-WARNING **: 18:52:43.205: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json new file mode 100644 index 00000000..1a76cd88 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json @@ -0,0 +1 @@ +{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-smoke.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5303e9deb5412c3be4882a9e65966a30d84ea8f4 GIT binary patch literal 66398 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 CqiY`k literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/run.log new file mode 100644 index 00000000..4082ac28 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/run.log @@ -0,0 +1,10 @@ + +(io.busystack.busymark:10926): Atk-CRITICAL **: 18:49:57.651: atk_socket_embed: assertion 'plug_id != NULL' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:10926): IBUS-WARNING **: 18:50:22.793: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:10926): WARNING **: 18:50:22.823: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:10926): WARNING **: 18:50:22.824: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied +Can't find a11y bus: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.4" (uid=1000 pid=10926 comm="/snap/busymark/x2/busymark --visualization-release" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/visualization-release-x11.json new file mode 100644 index 00000000..1a76cd88 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/visualization-release-x11.json @@ -0,0 +1 @@ +{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/run.log new file mode 100644 index 00000000..0c1c398f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/run.log @@ -0,0 +1,11 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:13272): IBUS-WARNING **: 18:56:07.334: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:13272): WARNING **: 18:56:07.381: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:13272): WARNING **: 18:56:07.381: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:13412): GLib-GIO-WARNING **: 18:56:07.526: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:13428): GLib-GIO-WARNING **: 18:56:07.592: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-release-x11.json new file mode 100644 index 00000000..1a76cd88 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-release-x11.json @@ -0,0 +1 @@ +{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-smoke.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5303e9deb5412c3be4882a9e65966a30d84ea8f4 GIT binary patch literal 66398 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 CqiY`k literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/cleanup.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/cleanup.json new file mode 100644 index 00000000..b167f41c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/cleanup.json @@ -0,0 +1,9 @@ +{ + "vmStopped": true, + "privateDiskRemoved": true, + "privateSshKeyRemoved": true, + "seedConfigurationRemoved": true, + "productionProfilesModified": false, + "additionalNextcloudAccountsCreated": false, + "sanitizedEvidenceRetained": true +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/collect-identity.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/collect-identity.sh new file mode 100644 index 00000000..1ff01993 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/collect-identity.sh @@ -0,0 +1,19 @@ +#!/bin/bash +set -euo pipefail +date -u --iso-8601=seconds +cat /etc/os-release +uname -a +systemd-detect-virt +lscpu | grep -E '^CPU\(s\)|^Model name|^Hypervisor vendor|^Virtualization type' +snap version +snap list +snap connections busymark +revision=$(snap list busymark | awk 'NR == 2 {print $3}') +installed="/var/lib/snapd/snaps/busymark_${revision}.snap" +expected=2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce +printf '%s %s\n' "$expected" "$installed" | sudo sha256sum --check +sudo cat /sys/kernel/security/apparmor/profiles | grep -Fx 'snap.busymark.busymark (enforce)' +recipe_sha=$(unsquashfs -cat /home/tester/package.snap snap/snapcraft.yaml | sha256sum | cut -d' ' -f1) +test "$recipe_sha" = c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d +printf 'Installed embedded recipe SHA-256: %s\n' "$recipe_sha" +snap run --shell busymark -c 'readlink -f "$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/libwebkit2gtk-4.1.so.0"; sha256sum "$SNAP/busymark" "$SNAP/lib/libapp.so"' diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/install.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/install.log new file mode 100644 index 00000000..9e0eeeb2 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/install.log @@ -0,0 +1,34 @@ +........................................................................................................................................................................................................status: done +package.snap: OK +2026-10-07T18:39:23Z INFO Waiting for automatic snapd restart... +2026-10-07T18:39:24Z INFO Waiting for automatic snapd restart... +2026-10-07T18:39:25Z INFO Waiting for automatic snapd restart... +2026-10-07T18:39:26Z INFO Waiting for automatic snapd restart... +busymark 0.6.1 installed +Name Version Rev Tracking Publisher Notes +bare 1.0 5 latest/stable canonical** base +busymark 0.6.1 x1 - - - +core24 20260824 2124 latest/stable canonical** base +gnome-46-2404 0+git.b31ceab-sdk0+git.f80dd8b 168 latest/stable canonical** - +gtk-common-themes 0.1-81-g442e511 1535 latest/stable canonical** - +mesa-2404 25.2.8-snap288 1839 latest/stable canonical** - +snapd 2.77.1 28254 latest/stable canonical** snapd +Interface Plug Slot Notes +audio-playback busymark:audio-playback :audio-playback - +browser-support busymark:browser-support :browser-support - +content[gnome-46-2404] busymark:gnome-46-2404 gnome-46-2404:gnome-46-2404 - +content[gpu-2404] busymark:gpu-2404 mesa-2404:gpu-2404 - +content[gtk-3-themes] busymark:gtk-3-themes gtk-common-themes:gtk-3-themes - +content[icon-themes] busymark:icon-themes gtk-common-themes:icon-themes - +content[sound-themes] busymark:sound-themes gtk-common-themes:sound-themes - +desktop busymark:desktop :desktop - +desktop-legacy busymark:desktop-legacy :desktop-legacy - +gsettings busymark:gsettings :gsettings - +home busymark:home :home - +network busymark:network :network - +opengl busymark:opengl :opengl - +password-manager-service busymark:password-manager-service :password-manager-service manual +removable-media busymark:removable-media - - +ssh-keys busymark:ssh-keys - - +wayland busymark:wayland :wayland - +x11 busymark:x11 :x11 - diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/portal-setup.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/portal-setup.log new file mode 100644 index 00000000..7115e127 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/portal-setup.log @@ -0,0 +1 @@ +Error: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/public-ci-access.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/public-ci-access.json new file mode 100644 index 00000000..bac67d4b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/public-ci-access.json @@ -0,0 +1,12 @@ +{ + "approved": true, + "approvedSourceCommit": "d55b41ddf47ef716d5113c89da8a3a2f3b80e819", + "repository": "https://github.com/busystack/busymark", + "blobUploadSucceeded": false, + "apiStatus": 403, + "apiMessage": "Resource not accessible by integration", + "sshAuthenticationAvailable": false, + "branchCreated": false, + "pullRequestCreated": false, + "fallback": "Disposable Ubuntu KVM VM running the repository installed-Snap workflow commands" +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/repeat-acceptance.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/repeat-acceptance.sh new file mode 100644 index 00000000..e13fbfa2 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/repeat-acceptance.sh @@ -0,0 +1,16 @@ +#!/bin/bash +set -euo pipefail +cd /home/tester +for pair in x11:04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh wayland:05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh; do + backend=${pair%%:*} + script=${pair#*:} + destination="acceptance/$backend-repeat" + mkdir -p "$destination" + started=$(date +%s) + bash "$script" > "$destination/run.log" 2>&1 + printf '%s-repeat\t0\t%s\n' "$backend" "$(( $(date +%s) - started ))" >> acceptance/status.tsv + cp "snap/busymark/common/visualization-release-$backend.json" snap/busymark/common/visualization-smoke.pdf "$destination/" + if [ "$backend" = wayland ]; then cp snap/busymark/common/spelling-release-wayland.json "$destination/"; fi +done +bash collect-identity.sh > acceptance/installed-identity-final.log 2>&1 +sudo journalctl -k --since '2026-10-07 18:35:00 UTC' --no-pager > acceptance/kernel-audit.log diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/results.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/results.json new file mode 100644 index 00000000..5805c177 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/results.json @@ -0,0 +1,44 @@ +{ + "complete": true, + "sourceCodeCommit": "d55b41ddf47ef716d5113c89da8a3a2f3b80e819", + "snapSha256": "2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce", + "environment": { + "distribution": "Ubuntu 24.04.5", + "kernel": "6.8.0-142-generic", + "virtualization": "KVM", + "cpus": 4, + "memoryGiB": 4, + "snapd": "2.77.1", + "core24Revision": 2124, + "gnomeRevision": 168, + "mesaRevision": 1839, + "cloudImageSha256": "6a81c37564db9b1ee84e141922625e1d7c5b389b99bb3c572e0243607d5bb4d2" + }, + "reports": { + "x11-configured-desktop": { + "passed": true, + "checks": 23, + "report": "acceptance/x11-configured-desktop/visualization-release-x11.json" + }, + "x11-repeat": { + "passed": true, + "checks": 23, + "report": "acceptance/x11-repeat/visualization-release-x11.json" + }, + "wayland-configured-desktop": { + "passed": true, + "checks": 23, + "report": "acceptance/wayland-configured-desktop/visualization-release-wayland.json" + }, + "wayland-repeat": { + "passed": true, + "checks": 23, + "report": "acceptance/wayland-repeat/visualization-release-wayland.json" + }, + "spellingChecksPerRun": 20 + }, + "confinement": "strict; enforced AppArmor profile verified; network disconnected for offline spelling and Wayland visualization", + "installedIdentity": "acceptance/installed-identity-final.log", + "headlessDesktop": "Normal systemd user session, persistent Xvfb display for GTK portal; portal activation environment and preferred backend configured. Final tests use no NO_AT_BRIDGE override.", + "historicalFailures": "Original TCG failures remain retained. Initial KVM session/cgroup and portal failures are retained and are not passing checks. Their causes do not prove the cause of every historical TCG WebKit error." +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/run-acceptance.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/run-acceptance.sh new file mode 100644 index 00000000..f4dc0b4b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/run-acceptance.sh @@ -0,0 +1,17 @@ +#!/bin/bash +set -uo pipefail +mkdir -p /home/tester/acceptance +cd /home/tester +for script in 0[1-5]-*.sh; do + name="${script%.sh}" + mkdir -p "acceptance/$name" + started=$(date +%s) + bash "$script" > "acceptance/$name/run.log" 2>&1 + result=$? + elapsed=$(( $(date +%s) - started )) + printf '%s\t%s\t%s\n' "$name" "$result" "$elapsed" | tee -a acceptance/status.tsv + for report in /home/tester/snap/busymark/common/*.json /home/tester/snap/busymark/common/visualization-smoke*; do + if [ -f "$report" ]; then cp "$report" "acceptance/$name/"; fi + done + if [ "$result" -ne 0 ]; then exit "$result"; fi + done diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/snap-acceptance-before-kvm.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/snap-acceptance-before-kvm.json new file mode 100644 index 00000000..ea68520a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/snap-acceptance-before-kvm.json @@ -0,0 +1,28 @@ +{ + "complete": false, + "snapSha256": "2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce", + "strictInstalled": true, + "installedPayloadPassed": true, + "installedPayloadLog": "snap-installed-restored.log", + "browserLoginLibsecretRestart": true, + "explicitAdoptionAttachmentAndDeniedNetworkRecovery": true, + "spelling": { + "x11OnlineInstallChecks": 20, + "x11DeniedNetworkChecks": 20, + "waylandDeniedNetworkChecks": 20 + }, + "visualization": { + "x11Passed": false, + "x11Failure": "Unsupported result type; historical retry also failed MathJax recovery", + "waylandPassed": false, + "waylandCompletedChecks": 13, + "waylandFailure": "Typst visualization export failed: mermaid at line 9", + "waylandReport": "snap-visualization-wayland-final.json", + "x11Report": "visualization-release-x11.json" + }, + "outstanding": "Passing installed visualization acceptance. Public CI source upload was rejected by automatic approval review; explicit user approval requested.", + "installedSha256Verified": true, + "embeddedRecipeSha256": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", + "enforcedAppArmorVerified": true, + "installedIdentityLog": "snap-installed-identity-final.log" +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-run.log new file mode 100644 index 00000000..d78110de --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-run.log @@ -0,0 +1,8 @@ +dbus-daemon[7530]: [session uid=1000 pid=7530] Activating service name='org.freedesktop.portal.Documents' requested by ':1.0' (uid=1000 pid=7537 comm="snap run --shell busymark -c ? test ! -e \? "$" label="unconfined") +dbus-daemon[7530]: [session uid=1000 pid=7530] Activating service name='org.freedesktop.impl.portal.PermissionStore' requested by ':1.1' (uid=1000 pid=7560 comm="/usr/libexec/xdg-document-portal" label="unconfined") +dbus-daemon[7530]: [session uid=1000 pid=7530] Successfully activated service 'org.freedesktop.impl.portal.PermissionStore' +dbus-daemon[7530]: [session uid=1000 pid=7530] Successfully activated service 'org.freedesktop.portal.Documents' +Ignoring invalid max threads value 4294967295 > max (100000). +dbus-daemon[7530]: [session uid=1000 pid=7530] Activating service name='org.freedesktop.systemd1' requested by ':1.0' (uid=1000 pid=7537 comm="snap run --shell busymark -c ? test ! -e \? "$" label="unconfined") +dbus-daemon[7530]: [session uid=1000 pid=7530] Activated service 'org.freedesktop.systemd1' failed: Process org.freedesktop.systemd1 exited with status 1 +01-verify-gtk-svg-icon-loader 1 0 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-steps.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-steps.json new file mode 100644 index 00000000..170c3ef3 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-steps.json @@ -0,0 +1,22 @@ +[ + { + "name": "Verify GTK SVG icon loader", + "script": "01-verify-gtk-svg-icon-loader.sh" + }, + { + "name": "Verify shared runtimes, packaged tools, media, and resources", + "script": "02-verify-shared-runtimes-packaged-tools-media-and-resources.sh" + }, + { + "name": "Install one strict-Snap dictionary and verify refresh/offline use", + "script": "03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh" + }, + { + "name": "Exercise strict Snap visualization and PDF paths under X11", + "script": "04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh" + }, + { + "name": "Exercise strict Snap spelling and visualization under Wayland", + "script": "05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh" + } +] diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-user-session.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-user-session.log new file mode 100644 index 00000000..b04d6d5f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-user-session.log @@ -0,0 +1,4 @@ +01-verify-gtk-svg-icon-loader 0 8 +02-verify-shared-runtimes-packaged-tools-media-and-resources 0 1 +03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use 0 180 +04-exercise-strict-snap-visualization-and-pdf-paths-under-x11 1 110 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/x11-configured-desktop.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/x11-configured-desktop.log new file mode 100644 index 00000000..7b7b424c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/x11-configured-desktop.log @@ -0,0 +1 @@ +(<<'default'>>,) diff --git a/delivery/nextcloud-explicit-adoption/evidence/libsecret.log b/delivery/nextcloud-explicit-adoption/evidence/libsecret.log new file mode 100644 index 00000000..e69de29b diff --git a/delivery/nextcloud-explicit-adoption/evidence/linux-build-final.log b/delivery/nextcloud-explicit-adoption/evidence/linux-build-final.log new file mode 100644 index 00000000..d49ba3aa --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/linux-build-final.log @@ -0,0 +1,2 @@ +Building Linux application... +✓ Built build/linux/x64/release/bundle/busymark diff --git a/delivery/nextcloud-explicit-adoption/evidence/linux-build.log b/delivery/nextcloud-explicit-adoption/evidence/linux-build.log new file mode 100644 index 00000000..d49ba3aa --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/linux-build.log @@ -0,0 +1,2 @@ +Building Linux application... +✓ Built build/linux/x64/release/bundle/busymark diff --git a/delivery/nextcloud-explicit-adoption/evidence/linux-release-hashes.txt b/delivery/nextcloud-explicit-adoption/evidence/linux-release-hashes.txt new file mode 100644 index 00000000..364a9c5b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/linux-release-hashes.txt @@ -0,0 +1,3 @@ +ddd5b6fc361e697cab18f195b6afd47f4bae64ff19dfdd49a6495a341528f32b build/linux/x64/release/bundle/busymark +9e0ccfd3e1f8164c5d218dd0b5bfbbf8b8b1c07bbf86b5295dd5a9c2f7b5815d build/linux/x64/release/bundle/lib/libapp.so +6da9cfe58839eab6a70aad4f15cdc824dab9418f7f22d0deb02b5f1f50ff8118 delivery/nextcloud-explicit-adoption/artifacts/busymark-linux-release.tar.gz diff --git a/delivery/nextcloud-explicit-adoption/evidence/linux-source-identity.json b/delivery/nextcloud-explicit-adoption/evidence/linux-source-identity.json new file mode 100644 index 00000000..b3175eb4 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/linux-source-identity.json @@ -0,0 +1,578 @@ +{ + "ok": true, + "compiledInputs": { + "lib/main.dart": "f7bb63a6768713a00033b93c91f80327ead164aa9f52058b1c4bc1bf0309a0f9", + "lib/l10n/generated/app_localizations_zh.dart": "2cf6059c3922729f1e46e80414247938afc77f7b6a7b5b7e11b861151f30be5f", + "lib/l10n/generated/app_localizations_vi.dart": "c110fd1e4ed46d432e0fb8c2b0cc762cebba9313a2766a05ed04d164a7ae8909", + "lib/l10n/generated/app_localizations_fr.dart": "00400058186b9ed58239cb556c447007a64b4eaeb19de3057569e5c272cd9df4", + "lib/l10n/generated/app_localizations_et.dart": "10313057337bbaaa7b89235bf3607e9640e5dceb8f77de9d906ed2eb514ab752", + "lib/l10n/generated/app_localizations_es.dart": "78e60f93f9ad461a0f243bf0536a5214f5628adce4936260f04afcf46bd85913", + "lib/l10n/generated/app_localizations_pt.dart": "c6ec16a359c7989a80a83194c787fe5e3c1a5e0ed96f0c771216efc6b39b5a9d", + "lib/l10n/generated/app_localizations.dart": "ad73e41dcc9acd860871b70703286e601e24cbfacb5851c55e0d33dc1faa2ab1", + "lib/l10n/generated/app_localizations_de.dart": "e76b9869523b23f187b8b1f5b988f72baddd71752cc23d16f93a8e3168c15b81", + "lib/l10n/generated/app_localizations_hi.dart": "a2449c0cc26fcde6ae975884e53cc7d708c8db1733be7e8a04736d86ff84036c", + "lib/l10n/generated/app_localizations_ko.dart": "961b04bab3e2775d85641d2a80b378a8ff57162852c195299d08baeb56b4783e", + "lib/l10n/generated/app_localizations_tr.dart": "ef69f4062b38801dc56c73f70ed189104812ffa7ff9457e08182f648ba54da0b", + "lib/l10n/generated/app_localizations_fa.dart": "693e8b9f77f44dcd60e6639e83617d22497462a1fea1112be0162c87c75ef362", + "lib/l10n/generated/app_localizations_uk.dart": "9de3a293fe201fe94472c8488435a274ade0e8ae9f839f7cf828ff83a476aa9c", + "lib/l10n/generated/app_localizations_en.dart": "bd3434b9b442747b87d77ed20513324e181dcb915b0d3df8a0cd77a8ab2e87b4", + "lib/l10n/generated/app_localizations_pl.dart": "068a2007ebd70c532bf2e464eb7c838db9b479cfa5b0e4a6a85d7df0b2dc7133", + "lib/l10n/generated/app_localizations_it.dart": "e15c0ce91901a010343281c0e47de725d84358ab64978ffe51e5d4d1af495708", + "lib/l10n/generated/app_localizations_ja.dart": "5e54f2c792c0cdae2bb3559118977aaa5091f3e6056dddac112930a6d4a6da9e", + "lib/l10n/generated/app_localizations_nb.dart": "b3a2dd2be808d7c9cbce22ccc74f646dbc06fde373862d066840c1e39bf34f5e", + "lib/l10n/generated/app_localizations_ru.dart": "43a664251ddf725025500771e1c1bb4a1b6610c489b3c319fa136cfd2812d10e", + "lib/l10n/generated/app_localizations_nl.dart": "2887454a3434d801c2437371427f0f7fee1b07f1aa1169d6510031d379f3a720", + "lib/l10n/generated/app_localizations_ar.dart": "3e56395c16a3e433271ad1924f1acb15f05d06b8ed1c6992a7089c078947d5de", + "lib/l10n/generated/app_localizations_id.dart": "a6404e286b789f16b8e16f54fba8d66f6a34f72621fabb7684930e743347e255", + "lib/src/comparison/source_comparison.dart": "2aa99d0a5c9927f89c031f43fab3b219d46a8e83b565379d1fb4273e01262dab", + "lib/src/assets/asset_limits.dart": "fe4c11a909e26e8a15d49fe6bdfab419dcdddd93abca220ea757275716a52ea1", + "lib/src/assets/asset_ingestion_service.dart": "13979a6362239563c7544453f660b2527ad533d8168fcc60726d652edb4d261e", + "lib/src/assets/document_media_context.dart": "9036a4d4cb94209d1df5c86d1c457185ab6f82bffaace3fa8341c87349e405f8", + "lib/src/assets/provider_asset_ingestion_service.dart": "1c43cf37fc15c7fe80ce3ef4358ccfd41e394526dfea813f396c26bb0601cf83", + "lib/src/assets/asset_input_service.dart": "33b7c943cc32579d2fdf2edb8fc5a0ca23e64d15c09a87bc183f9a7abd7a57a1", + "lib/src/core/diagnostic.dart": "d27354413aa4d067ae25e359da29c9510cc4d3bcb4b9b7e82a5637fadca74e4a", + "lib/src/core/path_utils.dart": "47878599a28bc4d77a337ce6add6f8a5c38b652b82ee8cf871ed72b712fe2339", + "lib/src/core/atomic_file_writer.dart": "7e1d69d059556cb7a0957ede9c51073c7cdcbc3cfd96c080805f55861f6c28fd", + "lib/src/core/source_span.dart": "13328190cd80041b0414e7a875c4a6c6123c52c7440d2dcbc97b9ea778f62127", + "lib/src/core/input_observer.dart": "81960f8b740427c7ff7ea703c5a8e0aa1ae34cee792e4420414837cca9d07edd", + "lib/src/core/busymark_temporary_path.dart": "236bfbfe1f30cf1d73d0932535a1404f09dc9f1ebb75fd1eba4b555b7ec9c004", + "lib/src/core/local_image_resolver.dart": "1120f3887a407b5a054f81167dc3df4cc0cdebf81915c20476ea5f3cf87bb012", + "lib/src/core/uri_utils.dart": "9ea653086c87ac05af78409e1d73ae2e227b86b3c802163847e85008f059447d", + "lib/src/core/busymark_exception.dart": "580cb56cd470c0355308d2287f59c40700ebebef4c80e51b5b769fa7c8d580ee", + "lib/src/core/diagnostic_localizations.dart": "0d27de95e04d9588ff03d32738a7d59eeba54d1d94e6fea61857af493ac789ba", + "lib/src/core/debug_log.dart": "36007a0bdbaca4e570d8926b5146f2d041932993ba8fb005cc3de4c6d7b6a37a", + "lib/src/core/anchored_path_guard.dart": "f2adf63e49142b58cc315700314feb45349b771af4eb845c166db18f787a4d3d", + "lib/src/core/linux_atomic_file_api.dart": "07b323c55cbe312d34065287eea3fed359b6ef22f3b0bebde7448bded384ea6b", + "lib/src/markdown/writerside_variable_syntax.dart": "fd58ffef14df11a7b2e93a94045cdba9d95fe1ddf7a9a927bc11816ad0fd0824", + "lib/src/markdown/markdown_fence.dart": "f2cb8956737b64546684f23f2a1227906c0549d5d3c646801770894d12427726", + "lib/src/markdown/markdown_source_map.dart": "d67f6350cddda46b337fbfc3884e5325eff0060f4bb6cac0c96f53b5df1558e3", + "lib/src/markdown/markdown_model.dart": "a3c2e3fcbb6c5cc11d62353607e80572aef60de0f175b4bedd755b74201c38a7", + "lib/src/markdown/markdown_parser.dart": "511242d5f489cab3d3512a775836883d3e532816f17b242295ed22f787ad1d46", + "lib/src/markdown/busymark_markdown_serializer.dart": "b8d722297052e284b98a9428ae1f43db25df0017ba7327418257153f001ec585", + "lib/src/markdown/math_syntax.dart": "89ca9433768024d7ccb5ca198a7c291ca72cf619a26fe4596e26947402f65b7b", + "lib/src/markdown/authored_html_diagnostics.dart": "a75b1a14e8d11fd2d1ab3c9451c45284faa917dc738bc73f8b904762f2285ecd", + "lib/src/markdown/markdown_front_matter.dart": "e169c6be40614e7b9922956072427adeb39c48ae6ccbf3f4ad6df7710029004f", + "lib/src/markdown/busymark_document.dart": "55bd5d92597bfc72e4c805712a35717678dac848e3782944328c1fc728a115fa", + "lib/src/markdown/raw_html_adapter.dart": "50e65d4988326c8ddde9c3795a1925988b24cdb94de54f1d52d40c98e5d11caf", + "lib/src/markdown/markdown_source_structure.dart": "7adf1adb47174c61f3f6339b7999878870a49bb859399e069da334baba4f113c", + "lib/src/markdown/markdown_source_annotation.dart": "f6049e32798ef15b5c0b26b95d2bb889daabf4bf91581f46c2061497d35a1e7b", + "lib/src/markdown/markdown_section_editor.dart": "54bebed32db9268db56186cff0e4de9f414bda21ea58ff46f8422948b5e48a03", + "lib/src/markdown/document_outline.dart": "836789d9b985c988ae6cf1926e2f526ea1d0cfebc4a69cd16ca7301d280409cc", + "lib/src/markdown/table_grid.dart": "0fbbcbb6031fd28da05a2a11ccf9b0b0ccba6a9e8c83a15ad3975ba901a6c9a5", + "lib/src/markdown/busymark_preview_builder.dart": "dde16b9dc67b7daa9573420f8c5896a3659c51d76f67a9cc36e26134f59320a2", + "lib/src/markdown/markdown_ast_adapter.dart": "b26b7664398acb29bcc169e5a5939705835acc0d2dc4772c7f5eca6617e6274d", + "lib/src/markdown/raw_html_policy.dart": "6fdbac58be1f2a22e52c08cd0550a4b0e4b528ad4ba81d59d86829009edfb7c9", + "lib/src/markdown/preview_model.dart": "8a00ceb7e143ead23603d558600932a358a63b1afe8c1255646408018e218e56", + "lib/src/spellcheck/spelling_text_patterns.dart": "c80b1418c0acfadd8f6fdbfd772657e6df48b3086e0351a7fcbd9dfe7af3bf93", + "lib/src/spellcheck/markdown_spelling_projection.dart": "17753741d3484ee3f11db511db9825005e33706842ea0e735e1fa7627ee3314f", + "lib/src/spellcheck/wysiwyg_spelling_projection.dart": "fd57482a5c47b6310383abcbaa44b91c498c362ae6e880558941a9e2407232e0", + "lib/src/spellcheck/spelling_dictionary_importer.dart": "07d6bd25411abf39108a1de8e9ab9befbe2013ed2ec1bf24d2aa34d0ce4f3eb3", + "lib/src/spellcheck/spelling_replacement.dart": "e4b5b0a40e640569521b1dc7c36eff3faf66d8ad9da254b061975d3f5e67f003", + "lib/src/spellcheck/spelling_language.dart": "99c7760139bfe007599d6b9f897d750ee86696253857f42d2354027f297d19a0", + "lib/src/spellcheck/spelling_projection.dart": "7f6ceedb9e79abcfd3679acb4cc56087d1bd85fd61704f54ab6a02613660784e", + "lib/src/spellcheck/spelling_session_controller.dart": "5b679e0b2b595d9ca3446550a214d75fa169545fa90e1d19dd8d4465e6467b1d", + "lib/src/spellcheck/spelling_word_store.dart": "08fa43855823c9795eb99e662346cf29cb2530d09e0953f258395414e6f20655", + "lib/src/spellcheck/spelling_dictionary_installer.dart": "eb983f196de5dd4fccfb00b99e49569bb5e27ee9bca722267317f43fd0afec29", + "lib/src/spellcheck/spelling_coordinator.dart": "d5ed439d82e66232613bba9f6c10127dfda3b0dc26d48728bfd8de215239d048", + "lib/src/spellcheck/writerside_spelling_projection.dart": "9c4da13ec0f1de24343abd5028d12441e0798e71b097f5c23eeff0c485a908b2", + "lib/src/spellcheck/spelling_catalog.dart": "47ece3d3be98dfe94fba93571958bc2192b8cdaf97f466051fbc96bf3e736872", + "lib/src/spellcheck/spelling_inline_projection.dart": "bf8b0f92a67658eecd0c716b54118d9677c4c7722dcbb2d434d0f3bb1cdc9d33", + "lib/src/spellcheck/spelling_worker.dart": "cbc1363b897ccc4106903d9bd3b3fbd907a3c343e9c38fd07a9307d13d823bbc", + "lib/src/spellcheck/spelling_release_smoke.dart": "2ab365412bc2acf4ec0ed4416527be913abae10666884c49e3ab5a7994af5250", + "lib/src/spellcheck/spelling_dictionary_downloader.dart": "aeaabe2efaa08cdbb2f79601cafda63385b3096344c0ee1ed79a912603c3d4bf", + "lib/src/export/html_export_links.dart": "8fd6a1abbbfeadfbaa19501c81a2b1f4c3f2397db0d65c8d947ca83dc8b198b9", + "lib/src/export/writerside_pdf_export_ui.dart": "494784364d607ba81f0e88d7f44346312fe16bb16507359da96bbbf60d0c55a1", + "lib/src/export/html_export_ui.dart": "83252c2a909bb3f80793933068e8cbb3c577991d2a8783447d556119288dbf31", + "lib/src/export/html_export_models.dart": "cf884d4cb723a7b403a5b22eace862f9d007f4153cea936dbb49555112480eb9", + "lib/src/export/html_export_service.dart": "ecdf33cd8e2008bf49da3b9f3f68806cfbd77a690e9f29cb5105563acc586f1e", + "lib/src/export/html_release_smoke.dart": "46b30032287c5f3969690bbf79e40232804942ee5446e46d0a2d2e5b7aa89462", + "lib/src/export/markdown_export_document.dart": "aef4f811f4411ab91dacc5a46b4aaf0f01c2629b1b1f535263db81054328e3df", + "lib/src/export/html_export_styles.dart": "e74e813e387ff325e2aa2fcba38e9f6e5b666ccd1a0a4a002ecd4d9d96c51a6b", + "lib/src/export/markdown_pdf_models.dart": "af44b9119c4c6ad0bd96938ffc9d97486c6dbfc76f1d004b96e8cfa6e6550fc0", + "lib/src/export/openapi_static_export_mapper.dart": "9d35f48697570755680a1997c21cbe2b8c102efe0afa5450c7f09849f282c3d4", + "lib/src/export/html_export_assets.dart": "268614a658c58332859ccd1bff93a385ad5c5d577a8dd906e7c6f3adbd41aa69", + "lib/src/export/workspace_export_ui.dart": "b499f480f25ced3a60eee0a39ef1c47916b4adea721038fb079e3c44c5ede29f", + "lib/src/export/markdown_export_assets.dart": "821ac8858d59aa5c78db544666b0b272f0f961e91e8f2d4bf30c90523a80f9d8", + "lib/src/export/typst_compiler.dart": "0ccd531689d2385ed67c9c52d296219385021a28fadad4721cadd3b92cdbb870", + "lib/src/export/markdown_math_export.dart": "92f6d2922d21b644d751076936f6b380ccc4ad130334facaec19e25a27d3bf4d", + "lib/src/export/html_export_publisher.dart": "49ca4c59a8d2e4cb6c0e4f1da8699e512525bd03652c99dc621bd265e7c8cd92", + "lib/src/export/markdown_visualization_export.dart": "4e3707331306bacbd043f90ba0a9f1d22d06072554d4d0fa1cfb5d688635ffd3", + "lib/src/export/markdown_export_mapper.dart": "ce1ba649532ccebb769f207f3873530a9bc2b997a0ed8da2255fa705ea452fb3", + "lib/src/export/typst_payload_builder.dart": "86ea4f6763dcf7293e8e20d77e4e76514b6e7deff8960d63844acd5e005d0a8e", + "lib/src/export/markdown_copy_export_service.dart": "4cdcd9054699042de0e9e8dd06ba111618d00eef9de4228ccaf093ddc985a8ae", + "lib/src/export/writerside_pdf_models.dart": "7ce9195b1278f5fe88a0aab01ba2789fbce669ca1c7e8f8cf2262c60f7828c73", + "lib/src/export/html_publication_plan.dart": "fbbe63664a77bee1353e3bc47407b9cd78cfaf9d25ce7a225d9f74fff4482a55", + "lib/src/export/html_document_writer.dart": "4cfcb1872794e57114cbe1908562bf6c7ff73d6b8c7023e33618b8c60574b3d3", + "lib/src/export/export_options.dart": "f1f9968c89b5efee87ddab5a9a38ef89fd065be342e8f8575e4bbb9ed8bb1d20", + "lib/src/export/export_metadata_mapper.dart": "59d2da61ed86663ff892c9853a317e3e9c234d3360169689c40e94d617b7cda7", + "lib/src/export/pdf_title_page.dart": "3f41ff4a2333d7fa3a91405f995c1d6ac80bf960d39122a1c6e97c7241583274", + "lib/src/export/markdown_pdf_export_ui.dart": "c9a2aae40c7396132e016bc345c79de96a62826709d03700eff9608805547b21", + "lib/src/export/pdf_footnotes.dart": "c9db428963e62bbc598e2ea8b3e8524fd4a5bcc0b9748953887e4c59b3d56a53", + "lib/src/export/html_rich_content.dart": "259bd86ffbe2dfd7498e6c969e9a3a3f0bae53bd4ffa8fce2178dc7939cea42b", + "lib/src/export/export_options_editor.dart": "84714b2535be481250437524fbadb3b7ed799f29caee5d01f62d283e7b084c87", + "lib/src/export/writerside_pdf_export_service.dart": "a18cf74c528d067559a84c76ebca2553d4994550e6865704b23dec4a74e3cb2a", + "lib/src/export/markdown_pdf_export_service.dart": "9707c181f70ac43bea769f514d078c8a6ab437e50ae239597cd65de72ff5fad6", + "lib/src/clipboard/clipboard_models.dart": "c47e0106cdb6ab4a7b83e4128d9b98580a3607c54e525191c09a65bc82a9d3f2", + "lib/src/clipboard/clipboard_history_controller.dart": "da28f2520aa8a6de74beb65738e7a4d353860b8a704ed9aa396fbd329b9e0622", + "lib/src/clipboard/clipboard_history_panel.dart": "1f9e23546822674c89dd92d6b9fba059e86dbc3463fb5c0641663edc84dd6cd5", + "lib/src/clipboard/clipboard_insertion.dart": "164399691117dffb735bedc74bfee7890c9f7e89a911ca217d80ce1dfc37adea", + "lib/src/search/workspace_search_scope.dart": "c596d38f63a27f008c0423a3262192d740ae0268dbe6b88e4bdf8a5af00f91c1", + "lib/src/search/search_replace_service.dart": "cb9789c2353f6939247e4d5667e19d88804c1a2a47abeac90c307db584ddde7d", + "lib/src/editor/writerside_video_view.dart": "c3ea77a26e0a1273e06c45d7ff2d36744eba3bbde53ee4aa44b82f37bf306839", + "lib/src/editor/document_collapsible.dart": "19a6f7356948a7df91fd06de18760182a464db6cd54d42444ed23ce2658a11ea", + "lib/src/editor/clipboard_paste_resolver.dart": "de2f78b1d5c4c7c84cae2c11aec4d68981eaaea7c8ffabf756fb667765f199ca", + "lib/src/editor/document_surface.dart": "0673bb8461fdfefbaa0d74ba0d417b718bba5c98e6c65724f9451ca322233f12", + "lib/src/editor/document_text_direction.dart": "f5dc44f084d8713585853372041803ea9476656e5a9aa5c76c6bae457f453ee5", + "lib/src/editor/document_text_geometry.dart": "aee3c4df5a8f6c0714e64c0cd4bdb26d144f52eab7190082dbc8ada765b34fbd", + "lib/src/editor/source_highlighter.dart": "3861da06bc30dce0391269015253672539fd7d7c6b1120d28c6951bd149fee31", + "lib/src/editor/document_layout.dart": "6a4d6ffe1f06cd60dae42a1d35d89c788a3f22f8c89f2066640de53d782cc22e", + "lib/src/editor/source_folding.dart": "99e8174cea0a8c76fd28f69a9101fc54783fea37b18ec188acafc804db7c0196", + "lib/src/editor/document_list_marker.dart": "5dd78498e9146a1f17d1d46f62d3c67ca605d8a0d4c6934883c6e68a1375869a", + "lib/src/editor/editor_text_context_menu.dart": "1980e9bc0e9be96700f337d3a7397bb92eb7f7a7e5250f192efbd09fbd631e00", + "lib/src/editor/source_language.dart": "d6436f581b61592ba9838be2ff11ff4db7cc935e060b41f8425fcbc8d2be0af4", + "lib/src/editor/inline_semantics.dart": "d0fdc6b2dc31f4b24a9cf103fd2ff7634d8fc7caa06741533cc93610c1b5b220", + "lib/src/editor/writerside_video_player_host.dart": "e52a230eca0f45ca96dd4002d77b80fe69d994ed4c992be7c410eca46a2d9886", + "lib/src/editor/markdown_image_view.dart": "051f057423b29476b34bc8fbbc334fa2741ec98c117e079d13a7813fe69c31c3", + "lib/src/editor/document_callout.dart": "0394b8ce9d46bfe464a6f171fcc1e446a822507dc5392eb30f0b4e55e12fdde9", + "lib/src/editor/clipboard_local_image_path.dart": "85164c4c5cbf227ed6f06108b267e0c572ecfe0e9d12824dc0d5a718431b7f27", + "lib/src/editor/document_thematic_break.dart": "f7af4c85138f3198323608596ebfdd720e4514d67655c4288ab989b6d30e5145", + "lib/src/editor/document_code_block.dart": "140be4216b15342a830ecfc50506d6356378d1667c22cc433986201fde2c3fd4", + "lib/src/editor/editor_shortcuts.dart": "a57b4e4db7d1fff7d3d825b7ada4e2652b18f63e3b54a33f16722e243cc5cf7a", + "lib/src/math/math_providers.dart": "eb69799dc75898df1523497ce1383026e504427897ce15656c85e5ae23f31f09", + "lib/src/math/math_models.dart": "4c857bd76c59f03c473a3569fdd65e62575e16682db390059d310a35f87b53d8", + "lib/src/math/math_coordinator.dart": "03b05f7d79f0ff749a5a81e0e10f1c02517ead55e47fec52eaa6595e18f53704", + "lib/src/math/math_widget.dart": "bb1a239c707a8500a5f41a9c7ba94427e28a6271fabd6d5b5b00286a3694fe0b", + "lib/src/math/math_renderer.dart": "3c93fa6c3cb5e97fb53b8e0d7595426f0d7295ceba6a116b61d263ae3b71a440", + "lib/src/math/math_svg_preprocessor.dart": "be9fffd40ea4f1fe0c8514d2b8e12f24e68ec179b7bf08b4d5ea5ea46a29dd0b", + "lib/src/math/math_cache.dart": "35bd052b169aebf57ebe3c7a5309c5ec763ca7c61a463fe8c865e9398d39b777", + "lib/src/platform/linux_gtk_accent_service.dart": "804d43e87b4ca13c3eae0a091cd172f9b624b9903fe20415082df04886385481", + "lib/src/platform/gtk_header_icon_service.dart": "ec7742a4d6be403b0caff09c2a68d78f6e0093e50986c3fb284dfb69e4c3c660", + "lib/src/platform/gtk_animation_settings_service.dart": "c0efadec0398b234a446420d1da6e186c57ce2bfee503545e1db52d9e5edb782", + "lib/src/platform/linux_header_bar_service.dart": "115273f518b6df8404b4682b9228732bd1c4c901fc39898738c32cbaa266b51b", + "lib/src/platform/gtk_window_preferences_service.dart": "68dd0a6c9e0f1b6f52eab8e594fdee273a4b86f9f681e02d26bc89ddd4dfe938", + "lib/src/platform/native_menu_service.dart": "39e58157d2b990e2dd14ddae7d01f30e66ba9def5bb3ef10d1fe8481f967dd4c", + "lib/src/platform/rich_clipboard_service.dart": "0ab8ea108af54e966185d57cb09dffe0513e3b7491dbacb544cb9394b34e3907", + "lib/src/platform/native_writerside_dialog_service.dart": "de3a461a840d748ee81ef2368068a81155a59d694af31822a6ba49abab5ebd4f", + "lib/src/platform/header_bar_configuration.dart": "30058be37cc11460426305c77bd93bd53376b078abe308144ffdd913acb47d97", + "lib/src/visualization/d2_renderer.dart": "550b5f6429451d038b05f74cabdda7faa861c827aecd55c15aaa82e0a0e38eca", + "lib/src/visualization/openapi_dependency_resolver.dart": "cb799526366bd3728e3e33192003675635439859d3fbbd958b0d6066c6545006", + "lib/src/visualization/web_visualization_renderer.dart": "758556808e20bb99d66344813dff87b28ae5656ede2accce9ae0cf913bf378c3", + "lib/src/visualization/visualization_card.dart": "001ae6551d5d54a3e1503bec9e8ccd456a4ce098387c0898d8bad59ad2cae973", + "lib/src/visualization/visualization_models.dart": "b5e139d3701e2fbdd6986ad4b45276d80e162dada0dbe7ac087b5f0ec029f57d", + "lib/src/visualization/web_render_host.dart": "e4afd5a5216ca338e4ff8b4661ea44c68f5dad77998fd107fcf6bb3be6a69c42", + "lib/src/visualization/visualization_providers.dart": "fc3bd779358fbbb10fa8195f866e0cd19a5f7631f61f68361d5d87505eaa27b5", + "lib/src/visualization/visualization_renderer.dart": "b2143594994f00784ac73762befd84f7dd4e6973058b076c3f6f955fba50fca8", + "lib/src/visualization/visualization_raster_sizing.dart": "6f929642494db3fcafe22de3053d0037960b14d2910a4fdc5763fa945dab10f1", + "lib/src/visualization/visualization_release_smoke.dart": "285fad51f211dcb4a7cb595569181b8dbcffa165cf54dbf99ddbe28a86f483cf", + "lib/src/visualization/visualization_cache.dart": "7209e739344878719adf6ece640da49b8d80301a04e8369a9f237ec1a351d162", + "lib/src/visualization/generated_svg_normalizer.dart": "a09b2a7b6572dc3724c3526b9f0410f743d31e7953239ee1e48d7498aea5878d", + "lib/src/visualization/visualization_coordinator.dart": "92e3eae4e70c7ef3c4fca1e715c3fa3df66c8cc05cf51af4ac586c1bed0c920c", + "lib/src/local_history/local_history_panel.dart": "cc0331682d71fe0984b248a7d40bfd4db2cd4666edaf5ceb24fab00a261ddda3", + "lib/src/local_history/local_history_comparison_view.dart": "3fa9bdb4f31cf15b950a3abe8c404236106760bf7cd3d3ee0999d65feec3660e", + "lib/src/local_history/local_history_models.dart": "7fd7af25b059bf974415b686cc50b41615298548415e4fd2ae4329b8e205b781", + "lib/src/local_history/local_history_controller.dart": "f293684c27fa8cd4db2e1ef297bbb5d87571d983f0acf111a853c05eda27cc8d", + "lib/src/local_history/local_history_store.dart": "f44cf8122fe8cd349183f5325166cbbf17f2217b1e0d615f5de4a68bf5e7690b", + "lib/src/feedback/feedback_metadata.dart": "bd5d3143861575cc5d70c74bb1c49a5ad4d868b39a15e89e6cc548dd3f1d49af", + "lib/src/feedback/feedback_submission.dart": "1f104b45c4f4e37b8feffe0f7ae1349db4ea13ba5c258bfb8fa73d482600580d", + "lib/src/feedback/feedback_service.dart": "f702ab6cd0cbed67b43943116aeeb8cc220cc6064ea1c84c96dc73b2d32a2385", + "lib/src/workspace/workspace_controller.dart": "07cd7fbdcef74b8820bb60d6cc0c2388fb7f95921952467e59e4e0ad81a2b29e", + "lib/src/workspace/workspace_tabs.dart": "b4788061339705181210afd7588e7879ee15eb5f08ae6315eb69c51c77dc1612", + "lib/src/workspace/text_format_metadata.dart": "e86dfa98d8b20c9581bbe77ce700f55a427e8f20bbbb5819799b32c5f3cf0f87", + "lib/src/workspace/workspace_service.dart": "982d985bd7098f0e8c65a856c82a37318b965c7c04327a3f3b75fd170b584c95", + "lib/src/workspace/recovery_persistence.dart": "b940a15f5e390694f9f294ac3ebf3e103fb2cf6effa49d6acd4111cf1c175826", + "lib/src/workspace/workspace_file_snapshot.dart": "a266ea4046c98902d7be1b5ae8580da09e520b0470061d8b9c0fbc8aaac8fd69", + "lib/src/workspace/workspace_glyphs.dart": "281c198ad0afe834470250ffd2840acba3b69b79a1f86d8fe6e44b71afaf6ca0", + "lib/src/workspace/document_origin.dart": "3ec75a42243b2f5a53461a4fbc4266ac4bbd136e8df941343b3dc4389ee784f0", + "lib/src/workspace/workspace_model.dart": "fdf76be407e2c28810534c7b402180186a96e1b5fe4d5df126492eb3887ba898", + "lib/src/workspace/document_buffer.dart": "ff1a2282ade901670c89763634bf1c5fed82ac46c92e52c56a84222253214d31", + "lib/src/workspace/workspace_safety.dart": "82f4191fd3efd68c1d20aac806141c891873712afe3d43c1acfd42cc280b832f", + "lib/src/workspace/workspace_file_monitor.dart": "411c909aaac415acbdb6dfd305e18601d7321408d971efa8f5626007025165ef", + "lib/src/workspace/workspace_message.dart": "f497a2e2e242abbea4a6eddf2686c5edd1efd2b47923bc3a01b5b2edb3abaaf8", + "lib/src/workspace/session_persistence.dart": "faee39ca442c02a570cc2db286ca6dece9db0a2acef16305bc6d5bad0025cad6", + "lib/src/ai/ai_provider.dart": "7276b6655aed05a7e9d517fcf04b754addd8c2a12ad054ec35e0722f70e1d573", + "lib/src/ai/ollama_ai_provider.dart": "2a2714cf4cf81397c659cde8e8eb18fc1d05dbad5fb961273578fc1ce4781fe3", + "lib/src/ai/ai_coordinator.dart": "23bb171bfdceb6165807d465991ae4042017c93ffc5bee1add7dfe9783cea5dc", + "lib/src/ai/ai_providers.dart": "6b839ae7c063e5bd0da2d0e0cd31eb4881f59a9ef43b35b03190cf5d0cacb1c0", + "lib/src/ai/ai_models.dart": "af5a25d4c1080e57b94b9a557a5f795c25da8a6d7bb92b3681d5a5afb48598fa", + "lib/src/ai/gemini_ai_provider.dart": "1e7c598cd06039892a2d41eb550cab512fe4d9fc622dcaed8b0b0e553b4a1d16", + "lib/src/ai/ai_secret_store.dart": "06cac3e65bb0b9537b9904e21ee65fdb3e923623b357cdc63055279e5dd3a04a", + "lib/src/ai/ai_policy.dart": "76506b236ff8da45447d4b619dd8976d9fc98992df463e8db23a9f288062ca6f", + "lib/src/ai/ai_edit_ui.dart": "74cfd3074d85a1743c8882e869eb6e17c2244d3a449b477e0ab8cd5cc86b05bb", + "lib/src/ai/openai_ai_provider.dart": "564e62e6f2cec1baf60feb0808bcb7d8c71ac81b770db6671c37e7a5031b0cc6", + "lib/src/ai/ai_http_transport.dart": "871a58495b2d711017d1509d5233fa0a9f23117e2c22e402ebc6ed7eb715dd09", + "lib/src/ai/ai_markdown_edit_resolver.dart": "1592aa7094b4b36c81e6e4f2efd310b59f68591e9cded57339a3ba7ff7987831", + "lib/src/ai/ai_usage_store.dart": "ae77e75ccd2be1e9ce736cb7a875b7f3d4c7342cf8200722cd7c621f23504ae9", + "lib/src/ai/sse_decoder.dart": "d5dd646cf6d6a89a94ffdcb5274909ad18aca31ff2d575050448e1a618d9d933", + "lib/src/ai/ai_configuration.dart": "222115d102b7fe2afeaf82d4184c09979340b8f981d10be5fcaca9505bf5b44b", + "lib/src/ai/ai_provider_registry.dart": "8cf3f2e47da18a964fd3ceb0828ba64d6c9004ad4a9671310b640b83d1c5863b", + "lib/src/ai/ndjson_decoder.dart": "28aa2849b4b6cc6b83352e89484426effe13d84ddd5b18a60d3fbe9672cf122b", + "lib/src/writerside/writerside_topic_file_editor.dart": "412e149f90fd5531ed75474deeb97cd17b75440efc875dc0ded590099b018a2e", + "lib/src/writerside/writerside_title_editor.dart": "9795207c58a1fda824983c1d1a1ad1835a8d911751c588425114cc131f642581", + "lib/src/writerside/writerside_topic_creator.dart": "77be4c90d8f053bcaf13cc0caf9326b4b0810f00f9c0d38e76e806a0a4cb4854", + "lib/src/writerside/writerside_toc_presentation.dart": "ccb500471e2ca1a2576e63338d8bf4286bbf7a395c152d2a1f23946ebd9f0dd1", + "lib/src/writerside/writerside_topic_removal_service.dart": "b7ee13e9c7123ba07e5a161a2f8f75ba3a0eeff6b6c35b7635d793aa4d7b5276", + "lib/src/writerside/writerside_table_view.dart": "da6ffded35c588153b76889fbb5cfa24bb8a0e72e8fa35ac534b335939b20c2f", + "lib/src/writerside/writerside_topic_file_name.dart": "9f6390f8de9dafa6f37e091b6d775e650bdf82947503ada6d66d559f3b0787d2", + "lib/src/writerside/writerside_code_selection.dart": "4a734d1a6f07cbf12436c17ff1b7eccb7b82d314d4b4ac9789e29358f1776063", + "lib/src/writerside/writerside_summary_exporter.dart": "5e6a7e8a5118f47519f43c4875111a0edfc804258d5d3b47951f2b82da47b0f9", + "lib/src/writerside/writerside_execution.dart": "3ec792be71a0a37c79324c94791251c285859b8344d38a89f4f5cb55abedf6a1", + "lib/src/writerside/writerside_tabs_view.dart": "0d695611a0161d4a641e1aef1fdf51594b15fc42acd15010cbd3366cb46086a4", + "lib/src/writerside/writerside_toc_editor.dart": "fac2efc7469591961ba89f9e0d7f360fd08ff1359696dfc8a84c445a63c47faa", + "lib/src/writerside/writerside_html_reference_scanner.dart": "e9478bbfecb8e631c791a99cce4040149342dd4b788463776a78882b471e11c9", + "lib/src/writerside/writerside_toc_navigation.dart": "23578550c1fb73b170ca94c1f17af00e95c02eeacf8082ce3680ef2c5f6da185", + "lib/src/writerside/writerside_document_parser.dart": "9464e9d7c5b9e0f75439dd0a5c16b4a2b834806d8420e8ee1d8b05ab8982dd71", + "lib/src/writerside/writerside_project_creator.dart": "e3cd11012e904ec319d408032445df70ef56b7829910d6125115927fb8a4bfeb", + "lib/src/writerside/writerside_web_file_name.dart": "5283d08ef4be3fe17b4260b6b13be065462ec3f5361600dcc8c271353cfb3fe7", + "lib/src/writerside/writerside_parsers.dart": "38db5fd08263ae09bc6bf9d0ef30a1ef951759834905aef0073c90e152945385", + "lib/src/writerside/writerside_diagram_source_loader.dart": "6ca2433da703cb6ab0289933f846ac22a675d0620838a980e66765ef147cce61", + "lib/src/writerside/writerside_module_service.dart": "a4a26b6d2905d263da65f3f17313dfc29a2d50b67c1c86203839dfb66bf3eae1", + "lib/src/writerside/writerside_document_serializer.dart": "ff273817f788fc4f055e6da942e93d79526636bb2086bbef8edf1e685244c42d", + "lib/src/writerside/writerside_tree_resolver.dart": "9668782aa1ae5fcfe6569098e193577fbea8de88cba97851fd70348089789bb3", + "lib/src/writerside/writerside_document_resolver.dart": "2b4ecde2485f54bcdd7c8b976db1c0e6251e1c20c8b942ef5455da5180288dff", + "lib/src/writerside/writerside_document.dart": "21fe733602468e5e0dd04b9bf0293d3cfc2abe3f0d4d91f2b602c3836c223fa4", + "lib/src/writerside/writerside_instance_service.dart": "c723d468b97783a8f51a1d67af9f1bf7fcedaa94d573aae0547503510f86af97", + "lib/src/writerside/writerside_model.dart": "937c260ca115085810e2de761453223597b4d830f1e33e160654c4a9c75d21de", + "lib/src/writerside/writerside_schema.dart": "40a85d9de9072061ee00f5e3a12de300b3f5c01f210f281f813b7b89b54dd11a", + "lib/src/writerside/writerside_source_loader.dart": "9606b62c6d12207c114491c94da485f01ab8e3cec5f56b65b022434f9353aa4d", + "lib/src/writerside/writerside_template_service.dart": "5c1a5e52b582408333c554313675d527c2ba0f4b2c0fb2953b6f3975c7f59f17", + "lib/src/writerside/writerside_schema_data.dart": "f92ca667449390557d634ed0bb7af20565288f4e0d3d8d7737b2e59f10397d45", + "lib/src/writerside/writerside_project.dart": "d5887a7ee8b0b2a2ce376be64bb3dced831a489b2b25c01f11811ee47ac3bca0", + "lib/src/writerside/writerside_video.dart": "e179b209051760f954aa2cb73600e5060b596d45c1d97b455ebac3d3aa69cb76", + "lib/src/writerside/writerside_document_renderer.dart": "e4010c548e9bb04c6dd2bda3c3b0de0017ec8650aea2259ccc4d767b31d56aa3", + "lib/src/writerside/writerside_input_snapshot.dart": "8508b5d3b8d45f979f53a01a866476f9d2353621cbd9ad4a700cc5be08bfb7ad", + "lib/src/writerside/writerside_reference_data.dart": "eaf088b436adfed165516af0ce47241442e5e0ff3708081a158d4d09c6336b70", + "lib/src/app/window_control_service.dart": "654e2bf94382a6c60558e77b9d7b84bd9e426c9707195155db4388194984fa4c", + "lib/src/app/command_palette.dart": "4197b7849e48ab86176fa3919c1768c0d3c89e0d92a8b046f6c5250ca5b7445c", + "lib/src/app/system_accent.dart": "d2b83ae7529d9f221d88bde4c5b88daa54b385a9c75b8f1f6ef25b2b1d44084a", + "lib/src/app/command_registry.dart": "059a87232e1229d0836fd870d44bd2c5b1442c3287d38bb2b7680fb4c23f7242", + "lib/src/app/localization.dart": "abee827107fe38559ffb882db1558f63cc21f54b7856fb2ca2e5611d3b242044", + "lib/src/app/busymark_shortcuts.dart": "6258329c54e12fccdb2a81db88a4ed526c274b6e5e9b5812158dd218a359a6bc", + "lib/src/app/busymark_search_field.dart": "ab90c830c87c422ba297d7b1a13925a45fd627535c8655bff3306df75dcfdab2", + "lib/src/app/busymark_toast.dart": "a414b21806b5c27f2bd957eb59d3dcc6007ad143e0b855e641d6262a4333a9cc", + "lib/src/app/startup_path.dart": "e620cc1ce80ff96d0b4b0fb019569676402430196fe2846d834bc06468fe1960", + "lib/src/app/busymark_main_menu.dart": "499b8d1aee2103e2867e7477e43a166364eab9029f2823fbd649f989449a8934", + "lib/src/app/app_locale.dart": "3cc22acde43a996e4a704ddc91309f9ad9114ee6331a9359a8175aa7a972063e", + "lib/src/app/app_theme.dart": "7a678e640d235c8faf8f738bd6cf0545d52abc066525f4abda2d060538ba4001", + "lib/src/app/busymark_app.dart": "6840730d8f37b6eb2dc150fc59962afcf36e97e07b82392f860aefafbfa901c1", + "lib/src/app/busymark_glyphs.dart": "cbd9651ec452510558aaddba61022e1426485353bc89f3ed7371b69c3603e1ad", + "lib/src/app/app_shortcuts.dart": "d0d0cb92e0d273b671b763db42f003146563aa3aeab5debf0666c189e9036f78", + "lib/src/app/app_settings.dart": "e9decd5285c280d5db59cc63f2a5301b709a01b3ab5dc2b6fcee45a93d03593d", + "lib/src/app/busymark_dialog_identity.dart": "f0780ac7bc5468b590786cd475251fee8a4a46712215f202cdcf4cee42e66178", + "lib/src/app/app_router.dart": "00024347e23c44b553945b3e5557deba133049ada6c2c7e2bb1658d9558dfd3c", + "lib/src/app/app_metadata.dart": "d38ce08adf4038224767303c232c860e76f566bcbff898b83d24b8b96e6c9cf5", + "lib/src/app/busymark_design.dart": "3e602db9a507071ef1634cc713648cf162fd437c9e4cf9985e904c580b97130a", + "lib/src/app/busymark_dialogs.dart": "e23a6917b6761a60ed6402f407c5e461938b100770123f4c62563ddcf3bc5d72", + "lib/src/app/busymark_motion_widgets.dart": "e2d85208058fdb7e14e276c078690ac54573f4b354cea2cdb7b9170efc69a4b9", + "lib/src/app/linux/linux_window_host.dart": "53e2aa7dbe557c905359a12d7b01affda6151a3ac750d69becb8baf724806d43", + "lib/src/app/linux/linux_header_style.dart": "9a012cc52c72ad0c9c1fb3be5f04544ccfe3f313c443c993e16ee4aa14c9d1d1", + "lib/src/app/linux/linux_page_frame.dart": "474608aa3b36f7e43e538322939a586f6a3987df6adb9ab1a16fa4ccc0cbc199", + "lib/src/workspace/presentation/writerside_toc_dialogs.dart": "90e073fd5b4c30ad4e69781eaebc1c9413b5cdf4eb4a656e5dae040f5a7d0a68", + "lib/src/workspace/presentation/workspace_screen.dart": "15445c36afc9535a88bce847ecfc36bb03cd9cf03bcd60d4904e01c9fda81e19", + "lib/src/workspace/presentation/writerside_instance_dialog.dart": "33fe4f42eb0d7ebaee22d7f5865b7189e45611b1c710064fff59c6223acfc29b", + "lib/src/workspace/presentation/document_status_bar.dart": "1229eecf7eb9ee7acd18e0f04c6e87d6f9d9f98bb3fce61932ab82c0b5a3512b", + "lib/src/workspace/presentation/welcome_screen.dart": "e2ae3c9c218be94e340ff3a4b04a1301cefc70963598a10af6a9592927110c69", + "lib/src/workspace/presentation/writerside_markdown_import_dialog.dart": "36985fa586f1b9874d88ceb8a8b7dc0cb378432cc74c0e8b098dd173f167e42f", + "lib/src/workspace/presentation/document_format_indicator.dart": "34eca3bc1afcbd4098eb919242d3e33fbd151d4036e52eb6d96be5990aac5872", + "lib/src/workspace/presentation/writerside_template_dialogs.dart": "635d6ac5d764646960e5bfaa73c0da432133bf03b2ece1264f694db6ab00cccc", + "lib/src/workspace/presentation/settings_screen.dart": "0eeac34b179c0f8910f6f8b871a99479aa1a9ac8342a368531bb12fa84971d65", + "lib/src/feedback/presentation/feedback_dialog.dart": "dc7d37dc1a93f35b43da4a0deddcd3a6b6cc1f9cbaca4484667ed930c2c52932", + "lib/src/git/application/git_gateway.dart": "0dde99f8c24c83ad6abe4365c023b3bf31096c54dc4dd3e9c25bb0bab9dc525e", + "lib/src/git/application/git_use_cases.dart": "acdefafd64f871c6299f084c5f4bd7bc1fbeea3de306fc3bc2633465a1e35ec7", + "lib/src/git/application/git_controller.dart": "0166e73c3910c6677a2e2673be115603bb0bc165b8b65d98b6effbb7e42463bf", + "lib/src/git/presentation/git_file_status_colors.dart": "f26feff460268725c9dcf8b83ac58a5425ce4007fe65f8c86a82baa0f62c7077", + "lib/src/git/presentation/git_changes_view.dart": "4ef7ec1dbaffb0077cb7f39efab45262d1df4ae773699bfc20b7bd4b86a718a7", + "lib/src/git/presentation/git_author_identity_dialog.dart": "f7e89acd106a7a3bc62f4dcb8b522c144facf009ba1421a97cd21b7c118cbb69", + "lib/src/git/presentation/git_diff_viewer.dart": "4c5d67e074b4e40657f9236050c0b789adaee5dafcd0f444341a0c65f32e8b8e", + "lib/src/git/presentation/git_history_view.dart": "d4455b8be45c5a4d4614561996edc2f10c8259fe8823aa98f22d4c16c61b87a3", + "lib/src/git/presentation/git_sidebar_tab.dart": "f44b0d36ed25d71787cb63d84ad2ff6f2d94898fe9a5ae028bd813afbfeaf6a2", + "lib/src/git/domain/git_diff_parser.dart": "57377d8b309d5c3f7e024b2d6294dc9cc1bc4468b0bdd9aaab4cef386a6b1198", + "lib/src/git/domain/git_log_parser.dart": "8008314c9c93078db3df2b981ac052a43a2f03ba75eda2b4a3cb1e9c107878a6", + "lib/src/git/domain/git_status_parser.dart": "94fe8d98386cf96f6b1978dee279b07710b6ef9f967527268f455400ff2c2202", + "lib/src/git/domain/git_models.dart": "6c5a6a1bc803f1d80820c9db7a7b3f1ef1a78f8eaa17a621270e0ef81ff8e8e8", + "lib/src/git/data/git_executable_locator.dart": "764e9149415e9c0c4e72a7667127b2e1e8e52a0e3a63b3b908b16cddc7866934", + "lib/src/git/data/git_process_runner.dart": "59d01ae75ee622ce033bfdf5bd544e9b378fd24b6dff0f3f90453bb5ee29bd47", + "lib/src/git/data/git_cli_gateway.dart": "6cfff753640882d3d3afeaedd05329a1b0c3f31fd1385836d781c0eb895af19a", + "lib/src/editor/source/source_hidden_ranges.dart": "33c78b6973db2490a75de8470dd6e2b7bd5d8f4a556bc1436c8f803098792c03", + "lib/src/editor/source/source_document.dart": "9c2562c6ed6c5ff5769dcf559b71424fc1d8b8b0325533d482170e89466f9395", + "lib/src/editor/source/source_intrinsic_width.dart": "567e55f6aeaa0cc0e305c38bb32f37f180c3c57223a2fc627a1d52d4c43055a5", + "lib/src/editor/source/source_gutter.dart": "2e318b55ab977397a1b884dbe75543df0553fcd256f9e6a35c66476543649c0b", + "lib/src/editor/source/source_line_index.dart": "6dd3355a9dce3c6521d84bdbf049073b26d9c9953f3342e5ce4ff8cc68817987", + "lib/src/editor/source/source_highlighting.dart": "88e1d95e163302fc472e92a9bc3c73e18dea44bac9e33f08bdeb5325f85cc338", + "lib/src/editor/source/source_folding.dart": "99a6feced2fb7bd5cab56bec89188ae6074c881432f678e0876fd28575293d88", + "lib/src/editor/source/source_commands.dart": "ee445a92b457546c2469f42b198fe7330212b3d14611d0663e03e6274fbc5ac7", + "lib/src/editor/source/source_editor.dart": "ec21409c030fb38a11eb74d2a75cd02df89866aaaa0efbda8fa94e94ff1b65bd", + "lib/src/editor/source/source_autocomplete.dart": "6d8851278274d6acd0b097b5a71ae929928c9a69c0320f52be1f889e4ad44871", + "lib/src/editor/source/source_read_only_view.dart": "99286ab99ade39543c07d573a23783f8c0f56bf3c91bb33fd8d8fd4e09dbcc33", + "lib/src/editor/source/source_paste_engine.dart": "dd4d430b433215c7b8836be04ec763673c7cbd85bec582b0a0aeba57d9c36c8c", + "lib/src/editor/source/source_search.dart": "d9a06a8de7e3f05203b925067acbb34a16e0622e78476c6f6d3cb4ec99566e41", + "lib/src/editor/source/source_controller.dart": "ab00b5d51cd5efc19e771d186923d022788f11d8622ddc2af21586f394180901", + "lib/src/editor/source/source_diagnostics.dart": "20b30b19125a1cf7c8deac7f8aa4da2d8305b18786355b23fda3f31c6e487ad3", + "lib/src/editor/wysiwyg/wysiwyg_document_controller.dart": "3b05e06a64e530586847925067e68ed3a1c20715434f263dffe1b4b1adcbac74", + "lib/src/editor/wysiwyg/wysiwyg_session_state.dart": "454e9afa2f0fc15720b50f5fdd17f645c7463d8c9cbb553d8926a43398602bf9", + "lib/src/editor/wysiwyg/wysiwyg_block_widgets.dart": "948245c49e419c5a8d9ba1f74349292297c779d5c3a3ec3a0396e5b83429ddb7", + "lib/src/editor/wysiwyg/wysiwyg_commands.dart": "cc212fe423405257e4ef7988d781b6285aeb0803fc3cf57b4be3e05afb2b9390", + "lib/src/editor/wysiwyg/wysiwyg_editor.dart": "1665bf6c08eeb0111a4d3822c1c9b4af4d5b6048089b5992985b7b63b2ca8b1b", + "lib/src/editor/wysiwyg/wysiwyg_clipboard_fragment.dart": "a4466eedb6ea21dfa952cbb041ec572b97a25813c9657bfd9c6b2c51d7da8348", + "lib/src/editor/wysiwyg/wysiwyg_clipboard_html.dart": "16797344be7856aef0367808de8b9c59dae1379c0115abbba4155e21fdfb994a", + "lib/src/editor/wysiwyg/wysiwyg_toolbar.dart": "e3029284b76b4cf800ebadd4cb60fe1201896f9226f9e911dcb913b4ef0c54ad", + "lib/src/editor/wysiwyg/wysiwyg_visualization_navigation.dart": "fce906dfcf4ed96e2869e8e6437ada2f563eb0c36dcaa0622b3a6c665953c9e1", + "lib/src/editor/wysiwyg/wysiwyg_inline_controller.dart": "19832f50162dd2143696140255b6985f9312d1c8dbdd0cc1ffc259633498c632", + "lib/src/nextcloud_notes/application/notes_repository.dart": "b68f0014ca2e671d605012deae2c57421a4738ecfaf9ff86b80324358f5d71da", + "lib/src/nextcloud_notes/application/attachment_markdown.dart": "f74125b2e173fc847a88ee7a674f7928f092a7d2fc0a217f4349356be9113d44", + "lib/src/nextcloud_notes/application/notes_media.dart": "b1723b90674c131b9f23dd17b3a38d52035f6375b4c97007ba356b28013740d1", + "lib/src/nextcloud_notes/application/nextcloud_connection.dart": "40e9cf545a8b8c2ac9107b79016a28a4fc1a14ad8815aafc07e347978b772e10", + "lib/src/nextcloud_notes/presentation/nextcloud_settings.dart": "d0d1ea6cba7aabfb59833f39890d85affd86705f297556ca2119a4bc882cb554", + "lib/src/nextcloud_notes/presentation/notes_sidebar.dart": "bf0aa7e7d5dfa542d5719c0890d1e5d9809c5193eed41ff403c51e2c7efff23b", + "lib/src/nextcloud_notes/domain/notes_conflict.dart": "9a5a73bea64518684f96f10650de4bb87da30e522c9f81512cbd59ede2dc1fd8", + "lib/src/nextcloud_notes/domain/notes_models.dart": "7512674d30bbddfe59e18d1b0466e93771b531b0073719b1b7dcf6065b52f007", + "lib/src/nextcloud_notes/data/notes_attachment_references.dart": "529f8a0294b5a835b5794b8832f6986ca0607b96f28e380da4241898e38b0189", + "lib/src/nextcloud_notes/data/notes_secret_store.dart": "6b7a1421f20cc9bed7f4c0bb697d3acf2a8eeffb2597b6bf845399c05e07563b", + "lib/src/nextcloud_notes/data/server_uri.dart": "a86378012ea47688284d50bfc3b25d585fb9b0d4b841359024769c2acf815b22", + "lib/src/nextcloud_notes/data/login_flow.dart": "258f0bd543d94808176c5be26776a6a816fab1f4961d81512d842d586515c096", + "lib/src/nextcloud_notes/data/notes_store.dart": "0560a30df4217c11bb3969d0b3113428b6bfdee44fb05688a5e240b2c260ac3d", + "lib/src/nextcloud_notes/data/notes_capabilities.dart": "268e10e0a644492357bc4ac8eda9fa31c976f2bd097797c133387ac306191dce", + "lib/src/nextcloud_notes/data/notes_api_client.dart": "700f74aeca3e9d83ca4889a2e85f7403d12243d975a2ac07b1f770e5c589c754", + "lib/l10n/app_it.arb": "74bf3268ad3e77b49469868c43ab341de509b8289ffd78fe258fc18b682ea694", + "lib/l10n/app_nb.arb": "5aa50249f89ef8cef8577b5518b9bb5e3ad1b647c5990502d29fedeec25e0b21", + "lib/l10n/app_id.arb": "1610a2bf9cf8e6033e426dfd493d27efe1f7b98325eac7378e60543894ce342a", + "lib/l10n/app_hi.arb": "d4937a8398800909db22458474150303db79ab5f921e8b2d712f24bc920a13a9", + "lib/l10n/app_fa.arb": "41dafeb4daa06ed4cadcf06211ed69db98d9d68cd0fd68bcb208c0047f259f9a", + "lib/l10n/app_de.arb": "4c08616a2ade79cee2b57e71b0f690331c5b5cdbece84fdd928458ee40dc514e", + "lib/l10n/app_zh_CN.arb": "f3cad9cbdba825fd053ff293b7acc44c80cc702b82be79d099d6f1d5dae17655", + "lib/l10n/app_ar.arb": "039691b2aa89c975fc656f9ba5a1f168f09a4b106e43ad3fc2c3fe065008cb59", + "lib/l10n/app_pt_BR.arb": "01e5e9b508974e06aa8e3c4922c8f112c61095ab4b12624ef19e2193e4bbb921", + "lib/l10n/app_ru.arb": "fb577b6f8997438f6d6306ffbf86a367135a81dce8e1846c20aee48ecc6a7fb4", + "lib/l10n/app_vi.arb": "f7752ed5cc1ed766fa2f5340cd43eba65cf711e08a292be45da0f95df2e7f4f9", + "lib/l10n/app_nl.arb": "e1e2c58ea52b33ab9e6f6a99308520abaa575ffbeb1ed929871cea8506cf96d6", + "lib/l10n/app_fr.arb": "e79bdf65ca16ee3443e0e3218971d184ebd4cb5c2cd252218b6509c87444c18a", + "lib/l10n/app_es.arb": "ab3afc8e396fc8e80865d1892fca886ff63676f0e94ae6bcbd99ebaeefb823dd", + "lib/l10n/app_ko.arb": "17aa0c04d1bd03eaed998399de81de8345a1edabb0dafc19351789b45b2b8597", + "lib/l10n/app_pl.arb": "b6d81032246d67840a15ce41e1b4bb274a45945c2ea159c72551a76cd31c1e16", + "lib/l10n/app_zh.arb": "492baefd14c0f3627baf81a20296dd30408c4db104c1860dad0400446686a2da", + "lib/l10n/app_tr.arb": "eb505765012f3c8a2bc5cf01ed9b727c742411ff8b8c4abb9db457025d1ab9cb", + "lib/l10n/app_ja.arb": "8aebaf9e495ba0fcc117b97cbb9e5391438080cfdb8757bed508de6c00f2d4e2", + "lib/l10n/app_et.arb": "ff18db8cdbb027b2f43ffe027fbeb784b0251a3708cd45fa36b6000d16009d1a", + "lib/l10n/app_pt.arb": "e901e0252e79b9bd5d31321cc28007c85ec0e7e44ac88b77513b2c4e0e0e8b32", + "lib/l10n/app_uk.arb": "9bbead1ecf2bba435ea8f327fa44e19e1bd167e5fba0d000237c1d66d7ade118", + "lib/l10n/app_en.arb": "c215af29845d20d074d7599fc89c33c8a75d3ba0b32a158070300feb6290a36b", + "pubspec.lock": "6062c9287c8030d89989584d023b649c990ed5ca7bb40cb5941d6a48d1bcc9a7", + "pubspec.yaml": "b095829f4ed4f68ccf3d254f873b81f80edfccea1cb930dddd8de804865f211a", + "snap/snapcraft.yaml": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", + "assets/branding/busymark_logo.svg": "dfc2bff2b49a268eede8c0ed49054bc575c415c697736cd84bfc728c5a210381", + "assets/export/html.css": "7b0b65c6c4d5fffc00b52833a7fbc43414dd988490d141d18db0ee683e664a95", + "assets/export/markdown.typ": "9a15349c348bca0742263a6d1228cc93ce850a4b5e046bf12e4a8f4bc6d89851", + "assets/spelling/CHECKSUMS.sha256": "3e09d517676fd8c18ac05a7b5a327404c046e1b5eb6bd97764417c43cd7251dd", + "assets/spelling/NOTICE": "4575a8d402694008656ed3cda93d158f58adbd0ae54a8b9b47824e53f9f7d19e", + "assets/spelling/VERSION": "8b037210fca77dc4fb8f6f0573e1578717d73f429cbb25e8f10b54d314800a11", + "assets/spelling/dictionaries.json": "4fa250112cfbee3fcf3e2dc1cc1f9b60bc556f439bdc0310e35dce19ed5b8bd3", + "assets/spelling/licenses/ar/COPYING.txt": "73480d918cd78d655508e80aa88c022cbd53634524a0f714b5f2519f2cf19124", + "assets/spelling/licenses/ar/README_ar.txt": "5ead684ae5211ccf615686959e24bd21ef6eebbb6195997529fda08b993f615e", + "assets/spelling/licenses/de/COPYING_GPLv2": "e7431ac20e815b6797369e802f9e4bb1b0082485060d8b096235f035d741bd89", + "assets/spelling/licenses/de/COPYING_GPLv3": "8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903", + "assets/spelling/licenses/de/COPYING_LGPL_v2.0.txt": "b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c", + "assets/spelling/licenses/de/COPYING_LGPL_v2.1.txt": "dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551", + "assets/spelling/licenses/de/COPYING_OASIS.txt": "2d9d81e88ecd0e837122f4688ca7a6a5bd7bb41bff6e21ff5d4663eb43372db3", + "assets/spelling/licenses/de/README_de_DE_frami.txt": "c141f4f79c428b7348b5012836f4ad3db4d124f288f15effc22696dc876512ae", + "assets/spelling/licenses/de/README_extension_owner.txt": "7662cbc363fdee12bc03a5295148587bb76923c121792a401115e654fea37b5c", + "assets/spelling/licenses/de/README_hyph_de.txt": "be7b3c67a66ea7185a69a3ce3b1e712cd6bb904dce8ac0eecdefd2f1a948baf3", + "assets/spelling/licenses/de/README_thesaurus.txt": "405accab10106f6d09152f2f5865ec3545fbcf40817b5416b4b99a077f303a87", + "assets/spelling/licenses/en/README.txt": "b8dd4d2ace5358adf5e6ddfac720871188e6f211cf56af97db631f4ee53e0ff3", + "assets/spelling/licenses/en/README_en_AU.txt": "f0897dcfdf058bcfc93fbc8e7e1b5da4c27ae9e175ee3a9242e887f02eb84a8b", + "assets/spelling/licenses/en/README_en_CA.txt": "86700e39b2307dda4c087ad3505a1e634a5b4d518ab808c398a16d21ebe957e2", + "assets/spelling/licenses/en/README_en_GB.txt": "18b5833de60a52ffcb6e5b6b5048bb5a5d910acfecd5b096985b77058223880c", + "assets/spelling/licenses/en/README_en_GB_thes.txt": "cc8abeac37067747d66d5365e8163145be6f3c23f488005074bf255bac89f2e4", + "assets/spelling/licenses/en/README_en_US.txt": "168b4c01cb841f766a72f310b065c04d09cff46376c37a81d799593ce751c371", + "assets/spelling/licenses/en/README_en_ZA.txt": "116ade99dd4a92715b21ae5b358a1a8cc814c76c0d6e582fdba4870835d1a6e2", + "assets/spelling/licenses/en/README_hyph_en_GB.txt": "6f3d1dddcf62d2d452801bd86289ad5826a30d15a502c0825f5c73715372db50", + "assets/spelling/licenses/en/README_hyph_en_US.txt": "9bcae072bff45cc0333d6b3c508c92d85b9065fc861c743c1506b303eba3f4a1", + "assets/spelling/licenses/en/README_lightproof_en.txt": "2271b9893955aa0abae1193cf56a66badaa906c0af030edd46113d10c59f2e24", + "assets/spelling/licenses/en/WordNet_license.txt": "23dbc4f3ea771304e5ab3e5709843813d2619f3c0cfc81229b53fcdb9985f29a", + "assets/spelling/licenses/en/license.txt": "df84246204e3c54cd24aebbc23714235f5fc41d754d53b65444a2afbf070130f", + "assets/spelling/licenses/es/LICENSE.md": "2b70fd5cb8d3b34cc6ae322c969557a2270b99017594addb2531ef5ffd9e1b17", + "assets/spelling/licenses/es/README_hunspell_es.txt": "0b5c39a863ecb61f5c5631ec1cd977667ef9bda6da6f90e80e9fc0edcbfadd97", + "assets/spelling/licenses/es/README_hyph_es.txt": "1f1088dce1140d981660faf3f5acc825e74aa1f943a8bec88cb046e4c528a1fb", + "assets/spelling/licenses/es/README_th_es.txt": "c721aad5e8f15297d4a8aa30b31a1bec1a4cbbeaeec6b2633cd64e2b0fafab30", + "assets/spelling/licenses/et_EE/README_et_EE.txt": "4cff6a48ea9168d545316ab96bac24eff4745bf198cbdd9f57eb10a9d8f93f0d", + "assets/spelling/licenses/et_EE/README_hyph_et_EE.txt": "da273b8ec03e35774a426e9df047ad85253ec9e61a5c056f019d57c1395ef1cb", + "assets/spelling/licenses/fa_IR/LICENSE": "7429736f069a84049bcfbee436e5cea3a3fd9b98348d880d9e43ebcf39721989", + "assets/spelling/licenses/fa_IR/README_fa_IR.txt": "aa1450d6eab0d140719048e7277204bae086947fe5d8cd834d115c0dd0cf7a81", + "assets/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt": "4a25abf740ad6ba5e8d0cfc0d2ffadc3c13c303f8fe389f323b061a389350f83", + "assets/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt": "6951d9806c65c7f757d303061ca49cd7a1ddeddc552147f5c29de6540821f2cf", + "assets/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt": "431a690c5be7741eeaa0e9654aeb75ed2b0af337492e622e8393d090b4612b3e", + "assets/spelling/licenses/hi_IN/COPYING": "204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994", + "assets/spelling/licenses/hi_IN/README_hi_IN.txt": "2b373a1e07efe18e89c04c7f69bd540681a5926edcb478a4331d0df387861487", + "assets/spelling/licenses/id/LICENSE-dict": "97628afebc60f026f5c2b25d7491c46a5c4ee61f693e7cfa07fbd2c03605979b", + "assets/spelling/licenses/id/LICENSE-thes": "1f3360c2c2fbe9918f3658a20fcd2f64113a11726b7327ca1df7220c433689e1", + "assets/spelling/licenses/id/README-dict.adoc": "7c18fabf4169a4b7f0f7effac5309c26294d8cb354d9ed5cbc8ea2868abcf942", + "assets/spelling/licenses/id/README-thes": "6bbe6d0559d00b6e05acc9477cebfbf0da2b183b4c541cf47f7153dc7e3dfda5", + "assets/spelling/licenses/it_IT/README_hyph_it_IT.txt": "e6f356c3c49bc6016b6a635c20b468468eef6d011953a7051bbdfd56e17f0d3b", + "assets/spelling/licenses/it_IT/README_it_IT.txt": "34c3e93595cf3cf5f3afc9bc0d98eea12593750383f1e82ed1d3ca29f9681283", + "assets/spelling/licenses/it_IT/README_th_it_IT.txt": "07cd83b0d7664ebc620f589524069549f6ead33bccedb7f27d04ed0311e62905", + "assets/spelling/licenses/it_IT/legacy/it_IT_COPYING": "3e41d215a0d9ce21c1fa982d48d2958d539a51011f469f741b51f97e2595ec7e", + "assets/spelling/licenses/it_IT/legacy/it_IT_README.1st": "0328874f246fa9511fb19be6fc38db57f1351b00356e7c7187de59529fb04e6f", + "assets/spelling/licenses/it_IT/legacy/it_IT_README.txt": "ec6332fd60cca5d4cd1b69c78aebae33bb49ccea856ed1d69722e3a23f0dfc82", + "assets/spelling/licenses/it_IT/legacy/it_IT_license.txt": "4de624abc748506298e7be68f2213e422673b43e1674da4b376804096b87dcec", + "assets/spelling/licenses/it_IT/legacy/th_it_IT_COPYING": "3e41d215a0d9ce21c1fa982d48d2958d539a51011f469f741b51f97e2595ec7e", + "assets/spelling/licenses/it_IT/legacy/th_it_IT_README": "3097ecbc3ebd844266b556768748b7c07bde915dd5dd0b70eee30670a91a2599", + "assets/spelling/licenses/ko_KR/README_ko_KR.txt": "e0b13b74b287a71bc668a756fe0d1bcfe5adafb860acab0d81e71593333e1724", + "assets/spelling/licenses/nl_NL/LICENSE.txt": "2189c248cbc054445aeac6cd65b87eebd0a115efeb55ed498b0f2a73441805dd", + "assets/spelling/licenses/nl_NL/README.md": "aa4685a78f32d0d24a67dd5043ef4e39acc8720c3e416fe5d201985980dbc004", + "assets/spelling/licenses/no/COPYING": "e7431ac20e815b6797369e802f9e4bb1b0082485060d8b096235f035d741bd89", + "assets/spelling/licenses/no/README": "0fb3b682bbe5fd3fe23a22d26cc7c417115016bb5f40ec4cf5a62aabe6e5c9c9", + "assets/spelling/licenses/no/README_NO.txt": "0fb3b682bbe5fd3fe23a22d26cc7c417115016bb5f40ec4cf5a62aabe6e5c9c9", + "assets/spelling/licenses/no/README_hyph_NO.txt": "5dd6d4fa61585062d8774afff75d0c51d76bb8126078fef0c0e69740eb093ce0", + "assets/spelling/licenses/pl_PL/README_en.txt": "fb5f9b4a0643821cf88775c0932810c1cd05f236136c913e3eaf1e24806f3f44", + "assets/spelling/licenses/pl_PL/README_pl.txt": "ce3ad7ab1d3a8b767b8f7dcc870796fbda76bc7ad8cde22f6312b0cf86a5bd11", + "assets/spelling/licenses/pl_PL/README_pl_PL.txt": "e691ed1e79934293b0cd6996a14af1520ff893c02f920c09ed0c90aa5f0a8abc", + "assets/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt": "9300db07784a8575743e68cd4c9b966c66f9212c708bd3bbf0190df61e75114a", + "assets/spelling/licenses/pt_BR/README_en.txt": "bb064f3db7ba5f5536da7d079773f692c5f928822e8aebc3d78259ff6cceb9e5", + "assets/spelling/licenses/pt_BR/README_hyph_pt_BR.txt": "07400608865ce4c964cc443a9f354c733ca7f3f7d31f4463222b927cb7c54b87", + "assets/spelling/licenses/pt_BR/README_pt_BR.txt": "9974ce691fdc1fe731717d7a2dc668244405fdc2bf9bf3367eb9b29e85177c88", + "assets/spelling/licenses/pt_BR/license-thes.readme": "253031afa265c7bec5d2e195c659129a7ff254f9d57c57a08eba4a9051868840", + "assets/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt": "8de865eb2f5a83a182d96964d1fe0eee05ae0d68a94f9e9938e4f6349075f5c4", + "assets/spelling/licenses/ru_RU/README_ru_RU.txt": "262af2f6ad70a61e5ee1332ff44fa8ee50edca819cf33207d8ad6ba6a0c9be52", + "assets/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt": "faf06127db60c80b4deefc26a86b3c8a18e1ba46e89d29db8f232501ea850b69", + "assets/spelling/licenses/tr_TR/LICENSE": "3f3d9e0024b1921b067d6f7f88deb4a60cbe7a78e76c64e3f1d7fc3b779b9d04", + "assets/spelling/licenses/tr_TR/README.txt": "18750c09a1e666a6d34854b92dfdc0353c3bfe39008b412d539f52821ecdbdec", + "assets/spelling/licenses/uk_UA/README_hyph_uk_UA.txt": "b5866714694f0e9a7c9d044984b4b39ec6289ade07fa7d2a083a31f5072f3529", + "assets/spelling/licenses/uk_UA/README_th_uk_UA.txt": "29aed1f76c8552b9ba22b00f9f3a5f8316498f95b50f5c1aad3a9743a560ba6c", + "assets/spelling/licenses/uk_UA/README_uk_UA.txt": "664436fee625b4a3e712483947d1711a2f467670f4c389bcf10abca2a564e1dc", + "assets/spelling/licenses/vi/LICENSES-en.txt": "d32e4c8faf974bdeb87da10a5951556b33744cf9b50a7f06125074e11f30d7f6", + "assets/spelling/licenses/vi/LICENSES-vi.txt": "e300eee4d3fd59e2886e785b63f6ded6badc7b9c6883cf73e365b59635d6128d", + "assets/writerside/TGDP-LICENSE": "21b8bf433e69c8d8339de0dd28e5fba4f59c405d01f9a7582c05abe1b99eef21", + "assets/writerside/templates.json": "5c8e1dc03d5252fc0bef448eddadd9f5137272eccf771f961a81680418b0a70c", + "linux/.gitignore": "5ded4f1a9d10d34bf6ee5beb0711d88ee2ef07b0f07ace9ed77935a246e8eb82", + "linux/CMakeLists.txt": "5cc7a01d2531071ea0e5963189c9062c02ac278080ab3ca85904c05c89f24a0b", + "linux/flutter/CMakeLists.txt": "787189e2623313cfee590a0b553338eb9fc68b3af922ddd77c5d39c75f989aeb", + "linux/flutter/generated_plugin_registrant.cc": "6905d91aa4b19ccbca2d15c2dd5af6edb5c5617eb1aa59c59793a271d4edb525", + "linux/flutter/generated_plugin_registrant.h": "00f93bb5b1faefdede8f6065df327522900fb0b8efee86bacf424fd947ed14bb", + "linux/flutter/generated_plugins.cmake": "e4df84c18b9ed8f736e2ac6b41e729953080b659175b35c6976ba521f6d68941", + "linux/io.busystack.busymark.desktop": "4ac6cb8435535f657b43c36a48f7d49428d049a83fd895e42fd1a19527bdbd78", + "linux/io.busystack.busymark.metainfo.xml": "05e7d9068a8c900a7d6a2fef34ff618724eee5f5d81da84b9e34abcc95f7c069", + "linux/runner/CMakeLists.txt": "7acfb32ce6f475c611f2608c187a4fdad85fdb127c3964ec5b39f7bbf6c4c097", + "linux/runner/credential_key_policy.h": "1475590e3a729ac1ff977381b97bdc19c27ed68474617e7b35066dc0e8a66b93", + "linux/runner/gtk_accent.cc": "6dc88751a5e90721893136e525f6be262ee52b774feea1e4b09fe42b7ab1bd21", + "linux/runner/gtk_accent.h": "5e9beec7bc2c9d93055250552a5e51936858950b3a96f3f7359ae9d11579829e", + "linux/runner/gtk_accent_host.cc": "7cd07bcef5b4e6d6f25cba8d1324b7030f1801b6a566f4cefe49d579032754f6", + "linux/runner/gtk_accent_host.h": "25f66de951f83a28ba18c36885df7c2b89e7159ea18cb4658f73a47a7cb226b6", + "linux/runner/gtk_header_icons.cc": "6d7e0d02cbed993b7c2783ad0c8bc0c9703f9ffd4c0ba4d00149c5c9f0f12984", + "linux/runner/gtk_header_icons.h": "b9b8579c4a03b6f5ba146719f6a759504a0dc5127e0c5460a5112d3a64eb2e4e", + "linux/runner/gtk_window_preferences.cc": "336d25df249e5ccdc1e3f593306ebc2259adc98f1b7208ecd5f6ff873c4d6329", + "linux/runner/gtk_window_preferences.h": "b8222fe12212da3c009147977477b1196aa8d881341af1007c1dfe161d4714fa", + "linux/runner/linux_chrome_host.cc": "1af116d3cacd9bf7c778541c8f73a98aef1821a0f9483af2163aee186d7a6c86", + "linux/runner/linux_chrome_host.h": "465800ae17a7dbbe8e601a678f9b31d34ad1d3b94150377e4c769e09084b6db4", + "linux/runner/main.cc": "ea23f7cdf74091d63bba29ef60486370b766157b848f0cfe62bd8b1c1695a0c1", + "linux/runner/my_application.cc": "0e946ba6545746531227e637fcd212f45a2e91f0b000bcec0d2c5bcb7a2fe0ca", + "linux/runner/my_application.h": "a4218d7ac0db8a9a6716daf216b2d4fc6bdc7ac647e3183078b2c962ebdfcf70", + "linux/runner/rich_clipboard_host.cc": "fd389a7d006497dd6b6946a7939b3d3e2bbfff64e4ec79bf86f80027b4febcdf", + "linux/runner/rich_clipboard_host.h": "4b3d8d69f57f452f682cb180212856ed379f2d4b39cbc558b3f1724edcb011f6", + "linux/runner/secure_credential_host.cc": "bef3147238daff28eb738cc619ab0939e5aa9069886f028644c384ab8f41c519", + "linux/runner/secure_credential_host.h": "e1cfbaafd690590aa65fb251f474b892a80606b0ddff15660c22ebd13d9db3ea", + "linux/runner/video_player_host.cc": "4e226d327111539cd7b9ac99bc29f2f9635f4df0a7ed45a5dcc5c4c3e36c6104", + "linux/runner/video_player_host.h": "cf2c9c11e8416eb15a79f067ad485582f8c3630875eda84874f18cc64c4c407d", + "linux/runner/web_render_host.cc": "4a4bf8a9762d6c56c3b5ebd79943d7b870c6e47f720568b47b7f7d79237c4fc4", + "linux/runner/web_render_host.h": "0b44dfcc13b64248d7869901d521c486635e2fac297a969d19c1355dbe448328", + "linux/runner/writerside_dialog_host.cc": "60455609795c298c4f510c7e43b5e75f1b8fa393901142dd6b1cc641ff2b6fe9", + "linux/runner/writerside_dialog_host.h": "028656f71da31933cedc05d0d760d1061bfc539b3ae7db58ca65d5ac3bc1b7e8", + "packages/busymark_spellcheck_native/.gitignore": "ade895c6374f13aafb7e03437feca1dd64fda1f5891c312e53130cdf4c027b64", + "packages/busymark_spellcheck_native/.metadata": "e7588290b8eeb8f0497a65ec65755bd24302660e4faa5ac125ea3e92d76fc595", + "packages/busymark_spellcheck_native/CHANGELOG.md": "d050fbf6b182559dd80bc2515f5dcc8c6375da25daf33636d15331bead5c8d48", + "packages/busymark_spellcheck_native/DEPENDENCIES.md": "d26003331e6214376cc0f4108cab7ed00fe12d8c27d56df83dd5f8b4255b2865", + "packages/busymark_spellcheck_native/LICENSE": "a1cae206f17a9accefe0e4b3ed908cfecfb609d38da2bed69e48c66f4f990a64", + "packages/busymark_spellcheck_native/README.md": "fea1b35afca64f30d2f433e68da86899d70cf0c675cc3c4d95e47d0d79688b5f", + "packages/busymark_spellcheck_native/analysis_options.yaml": "0349d6d825f26f0468bb3715590961481ab4d97e5ae0bf8cd1d2922e700e5794", + "packages/busymark_spellcheck_native/ffigen.yaml": "873f0969143d6a8264daf55e04903627b202b41ec9ced483fcd12c832864fa5e", + "packages/busymark_spellcheck_native/hook/build.dart": "1dba88a2d61297ab98865aa115ca5098f07028c4ed872c4d7ea08094c4bfe8f1", + "packages/busymark_spellcheck_native/lib/busymark_spellcheck_native.dart": "a37e98fc693c92cb259d0792986db0aacc901a3ee2813e5bb4fdeede80f494a3", + "packages/busymark_spellcheck_native/lib/busymark_spellcheck_native_bindings_generated.dart": "5967abfc97c1f862cc3a06120ea1cf8a89ae389e8c26576f3e067eb72b74024c", + "packages/busymark_spellcheck_native/lib/src/native_dictionary.dart": "28dbfb9fae2cc7257b99c5625f88c35df520d9c082926aff2794dae80ce95a2a", + "packages/busymark_spellcheck_native/pubspec.yaml": "d3ccb083ce2ea487257e89c887e85644a3e84e7e729b235ab526b830afcab0a8", + "packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp": "8a8537e39697ab396be7ffc15cdd5de9483df18b86c11eb914f1509bbc7d42e9", + "packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h": "15505a4d995dfaae4b3bb69d47336960f939d5fed728b2fe017df2ace1275e9d", + "packages/busymark_spellcheck_native/test/busymark_spellcheck_native_test.dart": "77cfc1955feb22e9dcb6dc38b8ad11b9d33360031f594fc6e338d692b70da249", + "packages/busymark_spellcheck_native/test/fixtures/test.aff": "f5b2afc04c9a69bca21a87f1bc50879a11f3e2f282b2879f891769845c72cf98", + "packages/busymark_spellcheck_native/test/fixtures/test.dic": "d7466d6156f5f7307bc37ba4371d7f9c2f1a092686734c4ef177d8ce7435158f", + "packages/busymark_spellcheck_native/third_party/hunspell/ARCHIVE.sha256": "86f4db66bff8c06074b74986461afc4fecb0cccfd9a2464700a85ade1990cdbb", + "packages/busymark_spellcheck_native/third_party/hunspell/REVISION": "d371b4b9646b6a37d32a5b4ee4f27ef96a05628dfbfd494b239cfced8450fcf2", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING": "640d90f6ee401241ff62834d0d1b33f83049e99b8bfdfa04ed1b0a1635dde3e7", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING.LESSER": "7c6699c75f87b52bdc542db26d6b1b92892577cda46e20eceb79e2790a1c291b", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING.MPL": "53692a2ed6c6a2c6ec9b32dd0b820dfae91e0a1fcdf625ca9ed0bdf8705fcc4f", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/license.hunspell": "3f7ddd07c296edbfe0a47c7bcc82038ad347a2c4f672345b24f95c624db68513", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/license.myspell": "dcda061adeed22b26f276c01ec374f930789ae0d684e5aa8f8be309dd680ff20", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am": "fd7509a824d65394d3dfe722c50cf5e45f1626e50f03a94f6f01d3c7cc74506c", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx": "acee5674ad818c997efebd0ef89d5a65c9d95da78777f2313091f519d927414c", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx": "4bd5a8ffd6b3185b0b2cdc8809e41502030a0ad802f9d5bd9716a210d1388ef3", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx": "97bea198e797b42708174647e0b848f96fdfb3fc67976ca07023b63af3fb6c6d", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx": "82226e346bfc7ad08ac9da632b38cb323086cf3ae567cb815a2532e2de2c5028", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx": "e58c06e8441cd92a568d32d340dada33217abf3eac73bc178dd2f08a07ed822c", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx": "60987570255d65973f569fed4569676a49ddb874675cb7d6994b4aa8de83a166", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx": "98450eb638b8ebeb6583a30a78cc2e2718496c35641ab3ca7aab117ab7f4cc92", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx": "96907f999891e33bb19fe21ccfb131cea2fdd5afa513e07e19813bab5c0c2636", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx": "fe1b5fed0f5d74f4c092230c8fbf24f93ba58292f4459d97a7bc734c087365cd", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx": "7f690aedac05e832a15deb8bc6a07f4e08102f3c64d1adf75d5ba2d4934b4d90", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx": "cd984a8d8dc060c8043bc3fbf839789f3b885c05b5d46a8aa45db45eb1055ec6", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx": "638a6f560da318506fed3de74c083209ef0f7875201b8805519ad6ae020b59c3", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx": "73698b4755fa5c65893cdbb9d7b1420b22bfb4c597f323c5f22a5d98a29a62cc", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx": "86b420e6227c8c78cfce233c49966f4c8e234fb87be93f32d8612592ff7f121a", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h": "3426379bc96a57a46fb2a604bb9e0c0f62048f92f61c835f9fe47ed18c02e0fa", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx": "7cf85e6c7d97d12787f1735ef6947172402a77c69ae87d17e3274cd802c30176", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h": "7bda44c1dad647e4bd1de1345aef32b9de88222a5b19d7ca395f02932ddcc1ac", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in": "9dea3f382503feb660f1435ede7cd9fafe371c633d8eba95bd9c3f229c043517", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx": "f70b29817519df2e7ed212d27c911501f7f09c3a6acd0c0c345065eb3999fbbf", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx": "2a1104a6798cbafe57c73b74201237600fc96669b9ac93b76d837ec958816c31", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx": "0a8c38f97a137a70320583121a3efb9d3d56fb1032c53e3e16671c23a9c9c978", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx": "33bd24aecb6542fa640ef6be315d95a157691300fe07be081fc951c971bdcb27", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx": "b66ed3023f56138b28d81939e8718198791d893182eb948e92d64e77c52a6f5f", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx": "0b21233bc185f4bc698c33dbf81758166a682bfd8cedaee88c63aeecd0404b62", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx": "c4d880bc20bc9b6487563a06ee34a9c3043f063b7fb729b0a40ec5ab4098a814", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx": "7ed11c66027d9c129bc5ef48cca626659ed94e7b8a4d970a7fccf902bd32267e", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx": "fcd2f8c5125caf478738475e98ee83c479497e9aa10e9cf16ab95d122a680338", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx": "be4c0add3dac468b4d4cb69bfcf70909f2e3627b39bb3d079ad4989807bfc7b9", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx": "9133dcec20ff50528ad482f52c1a6b3206bc2381207e6a4d3ead1a256d94eef0", + "packages/busymark_spellcheck_native/tool/fetch_hunspell.sh": "22e4c75b31cb8262c21991f55123fe8b82bc8db878cb84c805fd5a2710be6f93", + "snap/gnome-46-2404-prime-exclusions.amd64": "28fd45afa604e3a77b69f96e52a5225465a7bfb8d1243a9c2b35a61cebce6fa8", + "tools/ai_ollama_qualification.dart": "49612c1b0a8a57e39b4b156449f36656be6ffb32afce853e94326a1968aff386", + "tools/build_install_snap_local.sh": "978b764eddd59b4b576c80c696fb814df75bcfc0709232a52575faf7d60bc757", + "tools/clipboard_smoke.dart": "056a7c6d8b05d7e7fc7b6b547b48f040c8ec95dc865dde65ddb81fd227a77dab", + "tools/extract_writerside_semantics.py": "0b7df9ec2fd85e2b105ba3e25136f3f489310e8fab57cb2041a38ed9885013ad", + "tools/fetch_d2.sh": "2864a38e0b9bacf0deb43ad62e913f4d15e29b95c2429023f3708021d44df31f", + "tools/fetch_spelling_dictionaries.sh": "44cd91cea58bf20d41a1471bcffb51f3a51dab5907afc4898542480e522ec0cb", + "tools/fetch_typst.sh": "49c889970fb4eb8970b97cd08593588bd221f2c3f26e7a554b3b2ff815e6967c", + "tools/fetch_visualization_web.sh": "6707f349bc5a9a0a50cf5017ee6e2a6cf0c026dcac86cf715197e980a8717988", + "tools/generate_writerside_schema.py": "0799c592152bcf26b6ced3d0d45e0214c43d39e31fbad6ab37823608509cf1a1", + "tools/gtk_accent_host_probe.cc": "0c63dc6d70f19fb08c42ec8e5fec0b2b8a7d2b4e01a2833b046061f48d65731a", + "tools/gtk_accent_probe.cc": "03d38ca6a84f6290d5eff61dac9fa1372073bccebee900e0240fb263f944d7bd", + "tools/history_visual_smoke.dart": "4fa26747ba10678ffe462c84f2cec04625f88600cda278a2fc29b0ea73587f10", + "tools/linux_native_menu_probe.py": "3e3da0b5356e89ca9b4dc27870fcdc5501c1de7166393f1cfd70c0c25bab3d25", + "tools/nextcloud_libsecret_probe.cc": "36acb2ae9798bb452ef47fc6291d8942b064fe806641c43eb9ba3c09d7a32c49", + "tools/nextcloud_login_live_acceptance.py": "a023ffc4c69e57efc78902e274ee48952664a7083dd7500388fcb923023e6b3e", + "tools/nextcloud_notes_live_acceptance.dart": "d5aae7de2a35ad08fa27e464413d03114a44c41edad93e64baf85d93e9f2f55b", + "tools/prepare_spelling_dictionaries.dart": "dce9a217ef5892a9aa15cc3c5b7475da521a6eb9c8e23367820a6dde0cb8be03", + "tools/secure_credential_policy_probe.cc": "239829f23b1c1bd6e0a7e864485fd5ebc30ac68065f32e26e918f87238d54462", + "tools/test_gtk_accent.sh": "00503759f1595e1322ee2cd51d494ec11cc79327ad9bbe5322f78eb651e041c6", + "tools/test_gtk_accent_host.sh": "e73c335815ca84c0ce59ba7be80a6a4e3ba5f927e88421552563068c43f32fef", + "tools/test_nextcloud_libsecret.sh": "7fec5b6f7faea2604951e60fe087bed5938c37b12bfd6fc24f5dfb7348c67b54", + "tools/test_secure_credential_policy.sh": "6315f00f0b58578d037a23cab6489c87c03982d02b55fb109d7365e5da2be2a5", + "tools/validate_writerside_conformance.sh": "8253c4c54fb4fb3bbf4a590a99252d0700e69ae9bd2f55d28ca22b6a71e64fb0", + "tools/verify_html_export_browser.py": "a99b8bddc468760157839529b69aacffdb0047b23e0a640a711b2a66d998a44e", + "tools/visualization/bootstrap.js": "15be4b01e7bb92e016509679927603246d41b5afb499f398f22be043a17602ef", + "tools/visualization/build_render_engines.js": "139d3dd7c654686b781a2c2eadbcaaf5bd5da1bbe6c3d8d20f5c812663dbe7e5", + "tools/visualization/generate_notices.js": "b4dc8256ef42bb112500fbd4e6f99a5b88b70db240fb24cc9b610c3e66b9146f", + "tools/visualization/harness.html": "3124bdf61a51d29828a66c4ebb835270e6c926ab8a9ed26132842b70ccc10f69", + "tools/visualization/mathjax_renderer.js": "586c8ed9f6017e6115e845498390d08c6974ed1c8875b0de1522f939ba054681", + "tools/visualization/mermaid_math_disabled.js": "fad5349d62b419ae5a3ccce5007456b44b5f1f7c92d79691702800e35e821c43", + "tools/visualization/package-lock.json": "1bdea046de42d36b9a11775668fcade742d67e18c5336122c7398c4e4c2e2ee4", + "tools/visualization/package.json": "69a0134990fe5030f93f48fb481a5b1864941ff2f3b003b6d46ef7738b05b4b2", + "tools/visualization/reference.html": "c0747c047dd4f1fc3e268748178445d3d8a35965779e6782e27217ba13feba39", + "tools/visualization/reference.js": "862d24589d1841e5be4e83028e3674d90881ca0ff77fb90ae2f7ee50fbd159d5", + "tools/visualization/render_engines.js": "36c571e797d7fbf1fdecc0b43385ab90cbec8f8cc267ec56906202df7539109e", + "tools/visualization_smoke.py": "5d2efbfaeb09670e544c4d2aaf691b3f201fb9c2342452b1c5ddd05a86d4a62c", + "tools/writerside_toc_visual_smoke.dart": "fe5b831b720f985bb429ceb0ff5c1ee09e12e151409d1adf98fa27a79c11f46c", + "tools/wysiwyg_selection_smoke.dart": "480ae202e4366c7a24be4773f2aafd145ce9deabce80187655a89f2a3a937c89" + }, + "linuxArchiveSha256": "6da9cfe58839eab6a70aad4f15cdc824dab9418f7f22d0deb02b5f1f50ff8118", + "archiveBinaryHashes": { + "./busymark": "ddd5b6fc361e697cab18f195b6afd47f4bae64ff19dfdd49a6495a341528f32b", + "./lib/libapp.so": "9e0ccfd3e1f8164c5d218dd0b5bfbbf8b8b1c07bbf86b5295dd5a9c2f7b5815d" + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.json b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.json new file mode 100644 index 00000000..7910d92d --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.json @@ -0,0 +1,19 @@ +{ + "ok": true, + "checks": { + "notesVersion": "6.0.1", + "apiVersion": "1.4", + "locallyDurableCreation": true, + "contentCategoryFavoriteCanonicalTitle": true, + "titleSanitized": true, + "attachmentDeleteUnavailable": true, + "attachmentUploadFetchRename": true, + "secondActorEtagConflictAndMerge": true, + "offlineNewNoteAttachmentRestartReconnect": true, + "uncertainCreateExplicitAdoptionAttachmentRestart": true, + "independentIdenticalCandidateRequiresConfirmation": true, + "listChunksLastModifiedEtag304": true, + "remoteDeletionPreservesLocalWork": true, + "explicitFreshCheckedDeletion": true + } +} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.log b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.log new file mode 100644 index 00000000..96c688de --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.log @@ -0,0 +1 @@ +Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (14 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.json b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.json new file mode 100644 index 00000000..7910d92d --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.json @@ -0,0 +1,19 @@ +{ + "ok": true, + "checks": { + "notesVersion": "6.0.1", + "apiVersion": "1.4", + "locallyDurableCreation": true, + "contentCategoryFavoriteCanonicalTitle": true, + "titleSanitized": true, + "attachmentDeleteUnavailable": true, + "attachmentUploadFetchRename": true, + "secondActorEtagConflictAndMerge": true, + "offlineNewNoteAttachmentRestartReconnect": true, + "uncertainCreateExplicitAdoptionAttachmentRestart": true, + "independentIdenticalCandidateRequiresConfirmation": true, + "listChunksLastModifiedEtag304": true, + "remoteDeletionPreservesLocalWork": true, + "explicitFreshCheckedDeletion": true + } +} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.log b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.log new file mode 100644 index 00000000..96c688de --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.log @@ -0,0 +1 @@ +Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (14 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.json b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.json new file mode 100644 index 00000000..494ea0c5 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.json @@ -0,0 +1,19 @@ +{ + "ok": true, + "checks": { + "notesVersion": "6.1.0", + "apiVersion": "1.4", + "locallyDurableCreation": true, + "contentCategoryFavoriteCanonicalTitle": true, + "titleSanitized": true, + "attachmentDelete": true, + "attachmentUploadFetchRename": true, + "secondActorEtagConflictAndMerge": true, + "offlineNewNoteAttachmentRestartReconnect": true, + "uncertainCreateExplicitAdoptionAttachmentRestart": true, + "independentIdenticalCandidateRequiresConfirmation": true, + "listChunksLastModifiedEtag304": true, + "remoteDeletionPreservesLocalWork": true, + "explicitFreshCheckedDeletion": true + } +} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.log b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.log new file mode 100644 index 00000000..96c688de --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.log @@ -0,0 +1 @@ +Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (14 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.json b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.json new file mode 100644 index 00000000..494ea0c5 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.json @@ -0,0 +1,19 @@ +{ + "ok": true, + "checks": { + "notesVersion": "6.1.0", + "apiVersion": "1.4", + "locallyDurableCreation": true, + "contentCategoryFavoriteCanonicalTitle": true, + "titleSanitized": true, + "attachmentDelete": true, + "attachmentUploadFetchRename": true, + "secondActorEtagConflictAndMerge": true, + "offlineNewNoteAttachmentRestartReconnect": true, + "uncertainCreateExplicitAdoptionAttachmentRestart": true, + "independentIdenticalCandidateRequiresConfirmation": true, + "listChunksLastModifiedEtag304": true, + "remoteDeletionPreservesLocalWork": true, + "explicitFreshCheckedDeletion": true + } +} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.log b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.log new file mode 100644 index 00000000..96c688de --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.log @@ -0,0 +1 @@ +Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (14 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.json b/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.json new file mode 100644 index 00000000..974bb94b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.json @@ -0,0 +1,23 @@ +{ + "ok": true, + "checks": { + "notesVersion": "6.1.0", + "apiVersion": "1.4", + "lockFixtureState": "locked", + "lockFixturePending": true, + "unrelatedDuringLockState": "synced", + "real423PreservesLocalOutboxAndOtherNotesSync": true, + "locallyDurableCreation": true, + "contentCategoryFavoriteCanonicalTitle": true, + "titleSanitized": true, + "attachmentDelete": true, + "attachmentUploadFetchRename": true, + "secondActorEtagConflictAndMerge": true, + "offlineNewNoteAttachmentRestartReconnect": true, + "uncertainCreateExplicitAdoptionAttachmentRestart": true, + "independentIdenticalCandidateRequiresConfirmation": true, + "listChunksLastModifiedEtag304": true, + "remoteDeletionPreservesLocalWork": true, + "explicitFreshCheckedDeletion": true + } +} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.log b/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.log new file mode 100644 index 00000000..e1cfbc00 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.log @@ -0,0 +1 @@ +Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (18 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-lock-persistent.log b/delivery/nextcloud-explicit-adoption/evidence/live-lock-persistent.log new file mode 100644 index 00000000..2f3efa42 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-lock-persistent.log @@ -0,0 +1 @@ +Running build hooks...Running build hooks...Live Nextcloud Notes acceptance failed. See the report. diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-lock.log b/delivery/nextcloud-explicit-adoption/evidence/live-lock.log new file mode 100644 index 00000000..2f3efa42 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/live-lock.log @@ -0,0 +1 @@ +Running build hooks...Running build hooks...Live Nextcloud Notes acceptance failed. See the report. diff --git a/delivery/nextcloud-explicit-adoption/evidence/localization-audit.log b/delivery/nextcloud-explicit-adoption/evidence/localization-audit.log new file mode 100644 index 00000000..8add813b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/localization-audit.log @@ -0,0 +1,23 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart +00:00 +0: production Dart does not hardcode obvious user-facing strings +00:00 +1: native Linux GTK user-facing strings are not hardcoded +00:00 +2: Linux package metadata matches supplied target locales +00:00 +3: package metadata uses reviewed product wording in every locale +00:00 +4: duplicate JSON key scanning respects nested object scopes +00:00 +5: ARB catalogs have valid, unique message structure and locale IDs +00:00 +6: all ARBs match the English messages and placeholders +00:00 +7: destructive, save, and Git history actions remain distinct +00:00 +8: English-identical target messages are explicitly reviewed +00:00 +9: Syntax Reference is localized without legacy message keys +00:01 +10: clipboard write failures are localized in every target locale +00:01 +11: Portuguese and Chinese base catalogs contain reviewed UI prose +00:01 +12: completed base-catalog plurals reach their supported branches +00:01 +13: Russian and Ukrainian count messages render every reviewed form +00:01 +14: Portuguese count messages distinguish singular and plural +00:01 +15: Hindi unsaved-document prompt uses saved-state terminology +00:01 +16: RTL translations isolate technical interpolations +00:01 +17: Persian dynamic numbers use Persian digits +00:01 +18: locale resolution considers all preferences and falls back to English +00:01 +19: every selectable locale has a generated catalog +00:01 +20: diagnostics localize at render time from codes and args +00:01 +21: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/localization-generation.log b/delivery/nextcloud-explicit-adoption/evidence/localization-generation.log new file mode 100644 index 00000000..45c1c495 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/localization-generation.log @@ -0,0 +1,4 @@ +Because l10n.yaml exists, the options defined there will be used instead. +To use the command line arguments, delete the l10n.yaml file in the Flutter project. + + diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-adopted-restarted.png b/delivery/nextcloud-explicit-adoption/evidence/native-adopted-restarted.png new file mode 100644 index 0000000000000000000000000000000000000000..4a582e964975bf1b76f070dd1ee0981c24fc6e42 GIT binary patch literal 68261 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 ZHBNdld82cDckYSFyrpxm8E^dYe*x}%xtag~ literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-connected.png b/delivery/nextcloud-explicit-adoption/evidence/native-connected.png new file mode 100644 index 0000000000000000000000000000000000000000..054af6ec62fa8edf60e4c1313c8cec012c55bf6a GIT binary patch literal 278 zcmeAS@N?(olHy`uVBq!ia0y~yUwuI(vPY0F14ES>14Ba#1H&(% zP{RubhEf9thF1v;3|2E37{m+a>g2^71bLG6xN)FgH_TVB~vkZv=9Zr>mdKI;Vst0Ok=Q8~^|S literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-final-unresolved.png b/delivery/nextcloud-explicit-adoption/evidence/native-final-unresolved.png new file mode 100644 index 0000000000000000000000000000000000000000..c5b903ad10b7f9fefd39da96e7cc01c05585195e GIT binary patch literal 91488 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-offline-draft.json b/delivery/nextcloud-explicit-adoption/evidence/native-offline-draft.json new file mode 100644 index 00000000..71599644 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/native-offline-draft.json @@ -0,0 +1,63 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "b25fb609-a960-4934-b82a-9defddb570ca", + "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", + "serverId": null, + "content": "", + "title": "New note", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 0, + "etag": null, + "base": null, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 0, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "offline", + "errorMessage": "Nextcloud is unreachable. Local changes are preserved." + }, + { + "localId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", + "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", + "serverId": null, + "content": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\n", + "title": "New note", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 0, + "etag": null, + "base": null, + "remote": null, + "creationAttempt": null, + "revision": 24, + "ackRevision": 0, + "editorRevision": 24, + "editorContentDigest": "6fa66b2526b6cdcf35bdedc515b2a941e6e805b13148012c952d871148c69707", + "syncState": "offline", + "errorMessage": "Nextcloud is unreachable. Local changes are preserved." + } + ], + "attachments": [ + { + "id": "e43dca39-e443-4f92-b8f6-0799f7ea9a64", + "noteId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", + "filename": "attachment.bin", + "reference": "busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64", + "remotePath": null, + "state": "pending", + "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "byteCount": 1024 + } + ] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-offline-staged.png b/delivery/nextcloud-explicit-adoption/evidence/native-offline-staged.png new file mode 100644 index 0000000000000000000000000000000000000000..0846ba1b2de96eab58920a1ba7f1860a937410ac GIT binary patch literal 87890 zcmb5WbzD?i_%A#nDhfz9(jpDgrQk@X5`uuVNP|c>G9ZnJNGV7+NK3bhNJ)biAwvawAadHfxDCGuijWFd*F%cHw$fpDT0>pq0l)yRc&^c;Cl?>_YT$ z`dx_!Ct4vxEvKxyI-%W^H(tqH`}}Mh(Y~j&2%T5Cxw%D=-c~vA;@sSq73e31KuBDL z>oC8Ro0k`WoUZ)#n1xu-Ll5`-SCSo=7kChyAN07+GH+WtIhE^iy>k9{oi;S$7jYyN z_redotw=85T|B?@GE4Hn;5Or8ZH^d)%|EydQF6@DIdI7eH}SC^FuX*N`@U1`cNZ7UX(F>yQ)i~8rqM5)`A3I{XhiZF-(#y(r4tG~DF^pD+izmzO!lhu7aVaS(mR3{*)}bHHv37lZJsFo? zb_`3Dob&obxY2M=%KZja0Un&~jSV_{tVmjkQ|FASUhWSnv|`TIMf!F80s`3B*z1!G zKBvbAD?>#lK%*{F+IO!Kg*LRPsE?@{TUxBGAJt7Mk1TP$FS4haoX*$} zMbpHEsb|bF3ZHe6;hI`se~P+F^!~#KGESYj_4W0orIB}EkR9_| zMR?aKaAf*wOm$U)rKP2v&YtH86;BY-BTfsuK8TS~P(0SrVT+P0D?>kJ_q{(hmX@Po z(o#}V*5lO!qoeNdgalmv{u!@H7I!PL9^uu}(i$ePk+HB~MamJJ2)2Izu28%oq^7T5 zZ$I7K-><-5+`z!V$LGwB03qbjU`r&=^v0|mC6nf*984Z~u)p75b6jpU zv|JytxT46x#+Go~p0c`y_^J3G#6qfTq1 zn##(Y!osfe-(%wA<2$u6Ps3zAJ&$2}kOa54x2q%(q@NN(cQ9q1)#vXO&*efO~r4i27twx<^qeAh8QQT5{M(2z^h%S$vgG*~Gk zrO#sDzSXPuq@dT()^`})B41d z+Y~?7#wwra>1{Bs!@#+w&WwHh_z`MIYAS@C9J zU%!53Dko-US7@-E9IZDPG;+u>gnyhdhOb1$ zjNYE{ZA?sPXebou-QC?4Z(VKeAnt9>ialB7mp5ZOV3}~{N=f5{;af5t76=hx`TF=) zy;xv7{WFjkJJVDUm<}~p_0nx_>??`lBTAnhK7bP@b{5ObN*4dZm52#aWb{fpx%1?eT&8&j<6PC?P?OsraV~g zdgB89)z{b8`{Xd3T7>W~U3SjICMUvo-J;R=f?7_0cXts?>X0cS`W<*`@G)*49;yla zSLxx}oVMoL7Z(=|ybs#Cy8ggYV~Aq8dzXfm=3QKzxsA;Y3W|dc?uLF3KCAC`k_`wA47Qpz9}$v*U8V1@vPk!uH8YAE>yMc9TiBO)l3fRN9UccOztFWCS%R zhW!y`6b@C#oryx27}KyKNJ&YdF6{3=yCnJ{B7ya7ZhLRT0-l1lpe!dB1g)pC(uJ{OZ*6R^IRG2F@G30e^@%zGe*U*m zXr4TQaeEUJ)3≧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 z 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-restart-checks.json b/delivery/nextcloud-explicit-adoption/evidence/native-restart-checks.json new file mode 100644 index 00000000..a8738cef --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/native-restart-checks.json @@ -0,0 +1,8 @@ +{ + "ok": true, + "serverNoteId": 184, + "stableLocalId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", + "acknowledgedRevision": 45, + "libsecretAccountRestored": true, + "stagedBytesRetained": true +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-spelling-dependencies.log b/delivery/nextcloud-explicit-adoption/evidence/native-spelling-dependencies.log new file mode 100644 index 00000000..05f16fd0 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/native-spelling-dependencies.log @@ -0,0 +1,19 @@ +Resolving dependencies... +Downloading packages... + _fe_analyzer_shared 92.0.0 (109.0.0 available) + analyzer 9.0.0 (14.5.0 available) + cli_util 0.4.2 (0.6.0 available) + code_assets 1.2.1 (2.1.0 available) + dart_style 3.1.3 (3.1.13 available) + ffigen 20.1.1 (23.0.0 available) + frontend_server_client 4.0.0 (4.1.0 available) + hooks 2.0.2 (2.2.0 available) + native_toolchain_c 0.19.3 (0.19.5 available) + package_config 2.2.0 (3.0.0 available) + record_use 0.6.0 (1.1.1 available) + test 1.31.1 (1.32.0 available) + test_api 0.7.12 (0.7.14 available) + test_core 0.6.18 (0.6.20 available) +Got dependencies! +14 packages have newer versions incompatible with dependency constraints. +Try `dart pub outdated` for more information. diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-spelling.log b/delivery/nextcloud-explicit-adoption/evidence/native-spelling.log new file mode 100644 index 00000000..a5e6cec6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/native-spelling.log @@ -0,0 +1,15 @@ +Running build hooks...Running build hooks...00:00 +0: loading test/busymark_spellcheck_native_test.dart +00:00 +0: test/busymark_spellcheck_native_test.dart: checks roots, affixes, compounds, and casing +00:00 +1: test/busymark_spellcheck_native_test.dart: copies suggestions before releasing the Hunspell list +00:00 +2: test/busymark_spellcheck_native_test.dart: custom words participate in checking and suggestions +00:00 +3: test/busymark_spellcheck_native_test.dart: tokenization reports UTF-8 and character boundaries separately +00:00 +4: test/busymark_spellcheck_native_test.dart: keeps touching Thai word boundaries separate +00:00 +5: test/busymark_spellcheck_native_test.dart: rejects initial and embedded NUL at every string boundary +00:00 +6: test/busymark_spellcheck_native_test.dart: dictionary word characters do not absorb quotation punctuation +00:00 +7: test/busymark_spellcheck_native_test.dart: quotation punctuation stays outside tokens across phrases +00:00 +8: test/busymark_spellcheck_native_test.dart: standalone elisions and possessives retain lexical apostrophes +00:00 +9: test/busymark_spellcheck_native_test.dart: closed handles report an unchecked failure +00:00 +10: test/busymark_spellcheck_native_test.dart: missing dictionary is reported without leaking a handle +00:00 +11: test/busymark_spellcheck_native_test.dart: rejects a dictionary that claims records but loads none +00:00 +12: test/busymark_spellcheck_native_test.dart: accepts a valid dictionary whose stems require affixes +00:00 +13: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-before-edit.json b/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-before-edit.json new file mode 100644 index 00000000..126f073e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-before-edit.json @@ -0,0 +1,55 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", + "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", + "serverId": null, + "content": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\n", + "title": "New note", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 0, + "etag": null, + "base": null, + "remote": null, + "creationAttempt": { + "id": "cdebc807-6970-491c-a9f6-2c5b00e295f2", + "revision": 24, + "localContent": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\n", + "wireBody": "{\"content\":\"BusyMark GUI submitted\\n\\n[attachment.bin]()\\n\",\"title\":\"New note\",\"category\":\"\",\"favorite\":false,\"modified\":1791371789}", + "knownServerIds": [ + 89, + 90, + 98, + 94, + 183 + ], + "candidateServerIds": [], + "separateNoteLocalId": null + }, + "revision": 24, + "ackRevision": 0, + "editorRevision": 24, + "editorContentDigest": "6fa66b2526b6cdcf35bdedc515b2a941e6e805b13148012c952d871148c69707", + "syncState": "creationUncertain", + "errorMessage": "Nextcloud may have created this note. Refresh and resolve the uncertain result before creating another." + } + ], + "attachments": [ + { + "id": "e43dca39-e443-4f92-b8f6-0799f7ea9a64", + "noteId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", + "filename": "attachment.bin", + "reference": "busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64", + "remotePath": null, + "state": "pending", + "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "byteCount": 1024 + } + ] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-newer-edit.json b/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-newer-edit.json new file mode 100644 index 00000000..c6825efa --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-newer-edit.json @@ -0,0 +1,99 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", + "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", + "serverId": null, + "content": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\nNewer local GUI edit", + "title": "New note", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 0, + "etag": null, + "base": null, + "remote": { + "id": 184, + "etag": "e008770776466441e0016d47a978dfdb", + "content": "BusyMark GUI submitted\n\n[attachment.bin]()\n", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791371789, + "error": false + }, + "creationAttempt": { + "id": "cdebc807-6970-491c-a9f6-2c5b00e295f2", + "revision": 24, + "localContent": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\n", + "wireBody": "{\"content\":\"BusyMark GUI submitted\\n\\n[attachment.bin]()\\n\",\"title\":\"New note\",\"category\":\"\",\"favorite\":false,\"modified\":1791371789}", + "knownServerIds": [ + 89, + 90, + 98, + 94, + 183 + ], + "candidateServerIds": [ + 184 + ], + "separateNoteLocalId": null + }, + "revision": 44, + "ackRevision": 0, + "editorRevision": 44, + "editorContentDigest": "d7099eb3694907a926900b6a0976dea5371680423a17c5090cc3c83eb3c8146a", + "syncState": "creationUncertain", + "errorMessage": "Possible server notes were found. Review and deliberately use one or create a separate note." + }, + { + "localId": "c39291c3-0610-4793-a970-42b6388279a9", + "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", + "serverId": 184, + "content": "BusyMark GUI submitted\n\n[attachment.bin]()\n", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791371789, + "etag": "e008770776466441e0016d47a978dfdb", + "base": { + "id": 184, + "etag": "e008770776466441e0016d47a978dfdb", + "content": "BusyMark GUI submitted\n\n[attachment.bin]()\n", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791371789, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + } + ], + "attachments": [ + { + "id": "e43dca39-e443-4f92-b8f6-0799f7ea9a64", + "noteId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", + "filename": "attachment.bin", + "reference": "busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64", + "remotePath": null, + "state": "pending", + "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "byteCount": 1024 + } + ] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-uncertain.png b/delivery/nextcloud-explicit-adoption/evidence/native-uncertain.png new file mode 100644 index 0000000000000000000000000000000000000000..b11aaca98bebf3d112523e530f245f67b25b44bd GIT binary patch literal 83532 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 z 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


v-E#N98pwm zANUXQh*t%L>~VA@ixwsl&c!W7xdvQ9u6}gH8iAoUcR>N3Ci==wkX#S;M0>bh>#?G@ z-bHS1(-WvUIB|Z1yV0p_>!`W-o7}NHx3nEl7h&2|5=*zVjGv58TP3!}V(nIrTL1p! zpWAL(qXtRa^9dGrt;}90nU)(QRIqRw=3_nf5)#ut`!r8f6uvZfk$!Bvj_7|_!9AOJA#uyV!I?38-%!2W)6?_jLexX) zd{gowxV{W&vRe?!%2ehVO76moyp%RKO{RWF}=;xdHn zVQ6@JcTY6{N)iK%Da{8Rnm6c58s&7X1*4+Em*Jo|En-<DbQ3wz18J=Vh!pCs^_hc0r?*I`lH;{yeT_$O zRqUH`>ir)Xcg%TC{!tiz%^sZNBrjaNh~!@0UmwaAOi0mF@$LN!R$>YY30xIh#w5L4 z4M_v+`7$WUF$2%wjFP&Vnl97|ze%MX8>Iuz67vjM1l`46onH2B*^}|hPX`^Ib=_;i z5GS(m>Z*?RV`CHfH~JRTsYqlv*7zHDFYky>$hEMn9bdtbovVaaA6p;&0>kf%DMmOJ!c~MoOUq{ zPfW&?grg2iu5G8k>W$azfh4Bamv$ucGXWouiaMsZel>S44eP&m>pSwx{K1E*6koX0 zGCaa57X&YElCsUhj3YzCU_y1V zoyx*Ynet|J9JvXK8W|r3L~?jAQN?xq#q;MTM~2*bi4!60sz;FdM5dx8OA8QIw^RCb z?|*bQ>C~;;{lkBtkvSLJSf82w@zbYNuNyrkFsgIK3g~;n!#)7ljWU2eNS>}wxG(S% zA_Im)70@HjQbA7cQ&Caa+(=IIr!QXsyH`3nB`(WSS+j$Fuz6Q)tD76(5CrDScHTii zLBcyHGTS0}YDAX9t7{h^xKh0gowdkt=f70)$?yV?bdG$E|qL#V1yy(I_!%$~>{H#cVq>){4Ws6wk6?0#;UqQ*_f^1*d{8bV-$PnCZ|g@EV27Wqm(-RqQlLaQ zUamR4o_OXvaj~7<{XIQ(=BYLNnVG1}0%LAIV|(3(;UM|tS&p7V^rhb z2nx+t5w?5DM4!Le?k#r0%{o*#r<3a+8gb>;uzuYq^Hd#`sEOLQUzp$?FxhP2L4W~} zGejFSVCP~_$7so{4$yo@Vth)w^bxC(AY+xV%y~0rjFpU|PC<+Tt<2uZDF*jxI?M`=Fo-gj9h5Z_*KhoaljC3iT?@CztbQslP-;MsVJgan0nb|ky)FE#LsL%C zCQQry&HK(OSJ$XBXO;~q`6nM6H`{&Z$NnnF$zY4P|$_0bf7{JmgLOzX%6~ zG|Lr+55S*VWDsb>v#NChjOqQ*t`I-u>{)bX$08#m6B7-T?gAM{#w0w%&-=Qon)F2q zlCqGd`VvqP4jb@{^a7o^w=vSYK|_wZ9RP$CSLrIGZ`>f7rOSf{@Y~b*0S+A%w=cvKOuM?S|#_;WX7VW-sHwQ|r$>Q$;92 zVmBm2vU!1#l=WRXec(Y?g?xwBL65#wS8pPLz}q26ax-MNn>R;G$FZ)x_1yM#P%%T4*BpmYJG%=uC zwd%t7K4(HgGD^N4H6(w-F# zKPb>cfIT(4#WRd8Gc&XPMw>N$m`wkRZIP=-RLeFz9k#S>5(db@f=CC*xb5ktXAl3u^|K%M1Ufn!PsP=6Vpnf-fkV*{w96|#=Ruy+{Y$vQ6m zL+G%zV-Z2FVT(Cgrm^yHuuZTKyEkP9gF@rug;FSOr85miq8h}U;d$dheQER2_3rC6 z+sur75<_N8aEr&MJ$+Z}WvG;Op41BH*6~~!#jcQ!o#i7ZParE6G{jg?s z!TTK-FUB~0WdPP3k=e^t-nhEDexZD|wN?2e$+DM?obdDsC-3?58psSP{=1}Ze|DQ4 zg1M1x-xXScyg8xinqf;<3H%0rHT_Eylcl}Zg2nPHO0mU)FRkvolwpflBC*Bs4i0&K zUf#_M?+^b>^rs#S3@0?AuMfD+_==C!8w_{O9tbHOneEULje!Ge*~B0PX`|${=e5p~ z1#oHl+SHJUDo1nNMGkgiV{N2isCD3p3&kI~THM|B)^r3IWW0>3v;o)cckCn=Da0Za z=;wujre^gZ4UI&YGL_D*ROmEgpkWwEg5wugpW?{l8?rATU<5%wd;>rMUp)K+{sD+s zMQnbE5U-_m8~&~`_iwG?!6&)BoBO<)g;)PHdP@2$wXq34T2BuY#@ID{9$=z<*)wt3Bwc(X`i44 z8=#lM{v9|3f!DOGDriJ0ZC8@9(vU%`mYKPVdp7NtVh$)ijpRj&$VS136vjK8_u>sI zj9Q!a^5sTQui}2^K!fqt7rtLwvT>HBY}7%DF%9GXPDxQHEFp0Z+K2cTiw7-PNZUKQ zDW=y;S=-s^{FAH#t5n*&!-Iq>O^7@Fdi}ee?bes=Q<-ao$cgw={BTH+UPhp{+R&lp zytG0}`o=U`G^Ud#QKj{mz$F@!Zj;w?D63~Q7x#6WqKf95%^ba{_2d2$O=@^u)^D!L z-#vSvgR{>v@i#XoUgFQy+q^zB^v~%v1*ZR*8(&hB)7SK($bsGJ%MEnC+b;D!AJ%o~ z%8TvBx9d55{?B)>UmiUB)yuP4XR~vndOKJ}Z7Q7kva4qA!xj$N-7k!bm>qR(h{dE1 zGncg*yR_$B!`!XP2fPO9Fb}=dsp6sXn3^e4cQz$9jVy^P(JL8Yn!f(#59i=Y`AHpH z3nTRbp$_it;VLaKs4wg$XO{Z#VM4{h7~>;D7QuIdjR+NzxwZ9`8HzfNmXY$Mrw%V1 zIAA~=bc+Q7B{1@x+bM~qqyZii6_uCY9-CO`q@?W)Z4a*dl;gm@NqNVAJ_3w^X{F>v zA^~`+*~`ZvKcN92PF{OCS$t0D(R{;+DQw&LUH6|P&w$IF{os7g3t@kvTUBZY&A z$I4q8yP(%{5fGs|NE;o9IOXvY4yoE39CL|xPN7kU?FUmS;!!X#>0vA_wG?eI%_RE zCJ|3Hlr?RX1F^Ql>(7jXv4kHH+O{CEsp0FR_Nq?wSNNuI<@iifE!i$gj5-mdrzyg-7pksoUUdUmo(kbst_% zSDq&nW~Nr%1ms9#czRc1G&L=NRC1Trp{lR>O?C!#&wH1yS|A3mlrvRvWLDT*Q_vcdM6DgXQc%A{%tb z9rZd_iINv4L*T90Z1(Y*&M$)0FOCFP|LvZ2FZ0n*N*SV9q2IEM6(~qTD@3)kMDV^H zW~&*rax{*o2>nDdwR$~C7mq0mQyaF%x9|1eteNpseK~8|3X6-V!dcMloE&J!4S_47 zM|{g&JWi5Yq>()|W8S=Z*pU#+7v1(kEQXy^O?Z$aWi)es%(Y~1Ry}>Lt@V$l$H?(~1a#hBMUcWVVj-Z(os$11w41rkUVb8I-RalEoK% zbGws<@u6`+{6@VBtthz#`PTvND8&r6l`Mp8^25r4X^?XVsSjQ*>o&ipqca75VDxa4 zL?thtG`VP1t0TidKK3pLdNG>*xopl&4hSTtF!Q^yQIJ%c+Q_GM>est60$DPRH%lxS7eMrJ`&YbF(`Hff1Yri}W-BucIA`}wE z86h!*isQZ`2eon|<19J4CY>#?wW=<$`>wkPV(ON8tXxK)S~#+9?V?*d2nHksegR~? zIDMz0t8>M+o5Ym+3L8H|D}25C!}m~cg@+j#O>blpb3Zx^hHAwmgJG8y!}U{`@S(2W zkYeglar5h@7>e(d3ak1zGImE-CF3mGE&M=!eX)*=rSq+^-%2nGo{iSxTr0u~Q)H~* z^^F@hPESFRX&s1r@O^vLu|p9ev7F`wh)tI+;9VrAL>o#Hh42-{Q*MWxqkUiwxB;{- z{qh-Xv&R&+n3Y0zi``&^oU6!r_DhCmy77Ng-We&ZCvtt0o_&#c0r-2P%xh~I@M1VgHF!1zXL68g;mW%v%ug5dI}+!ufTKxY6XvpFb+Uc+z@HiKx7+; za~hjzvVOnD>==)O`}YqORFk6QSiM*`y+-aV+~#R{L}HD0cjwP359Q<@SMA(CX$cN% zG{x9A_$JLvZSN&zpd^knEliGn%M9KctqSPl!jOH*1m-Ps=}lVoKwg5A-w3~ z62m_yz5~_xo9d5?%u*3Z~j;=4e!;M;a;l9Gl&(5&51Vfkh zbMIZ_U%M6gGLNEZTJi&e*)f+VlbP8Q_xwymFtY1pqUf|ELqf~jisAvnz9{(iPtqgM zkqkA_CS&i2R8i-PH&ylU5$+p8BECWMXPP4J?)hDmV8S0q9~@_PslApqj$0gu&zD+> z5smA2QrMI9dsatUv5~l2{6>GvWqV)9kjC)od(8EZXYo)QKFWrZXz`*j&_iBA!rIf~ zOYZ{U2uxw$m1$pw0f3>Nk{A0;+=6fie;sObm)aOU@Z%#M#Qdu(pFjDubbN3rmNQ(?)r5T7-r}4C6?Vc=eQWM~2*TlCsczv(mO3p}<_DZU&=!)b;A>cMqv& z4EW+Hi>p6mshT$$G*udKML1ccEIqv7TT+{DTAQkcrEDn!nIN?rN^-liC*hJT{0Q_w4!8nxyQIB<=V9odgRToJ1HG?uSnsL!e!3Q z-*vSr2RnVvNPgYx@2@s8`!Qlrj*7+e$B$`D+yF z-hdOtN#><%M;0_MK+^uR7`1_t4)K3eq ztTYD<<51VV)9@VOC1!XMXI$t7(~r{0bIHPJ%A>wW5u;WFM%;V9)~%SAdgqvHjyb-Z z&h(`E?7zl$h81>&DUCe*nvff&fm&x6@Eqq}8drihd`Sm`A7hCYq-nwsN4y@|gE*eA zu(!YV_P|s_N#L-x6vAY8T&o)KWw#GS49BokW}#c5kwNVYB0ob)OZ30Ty-gYJFotYF zal`visE7)tjaLnaeZ0DI3@_pP^Nk2YHjuypf#N@~`ffEo78b$RZqRo7VZ7^~v!l}n zB^V^f(zvV1t#n3cR0Lx?fdRjYXZ#(i+n=*aY&7+(owd6AAd3YoEI_T@`9(1DI=IEk zNl54ikz{FiiB~Ba9S{BDaz^3(Gg+j6n=^J^8QPXktARGssScN0QH6&*GWwlA z?NHo2Z)(6;3CB|4ZpYz1!}wjJEyFe2Zh)=^LE7h@O_wfRC_WlHsvdPd(zS|vS)o8p zpTBl_hC^Qo=){d8%Sm6CfJgkBaRN<7--IPG6 z1!zp_uc=uHsb;k~&n3U<#Y71Of)sfe`)4TG>a1xa`oRvMz9DJ4$vfu0CF!J}E^C+z zh|R)gN!=!s^=PWg_bigjpU3{dlIJVe5vqbEbGSY4iu4Tq0ue;9vCNwk79XUI&>#~l zkA3BU_EYc^2YoPacXOEO%Oh>oy6-xQ@jdt4`~?g0x_OjsqjHDvB){&}Dj=s$O5&~? zx1;m2>zjC)Bmst!YG%<#hb%H&Tq{O>#xBq9#O9;^(XW0w3-bqNHW2e0*^@%^W4QC4 zjjtR@E+yR5{8sqYG?Z`}p|5(dPK3e?u|wN+>Qz;m$MqaVd^5SaXJQz2my#FPt(n=g zdBKyE5lTD7mnTnBelqVGnb$L3Ueb&h2fbDVYDf|(?+^e}O>CEH9u z4yHqQ{PZdwG_I8=EnOCIOx!y3&rU@|FtsVls_wqo9fuFS3&KTG2rR;T_Q1%c@ihCXew>501TlmNFuBn~ zY%paFAr{@&y{$F>HFK*3T!b-Gq{J-UKXHe`F_*@ucHc!3%(%?QkB>(j&qmTcq0fGb z)Lr9+j8@*Uu1iw6TYN&o!Vb3z{p({+@t65ipV(}t1Fa;+%)jte=`p3>6Aky}ZoYGJy~H7pLdn%k zd`>F7>4y5Qoy+f?IfI@1YJo;w9uXzI8H?pL1nj-PY8EF2`TjE0hJmUf zgCxYoO3Fcsy>f91x3w$94HxLUS)a}^821um)j3vc{`i#2uEGz**0$K-6&|rg5{pkZ zg>nti*#8m4+bZjL*W&7RK5(6<0oka7_q-Zzg1V=(O!HiyEx?h$-U6v1tos|#o#+J9 z>IvTT?Kut3^3mU4RXR0&a}q~s6=+8u2_DbXSxK+z@i;TfRTJp69jJ>ozf?@t>%c?s zDv_7QPzg1kCNKt!G(>tp)kQHauCkOb!p}O9kgw!5-!bkK%|JQyNjP1REznAfx%TEK zCtbxnkJ_vdsC~jI^*a0T#fiCHlMXN3uq-Q^IWov_wW1wa^yve?(zKIFDBEt;@X?I5 zS(ByXYeh!S>k-Z8goH*Q7IRu)Vhj+806ah%YAbk|+8|lD-$>zC3Insm+H49Jk@j<2GhPcsgEQkh?l>qBYNVP+ zP9B=fB1N;A;#_)QxIq&o+=;5L+mZmv(fK9EWtuZX$%rDfM;%}htU z`yDWBhZI46u7$;h9CJGkAtC4(R)$#M*gro)%Wsdu=#c_e637a$&73*!csP?_J)v{W zfmiW(Vr+$U0VHG(d5p)_kdEA0W^z}D*+4^Mv!Ds+`ttdv80@R0D-CaD3Z-XR6}l1HYTYz;f<24(S~ zmxm7?WR_C}%VHeOXlLLM2H2RPYDlu1uGXPoP5KDcxW_!-+uP*n3T_2k$l`Eb8{K`E z<(fy@-flZ7yF?2YC^!x|KY4INb&TiD=RUWvAga%AYW&WofZ2ByQwRQEJ~g;VorbK@ zyzL`VYSGdD!6@yTwKY1>$yffq-&(LX=+H z>tCCucnn&HW>n~%*u@pkgw`xOyLasjvFmtbP_}+%8D#IGM8|l;kSw>)en}-!lFI3n z;)Gp|huSzvkuXAQ#Hp^U?Uj$@@UAFb$sju`0Y)?wcJl<(HI!6B>wemFqM3q1;xJB7(GXbe;|2QGYKMirN|@OHMfZ7xY$=^C9wDeU=Dk^zQa>c(xj-BI<`s{6g^RZ^ENAGW`> zIxsVwq$JtWEULaZmUH6dFzc_KH z`)2St2C12OHdcmod!k{qp9Fa$3HV=#RT;%7l>S#7II5Gp)v4@~Z=wFDA~OTc-&1ECbdMb*Y+(kV{04eRw#aYsF577o?QpT6$|1 zZgKY9x%j5WI+5Hn9a<>G^jC;to$~Zf?fb6?d@5OrM8XxP0$rU$2RqfM*O})_bb#8;b+ZPDk}eR&}^X?qb_wDa?<69sh+(I*5w+NKClTv-@xzs9HcO``!1Mn;#8BA^0W0Rz31mh8@jy@^(Hh( zDgo*9nV?V*v%U~^dYW18KXj;<-+g}vpNU~KFdS;#)&qi45sRs~hLX6Am9muhxDuzY zST)r?;{u^q$`yR=+lv**?MQ)wVoxsZPzvVAmcalHy!%H9t0#3^ARxiPkPhFI3O1Je zd4ldP=GnpKXh_N$UIRN4Sdr9iKhOFi@_AN+)G;#p`dRoJj!^sy9xRt@C7=VFW+bPcdiD);4}m#JKS^1Ib?{T)!^Nc@vBFjzY~(8Ok#% zdQykvTh#?Alnbpn-}JC&&EX|;>dwJavg1NbQ62$S)(m9M&;LoO{!?P(C*}be@H42f zg&^Yag0<#-_PfE11=rrU=TY4(R)p8`Df-4>uQIS3ip2NlE~Rhas0UqH64Dz&OQyI& z_D;qN(v_sgKQ-lX&?IF_s8#Smb&i#8WLKqp6Z1g`h$&@cz0Pe#nYU}atba)(L?+Q> z53mcK9G#P$y(tAe`$jvoEdZoryLeM6b@;J+CbeQlMq=R(xxikGs0b6#En?Uk)Kgpl-cpT= z_Pq`vIixNO@24KQ{M(4rn;Z`vm8wgs*6N8VaHkF}Y z$6Q3$izlheo)4#O$k}lerHuBkUr4@QP`S8VVhO(FUI<&-z;!VnR*7UN9YqL3CLy;< zXVD@jOMv1vPLi60Gq@1{bbzI_G`jsIt@i3-XGPg4e=XQER|yLf1S%flx(^r*qWBEm z0#WDI>?h~?sgF7z0H04aNY?OlbTkF%&5q0_+I-~%)nivBW3mI9m#~jXE05e&d=vg;>eL{BYL3nvvjx@Qujp(CEBL8e^%R44c|)S)B}Z0^zII~O zcXn?y+(m-kuKPvwJtk(AXVm@f@4x0w7acv09eIkEGyh*XB0`J>pcoGJ_Xn7$MRi)S zldA-ygmgaw8JRLDqPW~cs^xR(gn0n&f*)@p@DSBfz902JVC9M)cOoDGJ2!dHuWL3> z2^1k{_{*id2M}!j9#9G&O1)dnkdv&eEFrf!cI?YqaaW}F@thy;T$Nj%a`4o>38Vc| zvIaPxWT5Te?q#0vN1Ij>kFT`!vR)=j*>g4Oj{l=~yIY$MD-L1DjUV zNqhE_)OBh8Z}-3s)>g4w`ab9a`N%s%KUktpRagFJ=7vaH^Vi+KmET@8s8?m5KJG8B zG6-l;j%`9JtY?SJgl&!t@+?UzJF{zI7yzBP*}FzI=&#y+&xR3)G;NvVpr!SGfW0fQ zUdrLFd)(VgY&N~MWryX&K0hxW#$VSR>Glj!z<*jC{9jz$Y zf0MXlH_i$rU$)==ae&H#`lHdsClw>G%bo1&sETmJ2N*cJ0K`BBP7H;7B_4Ovc7(Y4X zmXa@VkPw@70M-`H!h`WOG&A#-qIL3;2TrzvjzAZ-sm$9z`8#CF?m$ht7vbUU#l^2F zVnJJL`$|Ax7is`sS?#m9MLaj<^^2U&Ab^1|U{-=X3R}qf8DpBiJJhuyJfWBoY$!_bW z)LB;RJ!u2z&y@7gb+_8dh@_NmqWJE+RD&5hJ#BRLQ`KO%K5+NQe+4{G<7=_s=tD;x z8`%&?S#9<-)*E0H0q&oGtt_5VEc$l>_NY{iRI0doual8q?+{CK3rm-kjZ%3(8BJ-y z&BVEeU(M( z&`HRSyD345+=GLeVrvQK9#WeN-&3r+au6B}z6_(^L(B2QNC}C(D#d4soB#XJ+M~oa z^@X)_K<$p7IyK*wC?MapNmas6VbnrD4z%;^VQmpn{}q4%R=H$G^4I?Vum8US|5sMv d_?NmSiNH@@H(gqdwi8b Warning: Could not resolve keysym XF86CameraAccessEnable +> Warning: Could not resolve keysym XF86CameraAccessDisable +> Warning: Could not resolve keysym XF86CameraAccessToggle +> Warning: Could not resolve keysym XF86NextElement +> Warning: Could not resolve keysym XF86PreviousElement +> Warning: Could not resolve keysym XF86AutopilotEngageToggle +> Warning: Could not resolve keysym XF86MarkWaypoint +> Warning: Could not resolve keysym XF86Sos +> Warning: Could not resolve keysym XF86NavChart +> Warning: Could not resolve keysym XF86FishingChart +> Warning: Could not resolve keysym XF86SingleRangeRadar +> Warning: Could not resolve keysym XF86DualRangeRadar +> Warning: Could not resolve keysym XF86RadarOverlay +> Warning: Could not resolve keysym XF86TraditionalSonar +> Warning: Could not resolve keysym XF86ClearvuSonar +> Warning: Could not resolve keysym XF86SidevuSonar +> Warning: Could not resolve keysym XF86NavInfo +Errors from xkbcomp are not fatal to the X server +The XKEYBOARD keymap compiler (xkbcomp) reports: +> Warning: Could not resolve keysym XF86CameraAccessEnable +> Warning: Could not resolve keysym XF86CameraAccessDisable +> Warning: Could not resolve keysym XF86CameraAccessToggle +> Warning: Could not resolve keysym XF86NextElement +> Warning: Could not resolve keysym XF86PreviousElement +> Warning: Could not resolve keysym XF86AutopilotEngageToggle +> Warning: Could not resolve keysym XF86MarkWaypoint +> Warning: Could not resolve keysym XF86Sos +> Warning: Could not resolve keysym XF86NavChart +> Warning: Could not resolve keysym XF86FishingChart +> Warning: Could not resolve keysym XF86SingleRangeRadar +> Warning: Could not resolve keysym XF86DualRangeRadar +> Warning: Could not resolve keysym XF86RadarOverlay +> Warning: Could not resolve keysym XF86TraditionalSonar +> Warning: Could not resolve keysym XF86ClearvuSonar +> Warning: Could not resolve keysym XF86SidevuSonar +> Warning: Could not resolve keysym XF86NavInfo +Errors from xkbcomp are not fatal to the X server +The XKEYBOARD keymap compiler (xkbcomp) reports: +> Warning: Could not resolve keysym XF86CameraAccessEnable +> Warning: Could not resolve keysym XF86CameraAccessDisable +> Warning: Could not resolve keysym XF86CameraAccessToggle +> Warning: Could not resolve keysym XF86NextElement +> Warning: Could not resolve keysym XF86PreviousElement +> Warning: Could not resolve keysym XF86AutopilotEngageToggle +> Warning: Could not resolve keysym XF86MarkWaypoint +> Warning: Could not resolve keysym XF86Sos +> Warning: Could not resolve keysym XF86NavChart +> Warning: Could not resolve keysym XF86FishingChart +> Warning: Could not resolve keysym XF86SingleRangeRadar +> Warning: Could not resolve keysym XF86DualRangeRadar +> Warning: Could not resolve keysym XF86RadarOverlay +> Warning: Could not resolve keysym XF86TraditionalSonar +> Warning: Could not resolve keysym XF86ClearvuSonar +> Warning: Could not resolve keysym XF86SidevuSonar +> Warning: Could not resolve keysym XF86NavInfo +Errors from xkbcomp are not fatal to the X server diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-vm-smokes.log b/delivery/nextcloud-explicit-adoption/evidence/native-vm-smokes.log new file mode 100644 index 00000000..9827faa8 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/native-vm-smokes.log @@ -0,0 +1,6 @@ +could not load cursor 'dnd-move' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-none' +could not load cursor 'dnd-move' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-none' diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/.busymark-html-export.json new file mode 100644 index 00000000..929ebec9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/.busymark-html-export.json @@ -0,0 +1 @@ +{"owner":"BusyMark HTML export","version":1,"kind":"assets","files":{"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png":"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a","b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png":"b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd","c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png":"c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d","b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg":"b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e","b565a6bcc734884e93f754d9bed8a45e196dc124ec370a66a24aaa0fc1a1d8cd.svg":"b565a6bcc734884e93f754d9bed8a45e196dc124ec370a66a24aaa0fc1a1d8cd","c23fbc6f37566397cb25ac17047b20a2ff6039cfdda4d284443c966f4156ae0b.svg":"c23fbc6f37566397cb25ac17047b20a2ff6039cfdda4d284443c966f4156ae0b"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png new file mode 100644 index 0000000000000000000000000000000000000000..59266b6a4861f1ec4ad5175c518b5db3e93dfc6d GIT binary patch literal 8126 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/263c38a91bb224683bf0bf491749c1d49b1ede4096047cf7c0de72a236825eb6.svg b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/263c38a91bb224683bf0bf491749c1d49b1ede4096047cf7c0de72a236825eb6.svg new file mode 100644 index 00000000..a251a38b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/263c38a91bb224683bf0bf491749c1d49b1ede4096047cf7c0de72a236825eb6.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/415512507417b44334457993dc30ee752e9d5846cac2e2162bccbbb31744093e.svg b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/415512507417b44334457993dc30ee752e9d5846cac2e2162bccbbb31744093e.svg new file mode 100644 index 00000000..38253699 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/415512507417b44334457993dc30ee752e9d5846cac2e2162bccbbb31744093e.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/9f7edb574746d2ebfcb68eb3825b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/9f7edb574746d2ebfcb68eb3825b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg new file mode 100644 index 00000000..a547aa0a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/9f7edb574746d2ebfcb68eb3825b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png new file mode 100644 index 0000000000000000000000000000000000000000..b69f50189d2e28fd0696393cdf0213835ebf83d5 GIT binary patch literal 10479 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
(Ecjv z-SAB%pA*xx{Qg82w6c*4c|k?Qcit!EP`Y++X)8hXRsQ(M=|If@O c4MW}_dz3p(Z-0#aBZH%=q@`H-#wzr`02XVqlmGw# literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg new file mode 100644 index 00000000..1ed6e56e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg @@ -0,0 +1 @@ +BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png new file mode 100644 index 0000000000000000000000000000000000000000..a1a64ca1f311b06e2effafd75d388116ab40b038 GIT binary patch literal 10868 zcmeHNc{H2dw~l#;sj6xyiYi|#+EUc4)Ko21LeYp)#5~VKXqDF3QnbdRhEk#xV&>Bt zzSa~`(GX*e5%ZKF?%TW8UF-hyTle0ze*fJjD{s!q%Gu|<`|Pv#^PJ~>anHnnlU;}% z1Ojmy8Q!`N0?}y$?G09D;OYx$bqBtf9gGcbflhwE-?f&dgFxp&Mz?NSgyfQm;SXOs z(M~q;oR?Ubu+f4%8`0(DtN?|<&;j-LPAua;#(rEU4)0;6>d1IEuiGR{ATdg${*Lis zUBZVD!~5xdAM5!Bb6iDv)Fu4%=~Vt%rqO%{IlerKyUDEoW^jA+4GYE}j*moYFZ4%F z;R6R{Ms)4%-?{Xp?4R4*To&LHo$Tou9BkJlK4W_ORxnpHQeIkm(Rp|oSH?`Imr`wX z!|sH}0QV0LE?6Uxrktib3ai-Jy;PdsH=B&tlW#;EXuF1mt^7z!8-|`x2C*0t4*tQw zHkEeFk`Hg#K>dA8<^1UKwv*o=<=kV+R&Qlbsu-DVA}Bzk(^o%9KyhjceuBYF+RU#l z*<>e%Zaedx;pf*nA!FcGn7Y)&D$ey*<)fNd_?*xUA66u7J8fWQW?v*A0Mh9jph^@_ zR^G=;9j&;`e+v}V(_<1lpi=j0>r(I1Es;p$c>I1o4_kY;vd{F>gM$Fp-TnRbxh0!e z#{e3HVyE>oV^7@i$ ztmCiw`N^~Vqd2V7b>l~m_U~I*jNnK2l$hQX$;8mn(Rr@5$eM}K(d7|j5_o?B9dsKq zGBWBn_q>4K*-~)0Rzd=Mq=%>XwxYIpEW-5y=oycRG5tN(8T7xknGFNA?F_5y=tKx8 zRxGG>qhQV1cCD(L@mhVp+Dr|&5<3`taI{_Z`t|FvLLKq!vVYQh-q_hLq^=Q0 zi*%KXt3w92ReIOV(uT0`LOSYMnTu_Hgx@7kLa)IaRx_B95u1vNvWowLi{_!nY5&Cm z`_(b=hfM*0V@p(GztCS57ta?%s>d}qvw*_)*A^D~g*gceJIl2%Qricb*P{@ryw4DO zq7gnfvgDlJin6hNIHwVoS?7+q8g+C5B=^wJeju0iwz09uLryZ!s%B#s&mQoOQuvNOCx)yy+n=AEC6tf1pRPLh35RNGJ^z@#2Otn2D zHaj->h`$1QZ)`3bYHOe0pPEV)R9FD!ZCPS^^QNXP#_QMiAjWTZ#R*svHdfZhV>M=d zZ?46!5yL0UT6Jz@rj_z2D2yuy}NNQ+sT3K1q)2m+d7&DZRa3<^s z`S`o*0tUs9EooQU4sw6}x?lk<@n5V?5>|fovvv_XQV_rT5_Fv_ghND?H_s&1q)b}& zqx6dxi!V}An&v1qy;b(Uc=pOg%TP^8$>gM@>n8a}uZ+?~QM}Q>uk!Ar7IN^m z2PK0g#%CJ>mg%url6BirfjZ?EO1Q*XT*&iKNRO-y`n7efT}>0JrA7Us$vJDsj`@j3T&`Mh_R`XB1a;YEXUTUx52?F5 z@~f-^UoCa&?7jxby!4KOhBwDcShItStZdC;RBdhT8_i=^IlDXWBg4fcB(qMP4Nf>X zAVnOK%_fm2j?M!S`E(3%Z>YZ(7UVq%kAZm`8XCG-RzLjyPkPq#)OM3QeRj;;qTk5l zT`fmjiMi^OVxl{L(I-8G&zc(;$ped7GbhZL@gimhJB)KjNxvlLv?ZUnBd z=O`op-k2%=3j&dn_oD;W5Z#38?PUT6tMT}$c20Fi;dcP5ha@n8C4Bw;r6G`K*0rT+ z1;|RXHay{aD9CHFMHC9%+}ct~)}d3U9pGdVbfRdGAacT|!>BBXtxi}Nu(QyQaHV;D z*@{`y(>&@LdzOr`dh7gH zKuQWW-?~4^i2lo2EJ~n@ft#b_`*&e6F)_eXw=G7LM8gc5e`wpBh$01-jiaXhvbaX$ZGhBk>v4pH@9KX$MW*4#~C5NUiDNQb*Kfh zI}g2Mp@Uo?e`siUJ~oyIy7P96V`iq6v}$f+^DRZhmhO$pcIcBQI&Ns+;9!?-4svz+ zm-xBfUPFxI51s1|A5L%wkQUs-V&kaT=3uM*FgNCZw_ZdT(NL&cN`Fx;N%H|Hh^m?oplZ*Tyx?p5Fd`Ci{))LMSaETdT7Z zo!EZn%o)XM2)nQH_x^q4 zyhAfkL9MHL1UeT73rZRq%B#1?MMf+)lY*mwQr1BvJ~b~hv9K27<9kwBc^SBwTLuQ3 z1b6Q-r}pLL52f>7#HR5PX{q@pR~3m_wjAnXC#MnARdJ!8LxqxK4ZiWqQxz3J2{ZKD zQrufVNjYD*5c3++4=7y=*p4vWbI(`iBpH@sBeyGg}k&eSBQB zg_8&R`YzmPSg_7&RkQ{3XC9q*BItZUAvjaJzzhfFO5zX=Ho z8*NUl%Jse2im>C;`x{pa(FofqGDx*c6572AloM$+wL~T`t+(FuQ)zwo--g`W+{QTy zn>!w0`&}V>7^W;N#G*|pF=17U$0p|@xC1aeN-8C-uFCGMB|FW2{fBcB1H4=t%X{l} z-M1-*hx;eD76)KL594`)a{y;-_e!QyR%`D9b>n4j?zxDF2+-2lrl_C4zl=<|TGH0` zHr>Y7*5|R(hK8{fr9Ky=07Km;#h;2D5L-)UA4R3$@bO2=Qr{QaxOsmQQv+F2j zh*iO$i;=drG;S;7a{cb9B9&nh!=3L7S-$iPb@+~FV75Rn$!pg{%hi*sk~d!y(kiX4 zF#Ik-5s}BFi877rMj%nmh>q(NUjkata=hLZ7gtsg#T+dbb&&b`^)Kf2cGH5khQ>y^ zHzr?5!x(R^mKL;R&)AqqAez63(iG9?=kPhzlm)l7gq;I<7Wv&Dh9(}L<{fy;C7Yz6 z;s#VSy2`+alVfGj&dM%$f=DFEO>kvj0447qP$`t{jW4HHJWl!)28(3afe7`OJaT=y zzfLCR$BPcr6fho?*V~JvwnZ!uZ2zQ}fe6coe?J`vE^a_j2J(;JqS|S^(KR)80OWc* zdN*I4iJRNh0y>|pOuIj4!ZXAyn<;k;26=g{sUHW#c14P)1wEHEn013;JjeBMH-}G~ zUMIq!$)eFf@q#W)|CBGsmKZC?aR@RaX3WjZu+ysi5UN;9>$v~no@c2^WD=(^P0z-L zy{oJ1v5O0k_ZbrTk6)aYPRXIlKB$R(`BDzZXV)CN`DmM|C0~0A3TtYjJ3Hyq($mM9 zgO!m~oVr~UrHdIa6WaH`^-mv>+jsMgygxT!qnWb4*9cPN#5NP5t6;0=nP z%**A6uL%Olu&>HC6o7wz2OD&yrUeeFezpxhY*A5}rZ5eSary8dMt6MmMHQ77v$GQS z@26QeZi(>A<#Hp;-6SOPJ!1=Qk%c08E?jg5cXjE>By^%(ah_{uPhCrIXb>|rF`4a% zK`KNv?3&FrF|x#O{3D$cve~t0Xlkl>+)*j4MKi;F#sr5ec|4!#I_u)QGQwv0F(eV# zuN8GuW1mh7TNLml|9#^WK?rbvrmS^$gRdeoUQ!~z1h{{v@0m5;Q(3Fy`%cM9a&mG& zEt7EW&vy3}1Jd#81ceh7p1oObv0-@41gB{}`a z-N`wzD3lmbAv_3tKc+#90$1%>;mF9B5L=}hmqEE|yVkyB;hzo7;X@_HR^2Ii59Z`v z4dgZR0yPnc*42r|yn_SWSL7YO>UxaTWHPYO?%uvF55y=VbC5&t%Ng~<)pb@d$u+PblDbm@ zq>+eS=($R(_Q8A&xX&?FQCn?JSSyOR)@865ruMzKH~HqLl2>*pxV+22y5wRXCDIWu z8LjAUS>xQFfX59FONhV{5q@4VF)>W>+y$+Nlj!T~Y(K@VUQgkx0J~scRrjt3Sq9QvjJKJV>tc&%o+sZC46e>*f4JlG-B33{v(^^^{ z8sM?APEJm<%RfgK#PaXbJuox#RTrPRGn1DkwIZoWyYs4|qURhe-Y02~9BCqT;j3Cx zlJj5UGv`D_MU~ovJlH$>`ua`-3z(HEsu8l7!IpDQH6S`SH|MOpyu68O6aS0=!2ZBm z2h(KRl}BQ$!%$`c?gi(HSLovWK8D6>0qu%>!$cJ{{Fl~`yzm&h~#GwhC+ z%ft>roF}sPu(I=ui*PnBt^qZl>1OO)w+3NJ?BVGBmW|FG2`ju(yILgm7ruV))3WZX zz6N42yg+htax(AB7v%EXI;zqo*eoY0DPSO1_3JVDUTDy4}M~>%;?%OW4N+oeh^9XUa zQHG7UM?`1a_G{v?HKkevY_{881Kax|rq`Q|^wY|g^~D0zazxCcXUJsow+)Y{L5yYe zwjk3l+oI8^M?Y;qav&2>F=_MoMe{fgaWd5&5FlRkwr0-diTaZu_6qv5(NpvyeWT6v z-1G%zg0YDZkIQ2p`|p80*A(1Odle?vf%qVU`fDkm*Mp3{@***&LncUWy2zMagaJ~2 zUi;hz-^ST5{>J4R(}Wxd98+UzOJH5Z@{?0*Y82Qynp)YHhEhNUbXzNk6Xp#D!r-1p z?cyPw`%v{6Az0Ctp*MtJ_Dj_sW1S=H>^WKYX<;sI@0I1~v!XnkD>`bh0Ry#2EzYCl z3h{?Ia3Qz0=Xhau?F=!gF^|7&$48HLoV@`;-YVVAFdx=gYlgQ1=pq2ez0 zrBv<8c+$2-epI~8lDGP?oUWP;8ht{tNLj<{)7QM}Rn#U0IDc1O`H3IX>@cYt8~2^o z;vYR8->9P|?nR-s7%^DpIJfP_nM$qt_6NdEL;2|Tb zsC7zn(_f-4NA|n0>|lnyFd2bGr;I>0Szh%KrgcbsR|uzczuV=WPxH@;@uh=P z9^w{n^e9ZxwvGF{f%K11AV8NBG{B#WKdUXxxgCV@A6!uzbwH7`#hfVbV2*Y3!_O`g zI!rxBY%;%dl40d7#yz}qVOEztzmYE8yPm=y$$1q5fye`&&vZG4+BuahS3ij!cbikd z?Ui(g?c)NeK{_?GCqZ9>!p&9OTE)mgotz`;$*APILyVeW8~;04F(WxOev?(TA;nV| zRXn=5I^$&tRFp{qR&UHWkxN^R(zg-F9%!1tL`H8)ec3_|m8zimx=C^5nh4 ze~=eKa?BB{pAk;yJw7x=*lm0jhmx+;Kz`i_jLm5C{Lo?)Km~5EpvSka0Sl z`+g|7C#@^4ejX7VWD$(H^Ynvf-Yee(eP0NPmy^V0KV>WfL|}7V8@~J~bhp?~ZsENR z^^K|Siz+7#gh58P>s6G6txJUe6L#HZLSNZdaA9-CF}@4;k^ESg0Dfe3x;#Q57NF~# z3z!7KDUL^K8SUlB!k~T)P|tl8voJBmviAYZG{zQJr^C8N99h$2$tp(aEn(vRmp%D% z)e^P}=9la(ra#PQW)S#jC|WD}$9jTUc`hQd>s~wM)>5N|Ni59;GUXjf&vVH;N8N3& zwZY*~JDrDfxS#@a0s4-3Xnj0dM*ne;;|Bn(c)^OdAT1VX+m@Bew(-{Z zZ?@nmlv8-shnC=as#*SK_?;qonPkk=+x06f0uF_CaI{K#cReL8tPd%ssn;xO4U1&( zNwGeZM^80NO#2ESg0c3Zh?v^b_t6c!S){dFYVGGcp-7m8SobO(84(z9J?pAUm0;CErpoj za~vy`+U3+9nsnKEQ|LS=Y}K11&MLk_Hla5}UzKN<{ckw%7PuHsIzgF~jhEq;OT~l3 zt$!3rLxrZ;D`SG6KF@UJ%?Msbzro)GfD@s)v9ZLVfk7YoBVZbyP!#bxGc%}*s~J&+ zTV}WYMm+DwD02(!x4qE+5DLBP-BBTvU}E-~siMMen6w*ybbMUU(T2IEh%}ktUb#`{EDKYW8VxGy_xy420eEyKocd7tFvbo{NDwImk z8RNpPGv^;y+-aFmq`tPYLM<^VYc9tv^M{3oS|4_lI#=mQw>%QMvunD|tMld>V}a|> z-ql7w^kFp~I8a4i!P&?1K=Q2xE+tU(zVd$+bbiq;ce?OdEp9mg%%^AV97S~>=-jrl zfWjCeax*hCAB9xwoudfW^;(?OvG~jvWoZ)JUS3{)Afuq*&kZ>u`TEFGs7NSUt@=Hzq@<(t)}z&E z#&+N}+F_>_x9di8l0DjVW z5s{IHO-)Uj?__SjYXyI<1+v*mkUeMMeW+qdQPFG&;43x*yu_MZSnH%I^hb<#d6A4} zN;QiQ6uJx5Gs{$M;)&kc+7brzl(PWAnvI^I?xDOvVX^U3!6Q9oj`u=B#Kg3;PN-|9 zBN7S@$)oO|OhI8g>sm5VGo5%{>aOsELHTEp6j6=dsS_IY$6Qb9 z4x>$kc(q8PJ5xLBD-HRO`~P z_?yrbTcJ+2?(vnh7n68WUIA1H{@{VBK^9i_*)yWCnVA{9k^yJEiDP%G|61LgbqbNoaBZ7yS1kOMp*vHPJd*lKeE&R zRd)KT30ngKv5WkE7T}Kr^+$sGBSHOW>8V|679kPu4ywx7&U% Yc!+gbNZ~Q?7%9j|&*WCMj{TGW052_S8vp \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png new file mode 100644 index 0000000000000000000000000000000000000000..1855eaa23cc901e66e7b925ebd0c70baa2105524 GIT binary patch literal 7183 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png new file mode 100644 index 0000000000000000000000000000000000000000..5807f943d68afc0e510b8fac8be4814486b7b817 GIT binary patch literal 8102 zcmdU!cTiK?yZ5mmiXcQls&EKLiZnrx4thug1dK?N-a!Z$dPzvILO=nL5{eK-dKKw4 zN{dp0fHdhKE%cTEX%~O@{PF%~-kE#noq6Y;JNu8d_OtdpdzHP{`aIt!`rchVc2)sa zCMG6!1AWkaCZ-cYOiU;3&z?NCtZc{{9~Wnw4fQ}wjNjM0=KMq^CJ`G0&@Hpjx9bxK zTl1int!)@r-Iph^9o3_%GbfTySASMAk?8LlPa0+SxLq+KwqPoe|Ba~RX<2>U#WdC~ zuLqtx{OX69uYfM%ueDsq56>c_Z_SJyH^EFZXjk!v8y-vO-^*7S?}F8d#w0B z-K1%&_4vA*D-uVFf6>7>fLU^!*1h=yf};MS^`G}}SRg*x^R=?E$tcEuZ_CjjgQ*&CC9rrz`3>RCKp7&PB$mEp8GWxJbq7D-za=lM3VR2=bXuVnzwOW9(5S~ z(}w;3GW(g>A}VB93k7v{ZvXm#F{5CqcZIIBG6KoDtU5Na)F0RNv_!>H4yPun;Ox3K zWOB~*B1Xo6Y(Oy36TxpZF^Dq?^i0NvQLP{;nJQX=z(i1wnl|iMEII-oi5#v@0)h9_ z8j*>1=EHzdZVNJO)BVOE+6J$jl2D&SRS%+PQ#l?8?3!z z2%){;xI3fhRJGcvS`^~Z{$rG*j;nB)@Mq3@Y0dO9N(~PmAvmhJ$uT1A3%$p9wG6lU z!ULPG(Nzp}u%l;4i=ZA^hLOjJ1yb4;rr~RjN5%5ung`g7k)E@|m$4rfU6bb@{@k${ z5m^(M|Ek*dy66JcX#sX)O-kjAnVW3a6e*lkQ+si^g|^b%Z#NFvu*HQh)aXXShVAXr zGfdJm5=e^!7@csZnw=SWaF5xNzdwTbNf^9;4|z?awt?bW+8qJ({6@4}K+@>E3F#A- zrZB5C^Fqyb;?pYprXu$hMH%s{Rr76$SXpds;CdD+(v=mBRWDktOk5#Pe=5;4IU~zF zjzW$%P+OMV`8bEvgpkmHN9033&X5q|Q8h%fKG4E;<{Ci3j@(|OoJdnA{S47L{G8_^ z8>vT$j1?5*T7fEhe?n~?;PS`J@DCc?knZO3vLBp*<2d(kA{z+J$)7G*scS%YThMC* zP&n6c3)ReMX*s4=jxn^cv83=qT*jzHURll4>){eWwgaYx%Y6{Eh5^bk2n3VxR$qCA z{po3ho8L#YewVJi*^+l}V2?5XWKf#uxNDS||?Xi}wKle1fb9ciDqMWIcK+wUF?oukTu~ z(4Fzu_V-7&4Q8s6k_dx$LBEz+u-t(WH)Lk}8Q$`DKu?#nDRX~KZ)6T(eWs`Tc;*~m zOwx{)Y&J7RJkF8M3-MpS`T&%pzWeM{q@mh$n4o<`OS2?k`=x!7cU@z#MruuE%j(x0 zWe8u3vT1l%b^!qr!?6H$XtDP~6W5HkL;5zf8->6&7Co_X_0VtWQ-)!rr%&&<<@fKp zpAo=HIL+=ys;{1B?NW~N%-a9)(|%Q?_eDK(q~}#%5;EXau8zb7p>=vBaS#(rRw*$! zf*>j=+2ut|MdcDVd9&47aP1z`Hd_b_knUY3iz7AWX$-a)bmeLd0R zP5Jq2`=j;_O{*P^7cnr#`^h>MYdHD5*rlrkL*Lf9kq|jJ@!l}0)JDZksE~N%X4ecG zO2qz|C(D}hc;=ncK=s~IL4`&1t2I>QVwR=xEhn07wA9^Gd5`}{oIO{n7n8xuLRPV2 zW-q-8Kd?nS#EtZ^BP@6sZdglRM13MY#%#L+0M>EL!D zE-o+Cx@!UP+b8=HGW@=OH@r#yA|4RWOy-J2loqw>YFW0ibVALjs%`m0RvE#hh+cj* zg&KsAtQtQ{2CWB$r0oI=14N4gJmtdWR?1jv1X7x);&S#6ZB2u#aKZuza(3!QtZcnJ zb#aoQa>9Hg93FHVNhW+Adzl}c)q3khCv)W7t6FW170!f)rx0O%xMn4eH?!}hoBhD) zd7}QJ3x_6Va?Cs+h%lUwUG3_D!3TOarnyOWko=Z64iaa2YbHGr5c{vbsB3jp4Gjb# zk;8k!L5{L{H^OPHq<(Nd`{aTv>WGDLvI)#X`U*anB2JnF|uYMR5F7qhH@k=F1MX+99;b{&Df1bb-t6De6$C4Z4^` z_k2!ngxA7ug464U;acCiHL&-0-<;I3CpQ#hY-{vtPcjrJZ}cewEu9 zM>9u1R-YZUxbP-CZm)*nZj5}K+E6(>+#?V7om*c5oH)nvh#o%3ziFUsY_kh;z|oK{ zDJ}HFl$?So#F0mqQtjGfDFm|BM6!DyUa)0UU zbpvb!){jn|yFb;PhQUtX6fSmrPB|!|O{*OM8c0mcIy*N6O-hkHKYDe}-@jF3U%wsAUg1 zAp@8#{U3vC|1E9_tAjIna47{v6-P0#@m=S6*R!52z%@Hh6m^vJYvbx%&$e!MUX$$h zwTwTht9uN4P4JEfmhp2&nCj~4dN`YERNXk48>5WYH>>M=AMeosS5;-H%_#hCgD~mj zm?8YPI`K~h-hW8ve+LKw`+ScLS&!G}zlaQuNsej4(q&}?f%ANQOnLL=zWWa%FS=jd z%ill1G%9}jv~xAHO!yn8uGuoAqhih-Q2zQm;BSMTo0VrX`ZVY?q5&?c%VzQ(7Sti( z4V)9axVTAt&!$Y(8e;Y;l_gAPBw`(GO>L%Sro{dN;-~z_*9^2!jW&$Ey>ZIjXf>y? zqhDxY9Lc6sgdS`doII%E|0ROzbsvqcy414$;3vQ%v}<#t-l(SwnzDaeG&%; zg%ltCT+@KXY^{b!=7y<-IUrpsv(zWAYNIZ7KY#9dKJPjECi3C7g9zeEpRhV54WA#S zk2JVz(V4|{#hm?Oy)R9R5Mr^ZIyJJ3XcxzY!;}Vx)hdocP6(7X)`VAm*a{@ah7Wp< z_v4yPA6PVc9SRwatnl8LZ+MKfQYN*9;bHN7BS?$kB^)-zZXrq9<^Dz*_drYOfW<8L z_SQ}?iZMjt7ZEOaNYwlp)|EnDNtv(tHADuHiA9C3kWLNkrJ-Ps-1jvll8q&jn_Ew# zOeJ3I8NDC2aN^y*7Jsc4g$voGM96t_0s!$)alNAb0>B#DLd0xf3su-oBdNn3&kGq*N$b>>GpLt(w$y>*yNeqG<#l zrb)=+YU`ctQj7(5IFe}8^nx_2SD0 zz+)9{Rfy!i0<0m`l(SXr`RPUm{897-Dnq5dWK965$i#50>@qv!vI;@5kmf?^Ij zsnlWg)DkYgV@@78;H@(>(Of++O!t4Z6?>i+v=@figFvmGp+jw2DfBab7PfTu2QE(b zs6@1?k3;z0Z4ru~cQSB}E4-6?kv}VR65TX0h}W6AKj(dExhE)9F0Ex zs%9@tQDqdO25xU#8{Gc>i3^_ra&52Mw%pfxmA7~s0N{YZ$~U$#=IFQk0|X2AW9RW# zl4_~!XH3}5kYJxmbgG2>_*OUigeCzM2(>oBAJx^mIXjG*ao0|Ndmz&c=K^?ERYU%u zzrU>Z!+dxY3_96LV5`%G=9XH3+9h%*orOQWju({UWiHOJkx(e(8mI$#SvjBO_3mw{ zF%XzFb?OlLsfm&mU~R~OQI1B#4%*8!t)X|M!JyVw3ZlQT+U4r`3!AHME^h@**ps62 z^U?Yrn(Oy%qk@b2B6MUw^sE5X*CQq?XHvH9fxUPV_m9l52VjF-Q_x?)BhATTGRow~ zpK}0px5$N8c7$Q=C};W6edA~71AIqFxn32nPDcBZVFV^Pe>`7tbB1#YtE382zGqMW zVh2bi7jv)K!!^URW!xzpw`!;77}Sx@`(yRl)5{Fd=f=z2}nua#R{wfUL(=W$Y> z5O#ovEv@*#Flh6BV;lcw4$U*da1FvJoo^0Hc4$7j9oM_!lt$ZSK?#J0;pb^(A9>fL zJ-v&9;<5ni(-r1LyJUCd$REPO_ss)8j;a9=f@UCco9u=w%h5Ym~wmeYq$yBjmoDuc4@bd2v86+jE zU=}w*l|!QZup#$!OYK^FfUzABaOlXk_;#HA77n($9b-0{6rEBcV}tD9XwB=NANRLyC$N!IZ>(qn>qu>U>h zl*5L$Z}yL2$B>xXP4w%ntph33M|>ixwxAsNW=cHCJld8Y7d}?)F}2NtpWw{e$9!6J zLBtR{9abfP_f4!fxDz-H4{|)aX|0vP;Z|nOA@Fp)=P%+jQS(U#fEHxDYv_Z4E}nUR z|KQ82Ce~pM22Ip*wrD;b1;54W5AgDC?A6K|T;0Ux)fZ^}Q6F6Rz2ICCxnk9!-)z*{ zhPP8gWBWOHBOnXH0yxx)j$+))zP;oo>F}>E?_0H!LYgqyIE;NQER8cADT-2)k-Yv&5CsoK)( znGMn8wr-&OFMeVBO9m#7o~Cu#san&gs|^s|JjTyLORlt2R`=5KoG``ltj|6hEyx+Q z$xUy4t^1-C+$J_J*@fgx7PPvyTXd)r$+l;*3uF6z^HM>W?E)rZ!|k2)r4mS;sQXp2 z;&-0&!x9sm*OSN982_qr{U246`VYHS6^_VOAHTz;JVJ}}m!szzE_wc@9uB{)nF^-$ z<#Y>~2Uy>L9*A!qfN>m)cVId19=(V5GHPja6&o}49$N;>BKb8{X4_b*O4*#>jK62C&_ zW!$VOW(l;=g;wdF|DB=fx;#2%w3e>4sA;)IoSkXqOxBRp@e11Kd>3{6Z<>C+$E%$mE3805_z*hka6+wL41d6azui7v zg8pcnX_g-`-n$6!`(f2xTx4?;@uo%fPKgBTG;;RIP-B;du4jeKOGOo(CPV~1e@>dV`B8VhY^BE~QN=yUOt@4ls{&P2?xbh1A-YjQ z=Rp&J{3&$`^YYRjuZ|~ha5?EmSZ7gDSFzl$dNBD_(u(Gl%u2rgV_?n!4_Lmt($%110RRGGBYy%FdxZD^Dgp3U(;baN3LRx(n{Cww=MpYEC`b-i(wS8PbeR6uoSwPHQJ^Du za|&;r@1NfU33$hNL^=KCy-DOTLpQO6b@(JC_veDTMw#6`!xTo$WJwi~#3;z65;>Uw literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.html b/delivery/nextcloud-explicit-adoption/evidence/offline.html new file mode 100644 index 00000000..9d15e9f3 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/offline.html @@ -0,0 +1,22 @@ + +Offline document

Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

API

Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

Operations

GET /items

List items

Responses
StatusDescriptionContent typeSchema
200A list of items
+
    +
  1. +

    A structured footnote with a return link.

    +

    ↩

    +
  2. +
+
diff --git a/delivery/nextcloud-explicit-adoption/evidence/pre-fix-draft-confirmation-race.log b/delivery/nextcloud-explicit-adoption/evidence/pre-fix-draft-confirmation-race.log new file mode 100644 index 00000000..1993f5c9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/pre-fix-draft-confirmation-race.log @@ -0,0 +1,14 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart +00:00 +0: unsaved draft edits during confirmation require another review +00:02 +0 -1: unsaved draft edits during confirmation require another review [E] + Expected: null + Actual: <1> + + package:matcher expect + package:flutter_test/src/widget_tester.dart 473:18 expect + test/src/nextcloud_workspace_test.dart 79:5 main. + +00:02 +0 -1: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review diff --git a/delivery/nextcloud-explicit-adoption/evidence/pre-fix-regression.log b/delivery/nextcloud-explicit-adoption/evidence/pre-fix-regression.log new file mode 100644 index 00000000..39d856f8 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/pre-fix-regression.log @@ -0,0 +1,14 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart +00:00 +0: uncertain creation discovery preserves later edits until deliberate adoption +00:01 +0 -1: uncertain creation discovery preserves later edits until deliberate adoption [E] + Expected: null + Actual: <1> + + package:matcher expect + package:flutter_test/src/widget_tester.dart 473:18 expect + test/src/nextcloud_notes/notes_repository_test.dart 130:7 main. + +00:01 +0 -1: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption diff --git a/delivery/nextcloud-explicit-adoption/evidence/regression-results.json b/delivery/nextcloud-explicit-adoption/evidence/regression-results.json new file mode 100644 index 00000000..2323ea4a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/regression-results.json @@ -0,0 +1,50 @@ +{ + "ok": true, + "focusedNextcloud": { + "passed": 216, + "failed": 0, + "log": "focused-final.log" + }, + "fullFlutter": { + "passed": 3638, + "failed": 0, + "skipped": 0, + "duration": "18:21", + "log": "full-flutter-final.log" + }, + "confirmationUi": { + "passed": 16, + "failed": 0, + "log": "ui-confirmation-final.log" + }, + "nativeSpellPackage": { + "passed": 13, + "failed": 0, + "log": "native-spelling.log" + }, + "localizationAudit": { + "passed": 21, + "failed": 0, + "log": "localization-audit.log" + }, + "realDictionaries": { + "passed": 3, + "failed": 0, + "log": "spelling-integration.log" + }, + "writerside": { + "passed": 181, + "failed": 0, + "log": "writerside.log" + }, + "liveNotes": { + "6.0.1": 14, + "6.1.0": 14, + "real423AndUnrelatedSynchronization": true + }, + "linuxRunnerSha256": "ddd5b6fc361e697cab18f195b6afd47f4bae64ff19dfdd49a6495a341528f32b", + "linuxAotSha256": "9e0ccfd3e1f8164c5d218dd0b5bfbbf8b8b1c07bbf86b5295dd5a9c2f7b5815d", + "releaseAcceptanceComplete": true, + "installedSnapResults": "snap-acceptance-results.json", + "validatedCodeCommit": "d55b41ddf47ef716d5113c89da8a3a2f3b80e819" +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/automatic-single.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/automatic-single.html new file mode 100644 index 00000000..02caf85e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/automatic-single.html @@ -0,0 +1,22 @@ + +Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
+
    +
  1. +

    A structured footnote with a return link.

    +

    ↩

    +
  2. +
+
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/customized.pdf b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/customized.pdf new file mode 100644 index 0000000000000000000000000000000000000000..47ff331289424c4a594d89d46a16577b74a50dd1 GIT binary patch literal 72063 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 e>-cCvd4Bu_a(2Ojv)* \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7a5b411b813e97f3f756a0109f65def2695ed6da5b3f24791b3c01f9b293b38a.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7a5b411b813e97f3f756a0109f65def2695ed6da5b3f24791b3c01f9b293b38a.svg new file mode 100644 index 00000000..f88468cc --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7a5b411b813e97f3f756a0109f65def2695ed6da5b3f24791b3c01f9b293b38a.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7d6e03816ccea2d09fb0ef83a827b337b1277d02c745394ff0a7c9b2a2d49831.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7d6e03816ccea2d09fb0ef83a827b337b1277d02c745394ff0a7c9b2a2d49831.svg new file mode 100644 index 00000000..88e448ab --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7d6e03816ccea2d09fb0ef83a827b337b1277d02c745394ff0a7c9b2a2d49831.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png new file mode 100644 index 0000000000000000000000000000000000000000..b69f50189d2e28fd0696393cdf0213835ebf83d5 GIT binary patch literal 10479 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
(Ecjv z-SAB%pA*xx{Qg82w6c*4c|k?Qcit!EP`Y++X)8hXRsQ(M=|If@O c4MW}_dz3p(Z-0#aBZH%=q@`H-#wzr`02XVqlmGw# literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg new file mode 100644 index 00000000..1ed6e56e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg @@ -0,0 +1 @@ +BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/bc6895a0b73c8d683eeeb5b72bd967a0b721bb4fb4b4026ffdbe2dab18774e08.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/bc6895a0b73c8d683eeeb5b72bd967a0b721bb4fb4b4026ffdbe2dab18774e08.svg new file mode 100644 index 00000000..1b3e2b03 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/bc6895a0b73c8d683eeeb5b72bd967a0b721bb4fb4b4026ffdbe2dab18774e08.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c89f96c760e56029e22e5afebfc8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c89f96c760e56029e22e5afebfc8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg new file mode 100644 index 00000000..b621b36f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c89f96c760e56029e22e5afebfc8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c9693d70fc9bcc18d336ad2743ed3a68e7294086d4397eeddd3183be658e1a41.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c9693d70fc9bcc18d336ad2743ed3a68e7294086d4397eeddd3183be658e1a41.svg new file mode 100644 index 00000000..f03ab138 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c9693d70fc9bcc18d336ad2743ed3a68e7294086d4397eeddd3183be658e1a41.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png new file mode 100644 index 0000000000000000000000000000000000000000..5807f943d68afc0e510b8fac8be4814486b7b817 GIT binary patch literal 8102 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.html new file mode 100644 index 00000000..aced4295 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.html @@ -0,0 +1,22 @@ + +Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
+
    +
  1. +

    A structured footnote with a return link.

    +

    ↩

    +
  2. +
+
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/.busymark-html-export.json new file mode 100644 index 00000000..2431d749 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/.busymark-html-export.json @@ -0,0 +1 @@ +{"owner":"BusyMark HTML export","version":1,"kind":"assets","files":{"f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png":"f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e","9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg":"9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821","bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg":"bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0","b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg":"b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e","afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png":"afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8","a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png":"a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/040ee0eadaf8d1ab732a6cffc646e9083386f10abe201d5abdd58a25a5038c62.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/040ee0eadaf8d1ab732a6cffc646e9083386f10abe201d5abdd58a25a5038c62.svg new file mode 100644 index 00000000..5f99a9cd --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/040ee0eadaf8d1ab732a6cffc646e9083386f10abe201d5abdd58a25a5038c62.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/26cd9de5fcc5fb9e147045cb6f93730dc299d3a223e326034ad8e7eaebc6888a.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/26cd9de5fcc5fb9e147045cb6f93730dc299d3a223e326034ad8e7eaebc6888a.svg new file mode 100644 index 00000000..5b031dc0 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/26cd9de5fcc5fb9e147045cb6f93730dc299d3a223e326034ad8e7eaebc6888a.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/3eb9114c8addc4d5e713578ddf579432e751882cb3cf8718261ab705486a5559.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/3eb9114c8addc4d5e713578ddf579432e751882cb3cf8718261ab705486a5559.svg new file mode 100644 index 00000000..75e78f43 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/3eb9114c8addc4d5e713578ddf579432e751882cb3cf8718261ab705486a5559.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/5289ba0ea5ad014da5f44046224d800651cc64129c3f082eb6d830415aae3946.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/5289ba0ea5ad014da5f44046224d800651cc64129c3f082eb6d830415aae3946.svg new file mode 100644 index 00000000..b1d7bce6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/5289ba0ea5ad014da5f44046224d800651cc64129c3f082eb6d830415aae3946.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg new file mode 100644 index 00000000..e17bbe2c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png new file mode 100644 index 0000000000000000000000000000000000000000..b69f50189d2e28fd0696393cdf0213835ebf83d5 GIT binary patch literal 10479 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
(Ecjv z-SAB%pA*xx{Qg82w6c*4c|k?Qcit!EP`Y++X)8hXRsQ(M=|If@O c4MW}_dz3p(Z-0#aBZH%=q@`H-#wzr`02XVqlmGw# literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg new file mode 100644 index 00000000..1ed6e56e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg @@ -0,0 +1 @@ +BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg new file mode 100644 index 00000000..f9b21532 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png new file mode 100644 index 0000000000000000000000000000000000000000..5807f943d68afc0e510b8fac8be4814486b7b817 GIT binary patch literal 8102 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.html new file mode 100644 index 00000000..49c72fa6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.html @@ -0,0 +1,22 @@ + +Offline document

Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

API

Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

Operations

GET /items

List items

Responses
StatusDescriptionContent typeSchema
200A list of items
+
    +
  1. +

    A structured footnote with a return link.

    +

    ↩

    +
  2. +
+
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke-mermaid.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke-mermaid.svg new file mode 100644 index 00000000..6a2e57b0 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke-mermaid.svg @@ -0,0 +1 @@ +MarkdownPreview \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b1e36ec38e2d909d488ac9aa760dee0f782a13a8 GIT binary patch literal 67398 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

hHw5Kp3#w zaRyaKOE_HF#SI1n1pFb@Pi2aL?D99&uIk&k!2tqgaZwq?o%Z|{_M@x*;$y!X2;jEB z)gPX({Ac6<>Q~}*1LDFz1xcAdLla;^HXv0X6gk46pzk{8**Qa67xb?X1)S!*6UlVH z7v8YEXX6Oxk^K(10oay+jq^p&ZFe^hEB8BYHa5C2m^+W$4|+>ChwIL^Fhxa>7I0}} z%>!WB009r~Vq@hF=drbPgxe@9gY@leylmWVy4l#;xY+=G1qTS!?A!nxKpCJL62N|V zARP~PM>}U5IM0sYx*%;!rypoGaQ7Yb@83-XJpUT$MShR;B0nO%%=fMJ%#^?X{3}L# z1C<^T0~#oMyVNL)cg~zG#J>a@MoCpZd$pW_Wm6Y=te+$Kf%OhckvUKklxh}aj-OC z6hF~Q%Iv0&NegjL2?WWza#-DT#mX_X4D+At5 zD=WR5R!(jgt)$rQK9>~#2RyLEE}N7D{{x=XKj2AA@6wf|%s=4CO6yT!22k>>IKYiSKDO3vb*d>Msm0Q zWF%#F;{l!db9-f^B>w?VZdW^Gq<8C222jE-elilfX=Qf%jEtPvu9zb$wp$h;tnKnG zS@3S#kd@u7D>*UAUHvO3F1s5hvvZEY-|aw7ZdV)vmMpt;04zUt`5CN2g9 zn4jtp7n76zxn6NuS@3R{+^&8DLi?^h0!Eo#ehwBB+vVqAF +Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/hidden.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/hidden.html new file mode 100644 index 00000000..91f7616a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/hidden.html @@ -0,0 +1,14 @@ + +Hidden topic

1 Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/index.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/index.html new file mode 100644 index 00000000..0a260c66 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/index.html @@ -0,0 +1,14 @@ + +Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/reference.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/reference.html new file mode 100644 index 00000000..136ca2e1 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/reference.html @@ -0,0 +1,14 @@ + +Reference

Work in progress

1 Reference

Welcome to Default.

1.1 Table

Both columns
OneTwo
Expandable

1.2 Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/.busymark-html-export.json new file mode 100644 index 00000000..2666b808 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/.busymark-html-export.json @@ -0,0 +1 @@ +{"owner":"BusyMark HTML export","version":1,"kind":"site","files":{"assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png":"f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59","index.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39","hidden.html":"840135bf564db71fe28eb4d0c58e60ae43653faee35aa0fdbf02c9abe47f020e","reference.html":"85b04e445b0b833da84f386c1be1320ece110b56bb93f350f54f398bfc4a1d7d","Welcome.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/Welcome.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/Welcome.html new file mode 100644 index 00000000..f19ec81f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/Welcome.html @@ -0,0 +1,14 @@ + +Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png new file mode 100644 index 0000000000000000000000000000000000000000..1ec24a6fe02b74f933f01609b518e939d96e393e GIT binary patch literal 8020 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 +Hidden topic

Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/index.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/index.html new file mode 100644 index 00000000..f19ec81f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/index.html @@ -0,0 +1,14 @@ + +Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/reference.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/reference.html new file mode 100644 index 00000000..e119ebba --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/reference.html @@ -0,0 +1,14 @@ + +Reference

Work in progress

Reference

Welcome to Default.

Table

Both columns
OneTwo
Expandable

Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/automatic-single.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/automatic-single.html new file mode 100644 index 00000000..b0ef3858 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/automatic-single.html @@ -0,0 +1,22 @@ + +Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
+
    +
  1. +

    A structured footnote with a return link.

    +

    ↩

    +
  2. +
+
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/customized.pdf b/delivery/nextcloud-explicit-adoption/evidence/release-x11/customized.pdf new file mode 100644 index 0000000000000000000000000000000000000000..35df0cf9fa60e320038b97f6c3d2a476097421bc GIT binary patch literal 71882 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/.busymark-html-export.json new file mode 100644 index 00000000..72d93636 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/.busymark-html-export.json @@ -0,0 +1 @@ +{"owner":"BusyMark HTML export","version":1,"kind":"assets","files":{"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png":"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a","b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png":"b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd","da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg":"da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f","c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png":"c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d","b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg":"b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e","33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg":"33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0019f7540aa7f466f453fb3bb7c11b33dd0706d10bccde39de18ec949d19cd79.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0019f7540aa7f466f453fb3bb7c11b33dd0706d10bccde39de18ec949d19cd79.svg new file mode 100644 index 00000000..285a29c3 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0019f7540aa7f466f453fb3bb7c11b33dd0706d10bccde39de18ec949d19cd79.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png new file mode 100644 index 0000000000000000000000000000000000000000..59266b6a4861f1ec4ad5175c518b5db3e93dfc6d GIT binary patch literal 8126 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg new file mode 100644 index 00000000..c61c7249 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/9a8ea2ea8e0e10ada47ca38bb740448687760f83c5ee93cc688e29c829715873.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/9a8ea2ea8e0e10ada47ca38bb740448687760f83c5ee93cc688e29c829715873.svg new file mode 100644 index 00000000..8b2391d5 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/9a8ea2ea8e0e10ada47ca38bb740448687760f83c5ee93cc688e29c829715873.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg new file mode 100644 index 00000000..1ed6e56e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg @@ -0,0 +1 @@ +BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png new file mode 100644 index 0000000000000000000000000000000000000000..a1a64ca1f311b06e2effafd75d388116ab40b038 GIT binary patch literal 10868 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg new file mode 100644 index 00000000..f5ea569d --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.html new file mode 100644 index 00000000..7886e235 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.html @@ -0,0 +1,22 @@ + +Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
+
    +
  1. +

    A structured footnote with a return link.

    +

    ↩

    +
  2. +
+
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/.busymark-html-export.json new file mode 100644 index 00000000..34989eb7 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/.busymark-html-export.json @@ -0,0 +1 @@ +{"owner":"BusyMark HTML export","version":1,"kind":"assets","files":{"bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg":"bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d","0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png":"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a","b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png":"b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd","c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png":"c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d","b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg":"b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e","864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg":"864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png new file mode 100644 index 0000000000000000000000000000000000000000..59266b6a4861f1ec4ad5175c518b5db3e93dfc6d GIT binary patch literal 8126 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/5153cceea929c29c2d92145807b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/5153cceea929c29c2d92145807b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg new file mode 100644 index 00000000..44cf3209 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/5153cceea929c29c2d92145807b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg new file mode 100644 index 00000000..542a3f25 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/8a2bccd105c3d7f5814003657acb9524d0689095c32cc9dca40ba45b6b386dcd.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/8a2bccd105c3d7f5814003657acb9524d0689095c32cc9dca40ba45b6b386dcd.svg new file mode 100644 index 00000000..374f9d54 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/8a2bccd105c3d7f5814003657acb9524d0689095c32cc9dca40ba45b6b386dcd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg new file mode 100644 index 00000000..1ed6e56e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg @@ -0,0 +1 @@ +BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png new file mode 100644 index 0000000000000000000000000000000000000000..a1a64ca1f311b06e2effafd75d388116ab40b038 GIT binary patch literal 10868 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 Yc!+gbNZ~Q?7%9j|&*WCMj{TGW052_S8vp \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg new file mode 100644 index 00000000..114d9f73 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png new file mode 100644 index 0000000000000000000000000000000000000000..1855eaa23cc901e66e7b925ebd0c70baa2105524 GIT binary patch literal 7183 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 +Offline document

Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

API

Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

Operations

GET /items

List items

Responses
StatusDescriptionContent typeSchema
200A list of items
+
    +
  1. +

    A structured footnote with a return link.

    +

    ↩

    +
  2. +
+
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke-mermaid.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke-mermaid.svg new file mode 100644 index 00000000..59394984 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke-mermaid.svg @@ -0,0 +1 @@ +MarkdownPreview \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c4270a0fabfc0236f7a15bdf0689b3caf1844b56 GIT binary patch literal 67205 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 z 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 nHLM?M#s~jZ0( +Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/hidden.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/hidden.html new file mode 100644 index 00000000..91f7616a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/hidden.html @@ -0,0 +1,14 @@ + +Hidden topic

1 Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/index.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/index.html new file mode 100644 index 00000000..0a260c66 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/index.html @@ -0,0 +1,14 @@ + +Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/reference.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/reference.html new file mode 100644 index 00000000..a19e4e3f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/reference.html @@ -0,0 +1,14 @@ + +Reference

Work in progress

1 Reference

Welcome to Default.

1.1 Table

Both columns
OneTwo
Expandable

1.2 Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/.busymark-html-export.json new file mode 100644 index 00000000..d7f48958 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/.busymark-html-export.json @@ -0,0 +1 @@ +{"owner":"BusyMark HTML export","version":1,"kind":"site","files":{"assets/f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png":"f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d","index.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39","hidden.html":"840135bf564db71fe28eb4d0c58e60ae43653faee35aa0fdbf02c9abe47f020e","reference.html":"3e18342511e8bec0c86d84509f1121f7a30b335c0511ce660b427ba76d3c9dd4","Welcome.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/Welcome.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/Welcome.html new file mode 100644 index 00000000..f19ec81f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/Welcome.html @@ -0,0 +1,14 @@ + +Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/assets/f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/assets/f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png new file mode 100644 index 0000000000000000000000000000000000000000..35296a86210b570314e63b2d0409a23dd8773f30 GIT binary patch literal 7026 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/hidden.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/hidden.html new file mode 100644 index 00000000..02885d16 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/hidden.html @@ -0,0 +1,14 @@ + +Hidden topic

Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/index.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/index.html new file mode 100644 index 00000000..f19ec81f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/index.html @@ -0,0 +1,14 @@ + +Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/reference.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/reference.html new file mode 100644 index 00000000..d85f44e6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/reference.html @@ -0,0 +1,14 @@ + +Reference

Work in progress

Reference

Welcome to Default.

Table

Both columns
OneTwo
Expandable

Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/repository-router-initial.log b/delivery/nextcloud-explicit-adoption/evidence/repository-router-initial.log new file mode 100644 index 00000000..4338d87c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/repository-router-initial.log @@ -0,0 +1,67 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart +00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt +00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption +00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync +00:01 +3: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary +00:01 +4: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment +00:01 +5: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title +00:01 +6: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category +00:01 +7: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment +00:01 +8: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart +00:01 +9: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment +00:02 +10: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment +00:02 +11: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous +00:02 +12: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches +00:02 +13: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts +00:02 +14: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit +00:02 +15: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit +00:03 +16: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit +00:03 +17: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice +00:03 +18: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice +00:03 +19: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note +00:03 +20: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent +00:03 +21: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions +00:03 +22: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request +00:03 +23: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision +00:03 +24: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture +00:04 +25: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes +00:04 +26: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes +00:04 +27: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending +00:04 +28: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight +00:04 +29: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite +00:04 +30: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization +00:04 +31: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically +00:04 +32: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery +00:05 +33: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content +00:05 +34: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly +00:05 +35: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart +00:05 +36: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST +00:05 +37: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content +00:06 +38: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path +00:06 +39: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice +00:06 +40: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +00:09 +41: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +00:09 +42: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +00:09 +43: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +00:11 +44: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media +00:11 +45: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again +00:11 +46: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again +00:11 +47: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture +00:12 +48: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent +00:12 +49: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code +00:12 +50: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically +00:12 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes +00:12 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart +00:12 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes +00:12 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo +00:12 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage +00:12 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading +00:13 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication +00:13 +58: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET +00:13 +59: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison +00:13 +60: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin +00:13 +61: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP +00:13 +62: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit +00:13 +63: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery +00:14 +64: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change +00:14 +65: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/router-final.log b/delivery/nextcloud-explicit-adoption/evidence/router-final.log new file mode 100644 index 00000000..6bb8ee24 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/router-final.log @@ -0,0 +1,7 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/app_router_test.dart +00:00 +0: settings return targets are explicit and validated +00:00 +1: opening Settings preserves a validated Settings origin +00:00 +2: settings page routes are explicit and validated +00:00 +3: Settings opened from Welcome returns to Welcome with a stale workspace +00:01 +4: returning to Welcome does not restore the session again +00:03 +5: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/selected-logs.json b/delivery/nextcloud-explicit-adoption/evidence/selected-logs.json new file mode 100644 index 00000000..452576f7 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/selected-logs.json @@ -0,0 +1,62 @@ +[ + "analyze-final.log", + "confirmation-races-final.log", + "credential-policy.log", + "dependency-lock.log", + "focused-final.log", + "format-final.log", + "full-flutter-final.log", + "full-flutter-timing-failure.log", + "gtk-accent-host.log", + "gtk-accent.log", + "libsecret.log", + "linux-build-final.log", + "linux-release-hashes.txt", + "live-6.0.1-final.log", + "live-6.1.0-final.log", + "live-lock-final.log", + "localization-audit.log", + "localization-generation.log", + "native-spelling.log", + "native-visualization-wayland-final.log", + "native-visualization-x11-final.log", + "native-vm-final.log", + "pre-fix-draft-confirmation-race.log", + "pre-fix-regression.log", + "router-final.log", + "snap-browser-login.log", + "snap-clean-final.log", + "snap-installed-final.log", + "snap-installed-identity-final.log", + "snap-installed-identity.log", + "snap-installed-restored.log", + "snap-network-denials.log", + "snap-smokes-final.log", + "snap-smokes-first-timeout.log", + "snap-wayland-final.log", + "spelling-integration.log", + "ui-confirmation-final.log", + "webkit-wayland-final.log", + "webkit-x11-final.log", + "writerside.log", + "installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log", + "installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log", + "installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log", + "installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log", + "installed-kvm/acceptance/desktop-xvfb.log", + "installed-kvm/acceptance/installed-identity-final.log", + "installed-kvm/acceptance/installed-identity.log", + "installed-kvm/acceptance/kernel-audit.log", + "installed-kvm/acceptance/wayland-configured-desktop/run.log", + "installed-kvm/acceptance/wayland-repeat/run.log", + "installed-kvm/acceptance/weston-snap.log", + "installed-kvm/acceptance/x11-configured-desktop/run.log", + "installed-kvm/acceptance/x11-no-at-bridge/run.log", + "installed-kvm/acceptance/x11-repeat/run.log", + "installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log", + "installed-kvm/install.log", + "installed-kvm/portal-setup.log", + "installed-kvm/workflow-run.log", + "installed-kvm/workflow-user-session.log", + "installed-kvm/x11-configured-desktop.log" +] diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-acceptance-results.json b/delivery/nextcloud-explicit-adoption/evidence/snap-acceptance-results.json new file mode 100644 index 00000000..07d78a07 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-acceptance-results.json @@ -0,0 +1,34 @@ +{ + "complete": true, + "snapSha256": "2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce", + "strictInstalled": true, + "installedPayloadPassed": true, + "installedPayloadLog": "installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log", + "browserLoginLibsecretRestart": true, + "explicitAdoptionAttachmentAndDeniedNetworkRecovery": true, + "spelling": { + "x11OnlineInstallChecks": 20, + "x11DeniedNetworkChecks": 20, + "waylandDeniedNetworkChecks": 20 + }, + "visualization": { + "x11Passed": true, + "waylandPassed": true, + "x11CompletedChecks": 23, + "waylandCompletedChecks": 23, + "successfulRunsPerBackend": 2, + "reports": { + "x11-configured-desktop": "installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json", + "x11-repeat": "installed-kvm/acceptance/x11-repeat/visualization-release-x11.json", + "wayland-configured-desktop": "installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json", + "wayland-repeat": "installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json" + }, + "historicalFailures": "installed-kvm/snap-acceptance-before-kvm.json" + }, + "outstanding": [], + "installedSha256Verified": true, + "embeddedRecipeSha256": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", + "enforcedAppArmorVerified": true, + "installedIdentityLog": "installed-kvm/acceptance/installed-identity-final.log", + "publicCi": "User approved publication; GitHub returned 403. No branch/PR created. Disposable KVM acceptance completed instead." +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-adopted-restarted.png b/delivery/nextcloud-explicit-adoption/evidence/snap-adopted-restarted.png new file mode 100644 index 0000000000000000000000000000000000000000..42d645efd1664242d09ca4351e839c129a3aa45d GIT binary patch literal 68209 zcmcG$WmJ`G*fqKo1#Bc01q1~VB&4NXBHb)Hr5ou614KbUx}{^0(jAIOH%NnYNq3)X zvEMPypYI*x{5ap*dn+s!Pu%wvbIxl%`?IXH$c?L{R}l!r4KYz6c?9Aze2L|SdlCM! zcD#myzaHp`%1a>-E;I1%B2r<#Yy}j+lLf7NA=l6EUqF7&EyLl6? z==>GWO+)#sv-8&F3;*-|_pe{^xW)hHyP^vh;ZiX#D<DN{`QUBui+=T*?S|n#)`drYo+KFOrRmgKcMJ{u6o-am!v6Wc_S$m zRekxCu3fl;`57YNNpS0IYHI3Qg_4O0T7$8XJPR%ju_K%+KRY{{cppAeB%-ABC+MNb z&!0bK33sGZ<*#`E+*4PkC9G*=rWpP%!i#m?%6etExTvV8lmF=Yt8O;<&6Tmry`ANO zhK7cI#=6NjynKA~ZBcsW=A&IWwo83aZr!@2prD{Zg2-5yYmXVLu%CXz)!)HDN9P+5 zu-cP)?dsKp=iJVlGhSB+I==Cl>FM=yOPJN#48Abcwmh)fifks-mow6?Lb+Y!f;rIZuRX*C}COfOSYXK!_EAXjsw#3IJe z@0u^^Uo13=j=TEVuoJ)M>G4pZkvy7>pZ^|9>$X~FmJ-}CeDa=m#FG9>%tAuVl2 zcDDJC_m^SQ@u`#@1H7_kJk6w$~=&UC0OsrY9%mR&>|KN>Tz+ z3hQ1|Q_~mP)YSCcc5Zul!0KRgmSUrhQLC!Vq&JO-Ug;7xcFi({51;Gq;PCKGQZ`yn z&b@y_g|{g9+d4ZP?d;&|`KF+Ui*|>wQ@L8z6`p6O+8zg&_YieHo@(xHZujrsC$(cz zRaJfc`gI76RE6z)fIND%(vgYsS5uSmpKQ$gXUAKeUnyUb>efz9PU_}6ZO$}DKe>O? zs3r6X&MornS#{a!k$gRz4?m0-4ioo0Qc8M+O-E&m*B3HDvzUBjWTbFY)`tj zwYDC?(KyWq|1KjcmNQH;Hxw)CEUF$L5 z5jWv^HrCORTjL-nD=Ucm+27y&aNDFYfDHZl%9Sg($ax=l5fT$m(Yd)8wnx9J9xOJC zn6sy@bX>FS(&K`U{{8V`qWH>H1d2LH)Z=h5z4r7li~P)F|I_M3ZG3bzx8te?e|&sM zi0#p?1rt-AQjQv*=c(J)T)P{;=ij<_fByWbcHOJ7nH6_)HGkdV-&IO)=o60Pq#Kl1e&VUcUx4mKTDhHoP? z?B_efr`5hL{O$z?l!@Z=cs$)n1$F*?= zdit%Moj4W)@dk>&%222v!H`W5nUYdcS$vV=IFJgGxQoNZ^pwB4yEpbXrcui&je!)N zdt;7^i;I1_r>CdNxf)RPu3TiU;|UUd1a-$RFfg9Q;3}mM8YLgt&@#IT7gSMEvAZ&| z7gz9t47xk99}x*j`a!VR#`^lgM6G8vO7l<3@bCWnH|Mc@CY>Lbl$7{?C-FvhH{CPg zcD1v!>(kdkiZ(DGPx|<4B?#OsR@2nbhz$=H#zi06CkDgvLo_vxj8rP5OPh13i-^G2 zF?gGYJ7%Wu78Z<=qEH=iDNz(tP(1ts0z7t>h$tU1Fsz)O9Kk!iZKi%xdwxW7yyfk1fW?Lh2b915G5FJU%XZ0WLuDHU^!Lon#NDSVZ?;O}Rra)BrSWo|M z`1Q+ttfIKbE>-?ut5bl2*Qu+y8EwD(XCO~oyWA!fMYprDLFx7D_iub;OKWTW&!1FO zR6XZMy)kLR-1g$AHrYPqw%-qlAY zx5LpVppKA*Gw=-;82A+yZb2Bgx3%F?e*XNqFHdxCZqAQ{$-%~ExXO78GU(m{BICQJ z*oSWg^62bY9nzecwef1#v(uB0$w|naI2L>Hi(>U30z9Vft3!z4O+biPqj? zugF${vJ@1o?d|O}sTg6!9(<%)v1x;D{x<NiB+@}C^5(XtPvp{0s9G|Z*RIxspVL-=`$f`I7G5YpzxPF&)g5~ zke{NWhHBi8e%9ARL!KxwXoWNtPwg2TRLOj$3ZYe5c?63wTxw-yY^-9>#A?)G=je#Z zS|~WkmoHtn7dGIMU}Nl7M-L*jJzg{4dGX>!42MO9)5g?%yr*cHT(2Vtf^v5O$4Hbwzal(noqlV`JPpiXYIE z;BYN1EwI=g)4y-n+HT!`DBM@zR_k#RK+bo#GoTI4kd>La>(?(KW#xg+&NXPoCMG6S zki7WC79-(mk%!F_KYu34#PdUsfz_VPQ7?rpc;)V$H1&*f=1-0~1htH`G>sQ+Sj(__ zX4CBELy>^Np&_Yw{_1C*njhwL2fx2|-TkLpZbR*RF`>ro^kClF+FHHD9K9d27{h6W zOKH^kEoc9!lBFdh2B$O8(b4hq^RuwPPJ{!ngK~Hs`z1|?{X$n_IGG&Z?9BW;0TLe{ zAD0r~P+E!VEU5gD3*i(tP!;g;x?b0wqMn)~`fT@aCY!4VOT`|Gb=U5_qbBW4>7sWUCEkPpjN z%dzZISRE-{TkK75^uMQUatQh60tYdshF;Kx>ze3MyT9(w*2`!5?TFgS?BYr8%1u1T zgt|IGx`3Paxz?c+)V`VgxjtEswz}8P@tT6&6y-uznlh`L#BGhF4N7o#l^+t<<3q{T>V@W2>$y%^#^k?RyF%mek&uTW;F6d zH=)_4eltx}QB%W5LX_9Sc0lz9!~_T_FC}FLnr)vHXWLt$m!z?YH6-Ynzl} zjpeeY;^HcM zcNmweBrJ>_C!M!Vk~jV=s?D_iwG_LN;t`sPotNb#*VS#H{&bzsw1;!cGo7b)tmXuhIl;oh%iyv@qaorE7tgK8c zJSr$)c_&z>!fInjigGUp?`Y1ksgQO#r>k^&z}SS^;>H7MV_EN zp@y|Zv6gEvo_EOF_=?KPk>O#jS`WS_PfX_8qF@ozrQ_%r866xQ^JdG@;%Y_4FL0fY z_cz{Nz`AoCduQ~)4lm^ndxh=|3kICz#PsyWSsV5nF+i!{pgZ$`cRA_lTbr6biT{OT z0i9X6aP992?xl)Lwn#Bu8(iDF{$4bRHZ^FVmZ2 zP!;Ry>LBrfT0|TQk97gO7CrgZmEiiiaHxOxpQ1%qj=@8UGLfb9PE!TP;(^2Zy~v0N zt5xOn0yh!cdS`pPue-b4?Z8G(E=ce}7jJf! zQkExRd>$SiKu?j8caXUKjeLF$SFc~^wVA=C6x!NQ$m)l#h>eZiHv+ZFwtVy(pR2sp zft!biM~x&+VSYX(rduo0gyawXo0^&`C1;KAjE4dM)x=?Sbn)LmN&6y%)H`V9vb22~ z+onXs#2nkTIDkn$VBg?&+h^{-!T`u?vfgK++Le=v>b(o5b82f(Kw7x(4jE}_X`$k7 z^?OB1r{i3@bRT;AuV24iRC~t30qvy(=&d4p zYIRi__qpAItf8SH5ckk03Z~ER+@J{=N_^>aw6``tHy0fhrCIi75~7KmoSZIfsX62^ z{%3t)5`7VmGZXDo)4ebJjpO3s892eoyOolc7atmmTFE{>J|30T4>0w zhJ8Ba$3&X=RrRUTL#vcwZxgm*o>!~4CX&%;lm3L|g#{IhL-)Y~vTzgoH05&N9r_U#|K`2ZgOt*l(31a|D=;sU|`goz0t@;83> zinPLafEVNV-PHi|9303gq{ssopWiy@Q#U$)wU49IjOEd=-PX{m9al%oZDxIe9CC6x z+Ss@(|4>&|m5OA34TJ@_qh+iTqb$jV3m4#P!@?muZax~Cv?ZrnP)?xBA=eBvE9^dh z`SQizKedJytIkJ{B?@5jETDKcD^KVzP|^52j`so45fc-C`}Qr`8=AB=)Ktr{if2)h zu-t&Cpz1@xN?xthW4;4l^SbS?pB(Ke$jetauJN1nJj%o};^C=Wt35jfWCeA;u(&w& zFa|xV!^Z9K&k3;4-@kuh*I>V*qN6{0d4Zzy_;EV4nH%@HzN-C$0P@0<@+3yAd(ajC zH0FYUgM+9;Vuv(mtKdLqr^avoa+j6#Y*b203Vr>!opVCAT|SzJJFa7T17P8V>os2T zHO=@Y3o6%ajs+#24b44K+{DW`IA&7{qN1V=RhOhR3=QYrU%m!$CYSF=X#B_5&o9dZ z8{J_-O4{$Yk0Vb@I5aebA^;@{`APIqG_P~PyLUezi_Khwk`fYh05ihs+~c$q`h20z z2k)~`d`}Z0U0CM#@9WjdoGdIZ18?@lR-Zk3l%o5$fvc{)2YMeA0}S)V{?HvMbBxs& z(5z2&a#8Tr#dkVDKY(hIFll9*L_sZ2N41x*vkg$!se!pln)P?jfArI#MEq`4UjsFZ4Ug1c$(8dG2M32S??r?x z!A+l+>Ae!-;!B&}Uxkx_sJQFksKxJ+-^M6m*dOFp5ZybKnBT;l{g-Y&|1D}1O8 zCtm(|Z6>07@$3J6m?LJa>%zWfqYOsbd;41`x%<+^3-O&17>!Kw9IPR6e3ZhmVb z8H*2&j(BT`GvRU}`T~FagkV^a24m@qUUtm;g1zrRc;j7ISm<+=pWQm(=H{kV$NZoR z-wFFp!cfA}JCM>OX`mjhadP1M3qy3n<+RQw&7LcL#zdEN-p+Zskl*nSKbI=Uv6ehB zzYmB0KWdh5K}O#djzbCI0W#Hces}z%P>M;7 zL|_-z`Jp7I%F@c-#9Z^DL`xenI#K*@+K@krz151OC?CI%|gqM`m!-o$+xO4b7NQsBb!oqU86@R9p zsw&rtkxHPq0$k3?$+39x;$3<9b4q<6$IvKzZjuFyJ_4|M^XgSn9tVKMS^#e1;>O_m z?p_xb68Z&#!5d1<%KbgbRxf4b;Zfh>prm{aH%3IFQe+(D?=MxoMsnd!!olQ*li5Hn zu=V*cdS&dJ_XkrYNN7UDa2E&j^;A^u5Lr%7O<@2qL#JUOKm}Y%P;Nk40TyBa%SUvz z0T4I{aPTQ4ZhlD#jn}WnMp(Jy?Oqws)ElRzqS+QfV4>h~__sWe7ZMTzuvTg%1J2oZ zE}*~N`);?`<7-uWyxA%h!@>U3V}pn|LDk02PNUMn0*U+y)B&@~P?`7l_wAPY7DudV zv$hl$7k6;j1#Jdh3hfGwI$!VDxVYOc znEgpmtshW*YuE;5d1$B{IxXhh-N_;r78bD9_4W0@(NB&Kww@@Yp)`THD?};fD1qn> zb;>#yC9HT>`P$-aG(;m|5=}kib%WKNB^E*23 zLE8=v#((%Q8DIz?OHGhOAO?U#h8MTBw-1>+=;|iH>KG=$Zo?r=OrG?Ign#_-p&m3v z2K>)ZLP^NWk^ z9UOkQr|?-$)Bt?cekYhv-d}sNJ5o?k;Bj)uE{)v*$tEeey}600=}(`6Dx4h{7#I|E zn=%EKz;$nRcEbtioky!reDi$(QlJa6TaELotB)ilQQh>J28Cj7Znu%bQ!<`^tgS6O zA>nPi;k|qJ6n5I6V;@0defsn%FyA-#Fjp>Exb@VE!we>m<5-49aY zE~}wi=yeS>wdmmBso7b@BVB0dSG|*J91cPJ5w|y>pyJ^8143L~9ir4Q~Rqk`!EmW@6&;!V~v5Dq$S3U#!#W)w%*U^}@Ir^?v>bIZLs(u~bC(AJC=M9b#W$?>^BrW!Cg2pLE+UX-AjhLk za;vM|F7KNY4!jG4bHHCc!-aL1R^3M!${Z2CeZBAv{TE= z5>i)g-4XzS8;N`$6x0o94|D--lOtHCGLI7%$f)%6dC>V_&u}RL^_GLI3UV2`0S*=x z9E`M3O_c{gx(F3eH-E6c{vnJQG-Z78U`BJBkZ^mh{T^rulrKLPnGHy@ngRDi&4TFA z3i4co?gl_4SjR_rxNra#;045fAP<7ta*`Ly9=7Y|ySce#l*5JPsaREkqygv~ zrVtWzVGwnDEn)P~Ca>JM;SP*>xY+FS#TQCS#64>wFZdQZ3=4spE7B=K?bX$#@)wp6 z6U#3xwK|>#VSNkQ%Nxz}a5R;_rKu?PC^#1Lx({F-b`%-|1;5+=!PYzg*U)Bt`%zIS zV>>%LAl9i^Cm|Doi~WQpxpDnE*Zq#J#FrpYK&`(*33whTCnoIe7P>${H}lN~C5(c@ zJTfnjDZY~vM74o|yrL5j_@KA6cXUXLh@=CDgcYcC-Lqt9M9b1LYS-`@v=GwM)APr# z&CMBFSe!^deuY~OdM=y^oea|*=&}DmdCnR`%FD|`V}Up<(*PCv6i)f!!-p%BAl1P} zKEUfTW`pC5Hd1)QXa!z*c~%}Cr!atEVP)mx<%R8n7N7CoXcv(nhK{#>t4K#g`KzyQ z8#rnd^J^qXy57jdZ{Nlt6w;*Q)FK$VjEf*XL7?hsZIw{aR#U;eK$uj6v-ngz&^B>^Y?FHVvyUBko` z<>jYVR>q+H&dlg@$Bo18Lh%h$y!9VSWk>rUBySLi`Uu0s8+4dC%m-yHl+~fexbX{s{=mu_lKC-*^Z_iA zUqhxrx}uL+5(hH9H!G(mZSIeIY)s~3MQa{*3+QnKYMl?_Y%NI#fVVxR2W3Wu$%qCkko%e zFZ=yAop{kGHS1>(-ynOS)RYNWpxWBo+XJ;_E1a61Mt6Zc8W9o#-GV;H%-q~uM@M#r zvVS85m$IXy0~$nhDf|KIL!aE0OYePujI^{YLEak}7_eJ7LqP!U4-(z)oY6?IB*@a< zhn4$u`yu2c$=$oET3XU$93Z!%T}IAxPEcVTISAF=`r`;laVGUJj9f`_O*HstsA9U_dom>v;wV3T6UX+P0>q1VaE!?VxM{bb_?f zVB9+=+4S^TaHD|zA|fIlKYmPrgiW=D|Gs}`{wzdAc-7X%2If7Da^k7M&H6WCItXnW zjYh-$KreF#Wg0qJhJq{_1=j?7jsIDQ;6;?=9Ng3H>exL3f`?(^AaQ2QDC~t$d2Pes z3Z`{T+BJlJ4c*<{AkLA(xSYLpe4HP6GDwC{@!<6elwGx=L6|NoDTQk=cDA>JH-O4Z z-^hrBkT9cvX=+M0v-r8??C-vGnRqBY8lWJ;aiR81+mwUk?S*G%W`={~1CgSvP5CisEKntbT4$jxqU9Tw_3Mu7eB0gLk2&`?ynAHVnI^ZPdq8{0M<2hcCT7J#J| z!$pwh+}2aSpmf1W#*$uLBOnL?V*?;G7{#qa)?>O5jDyD14eEVhx#7mZjsPzuB@mf~ zVf7&!;dW41??4J}XLkn$Zbnn!!}%7-hQKJx_gw_>{rmss=S8Y-UAbcI;BZ<;1`zfs z2S+%bE-1h`>YSHYyYL~6`j|ywO(7JVYW)dGNIduda}XhD!DvK;#Z)-%*ab)(szqYL zixH6Z9#)=PUf2xm2+zAYpl+=Hg=7C+p$nKkx6*V;QvM&@M*o+I_W5f3|0M;yJ0M>M zNel{?mKI|~YriS`)!WfeNc{l|I`NW2AogzPom;Q!9y>WIfm!%c@@#C>zj#4W| zeG$g(9vGP4aEk940#6c91gQ5K|M|08D*Ii+!o#Ufem)kXC4>n1V?7zny2VmYMmSaoP(_3=8HP+L@o|xAeOx@g$R!X7JWbSEV zz5+N8bAY}PkQc`%CIp^5K~GA9Un&mfbRdmlVPB5~4h}dOoi3o1ts?h~7c*}K=HIsr zGW^Xu%x~#@;eyBkxjY;nx%jT`&!6zldF5#Gd-v2WlAx;sP0rej=Yi?zGbqL|0Br~0 z07EjXlQK+L^;K4Iyi-D>GLF1uzRA*NFFOC-lPK&{gVOHrOblrN*qDiy_S2Uy$FvPx zkWz3m7>Raubz$^Spy#lRAesS@gjp%zUgbyl)ouqp!^0IXI*p-*VFswN)T%5;(5q)jvb773o)@Ba%dB^^d)tFT=&1ZsJY=YcvS&H|1C@v{1LJ+^5SY&F~su*xtzDq=rq1Z1S7bc9y{ zlmmmBTv^FM(LrgiFz%+(*48!!{*sIF0CWnRJ@RsLcCL2XNPiN2_pipEqz|gT8BFmIGrX55W zZriypDoq~~1Y90mVsOHT_@7}yI``km7GQ3?$6+&gHsETYQ-ER4>#J}28<^Nk9~{E{XcuElsH;nW)zbU@ke`4~9(2w*_?SKbQUOX+odvNr)LJjfkT@odU@nVH{!P>kxp z4A7wzPgFVA>o9|&&Sg6%si~=nY=Rm7W9e8Yphz&3zIM$IK4eycaWBeNR$%KCDPl3m zL8LrE3`j`K33t>Mek>4D=lz2@`?UwKY#D z48VUQLPO0*%YvHqZMb56eSqWT!<-rb7%Ec+CW^N9_U?h(M@s$QoL0cq(bm@X2TUJo zYKKQ_wZNraetKQ;`U)6G?)J71g~uQy1dJje0;U%h04(f5I6!JiN3o<%IlxQ@7!ihY zLpDS6^u|NJQU$OBSj@=K5IFZdn6~<)BvQ45M2pOaSfI{;Pb@Sd;tbf=b!@$VgZW-x zVS^t%ehj2oOGd^DpciyD#lX>?o=qTM&8@Ah?Cd#gW)KMUO4<9HtxSN!!Ol3pv@{G_ z9P$%bwD??#fM*C%VMZnpoG_AnnPUTvFSwwFpFgKSyTS}l>=y9C{4tfqRC&PYE&A%E zw=!C(>eb}&(tLz@4nFhC5Ra43CwMQ`(0!QS6#>0*jPI#WkW;o#g8A90s`8$Q;JL%0vnUX-~P}6 z-U~0eR^}*4kW@2oze`M{WcO2>1*ild22vYVxwx?Ko`AxqyWi?iHeen z<&vWcLh)^4{8nodXE2+dsC2XfWYqv*S_@(nswXTCte}*nWJ;Q=iwi)X-vA0*T1;Ud z0E0#=9`3DKnV5(rcUL&9m|9t#fi8TE@y@=j$S}LX{QKxKgWQHv-d=z2uz_ppz?U~I?6I_gSxrS*4)I%U1u<}sUwQJmlz^DT( zv)y26Fn<~nbI7~|>;>YfNom)-e}Yd)!1J^Ue10zB>Qq6p)&ZbF%N7g6NH7PCm5?PU zy}y~Z?Dh>1F;AJ8;yEnTs*lC87k`;yRE_6kAd|GUNiN}B)YH?$ByCp}n0$6zRiTZ* zJ7_v>ITsRDPDhQ@v_0+1cGuiz&1osllW`f_}SFRhz z<5SGn4^rWDnpiWfSXF*)U0xbi(X| zEq^BOd9p(i*r;CVkOPfEJoPFrZbs3BDTNFlNbU(QK7cRy9yz(zj*0xsmoKHpl2cO+ z8kVF$>D>?lWu=%eqhDT@J+AB{GBKmf&o={4+CVh(0_%a5?d(Uvuz658>7>Dr4Xg$) z>A5u+#SIJ1hCg|GHyFjcL(Qp$3y0`)ady6qq$_@vF8U}Kf)69wfuHx{y9ZQMx){?; zIgz@lEDj_tLY4#|r(iK@Mnl0ao7W$md=)P|ju_2+y~&xG8F4>nS67V973PJgdNpxi z=vp;yQ86+1?%yAUGx@giaB;b9wR1w1$mM#*#)jdskfm&-46Lk$0V0DS%)u5xW*R{& zQ}p?;yS)uP(7@Exw4Vs*X>U&tn-%btEdIZTN{TWXAZZX3(p$#k1xH6`mV3)9D1bbk zb<+~%XvbYWJlBHq%_Xc_Sy_Sh0iJAgwF~{0QPSyV0bqwKO#7Al8sf#=T;r(eB5Wvt z2dEM09)*xGnOw?+Ff2I%Q7-d*p!T*DiNM}}0M>}+=4Qy^o$;w{EO5&_RWJFM{10X? zvokZGTWNy(6G|P*>i5l?H^D;+{$bFUs~p#~jEyr44`74}E&$-NP|K8BzFvHX>5(8n zmgeW9hei6poSKnocmo72&?=IWk_HC{G5*@Ar(xpM#C{+o_h0bH*e$|1cDs`rU`RvP z4)c!dxVZa^>G1&azy(Z5PM#YD^Cd7lr2-{>Oic|g0ZOoj%Zn?cQN?{Sf9$4UZvaWP z!;LgGfk|7Z;Zv(&AzVmYNC*K1g(vib*YzK(cWg5HP3ijmgp$N@^b8EZe7Ohm9a!{y z#YW)5fK`Il2EsDnQ`F;6n1&~w3T;VRN{WG&7WdjUz#ydd{@B;=yn%swUtb?kUZCoz zm}XGS_F;4Z^bFnwv>^5fA3SAhH%FS9GQbWCHXfKOZ%j7=$47JRL7M^224oY`sRfKi zeKDL6go09Cmq-&xt#Z;8v-*K#S2?Vx{WqPEq-h1i_M10%SoA-EUlHPI->t^aPeSV6 zSyB9@aZn0i+<)L!6B9F%shE`!3sa#@=!0v+#aV#$K(qu%n?6NAnNn0_2O$V51JGcQ zZSQj188_tYEObw2<<)?>Mo!bATIa`mAdBFd{5dw}4ihF2h5EMPj>upuOgTsLv;|<8 z0^i>yB~{Xh5KeB7`bMrywr5B?BGoHd4%`}I= z*?|=T6a%3<=??}QfGmpw_K6EN_O>$XX&R|$)S|H&_XhY0P5?oHcFw}ie(uc`UxcDl zSzZpD65RROaNkhw+?I>ET()Ty+bh9L1F{&TAwa&*(aVdA&%x#o8w5cNJ8Cgh;2qsD z`6ir68w?T~;4ve;b0=G~5~h$!5AcppkJbPHsZ}}Ut30)YP=qR#F+1NLQwnDRds%@> zHWYp6k4k*_QIaL_W>FCvN6gC767-$nVY627FNQOymtYXh=qLbOsDJ|yJAc|R+7DnI zu!<}#ER>n{)7f3P0o!dalr@-d3T6f=tZjgD%7pHabzO_m41-!Rs9Ng5uv z{Wk!O;bJffaXN(oi>jU7Hk6X=oE#{fAb|0JR3BX;tAK#M?XjHjg5nhzBN{8>gs8ef z8vxB-H9|W0#l1H03N7`a`((v11+Vzpl`H5wPTiLdU&6-jLv0G90cVp6D|WNU21veO zKhlW%n4pw(i;VkGn0N$(`rPtz*5Z**yCDF1m!_|ju)!gsj}j9T7kH|*peLjN8WydU zUDW%8gyX;6dyCKj=e-lmVKqbRA1CiFO@Pv)Z(sm30EynUTw!PD1B}aW5r74hp0(0z z37>?LzI?f!>1P;v{=AMG7cZ8^Ey%TX=;#3bOpolqpAPIp*Uhc!^Jg(ZK|z=Wfsq8H z`+;oLmphiEL_{#ki39tsTx&eHeGBZXf|LvcW)utu{w$Dhczne)97R_RhJ6*4 zNO|=3#s)m~k&t#21^W9$ne_*5USI?;kA|!Qd=JzV=7>NeP3qqk-I#;|0fJ9%w8s@N zz+w1{LYgEPhd&1fcDA$>zl zHSgZNXn@C)jNytQL}BjiA}!qkc?|kHAP=Ae&=O!ygi9#~&fqIoY|3Lv8EBq8>z_a;oyaMgq1I48?*n2AA1amH?;u2mWEh zhwwcRw@7dyN3=q=tb(M(e|BuEQR%3NLWM?0tJ!A^`hw4d2h+)3;t&qt41a%(b@f8# zaJlW{s~D&|ek)pV;1*0IG0rD0>!h9#6DWaz5E8x-!m~u%dwYRjzC7{*0US)!AJu3m zDStFHc$0oe$;c1|#OFR5)Hn?w3;V+)G%4_<`6ot01rH5nvzZaa!ouR?s|LIs9vW)Q zp&lfUhKb0Z47p_BHiPC4z$C!F(0z4}56rMU&!5W)Ji|mZLU8Ln>0g&#Xvi?I21ha~ zySBZh9 z;TZvNRX-`)d-wXsvzyU{{lu4_3<&zJ8t&#tvPVD)<+dmY|q!L&`>f>;kwB zhT{HEp15(KZW)*t#`Or50V(R@atPa>xgwUO1|NgY$P)F%1?Vp5q8UHb$~AHgxiQc2 zeCnK6xRE~j5^Ry`>gv~@{imwkr$h{}T3K0XYL0>2vjpBHD>xodOD`lm*CZn$(Tf^C z+~4>5_;GG#Mnzp+K>{YdE%3C#($y?RKqdFd$N&|pYiMZ5%Y$vi8FmyzVLT)t2LJ)! zgA}5Y1Jg6GQ(RmO{e}CKq@ibEfDZnnAyaIHp&sW3sT~knHM&UymLVv3@D!Bm+Icb| zNH0S4)j~=FZSZx;Nymu&RnQercSo$e@b2A<5euP#Wx_|oRV><7z)-3`^3TY~5zGma zh5a*+0*u*)Q^Z0rG#A8#Vl@C$d@zPJH3Q)vMhmcsIR3)RP*)(bojcY(#@>KpJM4)M zk#*1evKowcl6Dyj!o+7mDA?TEf*b7vZm}eSQ>;dI_pbBm=ySLQIAhOZF?(JH8XK~x zEUoh|&+V(;kS)CAoj-mg?mk2(17XOtKX*(CvV!6v|7<-8Y*3^iWEJb{V1IZ9?G&gI zJevdj35IY1KXf1&e~*uQK%hdWa$Ej=Z~HGyRVYYFm;U~h)zHY6M-x9)0VkHV)VTnQ z@m9b}m_c?xzXoTRmex1591c!SP#dKt2S>-op#QYa+FYRoathvO5H%h%-o@NH0-QKI zrg@kC{M|a(-Q8U)8v4j@1A*CY2H6ebVb&GQhXlK>vDH16d`b-D>o7;E;QXXTLYi32 z{q48v9_LNvXss0&`|}=l19XC7zdSSJ)q1|Pf=lFYm-)FE1PhfGmGT;!hW8f%3I^PN zjz2(%Ir3Zi0mP_~%iaZJV@0bSmn*scu^uvU+|-0uL0i*e(tB`zDmT)l!`aCC$plc- zP_9{?I&Ky-+pa+KtE#GC{qd17ly+^ymN-dz^4n&H$K7N?TZ3f(NI_NzO~eU$T!crZ$|edS85*S(h&U0I#YT z?K!6RW?Dqs7sl>@df%|0Us0w@sr6f!SAkJ;>D^>+a$cVH9?qD6QrY<>yuJ0qZGh-p z6b4QOR#cmEjU1(9yu_%aZewu0SEP2Up5K1m<3JFVyB6)p1AROa&yS2qxcegK{9-Uq z`~EMoI%etq7cX3$TWvo)VWaX?iI(sV&Yc7Yuo*S$ZyvZ2`+4`A|K9$m@#hG?1~4A$ zdLw@r7Q!4UU4;g*BbK8C(VJ)xxzC=py>8E7TH0XJ_eOO{Hm{9-L`-KGQ)da0UO0_mntX2~;C? zDqI?fEcfF-khz3FutkGF2gnisGuVpcVlJ(ZM@puZmzTq{B!2gn=vmGmd0q1apBa=g z4g63aBi4Y=HE!V9+~n6aZe4a*qUcA)f~eEce?=T4ek6cA_O01 znPD*KpMe39!^``E;KS6`u7%Py>41?qoZAfx1^z_sF7=xM_r_@Stv?sNH=~W7M0fAB z(tvOD*bB(^GRe{4Q&w$(ig>qIufBH=akBx+0KOafH zv6&k&^cD(oPunWrG}!4(aFaP$YDuv-vuj4vsGYLMH=S9!s#$2i$~Ka8P}{x9UiZ@H zCMdr}C^`!*PCCpsb6>`^PFdQn&ASO&5PA^T)sd9AY)?&4C5z^*p~rGDM- z&=g+PDAdmEyEdjPlwPrsdLu(o+P!JCj(V>~EJ=j*MeUy#F*3ftG0l*nYDc;<)!HL9 zuz9T|^wjcwyh!BT^}DqvA=*@O{9g!q7mM;-?pahR>15Y)ag7N3ynO7%`-$Mpnood6 zVos+mdaVA9$~``K(9wvRGf8}8a4Ya5;kAaAo6=RYKyUn^%^ zjPam(jP&k~k|(?A{(@pUXk|M?wfL;g`s~zQK%h3-qwJ}Sr1V%t)}w!6Nh%owCB@UF z+8dg2S16f8q=*}-oBVtqrYodMyL|{)D&A_ZbfPvn(GH$L6^q+<{`r8XJ6aksu*y(u z?klU9JmN5~T~68BI$*N+y7o!AL^3AbOqPWL08%%)YnJs zaYj}~&tDhKrsNY{^XZu6IxC8GY47TOwleT|d4F*@&9>ZO%kYdxvySs$H@odwkoe_q zjyoS;C=2BJ7aNL0?jA(s!93&noS|Vo&QQlUX=65Pq;6YP!>m}d*Vo3JN?D1+$FF)K zzeF?MpiEgfP5$C8BJ?bujkxu@t8$}Nt?ts9YX~8ZfY?NF?MwrGTFtjaPm&152?A1o zJft4WRm*X)p)$qr2&=v(`2DhHZ>@_U1~+roKH6Bsj? zw^f(^Xr@jE9TNv|6sAROFH7MD8O~ST;TqO!J%r>+UA%itEFCbx^k>5^Z&rvd?29;~ z#J;uEs<)>KHa16Lx@y2#sl~3}3q5h|S9r)T7mwA+MiW(Q(&(kFZEbtIyPd(501DfB zCvaqxVmboant(1JeqB0HPiQV5kK~@Pv9VE8r+)w5)!69sLx(M>u!KV=m(%R`*^g{Sd?(vI%2T6Lo9}0p_uZrY2oAA>&3w;vP4#~|O)z$f?C&=xyG7*D-?;y~ z^d^&h3kg}P4af9;SXA#lRlBD*z2VaU)h z8cTGfX5e+Vn@__voA->rJ&IFKs_7-)CGb9rGBa2_9O(?|t+hLK_TKUgPhT6Bx%_v3 z%~SqUYqf*b>xHG1wLy}-u|NjL6ZO{UGDG*)70-3eIKNc^-)Qz)_j?op-sNMlsvPlB zQfie!CJ9DIvqoNczdb#JZhz#Lfb-fOQQS9^P?ctM9&z#rZhQJI&VnpG>rwDAJ?C|9 z$80t}$jY6*D@5sUo-)7_HM44};)OO^OsC(B%=B0ue4W=BSn84%6IUBtzp`SbtxLK< zfXwJp=}o2dVz#r(Hj*YTE2nLk3f+lOI2&HwuE$4yqUB(;873*QHG1xLL?o9*-Hb*Z zQhSLO+HNswZ0x%xtI_yrmOXVJxNu}O2e#-AEo0jQ)Q{p3xp>e1xt``K&)j*f{l?cD z?+cnDo9^0bc$_p_Op{t8r$Cx!{OFp$IWg zDWI~XF~;A74OT&SkM&4N@1zUryO<~6@si}x@V6W2K>%|(ybH;P=O*Z$5NK*mC~;4k z%sw1hTzs>@eZPV{up@;);=`FTwPkMOBd;zKq4>@Wwya^P+sFWc+lR$}-8t7MmJ}#> zat*`Yv&?orY)6lBWyX!i-MP&^*7?~et z(*-?A+-^bh2mWruRDj1iCbk} zc+=w-Ors=&qor}5$VhfnziD9F=1^Q-{%$<}GH`eH37XfH2l;8J>m7
4zWw{KjO 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-adopted.png b/delivery/nextcloud-explicit-adoption/evidence/snap-adopted.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f0a6c28fb509e97859f9c38422cb46e0690b33 GIT binary patch literal 68276 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%0AcR#w~ORz{2@q8 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-adoption-checks.json b/delivery/nextcloud-explicit-adoption/evidence/snap-adoption-checks.json new file mode 100644 index 00000000..1e7cb69e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-adoption-checks.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "stableLocalId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "serverNoteId": 223, + "creationPostsForOriginal": 1, + "acknowledgedRevision": 67, + "attachmentByteCount": 1024, + "attachmentSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "canonicalTitle": "New note (3)", + "server": { + "id": 223, + "title": "New note (3)", + "modified": 1791375526, + "category": "", + "favorite": false, + "readonly": false, + "internalPath": "/Notes/New note (3).md", + "shareTypes": [], + "isShared": false, + "error": false, + "errorType": "", + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", + "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22" + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-after-adoption.json b/delivery/nextcloud-explicit-adoption/evidence/snap-after-adoption.json new file mode 100644 index 00000000..a51decbd --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-after-adoption.json @@ -0,0 +1,83 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 184, + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791373094, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "base": { + "id": 184, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791373094, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + }, + { + "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 223, + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", + "title": "New note (3)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791375526, + "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22", + "base": { + "id": 223, + "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22", + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", + "title": "New note (3)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791375526, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 67, + "ackRevision": 67, + "editorRevision": 66, + "editorContentDigest": "11546c64358c13cb52bf1ce8bfc63be9bc7321bf857b9e43267af9c54a96e47b", + "syncState": "synced", + "errorMessage": null + } + ], + "attachments": [ + { + "id": "2875b68e-250c-41f9-a951-b4b85a792096", + "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "filename": "attachment.bin", + "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", + "remotePath": ".attachments.223/attachment.bin", + "state": "uploaded", + "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "byteCount": 1024 + } + ] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-after-restart.json b/delivery/nextcloud-explicit-adoption/evidence/snap-after-restart.json new file mode 100644 index 00000000..a51decbd --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-after-restart.json @@ -0,0 +1,83 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 184, + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791373094, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "base": { + "id": 184, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791373094, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + }, + { + "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 223, + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", + "title": "New note (3)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791375526, + "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22", + "base": { + "id": 223, + "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22", + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", + "title": "New note (3)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791375526, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 67, + "ackRevision": 67, + "editorRevision": 66, + "editorContentDigest": "11546c64358c13cb52bf1ce8bfc63be9bc7321bf857b9e43267af9c54a96e47b", + "syncState": "synced", + "errorMessage": null + } + ], + "attachments": [ + { + "id": "2875b68e-250c-41f9-a951-b4b85a792096", + "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "filename": "attachment.bin", + "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", + "remotePath": ".attachments.223/attachment.bin", + "state": "uploaded", + "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "byteCount": 1024 + } + ] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-before-adoption-server.json b/delivery/nextcloud-explicit-adoption/evidence/snap-before-adoption-server.json new file mode 100644 index 00000000..7e2b9a14 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-before-adoption-server.json @@ -0,0 +1,15 @@ +{ + "id": 223, + "title": "New note (3)", + "modified": 1791375017, + "category": "", + "favorite": false, + "readonly": false, + "internalPath": "/Notes/New note (3).md", + "shareTypes": [], + "isShared": false, + "error": false, + "errorType": "", + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin]()\n", + "etag": "4f254d7cd882c0d2fc128669b80b3301" +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-browser-login.log b/delivery/nextcloud-explicit-adoption/evidence/snap-browser-login.log new file mode 100644 index 00000000..536b9db9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-browser-login.log @@ -0,0 +1 @@ +External browser granted the application Login Flow. diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-build-final.log b/delivery/nextcloud-explicit-adoption/evidence/snap-build-final.log new file mode 100644 index 00000000..9742a2ac --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-build-final.log @@ -0,0 +1,1548 @@ +Get:1 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB] +Get:2 http://archive.ubuntu.com/ubuntu noble InRelease [256 kB] +Get:3 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1545 kB] +Get:4 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] +Get:5 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1943 kB] +Get:6 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages [1323 kB] +Get:7 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [50.0 kB] +Get:8 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] +Get:9 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [19.3 MB] +Get:10 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [331 kB] +Get:11 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1808 kB] +Get:12 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [117 kB] +Get:13 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [56.2 kB] +Get:14 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [2165 kB] +Get:15 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1701 kB] +Get:16 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [2138 kB] +Get:17 http://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Packages [671 B] +Get:18 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [49.0 kB] +Get:19 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [36.0 kB] +Fetched 33.2 MB in 4s (8190 kB/s) +Reading package lists... +Cleaning all parts +Initialising lifecycle +Installing build-packages +The following snaps are required but not installed as the application is running inside docker or podman container: gnome-46-2404, mesa-2404, gtk-common-themes, core24, gnome-46-2404-sdk, node/24/stable. +Please ensure the environment is properly setup before continuing. +Ignore this message if the appropriate measures have already been taken. +Pulling busymark +Fetching stage-packages +Downloading package: fontconfig +/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/fontconfig_2.15.0-1.1ubuntu2_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) + acq.run() +Downloading package: libvulkan1 +Downloading package: libsvtav1enc1d1 +Downloading package: libhwy1t64 +Downloading package: libxcb-present0 +Downloading package: yaru-theme-icon +Downloading package: libyajl2 +Downloading package: libv4lconvert0t64 +Downloading package: libgomp1 +Downloading package: libzxing3 +Downloading package: libpulse0 +Downloading package: libwebpmux3 +Downloading package: libopenal-data +Downloading package: libltc11 +Downloading package: libvpl2 +Downloading package: libserd-0-0 +Downloading package: libvpx9 +Downloading package: libxxf86vm1 +Downloading package: libcodec2-1.2 +Downloading package: librubberband2 +Downloading package: libsharpyuv0 +Downloading package: libnghttp2-14 +Downloading package: openssh-client +Downloading package: libglx-mesa0 +Downloading package: libtwolame0 +Downloading package: gstreamer1.0-plugins-ugly +Downloading package: libzvbi-common +Downloading package: libjack-jackd2-0 +Downloading package: libfreeaptx0 +Downloading package: libdatrie1 +Downloading package: libthai0 +Downloading package: libssh-4 +Downloading package: libxrender1 +Downloading package: libldap2 +Downloading package: libglvnd0 +Downloading package: libproxy1v5 +Downloading package: libgdbm-compat4t64 +Downloading package: libraptor2-0 +Downloading package: libsensors-config +Downloading package: hicolor-icon-theme +Downloading package: git +Downloading package: libglib2.0-bin +Downloading package: perl +Downloading package: libx11-xcb1 +Downloading package: libxshmfence1 +Downloading package: libfluidsynth3 +Downloading package: libunwind8 +Downloading package: libdecor-0-0 +Downloading package: libpango-1.0-0 +Downloading package: libvo-aacenc0 +Downloading package: libwavpack1 +Downloading package: libavtp0 +Downloading package: libsrt1.5-gnutls +Downloading package: libwayland-cursor0 +Downloading package: libx264-164 +Downloading package: libshine3 +Downloading package: libaom3 +Downloading package: lsb-base +Downloading package: libjpeg-turbo8 +Downloading package: libv4l-0t64 +Downloading package: libavahi-common-data +Downloading package: libcolord2 +Downloading package: libpsl5t64 +Downloading package: libx265-199 +Downloading package: libass9 +Downloading package: libsasl2-2 +Downloading package: libxcb-dri3-0 +Downloading package: libcairo2 +Downloading package: libgbm1 +Downloading package: libxcursor1 +Downloading package: libbluray2 +Downloading package: libvorbisfile3 +Downloading package: libdv4t64 +Downloading package: libblas3 +Downloading package: libdeflate0 +Downloading package: libqrencode4 +Downloading package: libjpeg8 +Downloading package: x11-common +Downloading package: libiec61883-0 +Downloading package: libsphinxbase3t64 +Downloading package: libbs2b0 +Downloading package: libfftw3-double3 +Downloading package: libglx0 +Downloading package: libgme0 +Downloading package: libdav1d7 +Downloading package: libcaca0 +Downloading package: libfribidi0 +Downloading package: mesa-libgallium +Downloading package: libraw1394-11 +Downloading package: librtmp1 +Downloading package: adwaita-icon-theme +Downloading package: libgpm2 +Downloading package: libtiff6 +Downloading package: libgfortran5 +Downloading package: libpixman-1-0 +Downloading package: libtag1v5 +Downloading package: libvidstab1.1 +Downloading package: libva-x11-2 +Downloading package: librist4 +Downloading package: libgsm1 +Downloading package: libgupnp-1.6-0 +Downloading package: libcjson1 +Downloading package: libshout3 +Downloading package: libxau6 +Downloading package: libgtk2.0-0t64 +Downloading package: libxcb1 +Downloading package: libgstreamer-gl1.0-0 +Downloading package: libssh-gcrypt-4 +Downloading package: libllvm20 +Downloading package: libxcomposite1 +Downloading package: libmfx1 +Downloading package: libmpcdec6 +Downloading package: libnuma1 +Downloading package: libcdio19t64 +Downloading package: libdirectfb-1.7-7t64 +Downloading package: libxdamage1 +Downloading package: libgdk-pixbuf-2.0-0 +Downloading package: libsasl2-modules-db +Downloading package: libfaad2 +Downloading package: timgm6mb-soundfont +Downloading package: libcairo-gobject2 +Downloading package: fonts-noto-mono +Downloading package: liblerc4 +Downloading package: ubuntu-mono +Downloading package: libgupnp-igd-1.6-0 +Downloading package: libgdbm6t64 +Downloading package: libxml2 +Downloading package: libglib2.0-data +Downloading package: humanity-icon-theme +Downloading package: libgtk2.0-common +Downloading package: libgraphite2-3 +Downloading package: util-linux +Downloading package: libdconf1 +Downloading package: libfontconfig1 +Downloading package: libcups2t64 +Downloading package: libvdpau1 +Downloading package: libsbc1 +Downloading package: libmodplug1 +Downloading package: libopenexr-3-1-30 +Downloading package: libopenh264-7 +Downloading package: libpostproc57 +Downloading package: libxss1 +Downloading package: shared-mime-info +Downloading package: libatspi2.0-0t64 +Downloading package: glib-networking-common +Downloading package: libgles2 +Downloading package: libgl1-mesa-dri +Downloading package: libcurl3t64-gnutls +Downloading package: libasound2t64 +Downloading package: libxrandr2 +Downloading package: libjxl0.7 +Downloading package: fontconfig-config +Downloading package: gtk2-engines-murrine +Downloading package: libmp3lame0 +Downloading package: libsoxr0 +Downloading package: libx11-data +Downloading package: libsoup-3.0-0 +Downloading package: libgudev-1.0-0 +Downloading package: libgstreamer-plugins-good1.0-0 +Downloading package: libavc1394-0 +Downloading package: libsodium23 +Downloading package: libudfread0 +Downloading package: libjson-glib-1.0-common +Downloading package: libmjpegutils-2.1-0t64 +Downloading package: gnome-themes-extra-data +Downloading package: libmbedcrypto7t64 +Downloading package: libsnappy1v5 +Downloading package: libsndio7.0 +Downloading package: libopus0 +Downloading package: libpangocairo-1.0-0 +Downloading package: libnorm1t64 +Downloading package: libxtst6 +Downloading package: glib-networking-services +Downloading package: libmysofa1 +Downloading package: yaru-theme-gtk +Downloading package: libavcodec60 +Downloading package: libzimg2 +Downloading package: libgstreamer-plugins-bad1.0-0 +Downloading package: libxcb-render0 +Downloading package: libusb-1.0-0 +Downloading package: libvisual-0.4-0 +Downloading package: libgssdp-1.6-0 +Downloading package: libimath-3-1-29t64 +Downloading package: libzvbi0t64 +Downloading package: gsettings-desktop-schemas +Downloading package: fonts-noto-core +Downloading package: libdvdread8t64 +Downloading package: gstreamer1.0-plugins-good +Downloading package: libwebrtc-audio-processing1 +Downloading package: libopenni2-0 +Downloading package: gstreamer1.0-plugins-base +Downloading package: libopenal1 +Downloading package: libvorbisenc2 +Downloading package: libasyncns0 +Downloading package: libunibreak5 +Downloading package: libnss3 +Downloading package: libpangoft2-1.0-0 +Downloading package: libtheora0 +Downloading package: libxvidcore4 +Downloading package: libpocketsphinx3 +Downloading package: libspandsp2t64 +Downloading package: libsndfile1 +Downloading package: libavutil58 +Downloading package: liborc-0.4-0t64 +Downloading package: libwebp7 +Downloading package: libsidplay1v5 +Downloading package: libwildmidi2 +Downloading package: libxslt1.1 +Downloading package: libswscale7 +Downloading package: fonts-dejavu-mono +Downloading package: liblc3-1 +Downloading package: libatk1.0-0t64 +Downloading package: libspeex1 +Downloading package: libmpeg2-4 +Downloading package: libasound2-data +Downloading package: adduser +Downloading package: libflac12t64 +Downloading package: libthai-data +Downloading package: libgstreamer1.0-0 +Downloading package: libdca0 +Downloading package: libavahi-common3 +Downloading package: liblrdf0 +Downloading package: librsvg2-2 +Downloading package: libsamplerate0 +Downloading package: liberror-perl +Downloading package: ocl-icd-libopencl1 +Downloading package: libxcb-glx0 +Downloading package: libldacbt-enc2 +Downloading package: libogg0 +Downloading package: libxinerama1 +Downloading package: libsord-0-0 +Downloading package: libjbig0 +Downloading package: libflite1 +Downloading package: libopenjp2-7 +Downloading package: libwayland-egl1 +Downloading package: libcdparanoia0 +Downloading package: libplacebo338 +Downloading package: libzix-0-0 +Downloading package: libvorbis0a +Downloading package: libsdl2-2.0-0 +Downloading package: libdw1t64 +Downloading package: libjson-glib-1.0-0 +Downloading package: perl-base +Downloading package: libspa-0.2-modules +Downloading package: libzmq5 +Downloading package: libdrm-amdgpu1 +Downloading package: gtk2-engines-pixbuf +Downloading package: dconf-gsettings-backend +Downloading package: libchromaprint1 +Downloading package: libsensors5 +Downloading package: libxcb-randr0 +Downloading package: libvo-amrwbenc0 +Downloading package: libswresample4 +Downloading package: librabbitmq4 +Downloading package: libpipewire-0.3-0t64 +Downloading package: gtk-update-icon-cache +Downloading package: libxcb-xkb1 +Downloading package: libsrtp2-1 +Downloading package: libxext6 +Downloading package: libsoup-3.0-common +Downloading package: libgtk-3-common +Downloading package: libdvdnav4 +Downloading package: libdc1394-25 +Downloading package: libmplex2-2.1-0t64 +Downloading package: liba52-0.7.4 +Downloading package: libnice10 +Downloading package: libmpeg2encpp-2.1-0t64 +Downloading package: libharfbuzz0b +Downloading package: fonts-dejavu-core +Downloading package: libinstpatch-1.0-2 +Downloading package: libsoundtouch1 +Downloading package: libavformat60 +Downloading package: libaa1 +Downloading package: liblilv-0-0 +Downloading package: libmpg123-0t64 +Downloading package: gstreamer1.0-plugins-bad +Downloading package: libslang2 +Downloading package: libegl-mesa0 +Downloading package: session-migration +Downloading package: libva-drm2 +Downloading package: libxcb-shm0 +Downloading package: libgtk-3-0t64 +Downloading package: gnome-themes-extra +Downloading package: dconf-service +Downloading package: perl-modules-5.38 +Downloading package: libgl1 +Downloading package: libzbar0t64 +Downloading package: libegl1 +Downloading package: libx11-6 +Downloading package: libgstreamer-plugins-base1.0-0 +Downloading package: libtag1v5-vanilla +Downloading package: libwayland-client0 +Downloading package: gstreamer1.0-libav +Downloading package: liblapack3 +Downloading package: libopenmpt0t64 +Downloading package: libperl5.38t64 +Downloading package: libxkbcommon-x11-0 +Downloading package: liblcms2-2 +Downloading package: git-man +Downloading package: libatk-bridge2.0-0t64 +Downloading package: libde265-0 +Downloading package: libepoxy0 +Downloading package: libpgm-5.3-0t64 +Downloading package: libxcb-sync1 +Downloading package: libicu74 +Downloading package: libneon27t64 +Downloading package: at-spi2-common +Downloading package: libavahi-client3 +Downloading package: glib-networking +Downloading package: librav1e0 +Downloading package: libva2 +Downloading package: libdrm-intel1 +Downloading package: libxfixes3 +Downloading package: libxdmcp6 +Downloading package: libncurses6 +Downloading package: libxi6 +Downloading package: iso-codes +Downloading package: libxcb-xfixes0 +Downloading package: libavfilter9 +Downloading package: libnspr4 +Downloading package: libsratom-0-0 +Downloading package: libgdk-pixbuf2.0-common +Extracting stage package: fontconfig +Extracting stage package: libvulkan1 +Extracting stage package: libsvtav1enc1d1 +Extracting stage package: libhwy1t64 +Extracting stage package: libxcb-present0 +Extracting stage package: yaru-theme-icon +Extracting stage package: libyajl2 +Extracting stage package: libv4lconvert0t64 +Extracting stage package: libgomp1 +Extracting stage package: libzxing3 +Extracting stage package: libpulse0 +Extracting stage package: libwebpmux3 +Extracting stage package: libopenal-data +Extracting stage package: libltc11 +Extracting stage package: libvpl2 +Extracting stage package: libserd-0-0 +Extracting stage package: libvpx9 +Extracting stage package: libxxf86vm1 +Extracting stage package: libcodec2-1.2 +Extracting stage package: librubberband2 +Extracting stage package: libsharpyuv0 +Extracting stage package: libnghttp2-14 +Extracting stage package: openssh-client +Extracting stage package: libglx-mesa0 +Extracting stage package: libtwolame0 +Extracting stage package: gstreamer1.0-plugins-ugly +Extracting stage package: libzvbi-common +Extracting stage package: libjack-jackd2-0 +Extracting stage package: libfreeaptx0 +Extracting stage package: libdatrie1 +Extracting stage package: libthai0 +Extracting stage package: libssh-4 +Extracting stage package: libxrender1 +Extracting stage package: libldap2 +Extracting stage package: libglvnd0 +Extracting stage package: libproxy1v5 +Extracting stage package: libgdbm-compat4t64 +Extracting stage package: libraptor2-0 +Extracting stage package: libsensors-config +Extracting stage package: hicolor-icon-theme +Extracting stage package: git +Extracting stage package: libglib2.0-bin +Extracting stage package: perl +Extracting stage package: libx11-xcb1 +Extracting stage package: libxshmfence1 +Extracting stage package: libfluidsynth3 +Extracting stage package: libunwind8 +Extracting stage package: libdecor-0-0 +Extracting stage package: libpango-1.0-0 +Extracting stage package: libvo-aacenc0 +Extracting stage package: libwavpack1 +Extracting stage package: libavtp0 +Extracting stage package: libsrt1.5-gnutls +Extracting stage package: libwayland-cursor0 +Extracting stage package: libx264-164 +Extracting stage package: libshine3 +Extracting stage package: libaom3 +Extracting stage package: lsb-base +Extracting stage package: libjpeg-turbo8 +Extracting stage package: libv4l-0t64 +Extracting stage package: libavahi-common-data +Extracting stage package: libcolord2 +Extracting stage package: libpsl5t64 +Extracting stage package: libx265-199 +Extracting stage package: libass9 +Extracting stage package: libsasl2-2 +Extracting stage package: libxcb-dri3-0 +Extracting stage package: libcairo2 +Extracting stage package: libgbm1 +Extracting stage package: libxcursor1 +Extracting stage package: libbluray2 +Extracting stage package: libvorbisfile3 +Extracting stage package: libdv4t64 +Extracting stage package: libblas3 +Extracting stage package: libdeflate0 +Extracting stage package: libqrencode4 +Extracting stage package: libjpeg8 +Extracting stage package: x11-common +Extracting stage package: libiec61883-0 +Extracting stage package: libsphinxbase3t64 +Extracting stage package: libbs2b0 +Extracting stage package: libfftw3-double3 +Extracting stage package: libglx0 +Extracting stage package: libgme0 +Extracting stage package: libdav1d7 +Extracting stage package: libcaca0 +Extracting stage package: libfribidi0 +Extracting stage package: mesa-libgallium +Extracting stage package: libraw1394-11 +Extracting stage package: librtmp1 +Extracting stage package: adwaita-icon-theme +Extracting stage package: libgpm2 +Extracting stage package: libtiff6 +Extracting stage package: libgfortran5 +Extracting stage package: libpixman-1-0 +Extracting stage package: libtag1v5 +Extracting stage package: libvidstab1.1 +Extracting stage package: libva-x11-2 +Extracting stage package: librist4 +Extracting stage package: libgsm1 +Extracting stage package: libgupnp-1.6-0 +Extracting stage package: libcjson1 +Extracting stage package: libshout3 +Extracting stage package: libxau6 +Extracting stage package: libgtk2.0-0t64 +Extracting stage package: libxcb1 +Extracting stage package: libgstreamer-gl1.0-0 +Extracting stage package: libssh-gcrypt-4 +Extracting stage package: libllvm20 +Extracting stage package: libxcomposite1 +Extracting stage package: libmfx1 +Extracting stage package: libmpcdec6 +Extracting stage package: libnuma1 +Extracting stage package: libcdio19t64 +Extracting stage package: libdirectfb-1.7-7t64 +Extracting stage package: libxdamage1 +Extracting stage package: libgdk-pixbuf-2.0-0 +Extracting stage package: libsasl2-modules-db +Extracting stage package: libfaad2 +Extracting stage package: timgm6mb-soundfont +Extracting stage package: libcairo-gobject2 +Extracting stage package: fonts-noto-mono +Extracting stage package: liblerc4 +Extracting stage package: ubuntu-mono +Extracting stage package: libgupnp-igd-1.6-0 +Extracting stage package: libgdbm6t64 +Extracting stage package: libxml2 +Extracting stage package: libglib2.0-data +Extracting stage package: humanity-icon-theme +Extracting stage package: libgtk2.0-common +Extracting stage package: libgraphite2-3 +Extracting stage package: util-linux +Extracting stage package: libdconf1 +Extracting stage package: libfontconfig1 +Extracting stage package: libcups2t64 +Extracting stage package: libvdpau1 +Extracting stage package: libsbc1 +Extracting stage package: libmodplug1 +Extracting stage package: libopenexr-3-1-30 +Extracting stage package: libopenh264-7 +Extracting stage package: libpostproc57 +Extracting stage package: libxss1 +Extracting stage package: shared-mime-info +Extracting stage package: libatspi2.0-0t64 +Extracting stage package: glib-networking-common +Extracting stage package: libgles2 +Extracting stage package: libgl1-mesa-dri +Extracting stage package: libcurl3t64-gnutls +Extracting stage package: libasound2t64 +Extracting stage package: libxrandr2 +Extracting stage package: libjxl0.7 +Extracting stage package: fontconfig-config +Extracting stage package: gtk2-engines-murrine +Extracting stage package: libmp3lame0 +Extracting stage package: libsoxr0 +Extracting stage package: libx11-data +Extracting stage package: libsoup-3.0-0 +Extracting stage package: libgudev-1.0-0 +Extracting stage package: libgstreamer-plugins-good1.0-0 +Extracting stage package: libavc1394-0 +Extracting stage package: libsodium23 +Extracting stage package: libudfread0 +Extracting stage package: libjson-glib-1.0-common +Extracting stage package: libmjpegutils-2.1-0t64 +Extracting stage package: gnome-themes-extra-data +Extracting stage package: libmbedcrypto7t64 +Extracting stage package: libsnappy1v5 +Extracting stage package: libsndio7.0 +Extracting stage package: libopus0 +Extracting stage package: libpangocairo-1.0-0 +Extracting stage package: libnorm1t64 +Extracting stage package: libxtst6 +Extracting stage package: glib-networking-services +Extracting stage package: libmysofa1 +Extracting stage package: yaru-theme-gtk +Extracting stage package: libavcodec60 +Extracting stage package: libzimg2 +Extracting stage package: libgstreamer-plugins-bad1.0-0 +Extracting stage package: libxcb-render0 +Extracting stage package: libusb-1.0-0 +Extracting stage package: libvisual-0.4-0 +Extracting stage package: libgssdp-1.6-0 +Extracting stage package: libimath-3-1-29t64 +Extracting stage package: libzvbi0t64 +Extracting stage package: gsettings-desktop-schemas +Extracting stage package: fonts-noto-core +Extracting stage package: libdvdread8t64 +Extracting stage package: gstreamer1.0-plugins-good +Extracting stage package: libwebrtc-audio-processing1 +Extracting stage package: libopenni2-0 +Extracting stage package: gstreamer1.0-plugins-base +Extracting stage package: libopenal1 +Extracting stage package: libvorbisenc2 +Extracting stage package: libasyncns0 +Extracting stage package: libunibreak5 +Extracting stage package: libnss3 +Extracting stage package: libpangoft2-1.0-0 +Extracting stage package: libtheora0 +Extracting stage package: libxvidcore4 +Extracting stage package: libpocketsphinx3 +Extracting stage package: libspandsp2t64 +Extracting stage package: libsndfile1 +Extracting stage package: libavutil58 +Extracting stage package: liborc-0.4-0t64 +Extracting stage package: libwebp7 +Extracting stage package: libsidplay1v5 +Extracting stage package: libwildmidi2 +Extracting stage package: libxslt1.1 +Extracting stage package: libswscale7 +Extracting stage package: fonts-dejavu-mono +Extracting stage package: liblc3-1 +Extracting stage package: libatk1.0-0t64 +Extracting stage package: libspeex1 +Extracting stage package: libmpeg2-4 +Extracting stage package: libasound2-data +Extracting stage package: adduser +Extracting stage package: libflac12t64 +Extracting stage package: libthai-data +Extracting stage package: libgstreamer1.0-0 +Extracting stage package: libdca0 +Extracting stage package: libavahi-common3 +Extracting stage package: liblrdf0 +Extracting stage package: librsvg2-2 +Extracting stage package: libsamplerate0 +Extracting stage package: liberror-perl +Extracting stage package: ocl-icd-libopencl1 +Extracting stage package: libxcb-glx0 +Extracting stage package: libldacbt-enc2 +Extracting stage package: libogg0 +Extracting stage package: libxinerama1 +Extracting stage package: libsord-0-0 +Extracting stage package: libjbig0 +Extracting stage package: libflite1 +Extracting stage package: libopenjp2-7 +Extracting stage package: libwayland-egl1 +Extracting stage package: libcdparanoia0 +Extracting stage package: libplacebo338 +Extracting stage package: libzix-0-0 +Extracting stage package: libvorbis0a +Extracting stage package: libsdl2-2.0-0 +Extracting stage package: libdw1t64 +Extracting stage package: libjson-glib-1.0-0 +Extracting stage package: perl-base +Extracting stage package: libspa-0.2-modules +Extracting stage package: libzmq5 +Extracting stage package: libdrm-amdgpu1 +Extracting stage package: gtk2-engines-pixbuf +Extracting stage package: dconf-gsettings-backend +Extracting stage package: libchromaprint1 +Extracting stage package: libsensors5 +Extracting stage package: libxcb-randr0 +Extracting stage package: libvo-amrwbenc0 +Extracting stage package: libswresample4 +Extracting stage package: librabbitmq4 +Extracting stage package: libpipewire-0.3-0t64 +Extracting stage package: gtk-update-icon-cache +Extracting stage package: libxcb-xkb1 +Extracting stage package: libsrtp2-1 +Extracting stage package: libxext6 +Extracting stage package: libsoup-3.0-common +Extracting stage package: libgtk-3-common +Extracting stage package: libdvdnav4 +Extracting stage package: libdc1394-25 +Extracting stage package: libmplex2-2.1-0t64 +Extracting stage package: liba52-0.7.4 +Extracting stage package: libnice10 +Extracting stage package: libmpeg2encpp-2.1-0t64 +Extracting stage package: libharfbuzz0b +Extracting stage package: fonts-dejavu-core +Extracting stage package: libinstpatch-1.0-2 +Extracting stage package: libsoundtouch1 +Extracting stage package: libavformat60 +Extracting stage package: libaa1 +Extracting stage package: liblilv-0-0 +Extracting stage package: libmpg123-0t64 +Extracting stage package: gstreamer1.0-plugins-bad +Extracting stage package: libslang2 +Extracting stage package: libegl-mesa0 +Extracting stage package: session-migration +Extracting stage package: libva-drm2 +Extracting stage package: libxcb-shm0 +Extracting stage package: libgtk-3-0t64 +Extracting stage package: gnome-themes-extra +Extracting stage package: dconf-service +Extracting stage package: perl-modules-5.38 +Extracting stage package: libgl1 +Extracting stage package: libzbar0t64 +Extracting stage package: libegl1 +Extracting stage package: libx11-6 +Extracting stage package: libgstreamer-plugins-base1.0-0 +Extracting stage package: libtag1v5-vanilla +Extracting stage package: libwayland-client0 +Extracting stage package: gstreamer1.0-libav +Extracting stage package: liblapack3 +Extracting stage package: libopenmpt0t64 +Extracting stage package: libperl5.38t64 +Extracting stage package: libxkbcommon-x11-0 +Extracting stage package: liblcms2-2 +Extracting stage package: git-man +Extracting stage package: libatk-bridge2.0-0t64 +Extracting stage package: libde265-0 +Extracting stage package: libepoxy0 +Extracting stage package: libpgm-5.3-0t64 +Extracting stage package: libxcb-sync1 +Extracting stage package: libicu74 +Extracting stage package: libneon27t64 +Extracting stage package: at-spi2-common +Extracting stage package: libavahi-client3 +Extracting stage package: glib-networking +Extracting stage package: librav1e0 +Extracting stage package: libva2 +Extracting stage package: libdrm-intel1 +Extracting stage package: libxfixes3 +Extracting stage package: libxdmcp6 +Extracting stage package: libncurses6 +Extracting stage package: libxi6 +Extracting stage package: iso-codes +Extracting stage package: libxcb-xfixes0 +Extracting stage package: libavfilter9 +Extracting stage package: libnspr4 +Extracting stage package: libsratom-0-0 +Extracting stage package: libgdk-pixbuf2.0-common +Pulling desktop-integration +Pulling gnome/sdk +Building busymark +Removing suid/guid from /project/parts/busymark/install/usr/bin/su +Removing suid/guid from /project/parts/busymark/install/usr/lib/openssh/ssh-keysign +:: + rm -rf /project/parts/busymark/build/build +:: + rm -rf /project/parts/busymark/build/.dart_tool +:: + rm -rf /project/parts/busymark/build/linux/flutter/ephemeral +:: + flutter_sdk=/project/parts/busymark/build/flutter-distro +:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD +:: ++ true +:: + flutter_sdk_version= +:: + '[' '!' -x /project/parts/busymark/build/flutter-distro/bin/flutter ']' +:: + rm -rf /project/parts/busymark/build/flutter-distro +:: + git clone --depth 1 --branch 3.47.5 https://github.com/flutter/flutter.git /project/parts/busymark/build/flutter-distro +:: Cloning into '/project/parts/busymark/build/flutter-distro'... +:: Note: switching to '6a19cca56475dbfba1478ee68d7bd0c2ef891da1'. +:: +:: You are in 'detached HEAD' state. You can look around, make experimental +:: changes and commit them, and you can discard any commits you make in this +:: state without impacting any branches by switching back to a branch. +:: +:: If you want to create a new branch to retain commits you create, you may +:: do so (now or later) by using -c with the switch command. Example: +:: +:: git switch -c +:: +:: Or undo this operation with: +:: +:: git switch - +:: +:: Turn off this advice by setting config variable advice.detachedHead to false +:: +:: Updating files: 91% (14709/16074) Updating files: 92% (14789/16074) Updating files: 93% (14949/16074) Updating files: 94% (15110/16074) Updating files: 95% (15271/16074) Updating files: 96% (15432/16074) Updating files: 97% (15592/16074) Updating files: 98% (15753/16074) Updating files: 99% (15914/16074) Updating files: 100% (16074/16074) Updating files: 100% (16074/16074), done. +:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD +:: + test 3.47.5 = 3.47.5 +:: + export CI=true +:: + CI=true +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check precache --linux +:: Downloading Linux x64 Dart SDK from Flutter engine af7e796e161ae0bb1ff0758c71a7105418bd9ded... +:: % Total % Received % Xferd Average Speed Time Time Time Current +:: Dload Upload Total Spent Left Speed +:: 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 0 227M 0 66862 0 0 14800 0 4:28:49 0:00:04 4:28:45 14799 0 227M 0 992k 0 0 194k 0 0:20:01 0:00:05 0:19:56 194k 1 227M 1 4142k 0 0 562k 0 0:06:54 0:00:07 0:06:47 562k 2 227M 2 6878k 0 0 847k 0 0:04:35 0:00:08 0:04:27 847k 13 227M 13 29.6M 0 0 3325k 0 0:01:10 0:00:09 0:01:01 3926k 24 227M 24 56.3M 0 0 5704k 0 0:00:40 0:00:10 0:00:30 10.0M 35 227M 35 79.9M 0 0 7366k 0 0:00:31 0:00:11 0:00:20 13.1M 48 227M 48 110M 0 0 9361k 0 0:00:24 0:00:12 0:00:12 22.4M 63 227M 63 145M 0 0 11.0M 0 0:00:20 0:00:13 0:00:07 27.6M 78 227M 78 178M 0 0 12.6M 0 0:00:18 0:00:14 0:00:04 29.7M 93 227M 93 212M 0 0 14.0M 0 0:00:16 0:00:15 0:00:01 31.3M 100 227M 100 227M 0 0 14.6M 0 0:00:15 0:00:15 --:--:-- 33.3M +:: Building flutter tool... +:: Resolving dependencies... +:: Downloading packages... +:: + _fe_analyzer_shared 95.0.0 (109.0.0 available) +:: + analyzer 10.1.0 (14.5.0 available) +:: + archive 3.6.1 (4.3.0 available) +:: + args 2.7.0 +:: + async 2.13.1 +:: + boolean_selector 2.1.2 +:: + browser_launcher 1.1.3 (1.2.0 available) +:: + built_collection 5.1.1 (5.1.2 available) +:: + built_value 8.12.6 (8.13.0 available) +:: + checked_yaml 2.0.4 +:: + cli_config 0.2.0 +:: + clock 1.1.2 (1.1.3 available) +:: + code_assets 1.2.1 (2.1.0 available) +:: + code_builder 4.11.1 (4.12.0 available) +:: + collection 1.19.1 +:: + completion 1.0.2 +:: + convert 3.1.2 +:: + coverage 1.15.1 +:: + crypto 3.0.7 +:: + csslib 1.0.2 +:: + dap 1.4.0 +:: + dart_service_protocol_shared 0.0.3 +:: + dart_style 3.1.7 (3.1.13 available) +:: + data_assets 0.20.0 +:: + dds 5.4.0 +:: + dds_service_extensions 2.1.0 +:: + devtools_shared 13.1.0 (14.0.0 available) +:: + dtd 4.0.0 +:: + dwds 27.1.2 (27.1.4 available) +:: + extension_discovery 2.1.0 +:: + fake_async 1.3.3 +:: + ffi 2.2.0 +:: + file 7.0.1 +:: + file_testing 3.0.2 (3.1.0 available) +:: + fixnum 1.1.1 +:: + flutter_template_images 5.0.0 (5.0.1 available) +:: + frontend_server_client 4.0.0 (4.1.0 available) +:: + glob 2.1.3 (2.2.0 available) +:: + graphs 2.3.2 +:: + hooks 2.0.2 (2.2.0 available) +:: + hooks_runner 1.5.0 (1.6.4 available) +:: + html 0.15.6 (0.15.7 available) +:: + http 1.6.0 +:: + http_multi_server 3.2.2 +:: + http_parser 4.1.2 +:: + intl 0.20.3 +:: + io 1.0.5 (1.1.0 available) +:: + js 0.7.2 (discontinued) +:: + json_annotation 4.12.0 +:: + json_rpc_2 4.1.0 +:: + logging 1.3.0 +:: + matcher 0.12.20 +:: + meta 1.18.3 (1.19.0 available) +:: + mime 2.0.0 (2.1.0 available) +:: + multicast_dns 0.3.3+1 +:: + mustache_template 2.0.5 (2.0.6 available) +:: + native_stack_traces 0.6.1 (0.7.0 available) +:: + node_preamble 2.0.2 +:: + package_config 2.2.0 (3.0.0 available) +:: + path 1.9.1 +:: + petitparser 7.0.2 (7.1.0 available) +:: + platform 3.1.6 (3.2.0 available) +:: + pool 1.5.2 (1.5.3 available) +:: + process 5.0.5 (5.0.6 available) +:: + pub_semver 2.2.0 (2.2.1 available) +:: + pubspec_parse 1.5.0 (1.6.0 available) +:: + record_use 0.6.0 (1.1.1 available) +:: + shelf 1.4.2 +:: + shelf_packages_handler 3.0.2 +:: + shelf_proxy 1.0.5 +:: + shelf_static 1.1.3 +:: + shelf_web_socket 3.0.0 +:: + source_map_stack_trace 2.1.2 +:: + source_maps 0.10.13 (0.10.14 available) +:: + source_span 1.10.2 +:: + sprintf 7.0.0 +:: + sse 4.2.0 +:: + stack_trace 1.12.1 (1.12.2 available) +:: + standard_message_codec 0.0.1+5 +:: + stream_channel 2.1.4 +:: + string_scanner 1.4.1 +:: + sync_http 0.3.1 +:: + term_glyph 1.2.2 +:: + test 1.31.1 (1.32.0 available) +:: + test_api 0.7.12 (0.7.14 available) +:: + test_core 0.6.18 (0.6.20 available) +:: + typed_data 1.4.0 +:: + unified_analytics 8.0.15 (8.0.18 available) +:: + uuid 4.5.3 (4.6.0 available) +:: + vm_service 15.2.0 (15.3.0 available) +:: + vm_service_interface 2.0.1 +:: + vm_snapshot_analysis 0.7.6 +:: + watcher 1.2.1 +:: + web 1.1.1 +:: + web_socket 1.0.1 +:: + web_socket_channel 3.0.3 +:: + webdriver 3.1.0 (3.2.0 available) +:: + webkit_inspection_protocol 1.2.1 +:: + xml 6.6.1 (7.1.0 available) +:: + yaml 3.1.3 (3.1.4 available) +:: + yaml_edit 2.2.4 +:: Changed 101 dependencies! +:: 1 package is discontinued. +:: 43 packages have newer versions incompatible with dependency constraints. +:: Try `dart pub outdated` for more information. +:: [1/11] Material Fonts 490ms +:: [2/11] Gradle Wrapper 35ms +:: [3/11] Flutter SDK +:: ├─ [1/5] sky_engine 125ms +:: ├─ [2/5] flutter_gpu 50ms +:: ├─ [3/5] flutter_patched_sdk 202ms +:: ├─ [4/5] flutter_patched_sdk_product 217ms +:: └─ [5/5] linux-x64 981ms +:: [4/11] Linux SDK +:: ├─ [1/3] linux-x64-debug/linux-x64-flutter-gtk 948ms +:: ├─ [2/3] linux-x64-profile/linux-x64-flutter-gtk 331ms +:: └─ [3/3] linux-x64-release/linux-x64-flutter-gtk 1,227ms +:: [11/11] linux-x64/font-subset 126ms +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get +:: Resolving dependencies... +:: Downloading packages... +:: _fe_analyzer_shared 99.0.0 (109.0.0 available) +:: analyzer 12.1.0 (14.5.0 available) +:: animated_vector 0.2.2 (0.2.3 available) +:: animated_vector_annotations 0.2.2 (0.3.0 available) +:: archive 4.0.9 (4.3.0 available) +:: assorted_layout_widgets 11.0.0 (13.1.0 available) +:: clock 1.1.2 (1.1.3 available) +:: code_assets 1.2.1 (2.1.0 available) +:: cross_file 0.3.5+4 (0.4.0 available) +:: dbus 0.7.13 (0.8.0 available) +:: file_selector_android 0.5.2+8 (0.5.2+11 available) +:: file_selector_ios 0.5.3+5 (0.5.3+6 available) +:: file_selector_linux 0.9.4 (0.9.4+1 available) +:: file_selector_macos 0.9.5 (0.9.5+1 available) +:: file_selector_windows 0.9.3+5 (0.9.3+6 available) +:: flutter_riverpod 3.3.2 (3.4.3 available) +:: frontend_server_client 4.0.0 (4.1.0 available) +:: glob 2.1.3 (2.2.0 available) +:: go_router 17.3.0 (18.0.2 available) +:: gsettings 0.2.8 (0.2.9 available) +:: html 0.15.6 (0.15.7 available) +:: image 4.9.1 (4.10.1 available) +:: io 1.0.5 (1.1.0 available) +:: jni 1.0.0 (1.1.0 available) +:: jni_flutter 1.0.1 (1.0.4+1 available) +:: material_color_utilities 0.13.0 (0.13.1 available) +:: mime 2.0.0 (2.1.0 available) +:: native_toolchain_c 0.19.3 (0.19.5 available) +:: objective_c 9.4.1 (9.6.2 available) +:: package_config 2.2.0 (3.0.0 available) +:: package_info_plus 10.2.1 (10.2.2 available) +:: petitparser 7.0.2 (7.1.0 available) +:: platform 3.1.6 (3.2.0 available) +:: pool 1.5.2 (1.5.3 available) +:: posix 6.5.0 (6.5.2 available) +:: pub_semver 2.2.0 (2.2.1 available) +:: riverpod 3.3.2 (3.4.3 available) +:: source_maps 0.10.13 (0.10.14 available) +:: stack_trace 1.12.1 (1.12.2 available) +:: test 1.31.1 (1.32.0 available) +:: test_api 0.7.12 (0.7.14 available) +:: test_core 0.6.18 (0.6.20 available) +:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) +:: unorm_dart 0.3.2 (0.3.3 available) +:: url_launcher 6.3.2 (6.3.3 available) +:: url_launcher_android 6.3.32 (6.3.33 available) +:: url_launcher_ios 6.4.1 (6.4.2 available) +:: url_launcher_linux 3.2.2 (3.2.3 available) +:: url_launcher_macos 3.2.5 (3.2.6 available) +:: url_launcher_windows 3.1.5 (3.1.6 available) +:: vector_graphics 1.2.2 (1.2.3 available) +:: vector_graphics_compiler 1.2.6 (1.3.0 available) +:: vector_math 2.4.2 (2.4.3 available) +:: vm_service 15.2.0 (15.3.0 available) +:: win32 6.3.0 (6.4.0 available) +:: xml 7.0.1 (7.1.0 available) +:: yaml 3.1.3 (3.1.4 available) +:: yaru 10.2.0 (11.0.0 available) +:: Got dependencies! +:: 58 packages have newer versions incompatible with dependency constraints. +:: Try `flutter pub outdated` for more information. +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart +:: [ +16 ms] Unable to locate an Android SDK. +:: [ +11 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ +10 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ +26 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ +13 ms] executing: [/project/parts/busymark/build/] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart pub --suppress-analytics --directory . get --example +:: Resolving dependencies... +:: Downloading packages... +:: _fe_analyzer_shared 99.0.0 (109.0.0 available) +:: analyzer 12.1.0 (14.5.0 available) +:: animated_vector 0.2.2 (0.2.3 available) +:: animated_vector_annotations 0.2.2 (0.3.0 available) +:: archive 4.0.9 (4.3.0 available) +:: assorted_layout_widgets 11.0.0 (13.1.0 available) +:: clock 1.1.2 (1.1.3 available) +:: code_assets 1.2.1 (2.1.0 available) +:: cross_file 0.3.5+4 (0.4.0 available) +:: dbus 0.7.13 (0.8.0 available) +:: file_selector_android 0.5.2+8 (0.5.2+11 available) +:: file_selector_ios 0.5.3+5 (0.5.3+6 available) +:: file_selector_linux 0.9.4 (0.9.4+1 available) +:: file_selector_macos 0.9.5 (0.9.5+1 available) +:: file_selector_windows 0.9.3+5 (0.9.3+6 available) +:: flutter_riverpod 3.3.2 (3.4.3 available) +:: frontend_server_client 4.0.0 (4.1.0 available) +:: glob 2.1.3 (2.2.0 available) +:: go_router 17.3.0 (18.0.2 available) +:: gsettings 0.2.8 (0.2.9 available) +:: html 0.15.6 (0.15.7 available) +:: image 4.9.1 (4.10.1 available) +:: io 1.0.5 (1.1.0 available) +:: jni 1.0.0 (1.1.0 available) +:: jni_flutter 1.0.1 (1.0.4+1 available) +:: material_color_utilities 0.13.0 (0.13.1 available) +:: mime 2.0.0 (2.1.0 available) +:: native_toolchain_c 0.19.3 (0.19.5 available) +:: objective_c 9.4.1 (9.6.2 available) +:: package_config 2.2.0 (3.0.0 available) +:: package_info_plus 10.2.1 (10.2.2 available) +:: petitparser 7.0.2 (7.1.0 available) +:: platform 3.1.6 (3.2.0 available) +:: pool 1.5.2 (1.5.3 available) +:: posix 6.5.0 (6.5.2 available) +:: pub_semver 2.2.0 (2.2.1 available) +:: riverpod 3.3.2 (3.4.3 available) +:: source_maps 0.10.13 (0.10.14 available) +:: stack_trace 1.12.1 (1.12.2 available) +:: test 1.31.1 (1.32.0 available) +:: test_api 0.7.12 (0.7.14 available) +:: test_core 0.6.18 (0.6.20 available) +:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) +:: unorm_dart 0.3.2 (0.3.3 available) +:: url_launcher 6.3.2 (6.3.3 available) +:: url_launcher_android 6.3.32 (6.3.33 available) +:: url_launcher_ios 6.4.1 (6.4.2 available) +:: url_launcher_linux 3.2.2 (3.2.3 available) +:: url_launcher_macos 3.2.5 (3.2.6 available) +:: url_launcher_windows 3.1.5 (3.1.6 available) +:: vector_graphics 1.2.2 (1.2.3 available) +:: vector_graphics_compiler 1.2.6 (1.3.0 available) +:: vector_math 2.4.2 (2.4.3 available) +:: vm_service 15.2.0 (15.3.0 available) +:: win32 6.3.0 (6.4.0 available) +:: xml 7.0.1 (7.1.0 available) +:: yaml 3.1.3 (3.1.4 available) +:: yaru 10.2.0 (11.0.0 available) +:: Got dependencies! +:: 58 packages have newer versions incompatible with dependency constraints. +:: Try `flutter pub outdated` for more information. +:: [ +477 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ +4 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ +1 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ +2 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +20 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ +11 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ +1 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ +1 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ +19 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ +23 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ ] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ +2 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ +1 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ +1 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ ] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ ] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ +1 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +8 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ ] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ ] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ ] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ ] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ ] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ ] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ +5 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ ] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ ] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ +18 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ +9 ms] Skipping generating generated_plugin_registrant.h because it is up-to-date. +:: [ +3 ms] Skipping generating generated_plugin_registrant.cc because it is up-to-date. +:: [ +1 ms] Skipping generating generated_plugins.cmake because it is up-to-date. +:: [ +17 ms] Building Linux application... +:: [ +2 ms] executing: [/project/parts/busymark/build/build/linux/x64/release/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DFLUTTER_TARGET_PLATFORM=linux-x64 /project/parts/busymark/build/linux +:: [ +704 ms] -- The CXX compiler identification is Clang 18.1.3 +:: [ +35 ms] -- Detecting CXX compiler ABI info +:: [ +153 ms] -- Detecting CXX compiler ABI info - done +:: [ +6 ms] -- Check for working CXX compiler: /usr/bin/clang++ - skipped +:: [ ] -- Detecting CXX compile features +:: [ ] -- Detecting CXX compile features - done +:: [ +6 ms] -- Found PkgConfig: /snap/gnome-46-2404-sdk/current/usr/bin/pkg-config (found version "1.8.1") +:: [ ] -- Checking for module 'gtk+-3.0' +:: [ +35 ms] -- Found gtk+-3.0, version 3.24.50 +:: [ +202 ms] -- Checking for module 'glib-2.0' +:: [ +13 ms] -- Found glib-2.0, version 2.84.4 +:: [ +30 ms] -- Checking for module 'gio-2.0' +:: [ +14 ms] -- Found gio-2.0, version 2.84.4 +:: [ +51 ms] -- Checking for module 'libhandy-1' +:: [ +21 ms] -- Found libhandy-1, version 1.8.3 +:: [ +213 ms] -- Checking for module 'libsecret-1' +:: [ +14 ms] -- Found libsecret-1, version 0.21.7 +:: [ +33 ms] -- Checking for module 'webkit2gtk-4.1' +:: [ +23 ms] -- Found webkit2gtk-4.1, version 2.52.6 +:: [+1070 ms] -- The C compiler identification is Clang 18.1.3 +:: [ +46 ms] -- Detecting C compiler ABI info +:: [ +112 ms] -- Detecting C compiler ABI info - done +:: [ +7 ms] -- Check for working C compiler: /usr/bin/clang - skipped +:: [ ] -- Detecting C compile features +:: [ ] -- Detecting C compile features - done +:: [ +19 ms] -- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JVM) +:: [ +1 ms] -- Configuring done (2.8s) +:: [ +61 ms] -- Generating done (0.1s) +:: [ +10 ms] -- Build files have been written to: /project/parts/busymark/build/build/linux/x64/release +:: [ +12 ms] executing: ninja -C /project/parts/busymark/build/build/linux/x64/release install +:: [ +7 ms] ninja: Entering directory `/project/parts/busymark/build/build/linux/x64/release' +:: [ +14 ms] [1/34] Preparing pinned offline visualization web engines +:: [ +4 ms] FAILED: visualization/web/VERSION visualization/web/harness.html visualization/web/bootstrap.js visualization/web/render-engines.js visualization/web/scalar.js visualization/web/viz-global.js /project/parts/busymark/build/build/linux/x64/release/visualization/web/VERSION /project/parts/busymark/build/build/linux/x64/release/visualization/web/harness.html /project/parts/busymark/build/build/linux/x64/release/visualization/web/bootstrap.js /project/parts/busymark/build/build/linux/x64/release/visualization/web/render-engines.js /project/parts/busymark/build/build/linux/x64/release/visualization/web/scalar.js /project/parts/busymark/build/build/linux/x64/release/visualization/web/viz-global.js +:: [ ] cd /project/parts/busymark/build/build/linux/x64/release && /project/parts/busymark/build/linux/../tools/fetch_visualization_web.sh /project/parts/busymark/build/build/linux/x64/release/visualization/web +:: [+3347 ms] [2/34] Preparing checksum-pinned D2 renderer +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 33 20.2M 33 6973k 0 0 4203k 0 0:00:04 0:00:01 0:00:03 6945k +:: [ ] 98 20.2M 98 20.0M 0 0 7278k 0 0:00:02 0:00:02 --:--:-- 9485k +:: [ ] 100 20.2M 100 20.2M 0 0 7336k 0 0:00:02 0:00:02 --:--:-- 9551k +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] Prepared D2 0.7.1 in /project/parts/busymark/build/build/linux/x64/release/d2/linux-x86_64 +:: [ +205 ms] [3/34] Preparing pinned Typst compiler for PDF export +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 16.6M 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 46 16.6M 46 7998k 0 0 4811k 0 0:00:03 0:00:01 0:00:02 8054k +:: [ ] 100 16.6M 100 16.6M 0 0 7393k 0 0:00:02 0:00:02 --:--:-- 10.1M +:: [ ] Prepared Typst 0.15.1 in /project/parts/busymark/build/build/linux/x64/release/typst/linux-x86_64 +:: [+87353 ms] [4/34] Generating /project/parts/busymark/build/linux/flutter/ephemeral/libflutter_linux_gtk.so, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_value.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_view.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_ +:: [ ] [ +18 ms] Unable to locate an Android SDK. +:: [ ] [ +13 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ ] [ +13 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ +62 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ +2 ms] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ ] [ +16 ms] Initializing file store +:: [ ] [ +44 ms] build_hooks: Starting due to {} +:: [ ] [ +3 ms] gen_localizations: Starting due to {} +:: [ ] [+1130 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/package_config.json} +:: [ ] [ +5 ms] unpack_linux: Starting due to {} +:: [ ] [ +74 ms] unpack_linux: Complete +:: [ ] [ +398 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ ] [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ ] [ +8 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ ] [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ ] [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ ] [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ ] [ +12 ms] Running build hooks for linux_x64. +:: [ ] [ +4 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ ] [ +18 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ ] [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ ] [ +3 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +2 ms] [ +21 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/hook/build.dart`. +:: [ ] [ +24 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ ] [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ ] [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ ] [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ ] [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ ] [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ ] [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ ] [ +14 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ ] [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ ] [ +3 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ ] [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ ] [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ ] [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ ] [ +2 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ ] [ +2 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ ] [ +32 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] [ +1 ms] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ ] [ +2 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] [ +1 ms] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] [ +1 ms] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] [ +1 ms] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ ] [ +26 ms] gen_dart_plugin_registrant: Complete +:: [ ] [ +698 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/objective_c/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/output.json", +:: [ ] "package_name": "objective_c", +:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +4 ms] [ +2 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/input.json )`. +:: [ ] [ +58 ms] gen_localizations: Complete +:: [ ] [ +48 ms] kernel_snapshot_program: Starting due to {} +:: [ +26 ms] [ +13 ms] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dartaotruntime /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/snapshots/frontend_server_aot.dart.snapshot --sdk-root /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/common/flutter_patched_sdk_product/ --target=flutter --no-print-incremental-dependencies -DFLUTTER_BUILD_NAME=0.6.1 -DFLUTTER_VERSION=3.47.5 -DFLUTTER_CHANNEL=[user-branch] -DFLUTTER_GIT_URL=https://github.com/flutter/flutter.git -DFLUTTER_FRAMEWORK_REVISION=6a19cca564 -DFLUTTER_ENGINE_REVISION=af7e796e16 -DFLUTTER_DART_VERSION=3.13.4 -Ddart.vm.profile=false -Ddart.vm.product=true --delete-tostring-package-uri=dart:ui --delete-tostring-package-uri=package:flutter --aot --tfa --target-os linux --packages /project/parts/busymark/build/.dart_tool/package_config.json --output-dill /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --depfile /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/kernel_snapshot_program.d --source file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --source package:flutter/src/dart_plugin_registrant.dart -Dflutter.dart_plugin_registrant=file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --verbosity=error --recorded-uses=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/recorded_uses.json package:busymark/main.dart +:: [ ] [ +36 ms] output.json contents: +:: [ ] { +:: [ ] "assets_for_linking": {}, +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 10:32:27.000" +:: [ ] } +:: [ +1 ms] [ +26 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill.d /project/parts/busymark/build/packages/busymark_spellcheck_native/hook/build.dart`. +:: [ ] [+1136 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/output.json", +:: [ ] "package_name": "busymark_spellcheck_native", +:: [ ] "package_root": "/project/parts/busymark/build/packages/busymark_spellcheck_native/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +3 ms] [ +1 ms] Running `(cd /project/parts/busymark/build/packages/busymark_spellcheck_native/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/input.json )`. +:: [ ] [+38021 ms] output.json contents: +:: [ ] { +:: [ ] "assets": [ +:: [ ] { +:: [ ] "encoding": { +:: [ +1 ms] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/cd73a1e2e2/libbusymark_spellcheck_native.so", +:: [ ] "id": "package:busymark_spellcheck_native/busymark_spellcheck_native_bindings_generated.dart", +:: [ ] "link_mode": { +:: [ ] "type": "dynamic_loading_bundle" +:: [ ] } +:: [ ] }, +:: [ ] "type": "code_assets/code" +:: [ ] } +:: [ ] ], +:: [ ] "assets_for_linking": {}, +:: [ ] "dependencies": [ +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx", +:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx" +:: [ ] ], +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 10:32:29.000" +:: [ ] } +:: [ +1 ms] [ +52 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/hook/build.dart`. +:: [ ] [ +840 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/output.json", +:: [ ] "package_name": "sqlite3", +:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +2 ms] [ +1 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/input.json )`. +:: [ ] [+1933 ms] kernel_snapshot_program: Complete +:: [ +3 ms] [+12719 ms] aot_elf_release: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/flutter-distro/packages/flutter_tools/lib/src/build_system/targets/common.dart,/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so} +:: [ ] [ +2 ms] targetingApplePlatform = false +:: [ ] [ ] extractAppleDebugSymbols = true +:: [ ] [ ] targetingAndroidPlatform = false +:: [ ] [ ] Will strip AOT snapshot during build. +:: [ +1 ms] [ +1 ms] executing: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64-release/gen_snapshot --deterministic --snapshot_kind=app-aot-elf --elf=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so --strip /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill +:: [ ] [ +14 ms] output.json contents: +:: [ ] { +:: [ ] "assets": [ +:: [ ] { +:: [ ] "encoding": { +:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/download-0f947ebe/libsqlite3.so", +:: [ ] "id": "package:sqlite3/src/ffi/libsqlite3.g.dart", +:: [ ] "link_mode": { +:: [ ] "type": "dynamic_loading_bundle" +:: [ ] } +:: [ ] }, +:: [ ] "type": "code_assets/code" +:: [ ] } +:: [ ] ], +:: [ ] "assets_for_linking": {}, +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 10:33:08.000" +:: [ ] } +:: [ ] [ +16 ms] Running build hooks for linux_x64 done. +:: [ ] [ +1 ms] build_hooks: Complete +:: [ ] [ +175 ms] link_hooks: Starting due to {} +:: [ ] [ +14 ms] Running link hooks for linux_x64. +:: [ ] [ +14 ms] Running link hooks for linux_x64 done. +:: [ ] [ +2 ms] link_hooks: Complete +:: [ ] [ ] install_code_assets: Starting due to {} +:: [ ] [ +8 ms] Copying native assets to /project/parts/busymark/build/build/native_assets/linux/. +:: [ ] [ +2 ms] Copying native assets done. +:: [ ] [ ] Writing native assets json to file:///project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json. +:: [ ] [ +1 ms] Writing /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json done. +:: [ ] [ ] install_code_assets: Complete +:: [ ] [+30535 ms] aot_elf_release: Complete +:: [ ] [ +123 ms] linux_aot_bundle: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/build/lib/libapp.so} +:: [ ] [ +60 ms] linux_aot_bundle: Complete +:: [ ] [ +114 ms] release_bundle_linux-x64_assets: Starting due to {} +:: [ +2 ms] [ +225 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders/ink_sparkle.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] +:: [ +2 ms] [ ] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders/stretch_effect.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] +:: [ +1 ms] [ +52 ms] Running command: /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/const_finder.dart.snapshot --kernel-file /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --class-library-uri package:flutter/src/widgets/icon_data.dart --class-name IconData --annotation-class-name _StaticIconProvider --annotation-class-library-uri package:flutter/src/widgets/icon_data.dart +:: [ ] [+1409 ms] Expected to find fontFamily for constant IconData with codepoint: 128842, but found fontFamily: null. This usually means you are relying on the system font. Alternatively, font families in an IconData class can be provided in the assets section of your pubspec.yaml, or you are missing "uses-material-design: true". +:: [ +1 ms] [ +1 ms] Expected to find fonts for (packages/yaru/YaruIcons, MaterialIcons, packages/cupertino_icons/CupertinoIcons), but found (MaterialIcons, packages/yaru/YaruIcons). This usually means you are referring to font families in an IconData class but not including them in the assets section of your pubspec.yaml, are missing the package that would include them, or are missing "uses-material-design: true". +:: [ +4 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/packages/yaru/assets/yaru_icons.otf /root/.pub-cache/hosted/pub.dev/yaru-10.2.0/assets/yaru_icons.otf, using codepoints 57724 57723 57952 58031 58004 58087 57763 57862 57935 57945 57958 57799 57778 57937 57907 57846 57850 57890 57848 57564 58100 57845 58015 57647 57786 57547 57732 58149 57607 57622 57556 58143 58041 58094 57785 57936 57932 57668 58081 57756 57631 57853 57873 57869 58146 57666 57660 57743 57685 57688 57542 57684 58009 57614 57686 57483 57573 57802 57502 58104 57820 57485 57960 57777 57891 57581 57803 57828 57844 57822 58034 57623 57830 58011 57956 57541 58089 57562 57490 57492 57871 57868 57721 57722 57747 58086 57507 57832 57906 57880 58090 57717 +:: [ +1 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/fonts/MaterialIcons-Regular.otf /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/material_fonts/MaterialIcons-Regular.otf, using codepoints 58061 984332 57490 62832 57706 58332 57502 57501 57496 58372 +:: [ ] [ +22 ms] Font asset "yaru_icons.otf" was tree-shaken, reducing it from 203588 to 18772 bytes (90.8% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. +:: [ ] [ +2 ms] Font asset "MaterialIcons-Regular.otf" was tree-shaken, reducing it from 1645184 to 1748 bytes (99.9% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. +:: [ ] [ ] release_bundle_linux-x64_assets: Complete +:: [ ] [ +65 ms] Persisting file store +:: [ ] [ +20 ms] Done persisting file store +:: [ ] [ +43 ms] build succeeded. +:: [ ] [ ] "flutter assemble" took 90,492ms. +:: [ ] [ +1 ms] Running 1 shutdown hook +:: [ ] [ ] Shutdown hooks complete +:: [ ] [ ] exiting with code 0 +:: [ ] ninja: build stopped: subcommand failed. +:: [ +2 ms] Building Linux application... (completed in 94.0s) +:: [ ] "flutter linux" took 94,703ms. +:: [ +2 ms] Build process failed +:: [ ] +:: #0 throwToolExit (package:flutter_tools/src/base/common.dart:34:3) +:: #1 _runBuild (package:flutter_tools/src/linux/build_linux.dart:231:5) +:: +:: #2 buildLinux (package:flutter_tools/src/linux/build_linux.dart:100:5) +:: +:: #3 BuildLinuxCommand.runCommand (package:flutter_tools/src/commands/build_linux.dart:105:5) +:: +:: #4 FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart:1663:27) +:: +:: #5 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) +:: +:: #6 CommandRunner.runCommand (package:args/command_runner.dart:212:13) +:: +:: #7 FlutterCommandRunner.runCommand. (package:flutter_tools/src/runner/flutter_command_runner.dart:496:9) +:: +:: #8 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) +:: +:: #9 FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:431:5) +:: +:: #10 FlutterCommandRunner.run. (package:flutter_tools/src/runner/flutter_command_runner.dart:307:33) +:: +:: #11 run.. (package:flutter_tools/runner.dart:104:11) +:: +:: #12 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) +:: +:: #13 main (package:flutter_tools/executable.dart:103:3) +:: +:: +:: +:: [ ] Running 1 shutdown hook +:: [ ] Shutdown hooks complete +:: [ ] exiting with code 1 +'override-build' in part 'busymark' failed with code 1. +Detailed information: +:: + yaml_edit 2.2.4 +:: Changed 101 dependencies! +:: 1 package is discontinued. +:: 43 packages have newer versions incompatible with dependency constraints. +:: Try `dart pub outdated` for more information. +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart +:: [ +2 ms] Build process failed +:: [ ] +:: #0 throwToolExit (package:flutter_tools/src/base/common.dart:34:3) +:: #1 _runBuild (package:flutter_tools/src/linux/build_linux.dart:231:5) +:: +:: #2 buildLinux (package:flutter_tools/src/linux/build_linux.dart:100:5) +:: +:: #3 BuildLinuxCommand.runCommand (package:flutter_tools/src/commands/build_linux.dart:105:5) +:: +:: #4 FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart:1663:27) +:: +:: #5 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) +:: +:: #6 CommandRunner.runCommand (package:args/command_runner.dart:212:13) +:: +:: #7 FlutterCommandRunner.runCommand. (package:flutter_tools/src/runner/flutter_command_runner.dart:496:9) +:: +:: #8 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) +:: +:: #9 FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:431:5) +:: +:: #10 FlutterCommandRunner.run. (package:flutter_tools/src/runner/flutter_command_runner.dart:307:33) +:: +:: #11 run.. (package:flutter_tools/runner.dart:104:11) +:: +:: #12 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) +:: +:: #13 main (package:flutter_tools/executable.dart:103:3) +:: +Recommended resolution: Review the scriptlet and make sure it's correct. +For more information, check out: https://documentation.ubuntu.com/snapcraft/8.11.1/reference/plugins/ +Full execution log: '/root/.local/state/snapcraft/log/snapcraft-20261007-101731.139260.log' diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-build-retry.log b/delivery/nextcloud-explicit-adoption/evidence/snap-build-retry.log new file mode 100644 index 00000000..8ffae82e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-build-retry.log @@ -0,0 +1,6224 @@ +Get:1 http://archive.ubuntu.com/ubuntu noble InRelease [256 kB] +Get:2 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB] +Get:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] +Get:4 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [50.0 kB] +Get:5 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] +Get:6 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1808 kB] +Get:7 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1943 kB] +Get:8 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [331 kB] +Get:9 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [19.3 MB] +Get:10 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1545 kB] +Get:11 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages [1323 kB] +Get:12 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [117 kB] +Get:13 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [2165 kB] +Get:14 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [2138 kB] +Get:15 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1701 kB] +Get:16 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [56.2 kB] +Get:17 http://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Packages [671 B] +Get:18 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [36.0 kB] +Get:19 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [49.0 kB] +Fetched 33.2 MB in 4s (7806 kB/s) +Reading package lists... +Cleaning all parts +Initialising lifecycle +Installing build-packages +The following snaps are required but not installed as the application is running inside docker or podman container: gnome-46-2404, gnome-46-2404-sdk, core24, node/24/stable, gtk-common-themes, mesa-2404. +Please ensure the environment is properly setup before continuing. +Ignore this message if the appropriate measures have already been taken. +Pulling busymark +Fetching stage-packages +Downloading package: fontconfig +/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/fontconfig_2.15.0-1.1ubuntu2_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) + acq.run() +Downloading package: libvulkan1 +Downloading package: libsvtav1enc1d1 +Downloading package: libhwy1t64 +Downloading package: libxcb-present0 +Downloading package: yaru-theme-icon +Downloading package: libyajl2 +Downloading package: libv4lconvert0t64 +Downloading package: libgomp1 +Downloading package: libzxing3 +Downloading package: libpulse0 +Downloading package: libwebpmux3 +Downloading package: libopenal-data +Downloading package: libltc11 +Downloading package: libvpl2 +Downloading package: libserd-0-0 +Downloading package: libvpx9 +Downloading package: libxxf86vm1 +Downloading package: libcodec2-1.2 +Downloading package: librubberband2 +Downloading package: libsharpyuv0 +Downloading package: libnghttp2-14 +Downloading package: openssh-client +Downloading package: libglx-mesa0 +Downloading package: libtwolame0 +Downloading package: gstreamer1.0-plugins-ugly +Downloading package: libzvbi-common +Downloading package: libjack-jackd2-0 +Downloading package: libfreeaptx0 +Downloading package: libdatrie1 +Downloading package: libthai0 +Downloading package: libssh-4 +Downloading package: libxrender1 +Downloading package: libldap2 +Downloading package: libglvnd0 +Downloading package: libproxy1v5 +Downloading package: libgdbm-compat4t64 +Downloading package: libraptor2-0 +Downloading package: libsensors-config +Downloading package: hicolor-icon-theme +Downloading package: git +Downloading package: libglib2.0-bin +Downloading package: perl +Downloading package: libx11-xcb1 +Downloading package: libxshmfence1 +Downloading package: libfluidsynth3 +Downloading package: libunwind8 +Downloading package: libdecor-0-0 +Downloading package: libpango-1.0-0 +Downloading package: libvo-aacenc0 +Downloading package: libwavpack1 +Downloading package: libavtp0 +Downloading package: libsrt1.5-gnutls +Downloading package: libwayland-cursor0 +Downloading package: libx264-164 +Downloading package: libshine3 +Downloading package: libaom3 +Downloading package: lsb-base +Downloading package: libjpeg-turbo8 +Downloading package: libv4l-0t64 +Downloading package: libavahi-common-data +Downloading package: libcolord2 +Downloading package: libpsl5t64 +Downloading package: libx265-199 +Downloading package: libass9 +Downloading package: libsasl2-2 +Downloading package: libxcb-dri3-0 +Downloading package: libcairo2 +Downloading package: libgbm1 +Downloading package: libxcursor1 +Downloading package: libbluray2 +Downloading package: libvorbisfile3 +Downloading package: libdv4t64 +Downloading package: libblas3 +Downloading package: libdeflate0 +Downloading package: libqrencode4 +Downloading package: libjpeg8 +Downloading package: x11-common +Downloading package: libiec61883-0 +Downloading package: libsphinxbase3t64 +Downloading package: libbs2b0 +Downloading package: libfftw3-double3 +Downloading package: libglx0 +Downloading package: libgme0 +Downloading package: libdav1d7 +Downloading package: libcaca0 +Downloading package: libfribidi0 +Downloading package: mesa-libgallium +Downloading package: libraw1394-11 +Downloading package: librtmp1 +Downloading package: adwaita-icon-theme +Downloading package: libgpm2 +Downloading package: libtiff6 +Downloading package: libgfortran5 +Downloading package: libpixman-1-0 +Downloading package: libtag1v5 +Downloading package: libvidstab1.1 +Downloading package: libva-x11-2 +Downloading package: librist4 +Downloading package: libgsm1 +Downloading package: libgupnp-1.6-0 +Downloading package: libcjson1 +Downloading package: libshout3 +Downloading package: libxau6 +Downloading package: libgtk2.0-0t64 +Downloading package: libxcb1 +Downloading package: libgstreamer-gl1.0-0 +Downloading package: libssh-gcrypt-4 +Downloading package: libllvm20 +Downloading package: libxcomposite1 +Downloading package: libmfx1 +Downloading package: libmpcdec6 +Downloading package: libnuma1 +Downloading package: libcdio19t64 +Downloading package: libdirectfb-1.7-7t64 +Downloading package: libxdamage1 +Downloading package: libgdk-pixbuf-2.0-0 +Downloading package: libsasl2-modules-db +Downloading package: libfaad2 +Downloading package: timgm6mb-soundfont +Downloading package: libcairo-gobject2 +Downloading package: fonts-noto-mono +Downloading package: liblerc4 +Downloading package: ubuntu-mono +Downloading package: libgupnp-igd-1.6-0 +Downloading package: libgdbm6t64 +Downloading package: libxml2 +Downloading package: libglib2.0-data +Downloading package: humanity-icon-theme +Downloading package: libgtk2.0-common +Downloading package: libgraphite2-3 +Downloading package: util-linux +Downloading package: libdconf1 +Downloading package: libfontconfig1 +Downloading package: libcups2t64 +Downloading package: libvdpau1 +Downloading package: libsbc1 +Downloading package: libmodplug1 +Downloading package: libopenexr-3-1-30 +Downloading package: libopenh264-7 +Downloading package: libpostproc57 +Downloading package: libxss1 +Downloading package: shared-mime-info +Downloading package: libatspi2.0-0t64 +Downloading package: glib-networking-common +Downloading package: libgles2 +Downloading package: libgl1-mesa-dri +Downloading package: libcurl3t64-gnutls +Downloading package: libasound2t64 +Downloading package: libxrandr2 +Downloading package: libjxl0.7 +Downloading package: fontconfig-config +Downloading package: gtk2-engines-murrine +Downloading package: libmp3lame0 +Downloading package: libsoxr0 +Downloading package: libx11-data +Downloading package: libsoup-3.0-0 +Downloading package: libgudev-1.0-0 +Downloading package: libgstreamer-plugins-good1.0-0 +Downloading package: libavc1394-0 +Downloading package: libsodium23 +Downloading package: libudfread0 +Downloading package: libjson-glib-1.0-common +Downloading package: libmjpegutils-2.1-0t64 +Downloading package: gnome-themes-extra-data +Downloading package: libmbedcrypto7t64 +Downloading package: libsnappy1v5 +Downloading package: libsndio7.0 +Downloading package: libopus0 +Downloading package: libpangocairo-1.0-0 +Downloading package: libnorm1t64 +Downloading package: libxtst6 +Downloading package: glib-networking-services +Downloading package: libmysofa1 +Downloading package: yaru-theme-gtk +Downloading package: libavcodec60 +Downloading package: libzimg2 +Downloading package: libgstreamer-plugins-bad1.0-0 +Downloading package: libxcb-render0 +Downloading package: libusb-1.0-0 +Downloading package: libvisual-0.4-0 +Downloading package: libgssdp-1.6-0 +Downloading package: libimath-3-1-29t64 +Downloading package: libzvbi0t64 +Downloading package: gsettings-desktop-schemas +Downloading package: fonts-noto-core +Downloading package: libdvdread8t64 +Downloading package: gstreamer1.0-plugins-good +Downloading package: libwebrtc-audio-processing1 +Downloading package: libopenni2-0 +Downloading package: gstreamer1.0-plugins-base +Downloading package: libopenal1 +Downloading package: libvorbisenc2 +Downloading package: libasyncns0 +Downloading package: libunibreak5 +Downloading package: libnss3 +Downloading package: libpangoft2-1.0-0 +Downloading package: libtheora0 +Downloading package: libxvidcore4 +Downloading package: libpocketsphinx3 +Downloading package: libspandsp2t64 +Downloading package: libsndfile1 +Downloading package: libavutil58 +Downloading package: liborc-0.4-0t64 +Downloading package: libwebp7 +Downloading package: libsidplay1v5 +Downloading package: libwildmidi2 +Downloading package: libxslt1.1 +Downloading package: libswscale7 +Downloading package: fonts-dejavu-mono +Downloading package: liblc3-1 +Downloading package: libatk1.0-0t64 +Downloading package: libspeex1 +Downloading package: libmpeg2-4 +Downloading package: libasound2-data +Downloading package: adduser +Downloading package: libflac12t64 +Downloading package: libthai-data +Downloading package: libgstreamer1.0-0 +Downloading package: libdca0 +Downloading package: libavahi-common3 +Downloading package: liblrdf0 +Downloading package: librsvg2-2 +Downloading package: libsamplerate0 +Downloading package: liberror-perl +Downloading package: ocl-icd-libopencl1 +Downloading package: libxcb-glx0 +Downloading package: libldacbt-enc2 +Downloading package: libogg0 +Downloading package: libxinerama1 +Downloading package: libsord-0-0 +Downloading package: libjbig0 +Downloading package: libflite1 +Downloading package: libopenjp2-7 +Downloading package: libwayland-egl1 +Downloading package: libcdparanoia0 +Downloading package: libplacebo338 +Downloading package: libzix-0-0 +Downloading package: libvorbis0a +Downloading package: libsdl2-2.0-0 +Downloading package: libdw1t64 +Downloading package: libjson-glib-1.0-0 +Downloading package: perl-base +Downloading package: libspa-0.2-modules +Downloading package: libzmq5 +Downloading package: libdrm-amdgpu1 +Downloading package: gtk2-engines-pixbuf +Downloading package: dconf-gsettings-backend +Downloading package: libchromaprint1 +Downloading package: libsensors5 +Downloading package: libxcb-randr0 +Downloading package: libvo-amrwbenc0 +Downloading package: libswresample4 +Downloading package: librabbitmq4 +Downloading package: libpipewire-0.3-0t64 +Downloading package: gtk-update-icon-cache +Downloading package: libxcb-xkb1 +Downloading package: libsrtp2-1 +Downloading package: libxext6 +Downloading package: libsoup-3.0-common +Downloading package: libgtk-3-common +Downloading package: libdvdnav4 +Downloading package: libdc1394-25 +Downloading package: libmplex2-2.1-0t64 +Downloading package: liba52-0.7.4 +Downloading package: libnice10 +Downloading package: libmpeg2encpp-2.1-0t64 +Downloading package: libharfbuzz0b +Downloading package: fonts-dejavu-core +Downloading package: libinstpatch-1.0-2 +Downloading package: libsoundtouch1 +Downloading package: libavformat60 +Downloading package: libaa1 +Downloading package: liblilv-0-0 +Downloading package: libmpg123-0t64 +Downloading package: gstreamer1.0-plugins-bad +Downloading package: libslang2 +Downloading package: libegl-mesa0 +Downloading package: session-migration +Downloading package: libva-drm2 +Downloading package: libxcb-shm0 +Downloading package: libgtk-3-0t64 +Downloading package: gnome-themes-extra +Downloading package: dconf-service +Downloading package: perl-modules-5.38 +Downloading package: libgl1 +Downloading package: libzbar0t64 +Downloading package: libegl1 +Downloading package: libx11-6 +Downloading package: libgstreamer-plugins-base1.0-0 +Downloading package: libtag1v5-vanilla +Downloading package: libwayland-client0 +Downloading package: gstreamer1.0-libav +Downloading package: liblapack3 +Downloading package: libopenmpt0t64 +Downloading package: libperl5.38t64 +Downloading package: libxkbcommon-x11-0 +Downloading package: liblcms2-2 +Downloading package: git-man +Downloading package: libatk-bridge2.0-0t64 +Downloading package: libde265-0 +Downloading package: libepoxy0 +Downloading package: libpgm-5.3-0t64 +Downloading package: libxcb-sync1 +Downloading package: libicu74 +Downloading package: libneon27t64 +Downloading package: at-spi2-common +Downloading package: libavahi-client3 +Downloading package: glib-networking +Downloading package: librav1e0 +Downloading package: libva2 +Downloading package: libdrm-intel1 +Downloading package: libxfixes3 +Downloading package: libxdmcp6 +Downloading package: libncurses6 +Downloading package: libxi6 +Downloading package: iso-codes +Downloading package: libxcb-xfixes0 +Downloading package: libavfilter9 +Downloading package: libnspr4 +Downloading package: libsratom-0-0 +Downloading package: libgdk-pixbuf2.0-common +Extracting stage package: fontconfig +Extracting stage package: libvulkan1 +Extracting stage package: libsvtav1enc1d1 +Extracting stage package: libhwy1t64 +Extracting stage package: libxcb-present0 +Extracting stage package: yaru-theme-icon +Extracting stage package: libyajl2 +Extracting stage package: libv4lconvert0t64 +Extracting stage package: libgomp1 +Extracting stage package: libzxing3 +Extracting stage package: libpulse0 +Extracting stage package: libwebpmux3 +Extracting stage package: libopenal-data +Extracting stage package: libltc11 +Extracting stage package: libvpl2 +Extracting stage package: libserd-0-0 +Extracting stage package: libvpx9 +Extracting stage package: libxxf86vm1 +Extracting stage package: libcodec2-1.2 +Extracting stage package: librubberband2 +Extracting stage package: libsharpyuv0 +Extracting stage package: libnghttp2-14 +Extracting stage package: openssh-client +Extracting stage package: libglx-mesa0 +Extracting stage package: libtwolame0 +Extracting stage package: gstreamer1.0-plugins-ugly +Extracting stage package: libzvbi-common +Extracting stage package: libjack-jackd2-0 +Extracting stage package: libfreeaptx0 +Extracting stage package: libdatrie1 +Extracting stage package: libthai0 +Extracting stage package: libssh-4 +Extracting stage package: libxrender1 +Extracting stage package: libldap2 +Extracting stage package: libglvnd0 +Extracting stage package: libproxy1v5 +Extracting stage package: libgdbm-compat4t64 +Extracting stage package: libraptor2-0 +Extracting stage package: libsensors-config +Extracting stage package: hicolor-icon-theme +Extracting stage package: git +Extracting stage package: libglib2.0-bin +Extracting stage package: perl +Extracting stage package: libx11-xcb1 +Extracting stage package: libxshmfence1 +Extracting stage package: libfluidsynth3 +Extracting stage package: libunwind8 +Extracting stage package: libdecor-0-0 +Extracting stage package: libpango-1.0-0 +Extracting stage package: libvo-aacenc0 +Extracting stage package: libwavpack1 +Extracting stage package: libavtp0 +Extracting stage package: libsrt1.5-gnutls +Extracting stage package: libwayland-cursor0 +Extracting stage package: libx264-164 +Extracting stage package: libshine3 +Extracting stage package: libaom3 +Extracting stage package: lsb-base +Extracting stage package: libjpeg-turbo8 +Extracting stage package: libv4l-0t64 +Extracting stage package: libavahi-common-data +Extracting stage package: libcolord2 +Extracting stage package: libpsl5t64 +Extracting stage package: libx265-199 +Extracting stage package: libass9 +Extracting stage package: libsasl2-2 +Extracting stage package: libxcb-dri3-0 +Extracting stage package: libcairo2 +Extracting stage package: libgbm1 +Extracting stage package: libxcursor1 +Extracting stage package: libbluray2 +Extracting stage package: libvorbisfile3 +Extracting stage package: libdv4t64 +Extracting stage package: libblas3 +Extracting stage package: libdeflate0 +Extracting stage package: libqrencode4 +Extracting stage package: libjpeg8 +Extracting stage package: x11-common +Extracting stage package: libiec61883-0 +Extracting stage package: libsphinxbase3t64 +Extracting stage package: libbs2b0 +Extracting stage package: libfftw3-double3 +Extracting stage package: libglx0 +Extracting stage package: libgme0 +Extracting stage package: libdav1d7 +Extracting stage package: libcaca0 +Extracting stage package: libfribidi0 +Extracting stage package: mesa-libgallium +Extracting stage package: libraw1394-11 +Extracting stage package: librtmp1 +Extracting stage package: adwaita-icon-theme +Extracting stage package: libgpm2 +Extracting stage package: libtiff6 +Extracting stage package: libgfortran5 +Extracting stage package: libpixman-1-0 +Extracting stage package: libtag1v5 +Extracting stage package: libvidstab1.1 +Extracting stage package: libva-x11-2 +Extracting stage package: librist4 +Extracting stage package: libgsm1 +Extracting stage package: libgupnp-1.6-0 +Extracting stage package: libcjson1 +Extracting stage package: libshout3 +Extracting stage package: libxau6 +Extracting stage package: libgtk2.0-0t64 +Extracting stage package: libxcb1 +Extracting stage package: libgstreamer-gl1.0-0 +Extracting stage package: libssh-gcrypt-4 +Extracting stage package: libllvm20 +Extracting stage package: libxcomposite1 +Extracting stage package: libmfx1 +Extracting stage package: libmpcdec6 +Extracting stage package: libnuma1 +Extracting stage package: libcdio19t64 +Extracting stage package: libdirectfb-1.7-7t64 +Extracting stage package: libxdamage1 +Extracting stage package: libgdk-pixbuf-2.0-0 +Extracting stage package: libsasl2-modules-db +Extracting stage package: libfaad2 +Extracting stage package: timgm6mb-soundfont +Extracting stage package: libcairo-gobject2 +Extracting stage package: fonts-noto-mono +Extracting stage package: liblerc4 +Extracting stage package: ubuntu-mono +Extracting stage package: libgupnp-igd-1.6-0 +Extracting stage package: libgdbm6t64 +Extracting stage package: libxml2 +Extracting stage package: libglib2.0-data +Extracting stage package: humanity-icon-theme +Extracting stage package: libgtk2.0-common +Extracting stage package: libgraphite2-3 +Extracting stage package: util-linux +Extracting stage package: libdconf1 +Extracting stage package: libfontconfig1 +Extracting stage package: libcups2t64 +Extracting stage package: libvdpau1 +Extracting stage package: libsbc1 +Extracting stage package: libmodplug1 +Extracting stage package: libopenexr-3-1-30 +Extracting stage package: libopenh264-7 +Extracting stage package: libpostproc57 +Extracting stage package: libxss1 +Extracting stage package: shared-mime-info +Extracting stage package: libatspi2.0-0t64 +Extracting stage package: glib-networking-common +Extracting stage package: libgles2 +Extracting stage package: libgl1-mesa-dri +Extracting stage package: libcurl3t64-gnutls +Extracting stage package: libasound2t64 +Extracting stage package: libxrandr2 +Extracting stage package: libjxl0.7 +Extracting stage package: fontconfig-config +Extracting stage package: gtk2-engines-murrine +Extracting stage package: libmp3lame0 +Extracting stage package: libsoxr0 +Extracting stage package: libx11-data +Extracting stage package: libsoup-3.0-0 +Extracting stage package: libgudev-1.0-0 +Extracting stage package: libgstreamer-plugins-good1.0-0 +Extracting stage package: libavc1394-0 +Extracting stage package: libsodium23 +Extracting stage package: libudfread0 +Extracting stage package: libjson-glib-1.0-common +Extracting stage package: libmjpegutils-2.1-0t64 +Extracting stage package: gnome-themes-extra-data +Extracting stage package: libmbedcrypto7t64 +Extracting stage package: libsnappy1v5 +Extracting stage package: libsndio7.0 +Extracting stage package: libopus0 +Extracting stage package: libpangocairo-1.0-0 +Extracting stage package: libnorm1t64 +Extracting stage package: libxtst6 +Extracting stage package: glib-networking-services +Extracting stage package: libmysofa1 +Extracting stage package: yaru-theme-gtk +Extracting stage package: libavcodec60 +Extracting stage package: libzimg2 +Extracting stage package: libgstreamer-plugins-bad1.0-0 +Extracting stage package: libxcb-render0 +Extracting stage package: libusb-1.0-0 +Extracting stage package: libvisual-0.4-0 +Extracting stage package: libgssdp-1.6-0 +Extracting stage package: libimath-3-1-29t64 +Extracting stage package: libzvbi0t64 +Extracting stage package: gsettings-desktop-schemas +Extracting stage package: fonts-noto-core +Extracting stage package: libdvdread8t64 +Extracting stage package: gstreamer1.0-plugins-good +Extracting stage package: libwebrtc-audio-processing1 +Extracting stage package: libopenni2-0 +Extracting stage package: gstreamer1.0-plugins-base +Extracting stage package: libopenal1 +Extracting stage package: libvorbisenc2 +Extracting stage package: libasyncns0 +Extracting stage package: libunibreak5 +Extracting stage package: libnss3 +Extracting stage package: libpangoft2-1.0-0 +Extracting stage package: libtheora0 +Extracting stage package: libxvidcore4 +Extracting stage package: libpocketsphinx3 +Extracting stage package: libspandsp2t64 +Extracting stage package: libsndfile1 +Extracting stage package: libavutil58 +Extracting stage package: liborc-0.4-0t64 +Extracting stage package: libwebp7 +Extracting stage package: libsidplay1v5 +Extracting stage package: libwildmidi2 +Extracting stage package: libxslt1.1 +Extracting stage package: libswscale7 +Extracting stage package: fonts-dejavu-mono +Extracting stage package: liblc3-1 +Extracting stage package: libatk1.0-0t64 +Extracting stage package: libspeex1 +Extracting stage package: libmpeg2-4 +Extracting stage package: libasound2-data +Extracting stage package: adduser +Extracting stage package: libflac12t64 +Extracting stage package: libthai-data +Extracting stage package: libgstreamer1.0-0 +Extracting stage package: libdca0 +Extracting stage package: libavahi-common3 +Extracting stage package: liblrdf0 +Extracting stage package: librsvg2-2 +Extracting stage package: libsamplerate0 +Extracting stage package: liberror-perl +Extracting stage package: ocl-icd-libopencl1 +Extracting stage package: libxcb-glx0 +Extracting stage package: libldacbt-enc2 +Extracting stage package: libogg0 +Extracting stage package: libxinerama1 +Extracting stage package: libsord-0-0 +Extracting stage package: libjbig0 +Extracting stage package: libflite1 +Extracting stage package: libopenjp2-7 +Extracting stage package: libwayland-egl1 +Extracting stage package: libcdparanoia0 +Extracting stage package: libplacebo338 +Extracting stage package: libzix-0-0 +Extracting stage package: libvorbis0a +Extracting stage package: libsdl2-2.0-0 +Extracting stage package: libdw1t64 +Extracting stage package: libjson-glib-1.0-0 +Extracting stage package: perl-base +Extracting stage package: libspa-0.2-modules +Extracting stage package: libzmq5 +Extracting stage package: libdrm-amdgpu1 +Extracting stage package: gtk2-engines-pixbuf +Extracting stage package: dconf-gsettings-backend +Extracting stage package: libchromaprint1 +Extracting stage package: libsensors5 +Extracting stage package: libxcb-randr0 +Extracting stage package: libvo-amrwbenc0 +Extracting stage package: libswresample4 +Extracting stage package: librabbitmq4 +Extracting stage package: libpipewire-0.3-0t64 +Extracting stage package: gtk-update-icon-cache +Extracting stage package: libxcb-xkb1 +Extracting stage package: libsrtp2-1 +Extracting stage package: libxext6 +Extracting stage package: libsoup-3.0-common +Extracting stage package: libgtk-3-common +Extracting stage package: libdvdnav4 +Extracting stage package: libdc1394-25 +Extracting stage package: libmplex2-2.1-0t64 +Extracting stage package: liba52-0.7.4 +Extracting stage package: libnice10 +Extracting stage package: libmpeg2encpp-2.1-0t64 +Extracting stage package: libharfbuzz0b +Extracting stage package: fonts-dejavu-core +Extracting stage package: libinstpatch-1.0-2 +Extracting stage package: libsoundtouch1 +Extracting stage package: libavformat60 +Extracting stage package: libaa1 +Extracting stage package: liblilv-0-0 +Extracting stage package: libmpg123-0t64 +Extracting stage package: gstreamer1.0-plugins-bad +Extracting stage package: libslang2 +Extracting stage package: libegl-mesa0 +Extracting stage package: session-migration +Extracting stage package: libva-drm2 +Extracting stage package: libxcb-shm0 +Extracting stage package: libgtk-3-0t64 +Extracting stage package: gnome-themes-extra +Extracting stage package: dconf-service +Extracting stage package: perl-modules-5.38 +Extracting stage package: libgl1 +Extracting stage package: libzbar0t64 +Extracting stage package: libegl1 +Extracting stage package: libx11-6 +Extracting stage package: libgstreamer-plugins-base1.0-0 +Extracting stage package: libtag1v5-vanilla +Extracting stage package: libwayland-client0 +Extracting stage package: gstreamer1.0-libav +Extracting stage package: liblapack3 +Extracting stage package: libopenmpt0t64 +Extracting stage package: libperl5.38t64 +Extracting stage package: libxkbcommon-x11-0 +Extracting stage package: liblcms2-2 +Extracting stage package: git-man +Extracting stage package: libatk-bridge2.0-0t64 +Extracting stage package: libde265-0 +Extracting stage package: libepoxy0 +Extracting stage package: libpgm-5.3-0t64 +Extracting stage package: libxcb-sync1 +Extracting stage package: libicu74 +Extracting stage package: libneon27t64 +Extracting stage package: at-spi2-common +Extracting stage package: libavahi-client3 +Extracting stage package: glib-networking +Extracting stage package: librav1e0 +Extracting stage package: libva2 +Extracting stage package: libdrm-intel1 +Extracting stage package: libxfixes3 +Extracting stage package: libxdmcp6 +Extracting stage package: libncurses6 +Extracting stage package: libxi6 +Extracting stage package: iso-codes +Extracting stage package: libxcb-xfixes0 +Extracting stage package: libavfilter9 +Extracting stage package: libnspr4 +Extracting stage package: libsratom-0-0 +Extracting stage package: libgdk-pixbuf2.0-common +Pulling desktop-integration +Pulling gnome/sdk +Building busymark +Removing suid/guid from /project/parts/busymark/install/usr/bin/su +Removing suid/guid from /project/parts/busymark/install/usr/lib/openssh/ssh-keysign +:: + rm -rf /project/parts/busymark/build/build +:: + rm -rf /project/parts/busymark/build/.dart_tool +:: + rm -rf /project/parts/busymark/build/linux/flutter/ephemeral +:: + flutter_sdk=/project/parts/busymark/build/flutter-distro +:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD +:: ++ true +:: + flutter_sdk_version= +:: + '[' '!' -x /project/parts/busymark/build/flutter-distro/bin/flutter ']' +:: + rm -rf /project/parts/busymark/build/flutter-distro +:: + git clone --depth 1 --branch 3.47.5 https://github.com/flutter/flutter.git /project/parts/busymark/build/flutter-distro +:: Cloning into '/project/parts/busymark/build/flutter-distro'... +:: Note: switching to '6a19cca56475dbfba1478ee68d7bd0c2ef891da1'. +:: +:: You are in 'detached HEAD' state. You can look around, make experimental +:: changes and commit them, and you can discard any commits you make in this +:: state without impacting any branches by switching back to a branch. +:: +:: If you want to create a new branch to retain commits you create, you may +:: do so (now or later) by using -c with the switch command. Example: +:: +:: git switch -c +:: +:: Or undo this operation with: +:: +:: git switch - +:: +:: Turn off this advice by setting config variable advice.detachedHead to false +:: +:: Updating files: 95% (15307/16074) Updating files: 96% (15432/16074) Updating files: 97% (15592/16074) Updating files: 98% (15753/16074) Updating files: 99% (15914/16074) Updating files: 100% (16074/16074) Updating files: 100% (16074/16074), done. +:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD +:: + test 3.47.5 = 3.47.5 +:: + export CI=true +:: + CI=true +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check precache --linux +:: Downloading Linux x64 Dart SDK from Flutter engine af7e796e161ae0bb1ff0758c71a7105418bd9ded... +:: % Total % Received % Xferd Average Speed Time Time Time Current +:: Dload Upload Total Spent Left Speed +:: 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 5 227M 5 12.2M 0 0 13.2M 0 0:00:17 --:--:-- 0:00:17 13.2M 20 227M 20 47.3M 0 0 24.6M 0 0:00:09 0:00:01 0:00:08 24.6M 36 227M 36 83.8M 0 0 28.7M 0 0:00:07 0:00:02 0:00:05 28.7M 52 227M 52 118M 0 0 30.3M 0 0:00:07 0:00:03 0:00:04 30.3M 67 227M 67 153M 0 0 31.1M 0 0:00:07 0:00:04 0:00:03 31.1M 80 227M 80 182M 0 0 30.8M 0 0:00:07 0:00:05 0:00:02 34.0M 96 227M 96 218M 0 0 31.6M 0 0:00:07 0:00:06 0:00:01 34.3M 100 227M 100 227M 0 0 31.7M 0 0:00:07 0:00:07 --:--:-- 33.8M +:: Building flutter tool... +:: Resolving dependencies... +:: Downloading packages... +:: + _fe_analyzer_shared 95.0.0 (109.0.0 available) +:: + analyzer 10.1.0 (14.5.0 available) +:: + archive 3.6.1 (4.3.0 available) +:: + args 2.7.0 +:: + async 2.13.1 +:: + boolean_selector 2.1.2 +:: + browser_launcher 1.1.3 (1.2.0 available) +:: + built_collection 5.1.1 (5.1.2 available) +:: + built_value 8.12.6 (8.13.0 available) +:: + checked_yaml 2.0.4 +:: + cli_config 0.2.0 +:: + clock 1.1.2 (1.1.3 available) +:: + code_assets 1.2.1 (2.1.0 available) +:: + code_builder 4.11.1 (4.12.0 available) +:: + collection 1.19.1 +:: + completion 1.0.2 +:: + convert 3.1.2 +:: + coverage 1.15.1 +:: + crypto 3.0.7 +:: + csslib 1.0.2 +:: + dap 1.4.0 +:: + dart_service_protocol_shared 0.0.3 +:: + dart_style 3.1.7 (3.1.13 available) +:: + data_assets 0.20.0 +:: + dds 5.4.0 +:: + dds_service_extensions 2.1.0 +:: + devtools_shared 13.1.0 (14.0.0 available) +:: + dtd 4.0.0 +:: + dwds 27.1.2 (27.1.4 available) +:: + extension_discovery 2.1.0 +:: + fake_async 1.3.3 +:: + ffi 2.2.0 +:: + file 7.0.1 +:: + file_testing 3.0.2 (3.1.0 available) +:: + fixnum 1.1.1 +:: + flutter_template_images 5.0.0 (5.0.1 available) +:: + frontend_server_client 4.0.0 (4.1.0 available) +:: + glob 2.1.3 (2.2.0 available) +:: + graphs 2.3.2 +:: + hooks 2.0.2 (2.2.0 available) +:: + hooks_runner 1.5.0 (1.6.4 available) +:: + html 0.15.6 (0.15.7 available) +:: + http 1.6.0 +:: + http_multi_server 3.2.2 +:: + http_parser 4.1.2 +:: + intl 0.20.3 +:: + io 1.0.5 (1.1.0 available) +:: + js 0.7.2 (discontinued) +:: + json_annotation 4.12.0 +:: + json_rpc_2 4.1.0 +:: + logging 1.3.0 +:: + matcher 0.12.20 +:: + meta 1.18.3 (1.19.0 available) +:: + mime 2.0.0 (2.1.0 available) +:: + multicast_dns 0.3.3+1 +:: + mustache_template 2.0.5 (2.0.6 available) +:: + native_stack_traces 0.6.1 (0.7.0 available) +:: + node_preamble 2.0.2 +:: + package_config 2.2.0 (3.0.0 available) +:: + path 1.9.1 +:: + petitparser 7.0.2 (7.1.0 available) +:: + platform 3.1.6 (3.2.0 available) +:: + pool 1.5.2 (1.5.3 available) +:: + process 5.0.5 (5.0.6 available) +:: + pub_semver 2.2.0 (2.2.1 available) +:: + pubspec_parse 1.5.0 (1.6.0 available) +:: + record_use 0.6.0 (1.1.1 available) +:: + shelf 1.4.2 +:: + shelf_packages_handler 3.0.2 +:: + shelf_proxy 1.0.5 +:: + shelf_static 1.1.3 +:: + shelf_web_socket 3.0.0 +:: + source_map_stack_trace 2.1.2 +:: + source_maps 0.10.13 (0.10.14 available) +:: + source_span 1.10.2 +:: + sprintf 7.0.0 +:: + sse 4.2.0 +:: + stack_trace 1.12.1 (1.12.2 available) +:: + standard_message_codec 0.0.1+5 +:: + stream_channel 2.1.4 +:: + string_scanner 1.4.1 +:: + sync_http 0.3.1 +:: + term_glyph 1.2.2 +:: + test 1.31.1 (1.32.0 available) +:: + test_api 0.7.12 (0.7.14 available) +:: + test_core 0.6.18 (0.6.20 available) +:: + typed_data 1.4.0 +:: + unified_analytics 8.0.15 (8.0.18 available) +:: + uuid 4.5.3 (4.6.0 available) +:: + vm_service 15.2.0 (15.3.0 available) +:: + vm_service_interface 2.0.1 +:: + vm_snapshot_analysis 0.7.6 +:: + watcher 1.2.1 +:: + web 1.1.1 +:: + web_socket 1.0.1 +:: + web_socket_channel 3.0.3 +:: + webdriver 3.1.0 (3.2.0 available) +:: + webkit_inspection_protocol 1.2.1 +:: + xml 6.6.1 (7.1.0 available) +:: + yaml 3.1.3 (3.1.4 available) +:: + yaml_edit 2.2.4 +:: Changed 101 dependencies! +:: 1 package is discontinued. +:: 43 packages have newer versions incompatible with dependency constraints. +:: Try `dart pub outdated` for more information. +:: [1/11] Material Fonts 462ms +:: [2/11] Gradle Wrapper 41ms +:: [3/11] Flutter SDK +:: ├─ [1/5] sky_engine 111ms +:: ├─ [2/5] flutter_gpu 62ms +:: ├─ [3/5] flutter_patched_sdk 199ms +:: ├─ [4/5] flutter_patched_sdk_product 207ms +:: └─ [5/5] linux-x64 1,029ms +:: [4/11] Linux SDK +:: ├─ [1/3] linux-x64-debug/linux-x64-flutter-gtk 628ms +:: ├─ [2/3] linux-x64-profile/linux-x64-flutter-gtk 329ms +:: └─ [3/3] linux-x64-release/linux-x64-flutter-gtk 338ms +:: [11/11] linux-x64/font-subset 129ms +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get +:: Resolving dependencies... +:: Downloading packages... +:: _fe_analyzer_shared 99.0.0 (109.0.0 available) +:: analyzer 12.1.0 (14.5.0 available) +:: animated_vector 0.2.2 (0.2.3 available) +:: animated_vector_annotations 0.2.2 (0.3.0 available) +:: archive 4.0.9 (4.3.0 available) +:: assorted_layout_widgets 11.0.0 (13.1.0 available) +:: clock 1.1.2 (1.1.3 available) +:: code_assets 1.2.1 (2.1.0 available) +:: cross_file 0.3.5+4 (0.4.0 available) +:: dbus 0.7.13 (0.8.0 available) +:: file_selector_android 0.5.2+8 (0.5.2+11 available) +:: file_selector_ios 0.5.3+5 (0.5.3+6 available) +:: file_selector_linux 0.9.4 (0.9.4+1 available) +:: file_selector_macos 0.9.5 (0.9.5+1 available) +:: file_selector_windows 0.9.3+5 (0.9.3+6 available) +:: flutter_riverpod 3.3.2 (3.4.3 available) +:: frontend_server_client 4.0.0 (4.1.0 available) +:: glob 2.1.3 (2.2.0 available) +:: go_router 17.3.0 (18.0.2 available) +:: gsettings 0.2.8 (0.2.9 available) +:: html 0.15.6 (0.15.7 available) +:: image 4.9.1 (4.10.1 available) +:: io 1.0.5 (1.1.0 available) +:: jni 1.0.0 (1.1.0 available) +:: jni_flutter 1.0.1 (1.0.4+1 available) +:: material_color_utilities 0.13.0 (0.13.1 available) +:: mime 2.0.0 (2.1.0 available) +:: native_toolchain_c 0.19.3 (0.19.5 available) +:: objective_c 9.4.1 (9.6.2 available) +:: package_config 2.2.0 (3.0.0 available) +:: package_info_plus 10.2.1 (10.2.2 available) +:: petitparser 7.0.2 (7.1.0 available) +:: platform 3.1.6 (3.2.0 available) +:: pool 1.5.2 (1.5.3 available) +:: posix 6.5.0 (6.5.2 available) +:: pub_semver 2.2.0 (2.2.1 available) +:: riverpod 3.3.2 (3.4.3 available) +:: source_maps 0.10.13 (0.10.14 available) +:: stack_trace 1.12.1 (1.12.2 available) +:: test 1.31.1 (1.32.0 available) +:: test_api 0.7.12 (0.7.14 available) +:: test_core 0.6.18 (0.6.20 available) +:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) +:: unorm_dart 0.3.2 (0.3.3 available) +:: url_launcher 6.3.2 (6.3.3 available) +:: url_launcher_android 6.3.32 (6.3.33 available) +:: url_launcher_ios 6.4.1 (6.4.2 available) +:: url_launcher_linux 3.2.2 (3.2.3 available) +:: url_launcher_macos 3.2.5 (3.2.6 available) +:: url_launcher_windows 3.1.5 (3.1.6 available) +:: vector_graphics 1.2.2 (1.2.3 available) +:: vector_graphics_compiler 1.2.6 (1.3.0 available) +:: vector_math 2.4.2 (2.4.3 available) +:: vm_service 15.2.0 (15.3.0 available) +:: win32 6.3.0 (6.4.0 available) +:: xml 7.0.1 (7.1.0 available) +:: yaml 3.1.3 (3.1.4 available) +:: yaru 10.2.0 (11.0.0 available) +:: Got dependencies! +:: 58 packages have newer versions incompatible with dependency constraints. +:: Try `flutter pub outdated` for more information. +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart +:: [ +13 ms] Unable to locate an Android SDK. +:: [ +8 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ +27 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ +15 ms] executing: [/project/parts/busymark/build/] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart pub --suppress-analytics --directory . get --example +:: Resolving dependencies... +:: Downloading packages... +:: _fe_analyzer_shared 99.0.0 (109.0.0 available) +:: analyzer 12.1.0 (14.5.0 available) +:: animated_vector 0.2.2 (0.2.3 available) +:: animated_vector_annotations 0.2.2 (0.3.0 available) +:: archive 4.0.9 (4.3.0 available) +:: assorted_layout_widgets 11.0.0 (13.1.0 available) +:: clock 1.1.2 (1.1.3 available) +:: code_assets 1.2.1 (2.1.0 available) +:: cross_file 0.3.5+4 (0.4.0 available) +:: dbus 0.7.13 (0.8.0 available) +:: file_selector_android 0.5.2+8 (0.5.2+11 available) +:: file_selector_ios 0.5.3+5 (0.5.3+6 available) +:: file_selector_linux 0.9.4 (0.9.4+1 available) +:: file_selector_macos 0.9.5 (0.9.5+1 available) +:: file_selector_windows 0.9.3+5 (0.9.3+6 available) +:: flutter_riverpod 3.3.2 (3.4.3 available) +:: frontend_server_client 4.0.0 (4.1.0 available) +:: glob 2.1.3 (2.2.0 available) +:: go_router 17.3.0 (18.0.2 available) +:: gsettings 0.2.8 (0.2.9 available) +:: html 0.15.6 (0.15.7 available) +:: image 4.9.1 (4.10.1 available) +:: io 1.0.5 (1.1.0 available) +:: jni 1.0.0 (1.1.0 available) +:: jni_flutter 1.0.1 (1.0.4+1 available) +:: material_color_utilities 0.13.0 (0.13.1 available) +:: mime 2.0.0 (2.1.0 available) +:: native_toolchain_c 0.19.3 (0.19.5 available) +:: objective_c 9.4.1 (9.6.2 available) +:: package_config 2.2.0 (3.0.0 available) +:: package_info_plus 10.2.1 (10.2.2 available) +:: petitparser 7.0.2 (7.1.0 available) +:: platform 3.1.6 (3.2.0 available) +:: pool 1.5.2 (1.5.3 available) +:: posix 6.5.0 (6.5.2 available) +:: pub_semver 2.2.0 (2.2.1 available) +:: riverpod 3.3.2 (3.4.3 available) +:: source_maps 0.10.13 (0.10.14 available) +:: stack_trace 1.12.1 (1.12.2 available) +:: test 1.31.1 (1.32.0 available) +:: test_api 0.7.12 (0.7.14 available) +:: test_core 0.6.18 (0.6.20 available) +:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) +:: unorm_dart 0.3.2 (0.3.3 available) +:: url_launcher 6.3.2 (6.3.3 available) +:: url_launcher_android 6.3.32 (6.3.33 available) +:: url_launcher_ios 6.4.1 (6.4.2 available) +:: url_launcher_linux 3.2.2 (3.2.3 available) +:: url_launcher_macos 3.2.5 (3.2.6 available) +:: url_launcher_windows 3.1.5 (3.1.6 available) +:: vector_graphics 1.2.2 (1.2.3 available) +:: vector_graphics_compiler 1.2.6 (1.3.0 available) +:: vector_math 2.4.2 (2.4.3 available) +:: vm_service 15.2.0 (15.3.0 available) +:: win32 6.3.0 (6.4.0 available) +:: xml 7.0.1 (7.1.0 available) +:: yaml 3.1.3 (3.1.4 available) +:: yaru 10.2.0 (11.0.0 available) +:: Got dependencies! +:: 58 packages have newer versions incompatible with dependency constraints. +:: Try `flutter pub outdated` for more information. +:: [ +596 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ +5 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ +6 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ +4 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ +3 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ +3 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ +3 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +29 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ +2 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ +3 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ +4 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ +3 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ +2 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ +23 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ +3 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ +33 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ +2 ms] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ +3 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ +1 ms] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ +1 ms] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ +1 ms] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ +1 ms] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ +42 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ +1 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ +4 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ +1 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ +1 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ +2 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ +2 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +13 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ +2 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ +1 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ +12 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ +2 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ +34 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ +1 ms] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ +2 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ +1 ms] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ +1 ms] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ +1 ms] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ +13 ms] Skipping generating generated_plugin_registrant.h because it is up-to-date. +:: [ +5 ms] Skipping generating generated_plugin_registrant.cc because it is up-to-date. +:: [ +1 ms] Skipping generating generated_plugins.cmake because it is up-to-date. +:: [ +29 ms] Building Linux application... +:: [ +4 ms] executing: [/project/parts/busymark/build/build/linux/x64/release/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DFLUTTER_TARGET_PLATFORM=linux-x64 /project/parts/busymark/build/linux +:: [ +546 ms] -- The CXX compiler identification is Clang 18.1.3 +:: [ +34 ms] -- Detecting CXX compiler ABI info +:: [ +219 ms] -- Detecting CXX compiler ABI info - done +:: [ +10 ms] -- Check for working CXX compiler: /usr/bin/clang++ - skipped +:: [ +1 ms] -- Detecting CXX compile features +:: [ ] -- Detecting CXX compile features - done +:: [ +7 ms] -- Found PkgConfig: /snap/gnome-46-2404-sdk/current/usr/bin/pkg-config (found version "1.8.1") +:: [ ] -- Checking for module 'gtk+-3.0' +:: [ +36 ms] -- Found gtk+-3.0, version 3.24.50 +:: [ +205 ms] -- Checking for module 'glib-2.0' +:: [ +9 ms] -- Found glib-2.0, version 2.84.4 +:: [ +20 ms] -- Checking for module 'gio-2.0' +:: [ +15 ms] -- Found gio-2.0, version 2.84.4 +:: [ +33 ms] -- Checking for module 'libhandy-1' +:: [ +16 ms] -- Found libhandy-1, version 1.8.3 +:: [ +194 ms] -- Checking for module 'libsecret-1' +:: [ +17 ms] -- Found libsecret-1, version 0.21.7 +:: [ +38 ms] -- Checking for module 'webkit2gtk-4.1' +:: [ +28 ms] -- Found webkit2gtk-4.1, version 2.52.6 +:: [ +294 ms] -- The C compiler identification is Clang 18.1.3 +:: [ +37 ms] -- Detecting C compiler ABI info +:: [ +145 ms] -- Detecting C compiler ABI info - done +:: [ +10 ms] -- Check for working C compiler: /usr/bin/clang - skipped +:: [ ] -- Detecting C compile features +:: [ ] -- Detecting C compile features - done +:: [ +19 ms] -- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JVM) +:: [ +2 ms] -- Configuring done (1.9s) +:: [ +61 ms] -- Generating done (0.1s) +:: [ +11 ms] -- Build files have been written to: /project/parts/busymark/build/build/linux/x64/release +:: [ +130 ms] executing: ninja -C /project/parts/busymark/build/build/linux/x64/release install +:: [ +11 ms] ninja: Entering directory `/project/parts/busymark/build/build/linux/x64/release' +:: [+8327 ms] [1/34] Preparing pinned Typst compiler for PDF export +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 2 16.6M 2 412k 0 0 547k 0 0:00:31 --:--:-- 0:00:31 547k +:: [ ] 39 16.6M 39 6780k 0 0 3868k 0 0:00:04 0:00:01 0:00:03 6374k +:: [ ] 100 16.6M 100 16.6M 0 0 7219k 0 0:00:02 0:00:02 --:--:-- 10.1M +:: [ ] Prepared Typst 0.15.1 in /project/parts/busymark/build/build/linux/x64/release/typst/linux-x86_64 +:: [ +893 ms] [2/34] Preparing checksum-pinned D2 renderer +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 20.2M 0 125k 0 0 164k 0 0:02:05 --:--:-- 0:02:05 164k +:: [ ] 22 20.2M 22 4637k 0 0 2645k 0 0:00:07 0:00:01 0:00:06 4548k +:: [ ] 47 20.2M 47 9853k 0 0 3577k 0 0:00:05 0:00:02 0:00:03 4881k +:: [ ] 70 20.2M 70 14.1M 0 0 3065k 0 0:00:06 0:00:04 0:00:02 3622k +:: [ ] 70 20.2M 70 14.1M 0 0 3044k 0 0:00:06 0:00:04 0:00:02 3592k +:: [ ] 100 20.2M 100 20.2M 0 0 3790k 0 0:00:05 0:00:05 --:--:-- 4378k +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] Prepared D2 0.7.1 in /project/parts/busymark/build/build/linux/x64/release/d2/linux-x86_64 +:: [+24267 ms] [3/34] Preparing pinned offline visualization web engines +:: [ ] npm warn deprecated nomnom@1.5.2: Package no longer supported. Contact support@npmjs.com for more info. +:: [ ] added 435 packages in 18s +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 846k 0 846k 0 0 513k 0 --:--:-- 0:00:01 --:--:-- 856k +:: [ ] 100 3362k 0 3362k 0 0 1279k 0 --:--:-- 0:00:02 --:--:-- 1707k +:: [ ] 100 5395k 0 5395k 0 0 1716k 0 --:--:-- 0:00:03 --:--:-- 2173k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 3 2584k 3 98424 0 0 341k 0 0:00:07 --:--:-- 0:00:07 340k +:: [ ] 100 2584k 100 2584k 0 0 5367k 0 --:--:-- --:--:-- --:--:-- 5362k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 109k 100 109k 0 0 437k 0 --:--:-- --:--:-- --:--:-- 438k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 2862k 100 2862k 0 0 6445k 0 --:--:-- --:--:-- --:--:-- 6461k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 50065 100 50065 0 0 302k 0 --:--:-- --:--:-- --:--:-- 303k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 109k 100 109k 0 0 510k 0 --:--:-- --:--:-- --:--:-- 511k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 20 7334k 20 1494k 0 0 2477k 0 0:00:02 --:--:-- 0:00:02 2474k +:: [ ] 100 7334k 100 7334k 0 0 8346k 0 --:--:-- --:--:-- --:--:-- 8344k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 13.2M 0 93311 0 0 403k 0 0:00:33 --:--:-- 0:00:33 401k +:: [ ] 100 13.2M 100 13.2M 0 0 16.4M 0 --:--:-- --:--:-- --:--:-- 16.4M +:: [ ] ▲ [WARNING] Cannot find base config file "../../tsconfig.json" [tsconfig.json] +:: [ ] ../../../../../../../../tmp/tmp.OP53EgZCt4/tool/mermaid-source/tsconfig.json:2:13: +:: [ ] 2 │ "extends": "../../tsconfig.json", +:: [ ] ╵ ~~~~~~~~~~~~~~~~~~~~~ +:: [ ] Prepared offline visualization web assets in /project/parts/busymark/build/build/linux/x64/release/visualization/web +:: [+40813 ms] [4/34] Generating /project/parts/busymark/build/linux/flutter/ephemeral/libflutter_linux_gtk.so, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_value.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_view.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_ +:: [ ] [ +15 ms] Unable to locate an Android SDK. +:: [ ] [ +9 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ ] [ +9 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ +46 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ +1 ms] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ ] [ +9 ms] Initializing file store +:: [ ] [ +28 ms] build_hooks: Starting due to {} +:: [ ] [ +1 ms] gen_localizations: Starting due to {} +:: [ +2 ms] [ +788 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/package_config.json} +:: [ ] [ +2 ms] unpack_linux: Starting due to {} +:: [ ] [ +36 ms] unpack_linux: Complete +:: [ ] [ +236 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ ] [ +4 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ ] [ +8 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ ] [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ ] [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ ] [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ ] [ +10 ms] Running build hooks for linux_x64. +:: [ ] [ +4 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ ] [ +20 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ ] [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ ] [ +3 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +3 ms] [ +21 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/hook/build.dart`. +:: [ ] [ +22 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ ] [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ ] [ +1 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ ] [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ ] [ ] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ ] [ ] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ ] [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ ] [ +15 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ ] [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ ] [ +1 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ ] [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ ] [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ ] [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ ] [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ ] [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ ] [ +22 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ ] [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ ] [ +53 ms] gen_dart_plugin_registrant: Complete +:: [ ] [ +738 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/objective_c/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/output.json", +:: [ ] "package_name": "objective_c", +:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +4 ms] [ +1 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/input.json )`. +:: [ ] [ +313 ms] output.json contents: +:: [ ] { +:: [ ] "assets_for_linking": {}, +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 10:50:35.000" +:: [ ] } +:: [ +4 ms] [ +25 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill.d /project/parts/busymark/build/packages/busymark_spellcheck_native/hook/build.dart`. +:: [ ] [+1783 ms] gen_localizations: Complete +:: [ ] [ +43 ms] kernel_snapshot_program: Starting due to {} +:: [ +13 ms] [ +10 ms] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dartaotruntime /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/snapshots/frontend_server_aot.dart.snapshot --sdk-root /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/common/flutter_patched_sdk_product/ --target=flutter --no-print-incremental-dependencies -DFLUTTER_BUILD_NAME=0.6.1 -DFLUTTER_VERSION=3.47.5 -DFLUTTER_CHANNEL=[user-branch] -DFLUTTER_GIT_URL=https://github.com/flutter/flutter.git -DFLUTTER_FRAMEWORK_REVISION=6a19cca564 -DFLUTTER_ENGINE_REVISION=af7e796e16 -DFLUTTER_DART_VERSION=3.13.4 -Ddart.vm.profile=false -Ddart.vm.product=true --delete-tostring-package-uri=dart:ui --delete-tostring-package-uri=package:flutter --aot --tfa --target-os linux --packages /project/parts/busymark/build/.dart_tool/package_config.json --output-dill /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --depfile /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/kernel_snapshot_program.d --source file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --source package:flutter/src/dart_plugin_registrant.dart -Dflutter.dart_plugin_registrant=file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --verbosity=error --recorded-uses=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/recorded_uses.json package:busymark/main.dart +:: [ ] [+3078 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ +1 ms] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/output.json", +:: [ ] "package_name": "busymark_spellcheck_native", +:: [ ] "package_root": "/project/parts/busymark/build/packages/busymark_spellcheck_native/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +3 ms] [ +1 ms] Running `(cd /project/parts/busymark/build/packages/busymark_spellcheck_native/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/input.json )`. +:: [ ] [+22688 ms] output.json contents: +:: [ ] { +:: [ ] "assets": [ +:: [ ] { +:: [ ] "encoding": { +:: [ +1 ms] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/cd73a1e2e2/libbusymark_spellcheck_native.so", +:: [ ] "id": "package:busymark_spellcheck_native/busymark_spellcheck_native_bindings_generated.dart", +:: [ ] "link_mode": { +:: [ ] "type": "dynamic_loading_bundle" +:: [ ] } +:: [ ] }, +:: [ ] "type": "code_assets/code" +:: [ ] } +:: [ ] ], +:: [ ] "assets_for_linking": {}, +:: [ ] "dependencies": [ +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx", +:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx", +:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in", +:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx", +:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx" +:: [ ] ], +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 10:50:40.000" +:: [ ] } +:: [ +6 ms] [ +47 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/hook/build.dart`. +:: [ ] [ +747 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/output.json", +:: [ ] "package_name": "sqlite3", +:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +7 ms] [ +1 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/input.json )`. +:: [ ] [ +987 ms] output.json contents: +:: [ ] { +:: [ ] "assets": [ +:: [ ] { +:: [ ] "encoding": { +:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/download-0f947ebe/libsqlite3.so", +:: [ ] "id": "package:sqlite3/src/ffi/libsqlite3.g.dart", +:: [ ] "link_mode": { +:: [ ] "type": "dynamic_loading_bundle" +:: [ ] } +:: [ ] }, +:: [ ] "type": "code_assets/code" +:: [ ] } +:: [ ] ], +:: [ ] "assets_for_linking": {}, +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 10:51:04.000" +:: [ ] } +:: [ ] [ +15 ms] Running build hooks for linux_x64 done. +:: [ ] [ +1 ms] build_hooks: Complete +:: [ ] [+6018 ms] kernel_snapshot_program: Complete +:: [ ] [+1069 ms] link_hooks: Starting due to {} +:: [ +6 ms] [ +1 ms] aot_elf_release: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/flutter-distro/packages/flutter_tools/lib/src/build_system/targets/common.dart,/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so} +:: [ ] [ +1 ms] targetingApplePlatform = false +:: [ ] [ ] extractAppleDebugSymbols = true +:: [ ] [ ] targetingAndroidPlatform = false +:: [ ] [ ] Will strip AOT snapshot during build. +:: [ +1 ms] [ ] executing: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64-release/gen_snapshot --deterministic --snapshot_kind=app-aot-elf --elf=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so --strip /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill +:: [ ] [ +14 ms] Running link hooks for linux_x64. +:: [ ] [ +13 ms] Running link hooks for linux_x64 done. +:: [ ] [ +3 ms] link_hooks: Complete +:: [ ] [ +1 ms] install_code_assets: Starting due to {} +:: [ ] [ +9 ms] Copying native assets to /project/parts/busymark/build/build/native_assets/linux/. +:: [ ] [ +2 ms] Copying native assets done. +:: [ +1 ms] [ ] Writing native assets json to file:///project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json. +:: [ ] [ +1 ms] Writing /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json done. +:: [ ] [ ] install_code_assets: Complete +:: [ ] [+29515 ms] aot_elf_release: Complete +:: [ +2 ms] [ +103 ms] linux_aot_bundle: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/build/lib/libapp.so} +:: [ ] [ +183 ms] linux_aot_bundle: Complete +:: [ ] [ +102 ms] release_bundle_linux-x64_assets: Starting due to {} +:: [ +7 ms] [ +94 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders/ink_sparkle.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] +:: [ +5 ms] [ +1 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders/stretch_effect.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] +:: [ +2 ms] [ +43 ms] Running command: /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/const_finder.dart.snapshot --kernel-file /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --class-library-uri package:flutter/src/widgets/icon_data.dart --class-name IconData --annotation-class-name _StaticIconProvider --annotation-class-library-uri package:flutter/src/widgets/icon_data.dart +:: [ +1 ms] [+1188 ms] Expected to find fontFamily for constant IconData with codepoint: 128842, but found fontFamily: null. This usually means you are relying on the system font. Alternatively, font families in an IconData class can be provided in the assets section of your pubspec.yaml, or you are missing "uses-material-design: true". +:: [ +1 ms] [ +1 ms] Expected to find fonts for (packages/yaru/YaruIcons, MaterialIcons, packages/cupertino_icons/CupertinoIcons), but found (MaterialIcons, packages/yaru/YaruIcons). This usually means you are referring to font families in an IconData class but not including them in the assets section of your pubspec.yaml, are missing the package that would include them, or are missing "uses-material-design: true". +:: [ +7 ms] [ +1 ms] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/packages/yaru/assets/yaru_icons.otf /root/.pub-cache/hosted/pub.dev/yaru-10.2.0/assets/yaru_icons.otf, using codepoints 57724 57723 57952 58031 58004 58087 57763 57862 57935 57945 57958 57799 57778 57937 57907 57846 57850 57890 57848 57564 58100 57845 58015 57647 57786 57547 57732 58149 57607 57622 57556 58143 58041 58094 57785 57936 57932 57668 58081 57756 57631 57853 57873 57869 58146 57666 57660 57743 57685 57688 57542 57684 58009 57614 57686 57483 57573 57802 57502 58104 57820 57485 57960 57777 57891 57581 57803 57828 57844 57822 58034 57623 57830 58011 57956 57541 58089 57562 57490 57492 57871 57868 57721 57722 57747 58086 57507 57832 57906 57880 58090 57717 +:: [ +2 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/fonts/MaterialIcons-Regular.otf /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/material_fonts/MaterialIcons-Regular.otf, using codepoints 58061 984332 57490 62832 57706 58332 57502 57501 57496 58372 +:: [ +1 ms] [ +11 ms] Font asset "yaru_icons.otf" was tree-shaken, reducing it from 203588 to 18772 bytes (90.8% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. +:: [ +1 ms] [ ] Font asset "MaterialIcons-Regular.otf" was tree-shaken, reducing it from 1645184 to 1748 bytes (99.9% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. +:: [ ] [ ] release_bundle_linux-x64_assets: Complete +:: [ ] [ +58 ms] Persisting file store +:: [ ] [ +14 ms] Done persisting file store +:: [ ] [ +37 ms] build succeeded. +:: [ ] [ ] "flutter assemble" took 70,367ms. +:: [ ] [ ] Running 1 shutdown hook +:: [ ] [ ] Shutdown hooks complete +:: [ ] [ ] exiting with code 0 +:: [+1049 ms] [5/34] Building CXX object runner/CMakeFiles/busymark.dir/main.cc.o +:: [ +54 ms] [6/34] Building CXX object plugins/screen_retriever_linux/CMakeFiles/screen_retriever_linux_plugin.dir/screen_retriever_linux_plugin.cc.o +:: [ ] [7/34] Building CXX object plugins/gtk/CMakeFiles/gtk_plugin.dir/gtk_plugin.cc.o +:: [ +31 ms] [8/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window.cc.o +:: [ +28 ms] [9/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window_linux_plugin.cc.o +:: [ +12 ms] [10/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/url_launcher_plugin.cc.o +:: [ +55 ms] [11/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/file_selector_plugin.cc.o +:: [ +8 ms] [12/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/messages.g.cc.o +:: [ +124 ms] [13/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/messages.g.cc.o +:: [ +27 ms] [14/34] Building CXX object runner/CMakeFiles/busymark.dir/secure_credential_host.cc.o +:: [ +52 ms] [15/34] Linking CXX shared library plugins/screen_retriever_linux/libscreen_retriever_linux_plugin.so +:: [ +9 ms] [16/34] Linking CXX shared library plugins/yaru_window_linux/libyaru_window_linux_plugin.so +:: [ +11 ms] [17/34] Linking CXX shared library plugins/gtk/libgtk_plugin.so +:: [ +26 ms] [18/34] Linking CXX shared library plugins/url_launcher_linux/liburl_launcher_linux_plugin.so +:: [ +45 ms] [19/34] Building CXX object runner/CMakeFiles/busymark.dir/rich_clipboard_host.cc.o +:: [ +5 ms] [20/34] Building CXX object plugins/window_manager/CMakeFiles/window_manager_plugin.dir/window_manager_plugin.cc.o +:: [ +13 ms] [21/34] Linking CXX shared library plugins/file_selector_linux/libfile_selector_linux_plugin.so +:: [ +33 ms] [22/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_window_preferences.cc.o +:: [ +35 ms] [23/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent_host.cc.o +:: [ +36 ms] [24/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent.cc.o +:: [ +9 ms] [25/34] Linking CXX shared library plugins/window_manager/libwindow_manager_plugin.so +:: [ +80 ms] [26/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_header_icons.cc.o +:: [ +16 ms] [27/34] Building CXX object runner/CMakeFiles/busymark.dir/linux_chrome_host.cc.o +:: [ +130 ms] [28/34] Building CXX object runner/CMakeFiles/busymark.dir/my_application.cc.o +:: [ +39 ms] [29/34] Building CXX object runner/CMakeFiles/busymark.dir/__/flutter/generated_plugin_registrant.cc.o +:: [ +51 ms] [30/34] Building CXX object runner/CMakeFiles/busymark.dir/writerside_dialog_host.cc.o +:: [ +184 ms] [31/34] Building CXX object runner/CMakeFiles/busymark.dir/web_render_host.cc.o +:: [ +58 ms] [32/34] Building CXX object runner/CMakeFiles/busymark.dir/video_player_host.cc.o +:: [ +291 ms] [33/34] Linking CXX executable intermediates_do_not_run/busymark +:: [ ] [33/34] Install the project... +:: [ +9 ms] -- Install configuration: "Release" +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/typst +:: [ +30 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMarchen-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMusic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPersian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansShavian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNushu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansChakma-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsage-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMono-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansUgaritic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinagh-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLepcha-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeroitic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiLe-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElbasan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGrantha-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsmanya-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifAhom-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuginese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOgham-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDogra-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCuneiform-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTangut-Regular.ttf +:: [ +11 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBatak-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLydian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAvestan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansManichaean-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMongolian-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSiddham-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBalinese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansYi-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGothic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSogdian-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhoenician-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTirhuta-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoyombo-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMultani-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLimbu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRejang-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRunic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDeseret-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMro-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCypriot-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHatran-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearA-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansVai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhojki-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuhid-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSignWriting-Regular.ttf +:: [ +14 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMahajani-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCarian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearB-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBrahmi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols2-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSyriac-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewa-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPermic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElymaic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansModi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMandaic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldItalic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWancho-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMath-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagalog-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSharada-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTakri-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGrantha-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDuployan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBassaVah-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLycian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNKo-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSamaritan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMiao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNabataean-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKaithi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanunoo-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiViet-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Bold.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCoptic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-core/copyright +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-mono/copyright +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/d2 +:: [ +31 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/package-lock.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/THIRD_PARTY_NOTICES.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/LICENSE.BSD +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/license.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.BSD +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.source-map +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/license +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/license +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/render-engines.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/scalar.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/harness.html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/viz-global.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/bootstrap.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/dictionaries.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_NO.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_hyph_NO.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_hyph_et_EE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_et_EE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB_thes.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_GB.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_lightproof_en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/WordNet_license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_US.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_AU.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_ZA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_CA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_US.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/README_fa_IR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/license-thes.readme +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_hyph_pt_BR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_pt_BR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-thes +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-dict.adoc +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-thes +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-dict +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-vi.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/README.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl_PL.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_ru_RU.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/README.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/LICENSE.txt +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_th_uk_UA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_hyph_uk_UA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_uk_UA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hyph_es.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_th_es.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hunspell_es.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_it_IT.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_hyph_it_IT.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.1st +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_README +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_th_it_IT.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_de_DE_frami.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.1.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv3 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.0.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_OASIS.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_thesaurus.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv2 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_hyph_de.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_extension_owner.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/README_ar.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/COPYING.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR/README_ko_KR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/README_hi_IN.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/CHECKSUMS.sha256 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/DEPENDENCIES.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/Apache-2.0.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.MPL +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.myspell +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.hunspell +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.LESSER +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/busymark +:: [ ] -- Set non-toolchain portion of runtime path of "/project/parts/busymark/build/build/linux/x64/release/bundle/busymark" to "$ORIGIN/lib" +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/applications/io.busystack.busymark.desktop +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/metainfo/io.busystack.busymark.metainfo.xml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/icudtl.dat +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libflutter_linux_gtk.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libfile_selector_linux_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libgtk_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libscreen_retriever_linux_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/liburl_launcher_linux_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libwindow_manager_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libyaru_window_linux_plugin.so +:: [ ] -- Up-to-date: /project/parts/busymark/build/build/linux/x64/release/bundle/lib +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libbusymark_spellcheck_native.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libsqlite3.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts/MaterialIcons-Regular.otf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/html.css +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/markdown.typ +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling/dictionaries.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding/busymark_logo.svg +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside/templates.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/stretch_effect.frag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/ink_sparkle.frag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/UbuntuMono-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-R.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-RI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-M.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-MI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-B.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-LI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-BI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-L.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/yaru_icons.otf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NativeAssetsManifest.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/version.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NOTICES.Z +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/AssetManifest.bin +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/FontManifest.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libapp.so +:: [ +8 ms] Building Linux application... (completed in 79.8s) +:: [ +2 ms] ✓ Built build/linux/x64/release/bundle/busymark +:: [ ] "flutter linux" took 80,867ms. +:: [ ] Running 1 shutdown hook +:: [ ] Shutdown hooks complete +:: [ ] exiting with code 0 +:: + cp -r build/linux/x64/release/bundle/busymark build/linux/x64/release/bundle/data build/linux/x64/release/bundle/lib build/linux/x64/release/bundle/libexec build/linux/x64/release/bundle/share /project/parts/busymark/install/ +Skipping pull for busymark (already ran) +Skipping build for busymark (already ran) +Staging busymark (required to build 'desktop-integration') +Building desktop-integration +Building gnome/sdk +:: + make -j16 GPU_WRAPPER=gpu-2404-wrapper +:: make: 'Makefile' is up to date. +:: + make -j16 install GPU_WRAPPER=gpu-2404-wrapper DESTDIR=/project/parts/gnome/sdk/install +:: install -D -m755 "hooks-configure-fonts" "/project/parts/gnome/sdk/install/snap/command-chain"/"hooks-configure-fonts" +:: install -D -m755 "desktop-launch" "/project/parts/gnome/sdk/install/snap/command-chain"/"desktop-launch" +:: install -D -m755 "run" "/project/parts/gnome/sdk/install/snap/command-chain"/"run" +:: install -D -m755 "gpu-2404-wrapper" "/project/parts/gnome/sdk/install/snap/command-chain"/"gpu-2404-wrapper" +Skipping stage for busymark (already ran) +Staging desktop-integration +Staging gnome/sdk +Priming busymark +Patch ELF file: 'busymark' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=['$ORIGIN/lib'] + Proposed rpath=['$ORIGIN/usr/lib/x86_64-linux-gnu', '$ORIGIN/lib', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libbusymark_spellcheck_native.so' + Current rpath=['$ORIGIN'] + Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libfile_selector_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libflutter_linux_gtk.so' + Current rpath=['$ORIGIN'] + Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libgtk_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libscreen_retriever_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libsqlite3.so' + Current rpath=['$ORIGIN'] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/liburl_launcher_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libwindow_manager_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libyaru_window_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/addpart' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/choom' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/chrt' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/delpart' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/dmesg' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fallocate' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-cache' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-cat' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-conflist' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-list' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-match' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-pattern' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-query' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-scan' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-validate' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/findmnt' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/flock' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gapplication' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gdbus' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/getopt' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gio' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/git' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/git-shell' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gresource' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gsettings' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gtk-update-icon-cache' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/hardlink' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ionice' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ipcmk' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ipcrm' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ipcs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/last' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsblk' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lscpu' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsipc' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lslocks' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lslogins' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsmem' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsns' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/mcookie' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/mesg' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/more' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/mountpoint' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/namei' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/nsenter' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/partx' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/perl' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/perl5.38-x86_64-linux-gnu' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/perl5.38.2' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/prlimit' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/rename.ul' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/resizepart' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/rev' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/scalar' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/scp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/session-migration' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setarch' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setpriv' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setsid' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setterm' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/sftp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-add' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-agent' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-keygen' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-keyscan' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/su' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/taskset' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/uclampset' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/unshare' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/update-mime-database' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/utmpdump' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/wdctl' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/whereis' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-daemon' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-http-backend' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-http-fetch' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-http-push' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-imap-send' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-remote-http' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-sh-i18n--envsubst' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-shell' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/scalar' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/openssh/ssh-keysign' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/openssh/ssh-pkcs11-helper' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/openssh/ssh-sk-helper' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libDummyDevice.so.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libOniFile.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPS1080.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPSLink.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/blas/libblas.so.3.12.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libx11_plugin.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ati128.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ep9x.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gl.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gles2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i810.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i830.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_mach64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_matrox.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_neomagic.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nsc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nvidia.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_pxa3xx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_sis315.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_tdfx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_input_hub.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_joystick.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_keyboard.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_linux_input.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_lirc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_mutouch.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_penmount.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_ps2mouse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_serialmouse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_sonypi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_wm97xx_ts.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_zytronic.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBFont/libidirectfbfont_dgiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_dfiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_gif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_v4l.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBWindows/libidirectfbwindows_default.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IWater/libiwater_default.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_devmem.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_dummy.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_fbdev.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/wm/libdirectfbwm_default.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/dri/libdril_dri.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gbm/dri_gbm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ani.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-gif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-icns.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pnm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tga.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xbm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognomeproxy.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '$ORIGIN/../../libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsta52dec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaccurip.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaes.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstanalyticsoverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaom.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasfmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstassrender.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiobuffersplit.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofxbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiolatency.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixmatrix.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiovisualizers.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautoconvert.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavtp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbayer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbluez.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbs2b.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbz2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstchromaprint.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstclosedcaption.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodec2json.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodecalpha.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodectimestamper.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoloreffects.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcolormanagement.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcurl.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdash.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdc1394.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstde265.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebugutilsbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdecklink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdirectfb.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtls.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtsdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvb.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsubenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsuboverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdlpcmdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdread.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdspu.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdsub.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaceoverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfbdevsink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfestival.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfieldanalysis.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflite.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfluidsynthmidi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfreeverb.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfrei0r.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgaudieffects.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgeometrictransform.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgme.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgsm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgtkwayland.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsthls.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3tag.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinsertbin.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinter.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterlace.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstipcpipeline.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivfparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivtc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjp2kdecimator.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstkms.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstladspa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlc3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstldac.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlegacyrawparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibav.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../blas', '$ORIGIN/../lapack', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlv2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmidi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmodplug.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2dec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2enc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsdemux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsdemux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmplex.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmsdk.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmusepack.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmxf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstneonhttpsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnetsim.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnvcodec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenal.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenaptx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenexr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenh264.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenjpeg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenmpt.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenni2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopusparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpcapparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpnm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstproxy.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqroverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqsv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrealmedia.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstremovesilence.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstresindvd.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrfbsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrist.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrsvg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanagerbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtponvif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsbc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsctp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsdpelem.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsegmentclip.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsid.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsiren.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmooth.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmoothstreaming.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsndfile.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoundtouch.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspandsp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeed.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrt.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrtp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsvtav1.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstswitchbin.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstteletext.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttimecode.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttranscode.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstttmlsubs.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstunixfd.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvcgadget.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvch264.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstv4l2codecs.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstva.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofiltersbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoframe_audiolevel.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideosignal.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvmnc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoaacenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoamrwbenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvulkan.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwaylandsink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebrtc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwildmidi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx264.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx265.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4mdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzbar.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzxing.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libadwaita.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libmurrine.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libpixmap.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-am-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cedilla.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cyrillic-translit.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-inuktitut.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ipa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-multipress.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-thai.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-er.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-viqr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-xim.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-lpr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-test.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../blas', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL.so.1.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libFLAC.so.12.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGL.so.1.7.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLESv2.so.2.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIex-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIlmThread-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libImath-3_1.so.29.8.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLLVM.so.20.1' + Current rpath=['$ORIGIN/../lib'] + Proposed rpath=['$ORIGIN/../lib', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLerc.so.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXR-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRCore-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenNI2.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.3000.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouch.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSvtAv1Enc.so.1.7.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libWildMidi.so.2.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libX11.so.6.4.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXau.so.6.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXext.so.6.4.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXi.so.6.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXss.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libZXing.so.2.2.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liba52-0.7.4.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaom.so.3.8.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasound.so.2.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libass.so.9.2.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasyncns.so.0.3.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.25209.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatspi.so.0.0.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-client.so.3.2.9' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-common.so.3.5.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavcodec.so.60.31.102' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavfilter.so.9.12.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/blas', '$ORIGIN/lapack', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavformat.so.60.16.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavutil.so.58.29.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbluray.so.2.4.3' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbs2b.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca.so.0.99.20' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo-gobject.so.2.11800.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo.so.2.11800.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_interface.so.0.10.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdio.so.19.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libchromaprint.so.1.5.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson.so.1.7.17' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcodec2.so.1.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcups.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.8.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdatrie.so.1.4.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdav1d.so.7.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdc1394.so.25.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdca.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libde265.so.0.1.8' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdecor-0.so.0.200.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdeflate.so.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirect-1.7.so.7.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirectfb-1.7.so.7.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.125.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.125.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdnav.so.4.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdread.so.8.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdw-0.190.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libepoxy.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad.so.2.11.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3.so.3.6.10' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lang.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_awb.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal16.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_rms.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_slt.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmulex.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_usenglish.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfluidsynth.so.3.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfontconfig.so.1.12.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libform.so.6.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeaptx.so.0.1.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreebl3.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfribidi.so.0.4.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfusion-1.7.so.7.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm.so.6.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm_compat.so.4.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.33' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.4200.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgme.so.0.6.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgpm.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgraphite2.so.3.2.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsm.so.1.0.19' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgssdp-1.6.so.0.106.3' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstadaptivedemux-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstanalytics-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbadaudio-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecparsers-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecs-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcuda-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstgl-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstinsertbin-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstisoff-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmpegts-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmse-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplay-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsctp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsturidownloader-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstva-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvulkan-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwayland-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtc-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtcnice-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.33' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk2.0-0t64/gtk-query-immodules-2.0' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgudev-1.0.so.0.3.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-1.6.so.0.106.6' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-igd-1.6.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.60830.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy.so.1.0.7' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicui18n.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutu.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuuc.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2.2.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjack.so.0.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjbig.so.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjpeg.so.8.2.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.800.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl.so.0.7.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl_threads.so.0.7.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblber.so.2.0.200' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblc3.so.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblcms2.so.2.0.14' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldacBT_enc.so.2.0.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldap.so.2.0.200' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblilv-0.so.0.24.22' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblrdf.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libltc.so.11.2.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmbedcrypto.so.2.28.8' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx.so.1.35' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmjpegutils-2.1.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmodplug.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmp3lame.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpcdec.so.6.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2.so.0.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2encpp-2.1.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpg123.so.0.48.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmplex2-2.1.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmysofa.so.1.3.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libncurses.so.6.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libneon.so.27.6.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnghttp2.so.14.26.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnice.so.10.13.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnorm.so.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnspr4.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnss3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssckbi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssdbm3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssutil3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnuma.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libogg.so.0.8.5' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenal.so.1.23.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenh264.so.2.4.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenjp2.so.2.5.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenmpt.so.0.4.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopus.so.0.9.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.38.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libperl.so.5.38.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpgm-5.3.so.0.0.128' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpipewire-0.3.so.0.1005.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpixman-1.so.0.42.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplacebo.so.338' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplc4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplds4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpocketsphinx.so.3.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/lapack', '$ORIGIN', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpostproc.so.57.3.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy/libpxbackend-1.0.so' + Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy.so.0.5.4' + Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] + Proposed rpath=['$ORIGIN', '$ORIGIN/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpsl.so.5.3.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse-simple.so.0.1.1' + Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse.so.0.24.2' + Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libqrencode.so.4.1.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librabbitmq.so.4.5.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraptor2.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librav1e.so.0.7.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraw1394.so.11.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librist.so.4.3.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librtmp.so.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librubberband.so.2.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsamplerate.so.0.2.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsbc.so.1.3.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsensors.so.5.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libserd-0.so.0.32.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsharpyuv.so.0.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshine.so.3.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsidplay.so.1.0.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libslang.so.2.3.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsmime3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsnappy.so.1.1.10' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndfile.so.1.0.37' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndio.so.7.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsodium.so.23.3.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoftokn3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsord-0.so.0.16.16' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoup-3.0.so.0.7.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoxr.so.0.1.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspandsp.so.2.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspeex.so.1.5.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/blas', '$ORIGIN/lapack', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsratom-0.so.0.6.16' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrt-gnutls.so.1.5.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrtp2.so.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh-gcrypt.so.4.9.6' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh.so.4.9.6' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssl3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswresample.so.4.12.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswscale.so.7.5.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libthai.so.0.3.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheora.so.0.3.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoradec.so.1.1.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoraenc.so.1.1.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtiff.so.6.0.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtwolame.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libudfread.so.0.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunibreak.so.5.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind.so.8.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libusb-1.0.so.0.4.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/plugins/libv4l-mplane.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l2convert.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l1.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l2.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov511-decomp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov518-decomp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-drm.so.2.2000.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-x11.so.2.2000.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva.so.2.2000.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvdpau.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvidstab.so.1.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-aacenc.so.0.0.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-amrwbenc.so.0.0.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbis.so.0.4.9' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisenc.so.2.0.12' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisfile.so.3.3.8' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpl.so.2.9' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpx.so.9.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvulkan.so.1.3.275' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebp.so.7.1.8' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebpmux.so.3.0.13' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebrtc_audio_processing.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx264.so.164' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx265.so.199' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xkb.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxml2.so.2.9.14' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxslt.so.1.1.39' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxvidcore.so.4.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libyajl.so.2.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzbar.so.0.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzimg.so.2.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzix-0.so.0.4.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzmq.so.5.2.5' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi.so.0.13.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_h264la_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevc_fei_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevcd_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevce_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp8d_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9d_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9e_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/B/B.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Bzip2/Bzip2.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Zlib/Zlib.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Cwd/Cwd.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/DB_File/DB_File.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Data/Dumper/Dumper.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Devel/Peek/Peek.so' +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/MD5/MD5.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/SHA/SHA.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Byte/Byte.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/CN/CN.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/EBCDIC/EBCDIC.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Encode.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/JP/JP.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/KR/KR.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Symbol/Symbol.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/TW/TW.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Unicode/Unicode.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/File/Glob/Glob.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Filter/Util/Call/Call.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/GDBM_File/GDBM_File.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/FieldHash/FieldHash.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/I18N/Langinfo/Langinfo.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IO/IO.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IPC/SysV/SysV.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/List/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/MIME/Base64/Base64.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Math/BigInt/FastCalc/FastCalc.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/NDBM_File/NDBM_File.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/ODBM_File/ODBM_File.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Opcode/Opcode.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/POSIX/POSIX.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/encoding/encoding.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/mmap/mmap.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/scalar/scalar.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/via/via.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/SDBM_File/SDBM_File.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Socket/Socket.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Storable/Storable.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Hostname/Hostname.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Syslog/Syslog.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/HiRes/HiRes.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/Piece/Piece.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Collate/Collate.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Normalize/Normalize.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/attributes/attributes.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/mro/mro.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/re/re.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/shared/shared.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/threads.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Cwd/Cwd.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/File/Glob/Glob.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Hash/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/IO/IO.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/List/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/POSIX/POSIX.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Socket/Socket.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/attributes/attributes.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/re/re.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-16.1.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/sasl2/libsasldb.so.2.0.25' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-null.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-webrtc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/alsa/libspa-alsa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audioconvert/libspa-audioconvert.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiomixer/libspa-audiomixer.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiotestsrc/libspa-audiotestsrc.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/avb/libspa-avb.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/control/libspa-control.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-dbus.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-journal.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/test/libspa-test.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/v4l2/libspa-v4l2.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videoconvert/libspa-videoconvert.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videotestsrc/libspa-videotestsrc.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/vdpau/libvdpau_trace.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/vpl/libvpl_wayland.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/libexec/dconf-service' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/libexec/glib-pacrunner' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '$ORIGIN/../lib/x86_64-linux-gnu/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/agetty' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blkdiscard' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blkid' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blkzone' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blockdev' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/chcpu' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/chmem' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/ctrlaltdel' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/findfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsck' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsck.cramfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsck.minix' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsfreeze' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fstrim' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/isosize' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/ldattach' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs.bfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs.cramfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs.minix' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkswap' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/pivot_root' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/readprofile' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/rtcwake' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/runuser' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/sulogin' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/swaplabel' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/switch_root' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/wipefs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/zramctl' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Priming desktop-integration +:: + craftctl default +:: /tmp/tmpu_zsri9k/scriptlet.sh: line 5: craftctl: command not found +'override-prime' in part 'desktop-integration' failed with code 127. +Detailed information: +:: + craftctl default +:: /tmp/tmpu_zsri9k/scriptlet.sh: line 5: craftctl: command not found +Recommended resolution: Review the scriptlet and make sure it's correct. +For more information, check out: https://documentation.ubuntu.com/snapcraft/8.11.1/reference/plugins/ +Full execution log: '/root/.local/state/snapcraft/log/snapcraft-20261007-103700.189670.log' diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-build.log b/delivery/nextcloud-explicit-adoption/evidence/snap-build.log new file mode 100644 index 00000000..b209caa5 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-build.log @@ -0,0 +1,24 @@ +Get:1 http://archive.ubuntu.com/ubuntu noble InRelease [256 kB] +Get:2 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] +Get:3 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] +Get:4 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [19.3 MB] +Get:5 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB] +Get:6 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [331 kB] +Get:7 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [117 kB] +Get:8 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1808 kB] +Get:9 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1701 kB] +Get:10 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [56.2 kB] +Get:11 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [2165 kB] +Get:12 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [2138 kB] +Get:13 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [49.0 kB] +Get:14 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [36.0 kB] +Get:15 http://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Packages [671 B] +Get:16 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1545 kB] +Get:17 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [50.0 kB] +Get:18 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages [1323 kB] +Get:19 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1943 kB] +Fetched 33.2 MB in 5s (6815 kB/s) +Reading package lists... +Cleaning all parts +Failed to pull source: unable to determine source type of '/usr/share/snapcraft/extensions/desktop/command-chain'. +Full execution log: '/root/.local/state/snapcraft/log/snapcraft-20261007-101447.479536.log' diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-clean-final.log b/delivery/nextcloud-explicit-adoption/evidence/snap-clean-final.log new file mode 100644 index 00000000..a36917c8 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-clean-final.log @@ -0,0 +1,8850 @@ +Cleaning all parts +Initialising lifecycle +Installing build-packages +The following snaps are required but not installed as the application is running inside docker or podman container: core24, mesa-2404, gnome-46-2404, node/24/stable, gnome-46-2404-sdk, gtk-common-themes. +Please ensure the environment is properly setup before continuing. +Ignore this message if the appropriate measures have already been taken. +Pulling busymark +Fetching stage-packages +Downloading package: fontconfig +/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/fontconfig_2.15.0-1.1ubuntu2_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) + acq.run() +Downloading package: libvulkan1 +Downloading package: libsvtav1enc1d1 +Downloading package: libhwy1t64 +Downloading package: libxcb-present0 +Downloading package: yaru-theme-icon +Downloading package: libyajl2 +Downloading package: libv4lconvert0t64 +Downloading package: libgomp1 +Downloading package: libzxing3 +Downloading package: libpulse0 +Downloading package: libwebpmux3 +Downloading package: libopenal-data +Downloading package: libltc11 +Downloading package: libvpl2 +Downloading package: libserd-0-0 +Downloading package: libvpx9 +Downloading package: libxxf86vm1 +Downloading package: libcodec2-1.2 +Downloading package: librubberband2 +Downloading package: libsharpyuv0 +Downloading package: libnghttp2-14 +Downloading package: openssh-client +Downloading package: libglx-mesa0 +Downloading package: libtwolame0 +Downloading package: gstreamer1.0-plugins-ugly +Downloading package: libzvbi-common +Downloading package: libjack-jackd2-0 +Downloading package: libfreeaptx0 +Downloading package: libdatrie1 +Downloading package: libthai0 +Downloading package: libssh-4 +Downloading package: libxrender1 +Downloading package: libldap2 +Downloading package: libglvnd0 +Downloading package: libproxy1v5 +Downloading package: libgdbm-compat4t64 +Downloading package: libraptor2-0 +Downloading package: libsensors-config +Downloading package: hicolor-icon-theme +Downloading package: git +Downloading package: libglib2.0-bin +Downloading package: perl +Downloading package: libx11-xcb1 +Downloading package: libxshmfence1 +Downloading package: libfluidsynth3 +Downloading package: libunwind8 +Downloading package: libdecor-0-0 +Downloading package: libpango-1.0-0 +Downloading package: libvo-aacenc0 +Downloading package: libwavpack1 +Downloading package: libavtp0 +Downloading package: libsrt1.5-gnutls +Downloading package: libwayland-cursor0 +Downloading package: libx264-164 +Downloading package: libshine3 +Downloading package: libaom3 +Downloading package: lsb-base +Downloading package: libjpeg-turbo8 +Downloading package: libv4l-0t64 +Downloading package: libavahi-common-data +Downloading package: libcolord2 +Downloading package: libpsl5t64 +Downloading package: libx265-199 +Downloading package: libass9 +Downloading package: libsasl2-2 +Downloading package: libxcb-dri3-0 +Downloading package: libcairo2 +Downloading package: libgbm1 +Downloading package: libxcursor1 +Downloading package: libbluray2 +Downloading package: libvorbisfile3 +Downloading package: libdv4t64 +Downloading package: libblas3 +Downloading package: libdeflate0 +Downloading package: libqrencode4 +Downloading package: libjpeg8 +Downloading package: x11-common +Downloading package: libiec61883-0 +Downloading package: libsphinxbase3t64 +Downloading package: libbs2b0 +Downloading package: libfftw3-double3 +Downloading package: libglx0 +Downloading package: libgme0 +Downloading package: libdav1d7 +Downloading package: libcaca0 +Downloading package: libfribidi0 +Downloading package: mesa-libgallium +Downloading package: libraw1394-11 +Downloading package: librtmp1 +Downloading package: adwaita-icon-theme +Downloading package: libgpm2 +Downloading package: libtiff6 +Downloading package: libgfortran5 +Downloading package: libpixman-1-0 +Downloading package: libtag1v5 +Downloading package: libvidstab1.1 +Downloading package: libva-x11-2 +Downloading package: librist4 +Downloading package: libgsm1 +Downloading package: libgupnp-1.6-0 +Downloading package: libcjson1 +Downloading package: libshout3 +Downloading package: libxau6 +Downloading package: libgtk2.0-0t64 +Downloading package: libxcb1 +Downloading package: libgstreamer-gl1.0-0 +Downloading package: libssh-gcrypt-4 +Downloading package: libllvm20 +Downloading package: libxcomposite1 +Downloading package: libmfx1 +Downloading package: libmpcdec6 +Downloading package: libnuma1 +Downloading package: libcdio19t64 +Downloading package: libdirectfb-1.7-7t64 +Downloading package: libxdamage1 +Downloading package: libgdk-pixbuf-2.0-0 +Downloading package: libsasl2-modules-db +Downloading package: libfaad2 +Downloading package: timgm6mb-soundfont +Downloading package: libcairo-gobject2 +Downloading package: fonts-noto-mono +Downloading package: liblerc4 +Downloading package: ubuntu-mono +Downloading package: libgupnp-igd-1.6-0 +Downloading package: libgdbm6t64 +Downloading package: libxml2 +Downloading package: libglib2.0-data +Downloading package: humanity-icon-theme +Downloading package: libgtk2.0-common +Downloading package: libgraphite2-3 +Downloading package: util-linux +Downloading package: libdconf1 +Downloading package: libfontconfig1 +Downloading package: libcups2t64 +Downloading package: libvdpau1 +Downloading package: libsbc1 +Downloading package: libmodplug1 +Downloading package: libopenexr-3-1-30 +Downloading package: libopenh264-7 +Downloading package: libpostproc57 +Downloading package: libxss1 +Downloading package: shared-mime-info +Downloading package: libatspi2.0-0t64 +Downloading package: glib-networking-common +Downloading package: libgles2 +Downloading package: libgl1-mesa-dri +Downloading package: libcurl3t64-gnutls +Downloading package: libasound2t64 +Downloading package: libxrandr2 +Downloading package: libjxl0.7 +Downloading package: fontconfig-config +Downloading package: gtk2-engines-murrine +Downloading package: libmp3lame0 +Downloading package: libsoxr0 +Downloading package: libx11-data +Downloading package: libsoup-3.0-0 +Downloading package: libgudev-1.0-0 +Downloading package: libgstreamer-plugins-good1.0-0 +Downloading package: libavc1394-0 +Downloading package: libsodium23 +Downloading package: libudfread0 +Downloading package: libjson-glib-1.0-common +Downloading package: libmjpegutils-2.1-0t64 +Downloading package: gnome-themes-extra-data +Downloading package: libmbedcrypto7t64 +Downloading package: libsnappy1v5 +Downloading package: libsndio7.0 +Downloading package: libopus0 +Downloading package: libpangocairo-1.0-0 +Downloading package: libnorm1t64 +Downloading package: libxtst6 +Downloading package: glib-networking-services +Downloading package: libmysofa1 +Downloading package: yaru-theme-gtk +Downloading package: libavcodec60 +Downloading package: libzimg2 +Downloading package: libgstreamer-plugins-bad1.0-0 +Downloading package: libxcb-render0 +Downloading package: libusb-1.0-0 +Downloading package: libvisual-0.4-0 +Downloading package: libgssdp-1.6-0 +Downloading package: libimath-3-1-29t64 +Downloading package: libzvbi0t64 +Downloading package: gsettings-desktop-schemas +Downloading package: fonts-noto-core +Downloading package: libdvdread8t64 +Downloading package: gstreamer1.0-plugins-good +Downloading package: libwebrtc-audio-processing1 +Downloading package: libopenni2-0 +Downloading package: gstreamer1.0-plugins-base +Downloading package: libopenal1 +Downloading package: libvorbisenc2 +Downloading package: libasyncns0 +Downloading package: libunibreak5 +Downloading package: libnss3 +Downloading package: libpangoft2-1.0-0 +Downloading package: libtheora0 +Downloading package: libxvidcore4 +Downloading package: libpocketsphinx3 +Downloading package: libspandsp2t64 +Downloading package: libsndfile1 +Downloading package: libavutil58 +Downloading package: liborc-0.4-0t64 +Downloading package: libwebp7 +Downloading package: libsidplay1v5 +Downloading package: libwildmidi2 +Downloading package: libxslt1.1 +Downloading package: libswscale7 +Downloading package: fonts-dejavu-mono +Downloading package: liblc3-1 +Downloading package: libatk1.0-0t64 +Downloading package: libspeex1 +Downloading package: libmpeg2-4 +Downloading package: libasound2-data +Downloading package: adduser +Downloading package: libflac12t64 +Downloading package: libthai-data +Downloading package: libgstreamer1.0-0 +Downloading package: libdca0 +Downloading package: libavahi-common3 +Downloading package: liblrdf0 +Downloading package: librsvg2-2 +Downloading package: libsamplerate0 +Downloading package: liberror-perl +Downloading package: ocl-icd-libopencl1 +Downloading package: libxcb-glx0 +Downloading package: libldacbt-enc2 +Downloading package: libogg0 +Downloading package: libxinerama1 +Downloading package: libsord-0-0 +Downloading package: libjbig0 +Downloading package: libflite1 +Downloading package: libopenjp2-7 +Downloading package: libwayland-egl1 +Downloading package: libcdparanoia0 +Downloading package: libplacebo338 +Downloading package: libzix-0-0 +Downloading package: libvorbis0a +Downloading package: libsdl2-2.0-0 +Downloading package: libdw1t64 +Downloading package: libjson-glib-1.0-0 +Downloading package: perl-base +Downloading package: libspa-0.2-modules +Downloading package: libzmq5 +Downloading package: libdrm-amdgpu1 +Downloading package: gtk2-engines-pixbuf +Downloading package: dconf-gsettings-backend +Downloading package: libchromaprint1 +Downloading package: libsensors5 +Downloading package: libxcb-randr0 +Downloading package: libvo-amrwbenc0 +Downloading package: libswresample4 +Downloading package: librabbitmq4 +Downloading package: libpipewire-0.3-0t64 +Downloading package: gtk-update-icon-cache +Downloading package: libxcb-xkb1 +Downloading package: libsrtp2-1 +Downloading package: libxext6 +Downloading package: libsoup-3.0-common +Downloading package: libgtk-3-common +Downloading package: libdvdnav4 +Downloading package: libdc1394-25 +Downloading package: libmplex2-2.1-0t64 +Downloading package: liba52-0.7.4 +Downloading package: libnice10 +Downloading package: libmpeg2encpp-2.1-0t64 +Downloading package: libharfbuzz0b +Downloading package: fonts-dejavu-core +Downloading package: libinstpatch-1.0-2 +Downloading package: libsoundtouch1 +Downloading package: libavformat60 +Downloading package: libaa1 +Downloading package: liblilv-0-0 +Downloading package: libmpg123-0t64 +Downloading package: gstreamer1.0-plugins-bad +Downloading package: libslang2 +Downloading package: libegl-mesa0 +Downloading package: session-migration +Downloading package: libva-drm2 +Downloading package: libxcb-shm0 +Downloading package: libgtk-3-0t64 +Downloading package: gnome-themes-extra +Downloading package: dconf-service +Downloading package: perl-modules-5.38 +Downloading package: libgl1 +Downloading package: libzbar0t64 +Downloading package: libegl1 +Downloading package: libx11-6 +Downloading package: libgstreamer-plugins-base1.0-0 +Downloading package: libtag1v5-vanilla +Downloading package: libwayland-client0 +Downloading package: gstreamer1.0-libav +Downloading package: liblapack3 +Downloading package: libopenmpt0t64 +Downloading package: libperl5.38t64 +Downloading package: libxkbcommon-x11-0 +Downloading package: liblcms2-2 +Downloading package: git-man +Downloading package: libatk-bridge2.0-0t64 +Downloading package: libde265-0 +Downloading package: libepoxy0 +Downloading package: libpgm-5.3-0t64 +Downloading package: libxcb-sync1 +Downloading package: libicu74 +Downloading package: libneon27t64 +Downloading package: at-spi2-common +Downloading package: libavahi-client3 +Downloading package: glib-networking +Downloading package: librav1e0 +Downloading package: libva2 +Downloading package: libdrm-intel1 +Downloading package: libxfixes3 +Downloading package: libxdmcp6 +Downloading package: libncurses6 +Downloading package: libxi6 +Downloading package: iso-codes +Downloading package: libxcb-xfixes0 +Downloading package: libavfilter9 +Downloading package: libnspr4 +Downloading package: libsratom-0-0 +Downloading package: libgdk-pixbuf2.0-common +Extracting stage package: fontconfig +Extracting stage package: libvulkan1 +Extracting stage package: libsvtav1enc1d1 +Extracting stage package: libhwy1t64 +Extracting stage package: libxcb-present0 +Extracting stage package: yaru-theme-icon +Extracting stage package: libyajl2 +Extracting stage package: libv4lconvert0t64 +Extracting stage package: libgomp1 +Extracting stage package: libzxing3 +Extracting stage package: libpulse0 +Extracting stage package: libwebpmux3 +Extracting stage package: libopenal-data +Extracting stage package: libltc11 +Extracting stage package: libvpl2 +Extracting stage package: libserd-0-0 +Extracting stage package: libvpx9 +Extracting stage package: libxxf86vm1 +Extracting stage package: libcodec2-1.2 +Extracting stage package: librubberband2 +Extracting stage package: libsharpyuv0 +Extracting stage package: libnghttp2-14 +Extracting stage package: openssh-client +Extracting stage package: libglx-mesa0 +Extracting stage package: libtwolame0 +Extracting stage package: gstreamer1.0-plugins-ugly +Extracting stage package: libzvbi-common +Extracting stage package: libjack-jackd2-0 +Extracting stage package: libfreeaptx0 +Extracting stage package: libdatrie1 +Extracting stage package: libthai0 +Extracting stage package: libssh-4 +Extracting stage package: libxrender1 +Extracting stage package: libldap2 +Extracting stage package: libglvnd0 +Extracting stage package: libproxy1v5 +Extracting stage package: libgdbm-compat4t64 +Extracting stage package: libraptor2-0 +Extracting stage package: libsensors-config +Extracting stage package: hicolor-icon-theme +Extracting stage package: git +Extracting stage package: libglib2.0-bin +Extracting stage package: perl +Extracting stage package: libx11-xcb1 +Extracting stage package: libxshmfence1 +Extracting stage package: libfluidsynth3 +Extracting stage package: libunwind8 +Extracting stage package: libdecor-0-0 +Extracting stage package: libpango-1.0-0 +Extracting stage package: libvo-aacenc0 +Extracting stage package: libwavpack1 +Extracting stage package: libavtp0 +Extracting stage package: libsrt1.5-gnutls +Extracting stage package: libwayland-cursor0 +Extracting stage package: libx264-164 +Extracting stage package: libshine3 +Extracting stage package: libaom3 +Extracting stage package: lsb-base +Extracting stage package: libjpeg-turbo8 +Extracting stage package: libv4l-0t64 +Extracting stage package: libavahi-common-data +Extracting stage package: libcolord2 +Extracting stage package: libpsl5t64 +Extracting stage package: libx265-199 +Extracting stage package: libass9 +Extracting stage package: libsasl2-2 +Extracting stage package: libxcb-dri3-0 +Extracting stage package: libcairo2 +Extracting stage package: libgbm1 +Extracting stage package: libxcursor1 +Extracting stage package: libbluray2 +Extracting stage package: libvorbisfile3 +Extracting stage package: libdv4t64 +Extracting stage package: libblas3 +Extracting stage package: libdeflate0 +Extracting stage package: libqrencode4 +Extracting stage package: libjpeg8 +Extracting stage package: x11-common +Extracting stage package: libiec61883-0 +Extracting stage package: libsphinxbase3t64 +Extracting stage package: libbs2b0 +Extracting stage package: libfftw3-double3 +Extracting stage package: libglx0 +Extracting stage package: libgme0 +Extracting stage package: libdav1d7 +Extracting stage package: libcaca0 +Extracting stage package: libfribidi0 +Extracting stage package: mesa-libgallium +Extracting stage package: libraw1394-11 +Extracting stage package: librtmp1 +Extracting stage package: adwaita-icon-theme +Extracting stage package: libgpm2 +Extracting stage package: libtiff6 +Extracting stage package: libgfortran5 +Extracting stage package: libpixman-1-0 +Extracting stage package: libtag1v5 +Extracting stage package: libvidstab1.1 +Extracting stage package: libva-x11-2 +Extracting stage package: librist4 +Extracting stage package: libgsm1 +Extracting stage package: libgupnp-1.6-0 +Extracting stage package: libcjson1 +Extracting stage package: libshout3 +Extracting stage package: libxau6 +Extracting stage package: libgtk2.0-0t64 +Extracting stage package: libxcb1 +Extracting stage package: libgstreamer-gl1.0-0 +Extracting stage package: libssh-gcrypt-4 +Extracting stage package: libllvm20 +Extracting stage package: libxcomposite1 +Extracting stage package: libmfx1 +Extracting stage package: libmpcdec6 +Extracting stage package: libnuma1 +Extracting stage package: libcdio19t64 +Extracting stage package: libdirectfb-1.7-7t64 +Extracting stage package: libxdamage1 +Extracting stage package: libgdk-pixbuf-2.0-0 +Extracting stage package: libsasl2-modules-db +Extracting stage package: libfaad2 +Extracting stage package: timgm6mb-soundfont +Extracting stage package: libcairo-gobject2 +Extracting stage package: fonts-noto-mono +Extracting stage package: liblerc4 +Extracting stage package: ubuntu-mono +Extracting stage package: libgupnp-igd-1.6-0 +Extracting stage package: libgdbm6t64 +Extracting stage package: libxml2 +Extracting stage package: libglib2.0-data +Extracting stage package: humanity-icon-theme +Extracting stage package: libgtk2.0-common +Extracting stage package: libgraphite2-3 +Extracting stage package: util-linux +Extracting stage package: libdconf1 +Extracting stage package: libfontconfig1 +Extracting stage package: libcups2t64 +Extracting stage package: libvdpau1 +Extracting stage package: libsbc1 +Extracting stage package: libmodplug1 +Extracting stage package: libopenexr-3-1-30 +Extracting stage package: libopenh264-7 +Extracting stage package: libpostproc57 +Extracting stage package: libxss1 +Extracting stage package: shared-mime-info +Extracting stage package: libatspi2.0-0t64 +Extracting stage package: glib-networking-common +Extracting stage package: libgles2 +Extracting stage package: libgl1-mesa-dri +Extracting stage package: libcurl3t64-gnutls +Extracting stage package: libasound2t64 +Extracting stage package: libxrandr2 +Extracting stage package: libjxl0.7 +Extracting stage package: fontconfig-config +Extracting stage package: gtk2-engines-murrine +Extracting stage package: libmp3lame0 +Extracting stage package: libsoxr0 +Extracting stage package: libx11-data +Extracting stage package: libsoup-3.0-0 +Extracting stage package: libgudev-1.0-0 +Extracting stage package: libgstreamer-plugins-good1.0-0 +Extracting stage package: libavc1394-0 +Extracting stage package: libsodium23 +Extracting stage package: libudfread0 +Extracting stage package: libjson-glib-1.0-common +Extracting stage package: libmjpegutils-2.1-0t64 +Extracting stage package: gnome-themes-extra-data +Extracting stage package: libmbedcrypto7t64 +Extracting stage package: libsnappy1v5 +Extracting stage package: libsndio7.0 +Extracting stage package: libopus0 +Extracting stage package: libpangocairo-1.0-0 +Extracting stage package: libnorm1t64 +Extracting stage package: libxtst6 +Extracting stage package: glib-networking-services +Extracting stage package: libmysofa1 +Extracting stage package: yaru-theme-gtk +Extracting stage package: libavcodec60 +Extracting stage package: libzimg2 +Extracting stage package: libgstreamer-plugins-bad1.0-0 +Extracting stage package: libxcb-render0 +Extracting stage package: libusb-1.0-0 +Extracting stage package: libvisual-0.4-0 +Extracting stage package: libgssdp-1.6-0 +Extracting stage package: libimath-3-1-29t64 +Extracting stage package: libzvbi0t64 +Extracting stage package: gsettings-desktop-schemas +Extracting stage package: fonts-noto-core +Extracting stage package: libdvdread8t64 +Extracting stage package: gstreamer1.0-plugins-good +Extracting stage package: libwebrtc-audio-processing1 +Extracting stage package: libopenni2-0 +Extracting stage package: gstreamer1.0-plugins-base +Extracting stage package: libopenal1 +Extracting stage package: libvorbisenc2 +Extracting stage package: libasyncns0 +Extracting stage package: libunibreak5 +Extracting stage package: libnss3 +Extracting stage package: libpangoft2-1.0-0 +Extracting stage package: libtheora0 +Extracting stage package: libxvidcore4 +Extracting stage package: libpocketsphinx3 +Extracting stage package: libspandsp2t64 +Extracting stage package: libsndfile1 +Extracting stage package: libavutil58 +Extracting stage package: liborc-0.4-0t64 +Extracting stage package: libwebp7 +Extracting stage package: libsidplay1v5 +Extracting stage package: libwildmidi2 +Extracting stage package: libxslt1.1 +Extracting stage package: libswscale7 +Extracting stage package: fonts-dejavu-mono +Extracting stage package: liblc3-1 +Extracting stage package: libatk1.0-0t64 +Extracting stage package: libspeex1 +Extracting stage package: libmpeg2-4 +Extracting stage package: libasound2-data +Extracting stage package: adduser +Extracting stage package: libflac12t64 +Extracting stage package: libthai-data +Extracting stage package: libgstreamer1.0-0 +Extracting stage package: libdca0 +Extracting stage package: libavahi-common3 +Extracting stage package: liblrdf0 +Extracting stage package: librsvg2-2 +Extracting stage package: libsamplerate0 +Extracting stage package: liberror-perl +Extracting stage package: ocl-icd-libopencl1 +Extracting stage package: libxcb-glx0 +Extracting stage package: libldacbt-enc2 +Extracting stage package: libogg0 +Extracting stage package: libxinerama1 +Extracting stage package: libsord-0-0 +Extracting stage package: libjbig0 +Extracting stage package: libflite1 +Extracting stage package: libopenjp2-7 +Extracting stage package: libwayland-egl1 +Extracting stage package: libcdparanoia0 +Extracting stage package: libplacebo338 +Extracting stage package: libzix-0-0 +Extracting stage package: libvorbis0a +Extracting stage package: libsdl2-2.0-0 +Extracting stage package: libdw1t64 +Extracting stage package: libjson-glib-1.0-0 +Extracting stage package: perl-base +Extracting stage package: libspa-0.2-modules +Extracting stage package: libzmq5 +Extracting stage package: libdrm-amdgpu1 +Extracting stage package: gtk2-engines-pixbuf +Extracting stage package: dconf-gsettings-backend +Extracting stage package: libchromaprint1 +Extracting stage package: libsensors5 +Extracting stage package: libxcb-randr0 +Extracting stage package: libvo-amrwbenc0 +Extracting stage package: libswresample4 +Extracting stage package: librabbitmq4 +Extracting stage package: libpipewire-0.3-0t64 +Extracting stage package: gtk-update-icon-cache +Extracting stage package: libxcb-xkb1 +Extracting stage package: libsrtp2-1 +Extracting stage package: libxext6 +Extracting stage package: libsoup-3.0-common +Extracting stage package: libgtk-3-common +Extracting stage package: libdvdnav4 +Extracting stage package: libdc1394-25 +Extracting stage package: libmplex2-2.1-0t64 +Extracting stage package: liba52-0.7.4 +Extracting stage package: libnice10 +Extracting stage package: libmpeg2encpp-2.1-0t64 +Extracting stage package: libharfbuzz0b +Extracting stage package: fonts-dejavu-core +Extracting stage package: libinstpatch-1.0-2 +Extracting stage package: libsoundtouch1 +Extracting stage package: libavformat60 +Extracting stage package: libaa1 +Extracting stage package: liblilv-0-0 +Extracting stage package: libmpg123-0t64 +Extracting stage package: gstreamer1.0-plugins-bad +Extracting stage package: libslang2 +Extracting stage package: libegl-mesa0 +Extracting stage package: session-migration +Extracting stage package: libva-drm2 +Extracting stage package: libxcb-shm0 +Extracting stage package: libgtk-3-0t64 +Extracting stage package: gnome-themes-extra +Extracting stage package: dconf-service +Extracting stage package: perl-modules-5.38 +Extracting stage package: libgl1 +Extracting stage package: libzbar0t64 +Extracting stage package: libegl1 +Extracting stage package: libx11-6 +Extracting stage package: libgstreamer-plugins-base1.0-0 +Extracting stage package: libtag1v5-vanilla +Extracting stage package: libwayland-client0 +Extracting stage package: gstreamer1.0-libav +Extracting stage package: liblapack3 +Extracting stage package: libopenmpt0t64 +Extracting stage package: libperl5.38t64 +Extracting stage package: libxkbcommon-x11-0 +Extracting stage package: liblcms2-2 +Extracting stage package: git-man +Extracting stage package: libatk-bridge2.0-0t64 +Extracting stage package: libde265-0 +Extracting stage package: libepoxy0 +Extracting stage package: libpgm-5.3-0t64 +Extracting stage package: libxcb-sync1 +Extracting stage package: libicu74 +Extracting stage package: libneon27t64 +Extracting stage package: at-spi2-common +Extracting stage package: libavahi-client3 +Extracting stage package: glib-networking +Extracting stage package: librav1e0 +Extracting stage package: libva2 +Extracting stage package: libdrm-intel1 +Extracting stage package: libxfixes3 +Extracting stage package: libxdmcp6 +Extracting stage package: libncurses6 +Extracting stage package: libxi6 +Extracting stage package: iso-codes +Extracting stage package: libxcb-xfixes0 +Extracting stage package: libavfilter9 +Extracting stage package: libnspr4 +Extracting stage package: libsratom-0-0 +Extracting stage package: libgdk-pixbuf2.0-common +Pulling desktop-integration +Pulling gnome/sdk +Building busymark +Removing suid/guid from /project/parts/busymark/install/usr/bin/su +Removing suid/guid from /project/parts/busymark/install/usr/lib/openssh/ssh-keysign +:: + rm -rf /project/parts/busymark/build/build +:: + rm -rf /project/parts/busymark/build/.dart_tool +:: + rm -rf /project/parts/busymark/build/linux/flutter/ephemeral +:: + flutter_sdk=/project/parts/busymark/build/flutter-distro +:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD +:: ++ true +:: + flutter_sdk_version= +:: + '[' '!' -x /project/parts/busymark/build/flutter-distro/bin/flutter ']' +:: + rm -rf /project/parts/busymark/build/flutter-distro +:: + git clone --depth 1 --branch 3.47.5 https://github.com/flutter/flutter.git /project/parts/busymark/build/flutter-distro +:: Cloning into '/project/parts/busymark/build/flutter-distro'... +:: Note: switching to '6a19cca56475dbfba1478ee68d7bd0c2ef891da1'. +:: +:: You are in 'detached HEAD' state. You can look around, make experimental +:: changes and commit them, and you can discard any commits you make in this +:: state without impacting any branches by switching back to a branch. +:: +:: If you want to create a new branch to retain commits you create, you may +:: do so (now or later) by using -c with the switch command. Example: +:: +:: git switch -c +:: +:: Or undo this operation with: +:: +:: git switch - +:: +:: Turn off this advice by setting config variable advice.detachedHead to false +:: +:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD +:: + test 3.47.5 = 3.47.5 +:: + export CI=true +:: + CI=true +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check precache --linux +:: Downloading Linux x64 Dart SDK from Flutter engine af7e796e161ae0bb1ff0758c71a7105418bd9ded... +:: % Total % Received % Xferd Average Speed Time Time Time Current +:: Dload Upload Total Spent Left Speed +:: 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 227M 0 3999 0 0 17864 0 3:42:42 --:--:-- 3:42:42 17852 8 227M 8 19.9M 0 0 16.4M 0 0:00:13 0:00:01 0:00:12 16.4M 18 227M 18 41.3M 0 0 18.7M 0 0:00:12 0:00:02 0:00:10 18.6M 22 227M 22 50.3M 0 0 12.8M 0 0:00:17 0:00:03 0:00:14 12.8M 26 227M 26 59.7M 0 0 14.1M 0 0:00:16 0:00:04 0:00:12 14.1M 40 227M 40 93.0M 0 0 17.8M 0 0:00:12 0:00:05 0:00:07 18.6M 55 227M 55 126M 0 0 20.4M 0 0:00:11 0:00:06 0:00:05 21.3M 67 227M 67 154M 0 0 21.4M 0 0:00:10 0:00:07 0:00:03 22.6M 81 227M 81 186M 0 0 16.1M 0 0:00:14 0:00:11 0:00:03 17.7M 86 227M 86 196M 0 0 15.8M 0 0:00:14 0:00:12 0:00:02 16.7M 95 227M 95 216M 0 0 16.1M 0 0:00:14 0:00:13 0:00:01 15.0M 100 227M 100 227M 0 0 16.2M 0 0:00:14 0:00:14 --:--:-- 12.8M +:: Building flutter tool... +:: Resolving dependencies... +:: Downloading packages... +:: + _fe_analyzer_shared 95.0.0 (109.0.0 available) +:: + analyzer 10.1.0 (14.5.0 available) +:: + archive 3.6.1 (4.3.0 available) +:: + args 2.7.0 +:: + async 2.13.1 +:: + boolean_selector 2.1.2 +:: + browser_launcher 1.1.3 (1.2.0 available) +:: + built_collection 5.1.1 (5.1.2 available) +:: + built_value 8.12.6 (8.13.0 available) +:: + checked_yaml 2.0.4 +:: + cli_config 0.2.0 +:: + clock 1.1.2 (1.1.3 available) +:: + code_assets 1.2.1 (2.1.0 available) +:: + code_builder 4.11.1 (4.12.0 available) +:: + collection 1.19.1 +:: + completion 1.0.2 +:: + convert 3.1.2 +:: + coverage 1.15.1 +:: + crypto 3.0.7 +:: + csslib 1.0.2 +:: + dap 1.4.0 +:: + dart_service_protocol_shared 0.0.3 +:: + dart_style 3.1.7 (3.1.13 available) +:: + data_assets 0.20.0 +:: + dds 5.4.0 +:: + dds_service_extensions 2.1.0 +:: + devtools_shared 13.1.0 (14.0.0 available) +:: + dtd 4.0.0 +:: + dwds 27.1.2 (27.1.4 available) +:: + extension_discovery 2.1.0 +:: + fake_async 1.3.3 +:: + ffi 2.2.0 +:: + file 7.0.1 +:: + file_testing 3.0.2 (3.1.0 available) +:: + fixnum 1.1.1 +:: + flutter_template_images 5.0.0 (5.0.1 available) +:: + frontend_server_client 4.0.0 (4.1.0 available) +:: + glob 2.1.3 (2.2.0 available) +:: + graphs 2.3.2 +:: + hooks 2.0.2 (2.2.0 available) +:: + hooks_runner 1.5.0 (1.6.4 available) +:: + html 0.15.6 (0.15.7 available) +:: + http 1.6.0 +:: + http_multi_server 3.2.2 +:: + http_parser 4.1.2 +:: + intl 0.20.3 +:: + io 1.0.5 (1.1.0 available) +:: + js 0.7.2 (discontinued) +:: + json_annotation 4.12.0 +:: + json_rpc_2 4.1.0 +:: + logging 1.3.0 +:: + matcher 0.12.20 +:: + meta 1.18.3 (1.19.0 available) +:: + mime 2.0.0 (2.1.0 available) +:: + multicast_dns 0.3.3+1 +:: + mustache_template 2.0.5 (2.0.6 available) +:: + native_stack_traces 0.6.1 (0.7.0 available) +:: + node_preamble 2.0.2 +:: + package_config 2.2.0 (3.0.0 available) +:: + path 1.9.1 +:: + petitparser 7.0.2 (7.1.0 available) +:: + platform 3.1.6 (3.2.0 available) +:: + pool 1.5.2 (1.5.3 available) +:: + process 5.0.5 (5.0.6 available) +:: + pub_semver 2.2.0 (2.2.1 available) +:: + pubspec_parse 1.5.0 (1.6.0 available) +:: + record_use 0.6.0 (1.1.1 available) +:: + shelf 1.4.2 +:: + shelf_packages_handler 3.0.2 +:: + shelf_proxy 1.0.5 +:: + shelf_static 1.1.3 +:: + shelf_web_socket 3.0.0 +:: + source_map_stack_trace 2.1.2 +:: + source_maps 0.10.13 (0.10.14 available) +:: + source_span 1.10.2 +:: + sprintf 7.0.0 +:: + sse 4.2.0 +:: + stack_trace 1.12.1 (1.12.2 available) +:: + standard_message_codec 0.0.1+5 +:: + stream_channel 2.1.4 +:: + string_scanner 1.4.1 +:: + sync_http 0.3.1 +:: + term_glyph 1.2.2 +:: + test 1.31.1 (1.32.0 available) +:: + test_api 0.7.12 (0.7.14 available) +:: + test_core 0.6.18 (0.6.20 available) +:: + typed_data 1.4.0 +:: + unified_analytics 8.0.15 (8.0.18 available) +:: + uuid 4.5.3 (4.6.0 available) +:: + vm_service 15.2.0 (15.3.0 available) +:: + vm_service_interface 2.0.1 +:: + vm_snapshot_analysis 0.7.6 +:: + watcher 1.2.1 +:: + web 1.1.1 +:: + web_socket 1.0.1 +:: + web_socket_channel 3.0.3 +:: + webdriver 3.1.0 (3.2.0 available) +:: + webkit_inspection_protocol 1.2.1 +:: + xml 6.6.1 (7.1.0 available) +:: + yaml 3.1.3 (3.1.4 available) +:: + yaml_edit 2.2.4 +:: Changed 101 dependencies! +:: 1 package is discontinued. +:: 43 packages have newer versions incompatible with dependency constraints. +:: Try `dart pub outdated` for more information. +:: [1/11] Material Fonts 476ms +:: [2/11] Gradle Wrapper 52ms +:: [3/11] Flutter SDK +:: ├─ [1/5] sky_engine 99ms +:: ├─ [2/5] flutter_gpu 44ms +:: ├─ [3/5] flutter_patched_sdk 174ms +:: ├─ [4/5] flutter_patched_sdk_product 209ms +:: └─ [5/5] linux-x64 1,201ms +:: [4/11] Linux SDK +:: ├─ [1/3] linux-x64-debug/linux-x64-flutter-gtk 859ms +:: ├─ [2/3] linux-x64-profile/linux-x64-flutter-gtk 373ms +:: └─ [3/3] linux-x64-release/linux-x64-flutter-gtk 315ms +:: [11/11] linux-x64/font-subset 123ms +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get +:: Resolving dependencies... +:: Downloading packages... +:: _fe_analyzer_shared 99.0.0 (109.0.0 available) +:: analyzer 12.1.0 (14.5.0 available) +:: animated_vector 0.2.2 (0.2.3 available) +:: animated_vector_annotations 0.2.2 (0.3.0 available) +:: archive 4.0.9 (4.3.0 available) +:: assorted_layout_widgets 11.0.0 (13.1.0 available) +:: clock 1.1.2 (1.1.3 available) +:: code_assets 1.2.1 (2.1.0 available) +:: cross_file 0.3.5+4 (0.4.0 available) +:: dbus 0.7.13 (0.8.0 available) +:: file_selector_android 0.5.2+8 (0.5.2+11 available) +:: file_selector_ios 0.5.3+5 (0.5.3+6 available) +:: file_selector_linux 0.9.4 (0.9.4+1 available) +:: file_selector_macos 0.9.5 (0.9.5+1 available) +:: file_selector_windows 0.9.3+5 (0.9.3+6 available) +:: flutter_riverpod 3.3.2 (3.4.3 available) +:: frontend_server_client 4.0.0 (4.1.0 available) +:: glob 2.1.3 (2.2.0 available) +:: go_router 17.3.0 (18.0.2 available) +:: gsettings 0.2.8 (0.2.9 available) +:: html 0.15.6 (0.15.7 available) +:: image 4.9.1 (4.10.1 available) +:: io 1.0.5 (1.1.0 available) +:: jni 1.0.0 (1.1.0 available) +:: jni_flutter 1.0.1 (1.0.4+1 available) +:: material_color_utilities 0.13.0 (0.13.1 available) +:: mime 2.0.0 (2.1.0 available) +:: native_toolchain_c 0.19.3 (0.19.5 available) +:: objective_c 9.4.1 (9.6.2 available) +:: package_config 2.2.0 (3.0.0 available) +:: package_info_plus 10.2.1 (10.2.2 available) +:: petitparser 7.0.2 (7.1.0 available) +:: platform 3.1.6 (3.2.0 available) +:: pool 1.5.2 (1.5.3 available) +:: posix 6.5.0 (6.5.2 available) +:: pub_semver 2.2.0 (2.2.1 available) +:: riverpod 3.3.2 (3.4.3 available) +:: source_maps 0.10.13 (0.10.14 available) +:: stack_trace 1.12.1 (1.12.2 available) +:: test 1.31.1 (1.32.0 available) +:: test_api 0.7.12 (0.7.14 available) +:: test_core 0.6.18 (0.6.20 available) +:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) +:: unorm_dart 0.3.2 (0.3.3 available) +:: url_launcher 6.3.2 (6.3.3 available) +:: url_launcher_android 6.3.32 (6.3.33 available) +:: url_launcher_ios 6.4.1 (6.4.2 available) +:: url_launcher_linux 3.2.2 (3.2.3 available) +:: url_launcher_macos 3.2.5 (3.2.6 available) +:: url_launcher_windows 3.1.5 (3.1.6 available) +:: vector_graphics 1.2.2 (1.2.3 available) +:: vector_graphics_compiler 1.2.6 (1.3.0 available) +:: vector_math 2.4.2 (2.4.3 available) +:: vm_service 15.2.0 (15.3.0 available) +:: win32 6.3.0 (6.4.0 available) +:: xml 7.0.1 (7.1.0 available) +:: yaml 3.1.3 (3.1.4 available) +:: yaru 10.2.0 (11.0.0 available) +:: Got dependencies! +:: 58 packages have newer versions incompatible with dependency constraints. +:: Try `flutter pub outdated` for more information. +:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart +:: [ +12 ms] Unable to locate an Android SDK. +:: [ +8 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ +29 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ +13 ms] executing: [/project/parts/busymark/build/] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart pub --suppress-analytics --directory . get --example +:: Resolving dependencies... +:: Downloading packages... +:: _fe_analyzer_shared 99.0.0 (109.0.0 available) +:: analyzer 12.1.0 (14.5.0 available) +:: animated_vector 0.2.2 (0.2.3 available) +:: animated_vector_annotations 0.2.2 (0.3.0 available) +:: archive 4.0.9 (4.3.0 available) +:: assorted_layout_widgets 11.0.0 (13.1.0 available) +:: clock 1.1.2 (1.1.3 available) +:: code_assets 1.2.1 (2.1.0 available) +:: cross_file 0.3.5+4 (0.4.0 available) +:: dbus 0.7.13 (0.8.0 available) +:: file_selector_android 0.5.2+8 (0.5.2+11 available) +:: file_selector_ios 0.5.3+5 (0.5.3+6 available) +:: file_selector_linux 0.9.4 (0.9.4+1 available) +:: file_selector_macos 0.9.5 (0.9.5+1 available) +:: file_selector_windows 0.9.3+5 (0.9.3+6 available) +:: flutter_riverpod 3.3.2 (3.4.3 available) +:: frontend_server_client 4.0.0 (4.1.0 available) +:: glob 2.1.3 (2.2.0 available) +:: go_router 17.3.0 (18.0.2 available) +:: gsettings 0.2.8 (0.2.9 available) +:: html 0.15.6 (0.15.7 available) +:: image 4.9.1 (4.10.1 available) +:: io 1.0.5 (1.1.0 available) +:: jni 1.0.0 (1.1.0 available) +:: jni_flutter 1.0.1 (1.0.4+1 available) +:: material_color_utilities 0.13.0 (0.13.1 available) +:: mime 2.0.0 (2.1.0 available) +:: native_toolchain_c 0.19.3 (0.19.5 available) +:: objective_c 9.4.1 (9.6.2 available) +:: package_config 2.2.0 (3.0.0 available) +:: package_info_plus 10.2.1 (10.2.2 available) +:: petitparser 7.0.2 (7.1.0 available) +:: platform 3.1.6 (3.2.0 available) +:: pool 1.5.2 (1.5.3 available) +:: posix 6.5.0 (6.5.2 available) +:: pub_semver 2.2.0 (2.2.1 available) +:: riverpod 3.3.2 (3.4.3 available) +:: source_maps 0.10.13 (0.10.14 available) +:: stack_trace 1.12.1 (1.12.2 available) +:: test 1.31.1 (1.32.0 available) +:: test_api 0.7.12 (0.7.14 available) +:: test_core 0.6.18 (0.6.20 available) +:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) +:: unorm_dart 0.3.2 (0.3.3 available) +:: url_launcher 6.3.2 (6.3.3 available) +:: url_launcher_android 6.3.32 (6.3.33 available) +:: url_launcher_ios 6.4.1 (6.4.2 available) +:: url_launcher_linux 3.2.2 (3.2.3 available) +:: url_launcher_macos 3.2.5 (3.2.6 available) +:: url_launcher_windows 3.1.5 (3.1.6 available) +:: vector_graphics 1.2.2 (1.2.3 available) +:: vector_graphics_compiler 1.2.6 (1.3.0 available) +:: vector_math 2.4.2 (2.4.3 available) +:: vm_service 15.2.0 (15.3.0 available) +:: win32 6.3.0 (6.4.0 available) +:: xml 7.0.1 (7.1.0 available) +:: yaml 3.1.3 (3.1.4 available) +:: yaru 10.2.0 (11.0.0 available) +:: Got dependencies! +:: 58 packages have newer versions incompatible with dependency constraints. +:: Try `flutter pub outdated` for more information. +:: [ +506 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ +4 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ +2 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +20 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ +1 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ +17 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ +2 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ +28 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ +24 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ ] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ +2 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ ] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ ] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ +1 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ ] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ ] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ +1 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +7 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ ] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ ] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ ] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ ] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ ] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ ] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ +7 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ +1 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ +1 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ +16 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ +10 ms] Skipping generating generated_plugin_registrant.h because it is up-to-date. +:: [ +3 ms] Skipping generating generated_plugin_registrant.cc because it is up-to-date. +:: [ ] Skipping generating generated_plugins.cmake because it is up-to-date. +:: [ +17 ms] Building Linux application... +:: [ +2 ms] executing: [/project/parts/busymark/build/build/linux/x64/release/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DFLUTTER_TARGET_PLATFORM=linux-x64 /project/parts/busymark/build/linux +:: [+4068 ms] -- The CXX compiler identification is Clang 18.1.3 +:: [ +54 ms] -- Detecting CXX compiler ABI info +:: [ +160 ms] -- Detecting CXX compiler ABI info - done +:: [ +6 ms] -- Check for working CXX compiler: /usr/bin/clang++ - skipped +:: [ ] -- Detecting CXX compile features +:: [ +1 ms] -- Detecting CXX compile features - done +:: [ +9 ms] -- Found PkgConfig: /snap/gnome-46-2404-sdk/current/usr/bin/pkg-config (found version "1.8.1") +:: [ ] -- Checking for module 'gtk+-3.0' +:: [ +21 ms] -- Found gtk+-3.0, version 3.24.50 +:: [+5395 ms] -- Checking for module 'glib-2.0' +:: [ +7 ms] -- Found glib-2.0, version 2.84.4 +:: [ +18 ms] -- Checking for module 'gio-2.0' +:: [ +8 ms] -- Found gio-2.0, version 2.84.4 +:: [ +172 ms] -- Checking for module 'libhandy-1' +:: [ +18 ms] -- Found libhandy-1, version 1.8.3 +:: [ +177 ms] -- Checking for module 'libsecret-1' +:: [ +8 ms] -- Found libsecret-1, version 0.21.7 +:: [ +25 ms] -- Checking for module 'webkit2gtk-4.1' +:: [ +16 ms] -- Found webkit2gtk-4.1, version 2.52.6 +:: [+4442 ms] -- The C compiler identification is Clang 18.1.3 +:: [ +39 ms] -- Detecting C compiler ABI info +:: [ +144 ms] -- Detecting C compiler ABI info - done +:: [ +6 ms] -- Check for working C compiler: /usr/bin/clang - skipped +:: [ ] -- Detecting C compile features +:: [ ] -- Detecting C compile features - done +:: [ +13 ms] -- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JVM) +:: [ +1 ms] -- Configuring done (11.4s) +:: [ +38 ms] -- Generating done (0.0s) +:: [ +7 ms] -- Build files have been written to: /project/parts/busymark/build/build/linux/x64/release +:: [ +8 ms] executing: ninja -C /project/parts/busymark/build/build/linux/x64/release install +:: [ +5 ms] ninja: Entering directory `/project/parts/busymark/build/build/linux/x64/release' +:: [+2835 ms] [1/34] Preparing checksum-pinned D2 renderer +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 22 20.2M 22 4758k 0 0 3831k 0 0:00:05 0:00:01 0:00:04 3831k +:: [ ] 100 20.2M 100 20.2M 0 0 9611k 0 0:00:02 0:00:02 --:--:-- 17.0M +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' +:: [ ] Prepared D2 0.7.1 in /project/parts/busymark/build/build/linux/x64/release/d2/linux-x86_64 +:: [+2403 ms] [2/34] Preparing pinned Typst compiler for PDF export +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 22 16.6M 22 3868k 0 0 3114k 0 0:00:05 0:00:01 0:00:04 3114k +:: [ ] 96 16.6M 96 16.0M 0 0 7320k 0 0:00:02 0:00:02 --:--:-- 12.2M +:: [ ] 100 16.6M 100 16.6M 0 0 7476k 0 0:00:02 0:00:02 --:--:-- 12.4M +:: [ ] Prepared Typst 0.15.1 in /project/parts/busymark/build/build/linux/x64/release/typst/linux-x86_64 +:: [+21119 ms] [3/34] Preparing pinned offline visualization web engines +:: [ ] npm warn deprecated nomnom@1.5.2: Package no longer supported. Contact support@npmjs.com for more info. +:: [ ] added 435 packages in 13s +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 330k 0 330k 0 0 216k 0 --:--:-- 0:00:01 --:--:-- 368k +:: [ ] 100 1757k 0 1757k 0 0 695k 0 --:--:-- 0:00:02 --:--:-- 925k +:: [ ] 100 4105k 0 4105k 0 0 1166k 0 --:--:-- 0:00:03 --:--:-- 1420k +:: [ ] 100 5395k 0 5395k 0 0 1373k 0 --:--:-- 0:00:03 --:--:-- 1635k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 2 2584k 2 64598 0 0 150k 0 0:00:17 --:--:-- 0:00:17 150k +:: [ ] 100 2584k 100 2584k 0 0 4098k 0 --:--:-- --:--:-- --:--:-- 4096k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 109k 100 109k 0 0 371k 0 --:--:-- --:--:-- --:--:-- 372k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 3 2862k 3 97591 0 0 248k 0 0:00:11 --:--:-- 0:00:11 248k +:: [ ] 100 2862k 100 2862k 0 0 4152k 0 --:--:-- --:--:-- --:--:-- 4148k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 50065 100 50065 0 0 205k 0 --:--:-- --:--:-- --:--:-- 206k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 109k 100 109k 0 0 467k 0 --:--:-- --:--:-- --:--:-- 469k +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 100 7334k 100 7334k 0 0 9.9M 0 --:--:-- --:--:-- --:--:-- 9.9M +:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current +:: [ ] Dload Upload Total Spent Left Speed +:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 +:: [ ] 68 13.2M 68 9270k 0 0 11.4M 0 0:00:01 --:--:-- 0:00:01 11.4M +:: [ ] 100 13.2M 100 13.2M 0 0 14.2M 0 --:--:-- --:--:-- --:--:-- 14.2M +:: [ ] ▲ [WARNING] Cannot find base config file "../../tsconfig.json" [tsconfig.json] +:: [ ] ../../../../../../../../tmp/tmp.cel4iLv5IW/tool/mermaid-source/tsconfig.json:2:13: +:: [ ] 2 │ "extends": "../../tsconfig.json", +:: [ ] ╵ ~~~~~~~~~~~~~~~~~~~~~ +:: [ ] Prepared offline visualization web assets in /project/parts/busymark/build/build/linux/x64/release/visualization/web +:: [+69683 ms] [4/34] Generating /project/parts/busymark/build/linux/flutter/ephemeral/libflutter_linux_gtk.so, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_value.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_view.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_ +:: [ +1 ms] [ +14 ms] Unable to locate an Android SDK. +:: [ ] [ +12 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ ] [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ +47 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. +:: [ ] [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. +:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. +:: [ ] [ +10 ms] Initializing file store +:: [ ] [ +46 ms] build_hooks: Starting due to {} +:: [ ] [ +2 ms] gen_localizations: Starting due to {} +:: [ +1 ms] [ +956 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/package_config.json} +:: [ ] [ +3 ms] unpack_linux: Starting due to {} +:: [ ] [ +41 ms] unpack_linux: Complete +:: [ ] [ +682 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ +:: [ ] [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ +:: [ ] [ +5 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ +:: [ ] [ +2 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ +:: [ ] [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ +:: [ ] [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ +:: [ ] [ +11 ms] Running build hooks for linux_x64. +:: [ ] [ +4 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ +:: [ ] [ +16 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ +:: [ ] [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ +:: [ ] [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ +:: [ +1 ms] [ +20 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/hook/build.dart`. +:: [ ] [ +26 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ +:: [ ] [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ +:: [ ] [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ +:: [ ] [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ +:: [ ] [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ +:: [ ] [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ +:: [ ] [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ +:: [ ] [ +18 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ +:: [ ] [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ +:: [ ] [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ +:: [ ] [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ +:: [ ] [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ +:: [ ] [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ +:: [ ] [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ +:: [ ] [ +2 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ +:: [ ] [ +29 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ +:: [ ] [ +1 ms] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ +:: [ ] [ +2 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ +:: [ ] [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ +:: [ ] [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ +:: [ ] [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ +:: [ ] [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ +:: [ ] [ +273 ms] gen_dart_plugin_registrant: Complete +:: [ ] [+2531 ms] gen_localizations: Complete +:: [ ] [ +59 ms] kernel_snapshot_program: Starting due to {} +:: [ +20 ms] [ +6 ms] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dartaotruntime /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/snapshots/frontend_server_aot.dart.snapshot --sdk-root /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/common/flutter_patched_sdk_product/ --target=flutter --no-print-incremental-dependencies -DFLUTTER_BUILD_NAME=0.6.1 -DFLUTTER_VERSION=3.47.5 -DFLUTTER_CHANNEL=[user-branch] -DFLUTTER_GIT_URL=https://github.com/flutter/flutter.git -DFLUTTER_FRAMEWORK_REVISION=6a19cca564 -DFLUTTER_ENGINE_REVISION=af7e796e16 -DFLUTTER_DART_VERSION=3.13.4 -Ddart.vm.profile=false -Ddart.vm.product=true --delete-tostring-package-uri=dart:ui --delete-tostring-package-uri=package:flutter --aot --tfa --target-os linux --packages /project/parts/busymark/build/.dart_tool/package_config.json --output-dill /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --depfile /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/kernel_snapshot_program.d --source file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --source package:flutter/src/dart_plugin_registrant.dart -Dflutter.dart_plugin_registrant=file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --verbosity=error --recorded-uses=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/recorded_uses.json package:busymark/main.dart +:: [ ] [+1687 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/objective_c/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/output.json", +:: [ ] "package_name": "objective_c", +:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +9 ms] [ +2 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/input.json )`. +:: [ ] [ +307 ms] output.json contents: +:: [ ] { +:: [ ] "assets_for_linking": {}, +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 11:30:25.000" +:: [ ] } +:: [ +3 ms] [ +25 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill.d /project/parts/busymark/build/packages/busymark_spellcheck_native/hook/build.dart`. +:: [ ] [+1597 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/output.json", +:: [ ] "package_name": "busymark_spellcheck_native", +:: [ ] "package_root": "/project/parts/busymark/build/packages/busymark_spellcheck_native/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +5 ms] [ +1 ms] Running `(cd /project/parts/busymark/build/packages/busymark_spellcheck_native/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/input.json )`. +:: [ ] [+30383 ms] output.json contents: +:: [ ] { +:: [ ] "assets": [ +:: [ ] { +:: [ ] "encoding": { +:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/cd73a1e2e2/libbusymark_spellcheck_native.so", +:: [ ] "id": "package:busymark_spellcheck_native/busymark_spellcheck_native_bindings_generated.dart", +:: [ ] "link_mode": { +:: [ ] "type": "dynamic_loading_bundle" +:: [ ] } +:: [ ] }, +:: [ ] "type": "code_assets/code" +:: [ ] } +:: [ ] ], +:: [ ] "assets_for_linking": {}, +:: [ ] "dependencies": [ +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx", +:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx" +:: [ ] ], +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 11:30:27.000" +:: [ ] } +:: [ +1 ms] [ +63 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/hook/build.dart`. +:: [ ] [+1194 ms] input.json contents: +:: [ ] { +:: [ ] "assets": {}, +:: [ ] "config": { +:: [ ] "build_asset_types": [ +:: [ ] "code_assets/code" +:: [ ] ], +:: [ ] "extensions": { +:: [ ] "code_assets": { +:: [ ] "c_compiler": { +:: [ ] "ar": "/usr/bin/ar", +:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", +:: [ ] "ld": "/usr/bin/ld" +:: [ ] }, +:: [ ] "link_mode_preference": "dynamic", +:: [ ] "target_architecture": "x64", +:: [ ] "target_os": "linux" +:: [ ] } +:: [ ] }, +:: [ ] "linking_enabled": true +:: [ ] }, +:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/", +:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/output.json", +:: [ ] "package_name": "sqlite3", +:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/", +:: [ ] "user_defines": {} +:: [ ] } +:: [ +4 ms] [ +2 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/input.json )`. +:: [ ] [+1255 ms] output.json contents: +:: [ ] { +:: [ ] "assets": [ +:: [ ] { +:: [ ] "encoding": { +:: [ +2 ms] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/download-0f947ebe/libsqlite3.so", +:: [ ] "id": "package:sqlite3/src/ffi/libsqlite3.g.dart", +:: [ ] "link_mode": { +:: [ ] "type": "dynamic_loading_bundle" +:: [ ] } +:: [ ] }, +:: [ ] "type": "code_assets/code" +:: [ ] } +:: [ ] ], +:: [ ] "assets_for_linking": {}, +:: [ ] "status": "success", +:: [ ] "timestamp": "2026-10-07 11:30:58.000" +:: [ ] } +:: [ ] [ +16 ms] Running build hooks for linux_x64 done. +:: [ ] [ +2 ms] build_hooks: Complete +:: [ ] [+12513 ms] kernel_snapshot_program: Complete +:: [ ] [+1669 ms] link_hooks: Starting due to {} +:: [ +5 ms] [ +1 ms] aot_elf_release: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/flutter-distro/packages/flutter_tools/lib/src/build_system/targets/common.dart,/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so} +:: [ ] [ +1 ms] targetingApplePlatform = false +:: [ ] [ ] extractAppleDebugSymbols = true +:: [ ] [ ] targetingAndroidPlatform = false +:: [ ] [ ] Will strip AOT snapshot during build. +:: [ +1 ms] [ ] executing: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64-release/gen_snapshot --deterministic --snapshot_kind=app-aot-elf --elf=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so --strip /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill +:: [ ] [ +17 ms] Running link hooks for linux_x64. +:: [ ] [ +21 ms] Running link hooks for linux_x64 done. +:: [ ] [ +5 ms] link_hooks: Complete +:: [ ] [ +2 ms] install_code_assets: Starting due to {} +:: [ ] [ +11 ms] Copying native assets to /project/parts/busymark/build/build/native_assets/linux/. +:: [ ] [ +3 ms] Copying native assets done. +:: [ ] [ ] Writing native assets json to file:///project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json. +:: [ ] [ +1 ms] Writing /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json done. +:: [ ] [ ] install_code_assets: Complete +:: [ ] [+32922 ms] aot_elf_release: Complete +:: [ +1 ms] [ +108 ms] linux_aot_bundle: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/build/lib/libapp.so} +:: [ ] [ +326 ms] linux_aot_bundle: Complete +:: [ ] [ +111 ms] release_bundle_linux-x64_assets: Starting due to {} +:: [ +4 ms] [+2016 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders/ink_sparkle.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] +:: [ +5 ms] [ +3 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders/stretch_effect.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] +:: [ +2 ms] [ +60 ms] Running command: /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/const_finder.dart.snapshot --kernel-file /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --class-library-uri package:flutter/src/widgets/icon_data.dart --class-name IconData --annotation-class-name _StaticIconProvider --annotation-class-library-uri package:flutter/src/widgets/icon_data.dart +:: [ +1 ms] [+1665 ms] Expected to find fontFamily for constant IconData with codepoint: 128842, but found fontFamily: null. This usually means you are relying on the system font. Alternatively, font families in an IconData class can be provided in the assets section of your pubspec.yaml, or you are missing "uses-material-design: true". +:: [ +1 ms] [ +1 ms] Expected to find fonts for (packages/yaru/YaruIcons, MaterialIcons, packages/cupertino_icons/CupertinoIcons), but found (MaterialIcons, packages/yaru/YaruIcons). This usually means you are referring to font families in an IconData class but not including them in the assets section of your pubspec.yaml, are missing the package that would include them, or are missing "uses-material-design: true". +:: [ +2 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/fonts/MaterialIcons-Regular.otf /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/material_fonts/MaterialIcons-Regular.otf, using codepoints 58061 984332 57490 62832 57706 58332 57502 57501 57496 58372 +:: [ +6 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/packages/yaru/assets/yaru_icons.otf /root/.pub-cache/hosted/pub.dev/yaru-10.2.0/assets/yaru_icons.otf, using codepoints 57724 57723 57952 58031 58004 58087 57763 57862 57935 57945 57958 57799 57778 57937 57907 57846 57850 57890 57848 57564 58100 57845 58015 57647 57786 57547 57732 58149 57607 57622 57556 58143 58041 58094 57785 57936 57932 57668 58081 57756 57631 57853 57873 57869 58146 57666 57660 57743 57685 57688 57542 57684 58009 57614 57686 57483 57573 57802 57502 58104 57820 57485 57960 57777 57891 57581 57803 57828 57844 57822 58034 57623 57830 58011 57956 57541 58089 57562 57490 57492 57871 57868 57721 57722 57747 58086 57507 57832 57906 57880 58090 57717 +:: [ ] [+2626 ms] Font asset "yaru_icons.otf" was tree-shaken, reducing it from 203588 to 18772 bytes (90.8% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. +:: [ ] [ ] Font asset "MaterialIcons-Regular.otf" was tree-shaken, reducing it from 1645184 to 1748 bytes (99.9% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. +:: [ ] [ +31 ms] release_bundle_linux-x64_assets: Complete +:: [ ] [ +57 ms] Persisting file store +:: [ ] [ +18 ms] Done persisting file store +:: [ ] [ +57 ms] build succeeded. +:: [ ] [ ] "flutter assemble" took 95,653ms. +:: [ ] [ ] Running 1 shutdown hook +:: [ ] [ ] Shutdown hooks complete +:: [ ] [ ] exiting with code 0 +:: [+1300 ms] [5/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/url_launcher_plugin.cc.o +:: [ +80 ms] [6/34] Building CXX object runner/CMakeFiles/busymark.dir/main.cc.o +:: [ +5 ms] [7/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window_linux_plugin.cc.o +:: [ +4 ms] [8/34] Building CXX object plugins/gtk/CMakeFiles/gtk_plugin.dir/gtk_plugin.cc.o +:: [ +89 ms] [9/34] Building CXX object plugins/screen_retriever_linux/CMakeFiles/screen_retriever_linux_plugin.dir/screen_retriever_linux_plugin.cc.o +:: [ +22 ms] [10/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/messages.g.cc.o +:: [ +158 ms] [11/34] Building CXX object runner/CMakeFiles/busymark.dir/secure_credential_host.cc.o +:: [ +257 ms] [12/34] Linking CXX shared library plugins/screen_retriever_linux/libscreen_retriever_linux_plugin.so +:: [ +23 ms] [13/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window.cc.o +:: [ +37 ms] [14/34] Linking CXX shared library plugins/gtk/libgtk_plugin.so +:: [ +42 ms] [15/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/file_selector_plugin.cc.o +:: [ +149 ms] [16/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/messages.g.cc.o +:: [ +2 ms] [17/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent.cc.o +:: [ +22 ms] [18/34] Building CXX object plugins/window_manager/CMakeFiles/window_manager_plugin.dir/window_manager_plugin.cc.o +:: [ +8 ms] [19/34] Linking CXX shared library plugins/yaru_window_linux/libyaru_window_linux_plugin.so +:: [ +90 ms] [20/34] Building CXX object runner/CMakeFiles/busymark.dir/rich_clipboard_host.cc.o +:: [ +120 ms] [21/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_window_preferences.cc.o +:: [ +4 ms] [22/34] Linking CXX shared library plugins/file_selector_linux/libfile_selector_linux_plugin.so +:: [ +40 ms] [23/34] Linking CXX shared library plugins/url_launcher_linux/liburl_launcher_linux_plugin.so +:: [ +26 ms] [24/34] Building CXX object runner/CMakeFiles/busymark.dir/linux_chrome_host.cc.o +:: [ +1 ms] [25/34] Linking CXX shared library plugins/window_manager/libwindow_manager_plugin.so +:: [ +255 ms] [26/34] Building CXX object runner/CMakeFiles/busymark.dir/writerside_dialog_host.cc.o +:: [ +182 ms] [27/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_header_icons.cc.o +:: [ +19 ms] [28/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent_host.cc.o +:: [ +16 ms] [29/34] Building CXX object runner/CMakeFiles/busymark.dir/__/flutter/generated_plugin_registrant.cc.o +:: [ +42 ms] [30/34] Building CXX object runner/CMakeFiles/busymark.dir/my_application.cc.o +:: [ +103 ms] [31/34] Building CXX object runner/CMakeFiles/busymark.dir/web_render_host.cc.o +:: [ +283 ms] [32/34] Building CXX object runner/CMakeFiles/busymark.dir/video_player_host.cc.o +:: [ +681 ms] [33/34] Linking CXX executable intermediates_do_not_run/busymark +:: [ ] [33/34] Install the project... +:: [ +10 ms] -- Install configuration: "Release" +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/typst +:: [ +171 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMarchen-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMusic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPersian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansShavian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNushu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansChakma-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsage-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMono-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansUgaritic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinagh-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLepcha-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeroitic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiLe-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElbasan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGrantha-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsmanya-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifAhom-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuginese-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOgham-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDogra-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCuneiform-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTangut-Regular.ttf +:: [ +13 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBatak-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLydian-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Regular.ttf +:: [ +11 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAvestan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Regular.ttf +:: [ +7 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Bold.ttf +:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansManichaean-Regular.ttf +:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Bold.ttf +:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Bold.ttf +:: [ +7 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Regular.ttf +:: [ +7 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf +:: [ +8 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Bold.ttf +:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMongolian-Regular.ttf +:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Bold.ttf +:: [ +13 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSiddham-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf +:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Regular.ttf +:: [ +7 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBalinese-Regular.ttf +:: [ +8 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansYi-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGothic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSogdian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhoenician-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTirhuta-Regular.ttf +:: [ +10 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoyombo-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMultani-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLimbu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRejang-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRunic-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDeseret-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMro-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCypriot-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHatran-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearA-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansVai-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhojki-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Bold.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuhid-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSignWriting-Regular.ttf +:: [ +16 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMahajani-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCarian-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearB-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBrahmi-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols2-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSyriac-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewa-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPermic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElymaic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansModi-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Bold.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMandaic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldItalic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWancho-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMath-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Italic.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-BoldItalic.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagalog-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSharada-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTakri-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGrantha-Regular.ttf +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDuployan-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBassaVah-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLycian-Regular.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Bold.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNKo-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Bold.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSamaritan-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMiao-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNabataean-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKaithi-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanunoo-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiViet-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Bold.ttf +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCoptic-Regular.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-core/copyright +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-mono/copyright +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/d2 +:: [ +140 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/package-lock.json +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/license +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/THIRD_PARTY_NOTICES.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/PACKAGE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/LICENSE +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/PACKAGE +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/LICENSE +:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/LICENSE.txt +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/LICENSE.BSD +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/license +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/LICENSE.md +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/license.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.BSD +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.source-map +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/license +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/license +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/LICENSE +:: [ +40 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/LICENSE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/PACKAGE +:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/LICENSE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/PACKAGE +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/LICENSE +:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/PACKAGE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/PACKAGE +:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/LICENSE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/PACKAGE +:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/license.txt +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/PACKAGE +:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/LICENSE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/LICENSE +:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/PACKAGE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/PACKAGE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/LICENSE +:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64 +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/PACKAGE +:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/LICENSE +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/PACKAGE +:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/LICENSE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/license +:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/PACKAGE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/license +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/PACKAGE +:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/license +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/PACKAGE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/PACKAGE +:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/license +:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/license +:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/PACKAGE +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/PACKAGE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/render-engines.js +:: [ +165 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/scalar.js +:: [ +10 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/harness.html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/viz-global.js +:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/bootstrap.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.js +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.html +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/dictionaries.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_NO.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_hyph_NO.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_hyph_et_EE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_et_EE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB_thes.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_GB.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_lightproof_en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/WordNet_license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_US.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_AU.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_ZA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_CA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_US.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/README_fa_IR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/license-thes.readme +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_hyph_pt_BR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_pt_BR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-thes +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-dict.adoc +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-thes +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-dict +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-vi.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/README.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_en.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl_PL.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_ru_RU.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/README.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/LICENSE.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_th_uk_UA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_hyph_uk_UA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_uk_UA.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hyph_es.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_th_es.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hunspell_es.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/LICENSE.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_it_IT.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_hyph_it_IT.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.1st +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_license.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_README +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_th_it_IT.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_de_DE_frami.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.1.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv3 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.0.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_OASIS.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_thesaurus.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv2 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_hyph_de.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_extension_owner.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/README_ar.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/COPYING.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR/README_ko_KR.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/README_hi_IN.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/CHECKSUMS.sha256 +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/NOTICE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/VERSION +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/LICENSE +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/DEPENDENCIES.md +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/Apache-2.0.txt +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.MPL +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.myspell +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.hunspell +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.LESSER +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/busymark +:: [ ] -- Set non-toolchain portion of runtime path of "/project/parts/busymark/build/build/linux/x64/release/bundle/busymark" to "$ORIGIN/lib" +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/applications/io.busystack.busymark.desktop +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/metainfo/io.busystack.busymark.metainfo.xml +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/icudtl.dat +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libflutter_linux_gtk.so +:: [ +45 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libfile_selector_linux_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libgtk_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libscreen_retriever_linux_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/liburl_launcher_linux_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libwindow_manager_plugin.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libyaru_window_linux_plugin.so +:: [ ] -- Up-to-date: /project/parts/busymark/build/build/linux/x64/release/bundle/lib +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libbusymark_spellcheck_native.so +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libsqlite3.so +:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts/MaterialIcons-Regular.otf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/html.css +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/markdown.typ +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling/dictionaries.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding/busymark_logo.svg +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside/templates.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/stretch_effect.frag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/ink_sparkle.frag +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/UbuntuMono-Regular.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-R.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-RI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-M.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-MI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-B.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-LI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-BI.ttf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-L.ttf +:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/yaru_icons.otf +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NativeAssetsManifest.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/version.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NOTICES.Z +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/AssetManifest.bin +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/FontManifest.json +:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libapp.so +:: [ +42 ms] Building Linux application... (completed in 117.0s) +:: [ +9 ms] ✓ Built build/linux/x64/release/bundle/busymark +:: [ +1 ms] "flutter linux" took 117,807ms. +:: [ +2 ms] Running 1 shutdown hook +:: [ ] Shutdown hooks complete +:: [ ] exiting with code 0 +:: + cp -r build/linux/x64/release/bundle/busymark build/linux/x64/release/bundle/data build/linux/x64/release/bundle/lib build/linux/x64/release/bundle/libexec build/linux/x64/release/bundle/share /project/parts/busymark/install/ +Skipping pull for busymark (already ran) +Skipping build for busymark (already ran) +Staging busymark (required to build 'desktop-integration') +Building desktop-integration +Building gnome/sdk +:: + make -j16 GPU_WRAPPER=gpu-2404-wrapper +:: make: 'Makefile' is up to date. +:: + make -j16 install GPU_WRAPPER=gpu-2404-wrapper DESTDIR=/project/parts/gnome/sdk/install +:: install -D -m755 "hooks-configure-fonts" "/project/parts/gnome/sdk/install/snap/command-chain"/"hooks-configure-fonts" +:: install -D -m755 "desktop-launch" "/project/parts/gnome/sdk/install/snap/command-chain"/"desktop-launch" +:: install -D -m755 "run" "/project/parts/gnome/sdk/install/snap/command-chain"/"run" +:: install -D -m755 "gpu-2404-wrapper" "/project/parts/gnome/sdk/install/snap/command-chain"/"gpu-2404-wrapper" +Skipping stage for busymark (already ran) +Staging desktop-integration +Staging gnome/sdk +Priming busymark +Patch ELF file: 'busymark' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=['$ORIGIN/lib'] + Proposed rpath=['$ORIGIN/usr/lib/x86_64-linux-gnu', '$ORIGIN/lib', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libbusymark_spellcheck_native.so' + Current rpath=['$ORIGIN'] + Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libfile_selector_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libflutter_linux_gtk.so' + Current rpath=['$ORIGIN'] + Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libgtk_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libscreen_retriever_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libsqlite3.so' + Current rpath=['$ORIGIN'] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/liburl_launcher_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libwindow_manager_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'lib/libyaru_window_linux_plugin.so' + Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] + Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/addpart' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/choom' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/chrt' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/delpart' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/dmesg' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fallocate' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-cache' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-cat' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-conflist' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-list' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-match' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-pattern' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-query' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-scan' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/fc-validate' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/findmnt' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/flock' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gapplication' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gdbus' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/getopt' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gio' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/git' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/git-shell' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gresource' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gsettings' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/gtk-update-icon-cache' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/hardlink' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ionice' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ipcmk' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ipcrm' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ipcs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/last' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsblk' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lscpu' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsipc' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lslocks' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lslogins' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsmem' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/lsns' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/mcookie' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/mesg' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/more' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/mountpoint' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/namei' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/nsenter' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/partx' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/perl' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/perl5.38-x86_64-linux-gnu' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/perl5.38.2' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/prlimit' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/rename.ul' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/resizepart' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/rev' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/scalar' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/scp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/session-migration' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setarch' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setpriv' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setsid' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/setterm' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/sftp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-add' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-agent' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-keygen' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/ssh-keyscan' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/su' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/taskset' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/uclampset' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/unshare' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/update-mime-database' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/utmpdump' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/wdctl' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/bin/whereis' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-daemon' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-http-backend' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-http-fetch' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-http-push' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-imap-send' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-remote-http' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-sh-i18n--envsubst' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/git-shell' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/git-core/scalar' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/openssh/ssh-keysign' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/openssh/ssh-pkcs11-helper' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/openssh/ssh-sk-helper' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libDummyDevice.so.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libOniFile.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPS1080.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPSLink.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/blas/libblas.so.3.12.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libx11_plugin.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ati128.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ep9x.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gl.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gles2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i810.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i830.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_mach64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_matrox.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_neomagic.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nsc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nvidia.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_pxa3xx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_sis315.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_tdfx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_input_hub.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_joystick.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_keyboard.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_linux_input.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_lirc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_mutouch.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_penmount.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_ps2mouse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_serialmouse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_sonypi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_wm97xx_ts.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_zytronic.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBFont/libidirectfbfont_dgiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_dfiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_gif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_v4l.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBWindows/libidirectfbwindows_default.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IWater/libiwater_default.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_devmem.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_dummy.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_fbdev.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/wm/libdirectfbwm_default.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/dri/libdril_dri.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gbm/dri_gbm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ani.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-gif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-icns.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pnm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tga.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xbm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognomeproxy.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '$ORIGIN/../../libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsta52dec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaccurip.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaes.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaiff.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstanalyticsoverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaom.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasfmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstassrender.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiobuffersplit.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofxbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiolatency.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixmatrix.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiovisualizers.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautoconvert.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavtp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbayer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbluez.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbs2b.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbz2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstchromaprint.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstclosedcaption.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodec2json.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodecalpha.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodectimestamper.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoloreffects.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcolormanagement.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcurl.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdash.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdc1394.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstde265.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebugutilsbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdecklink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdirectfb.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtls.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtsdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvb.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsubenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsuboverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdlpcmdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdread.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdspu.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdsub.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaceoverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfbdevsink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfestival.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfieldanalysis.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflite.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfluidsynthmidi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfreeverb.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfrei0r.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgaudieffects.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgeometrictransform.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgme.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgsm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgtkwayland.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsthls.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3tag.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinsertbin.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinter.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterlace.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstipcpipeline.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivfparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivtc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjp2kdecimator.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstkms.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstladspa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlc3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstldac.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlegacyrawparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibav.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../blas', '$ORIGIN/../lapack', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlv2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmidi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmodplug.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2dec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2enc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsdemux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsdemux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmplex.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmsdk.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmusepack.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmxf.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstneonhttpsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnetsim.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnvcodec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenal.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenaptx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenexr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenh264.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenjpeg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenmpt.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenni2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopusparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpcapparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpnm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstproxy.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqroverlay.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqsv.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrealmedia.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstremovesilence.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstresindvd.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrfbsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrist.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrsvg.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanagerbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtponvif.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsbc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsctp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsdpelem.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsegmentclip.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshm.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsid.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsiren.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmooth.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmoothstreaming.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsndfile.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoundtouch.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspandsp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeed.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrt.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrtp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsvtav1.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstswitchbin.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstteletext.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttimecode.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttranscode.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstttmlsubs.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstunixfd.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvcgadget.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvch264.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstv4l2codecs.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstva.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofiltersbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoframe_audiolevel.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideosignal.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvmnc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoaacenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoamrwbenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvulkan.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwaylandsink.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebp.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebrtc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwildmidi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx264.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx265.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4mdec.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzbar.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzxing.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libadwaita.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libmurrine.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libpixmap.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-am-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cedilla.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cyrillic-translit.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-inuktitut.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ipa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-multipress.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-thai.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-er.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-viqr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-xim.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-lpr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-test.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '$ORIGIN/../blas', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL.so.1.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libFLAC.so.12.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGL.so.1.7.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLESv2.so.2.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIex-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIlmThread-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libImath-3_1.so.29.8.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLLVM.so.20.1' + Current rpath=['$ORIGIN/../lib'] + Proposed rpath=['$ORIGIN/../lib', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLerc.so.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXR-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRCore-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenNI2.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.3000.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouch.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSvtAv1Enc.so.1.7.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libWildMidi.so.2.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libX11.so.6.4.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXau.so.6.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXext.so.6.4.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXi.so.6.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXss.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libZXing.so.2.2.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liba52-0.7.4.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaom.so.3.8.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasound.so.2.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libass.so.9.2.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasyncns.so.0.3.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.25209.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatspi.so.0.0.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-client.so.3.2.9' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-common.so.3.5.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavcodec.so.60.31.102' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavfilter.so.9.12.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/lapack', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavformat.so.60.16.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavutil.so.58.29.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbluray.so.2.4.3' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbs2b.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca.so.0.99.20' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo-gobject.so.2.11800.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo.so.2.11800.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_interface.so.0.10.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdio.so.19.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libchromaprint.so.1.5.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson.so.1.7.17' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcodec2.so.1.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcups.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.8.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdatrie.so.1.4.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdav1d.so.7.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdc1394.so.25.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdca.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libde265.so.0.1.8' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdecor-0.so.0.200.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdeflate.so.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirect-1.7.so.7.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirectfb-1.7.so.7.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.125.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.125.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdnav.so.4.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdread.so.8.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdw-0.190.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libepoxy.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad.so.2.11.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3.so.3.6.10' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lang.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_awb.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal16.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_rms.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_slt.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmulex.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_usenglish.so.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfluidsynth.so.3.2.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfontconfig.so.1.12.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libform.so.6.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeaptx.so.0.1.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreebl3.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfribidi.so.0.4.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfusion-1.7.so.7.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm.so.6.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm_compat.so.4.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.33' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.4200.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgme.so.0.6.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgpm.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgraphite2.so.3.2.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsm.so.1.0.19' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgssdp-1.6.so.0.106.3' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstadaptivedemux-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstanalytics-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbadaudio-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecparsers-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecs-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcuda-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstgl-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstinsertbin-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstisoff-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmpegts-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmse-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplay-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsctp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsturidownloader-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstva-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvulkan-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwayland-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtc-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtcnice-1.0.so.0.2402.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.33' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk2.0-0t64/gtk-query-immodules-2.0' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgudev-1.0.so.0.3.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-1.6.so.0.106.6' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-igd-1.6.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.60830.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy.so.1.0.7' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicui18n.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutu.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuuc.so.74.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2.2.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjack.so.0.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjbig.so.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjpeg.so.8.2.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.800.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl.so.0.7.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl_threads.so.0.7.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblber.so.2.0.200' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblc3.so.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblcms2.so.2.0.14' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldacBT_enc.so.2.0.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldap.so.2.0.200' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblilv-0.so.0.24.22' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblrdf.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libltc.so.11.2.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmbedcrypto.so.2.28.8' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx.so.1.35' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmjpegutils-2.1.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmodplug.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmp3lame.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpcdec.so.6.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2.so.0.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2encpp-2.1.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpg123.so.0.48.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmplex2-2.1.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmysofa.so.1.3.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libncurses.so.6.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libneon.so.27.6.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnghttp2.so.14.26.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnice.so.10.13.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnorm.so.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnspr4.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnss3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssckbi.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssdbm3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssutil3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnuma.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libogg.so.0.8.5' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenal.so.1.23.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenh264.so.2.4.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenjp2.so.2.5.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenmpt.so.0.4.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopus.so.0.9.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.38.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libperl.so.5.38.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpgm-5.3.so.0.0.128' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpipewire-0.3.so.0.1005.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpixman-1.so.0.42.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplacebo.so.338' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplc4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplds4.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpocketsphinx.so.3.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/lapack', '$ORIGIN/blas', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpostproc.so.57.3.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy/libpxbackend-1.0.so' + Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy.so.0.5.4' + Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] + Proposed rpath=['$ORIGIN/libproxy', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpsl.so.5.3.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse-simple.so.0.1.1' + Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse.so.0.24.2' + Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] + Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libqrencode.so.4.1.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librabbitmq.so.4.5.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraptor2.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librav1e.so.0.7.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraw1394.so.11.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librist.so.4.3.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librtmp.so.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/librubberband.so.2.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsamplerate.so.0.2.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsbc.so.1.3.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsensors.so.5.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libserd-0.so.0.32.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsharpyuv.so.0.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshine.so.3.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsidplay.so.1.0.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libslang.so.2.3.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsmime3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsnappy.so.1.1.10' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndfile.so.1.0.37' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndio.so.7.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsodium.so.23.3.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoftokn3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsord-0.so.0.16.16' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoup-3.0.so.0.7.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoxr.so.0.1.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspandsp.so.2.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspeex.so.1.5.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/pulseaudio', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN/lapack', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsratom-0.so.0.6.16' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrt-gnutls.so.1.5.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrtp2.so.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh-gcrypt.so.4.9.6' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh.so.4.9.6' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssl3.so' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswresample.so.4.12.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswscale.so.7.5.100' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libthai.so.0.3.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheora.so.0.3.10' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoradec.so.1.1.4' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoraenc.so.1.1.2' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtiff.so.6.0.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtwolame.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libudfread.so.0.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunibreak.so.5.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind.so.8.0.1' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libusb-1.0.so.0.4.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/plugins/libv4l-mplane.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l2convert.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l1.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l2.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov511-decomp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov518-decomp' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-drm.so.2.2000.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-x11.so.2.2000.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva.so.2.2000.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvdpau.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvidstab.so.1.1' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-aacenc.so.0.0.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-amrwbenc.so.0.0.4' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbis.so.0.4.9' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisenc.so.2.0.12' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisfile.so.3.3.8' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpl.so.2.9' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpx.so.9.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvulkan.so.1.3.275' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebp.so.7.1.8' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebpmux.so.3.0.13' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebrtc_audio_processing.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx264.so.164' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx265.so.199' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xkb.so.1.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so.0.0.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxml2.so.2.9.14' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxslt.so.1.1.39' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxvidcore.so.4.3' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libyajl.so.2.1.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzbar.so.0.3.0' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzimg.so.2.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzix-0.so.0.4.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzmq.so.5.2.5' + Current rpath=[] + Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi.so.0.13.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_h264la_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevc_fei_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevcd_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevce_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp8d_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9d_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9e_hw64.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/B/B.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Bzip2/Bzip2.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Zlib/Zlib.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Cwd/Cwd.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/DB_File/DB_File.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Data/Dumper/Dumper.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Devel/Peek/Peek.so' +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/MD5/MD5.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/SHA/SHA.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Byte/Byte.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/CN/CN.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/EBCDIC/EBCDIC.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Encode.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/JP/JP.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/KR/KR.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Symbol/Symbol.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/TW/TW.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Unicode/Unicode.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/File/Glob/Glob.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Filter/Util/Call/Call.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/GDBM_File/GDBM_File.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/FieldHash/FieldHash.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/I18N/Langinfo/Langinfo.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IO/IO.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IPC/SysV/SysV.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/List/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/MIME/Base64/Base64.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Math/BigInt/FastCalc/FastCalc.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/NDBM_File/NDBM_File.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/ODBM_File/ODBM_File.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Opcode/Opcode.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/POSIX/POSIX.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/encoding/encoding.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/mmap/mmap.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/scalar/scalar.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/via/via.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/SDBM_File/SDBM_File.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Socket/Socket.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Storable/Storable.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Hostname/Hostname.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Syslog/Syslog.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/HiRes/HiRes.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/Piece/Piece.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Collate/Collate.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Normalize/Normalize.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/attributes/attributes.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/mro/mro.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/re/re.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/shared/shared.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/threads.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Cwd/Cwd.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/File/Glob/Glob.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Hash/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/IO/IO.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/List/Util/Util.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/POSIX/POSIX.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Socket/Socket.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/attributes/attributes.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/re/re.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-16.1.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/sasl2/libsasldb.so.2.0.25' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-null.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-webrtc.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/alsa/libspa-alsa.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audioconvert/libspa-audioconvert.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiomixer/libspa-audiomixer.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiotestsrc/libspa-audiotestsrc.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/avb/libspa-avb.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/control/libspa-control.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-dbus.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-journal.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/test/libspa-test.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/v4l2/libspa-v4l2.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videoconvert/libspa-videoconvert.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videotestsrc/libspa-videotestsrc.so' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/vdpau/libvdpau_trace.so.1.0.0' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/lib/x86_64-linux-gnu/vpl/libvpl_wayland.so' + Current rpath=[] + Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/libexec/dconf-service' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/libexec/glib-pacrunner' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '$ORIGIN/../lib/x86_64-linux-gnu/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/agetty' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blkdiscard' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blkid' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blkzone' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/blockdev' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/chcpu' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/chmem' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/ctrlaltdel' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/findfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsck' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsck.cramfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsck.minix' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fsfreeze' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/fstrim' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/isosize' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/ldattach' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs.bfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs.cramfs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkfs.minix' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/mkswap' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/pivot_root' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/readprofile' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/rtcwake' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/runuser' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/sulogin' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/swaplabel' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/switch_root' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/wipefs' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Patch ELF file: 'usr/sbin/zramctl' + Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' + Current rpath=[] + Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] +Priming desktop-integration +:: + craftctl default +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/busymark +:: + existing_rpath='$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/busymark +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libapp.so +:: + existing_rpath= +:: + '[' -n '' ']' +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libbusymark_spellcheck_native.so +:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libbusymark_spellcheck_native.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libfile_selector_linux_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libfile_selector_linux_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libflutter_linux_gtk.so +:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libflutter_linux_gtk.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libgtk_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libgtk_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libscreen_retriever_linux_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libscreen_retriever_linux_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libsqlite3.so +:: + existing_rpath='$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libsqlite3.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/liburl_launcher_linux_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/liburl_launcher_linux_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libwindow_manager_plugin.so +:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libwindow_manager_plugin.so +:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so +:: ++ patchelf --print-rpath /project/prime/lib/libyaru_window_linux_plugin.so +:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' +:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' +:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libyaru_window_linux_plugin.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + continue +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 +:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 ']' +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs +:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs ']' +:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs +:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs ']' +:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs +:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs ']' +:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs +:: + IFS= +:: + read -r runtime_path +:: + case "$runtime_path" in +:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs +:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs ']' +:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs +:: + IFS= +:: + read -r runtime_path +:: + patchelf --set-rpath '$ORIGIN/lapack:$ORIGIN/blas:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0 +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0 /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0 +:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/librsvg-2.so.2 /project/prime/usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0 +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoKufiArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoKufiArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoMono-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoMusic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoNaskhArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoNaskhArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoRashiHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoRashiHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArmenian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArmenian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAvestan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBalinese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBalinese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBamum-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBamum-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBassaVah-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBatak-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBengali-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBengali-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBrahmi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBuginese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBuhid-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCarian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansChakma-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCham-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCherokee-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCherokee-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCoptic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCuneiform-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCypriot-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDeseret-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDevanagari-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDevanagari-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDuployan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansElbasan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansElymaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEthiopic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEthiopic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGeorgian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGeorgian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGothic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGrantha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGujarati-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGujarati-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanunoo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHatran-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansJavanese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansJavanese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKaithi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKannada-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKannada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKayahLi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKayahLi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhmer-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhmer-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhojki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLepcha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLimbu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLinearA-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLinearB-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLisu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLisu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLycian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLydian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMahajani-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMalayalam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMalayalam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMandaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansManichaean-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMarchen-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMath-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeroitic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMiao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansModi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMongolian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMono-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMono-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMro-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMultani-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMyanmar-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMyanmar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNKo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNabataean-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNewa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNushu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOgham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOlChiki-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOlChiki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldItalic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldPermic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldPersian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOriya-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOriya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOsage-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOsmanya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPhoenician-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansRejang-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansRunic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSamaritan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSharada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansShavian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSiddham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSignWriting-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSinhala-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSinhala-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSogdian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoyombo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSundanese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSundanese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols2-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSyriac-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTagalog-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiLe-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiTham-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiTham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiViet-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTakri-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamil-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamil-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTelugu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTelugu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThaana-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThaana-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinagh-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTirhuta-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansUgaritic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansVai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansWancho-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansYi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifAhom-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifArmenian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifArmenian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBalinese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBengali-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBengali-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDogra-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGrantha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGujarati-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGujarati-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKannada-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKannada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhmer-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhmer-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhojki-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhojki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifSinhala-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifSinhala-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamil-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamil-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTangut-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTelugu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTelugu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTibetan-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTibetan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifYezidi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifYezidi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf +:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf +:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf +:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf +:: + cmp -s /project/prime/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf +:: + rm -rf /project/prime/share/busymark/fonts +:: + ln -s ../../usr/share/fonts/truetype/noto /project/prime/share/busymark/fonts +:: + mkdir -p /project/prime/share/themes /project/prime/share/icons +:: + for resource_kind in themes icons +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru +:: + resource_name=Yaru +:: + linked_resource=/project/prime/share/themes/Yaru +:: + rm -rf /project/prime/share/themes/Yaru +:: + ln -s ../../usr/share/themes/Yaru /project/prime/share/themes/Yaru +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-bark +:: + resource_name=Yaru-bark +:: + linked_resource=/project/prime/share/themes/Yaru-bark +:: + rm -rf /project/prime/share/themes/Yaru-bark +:: + ln -s ../../usr/share/themes/Yaru-bark /project/prime/share/themes/Yaru-bark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-bark-dark +:: + resource_name=Yaru-bark-dark +:: + linked_resource=/project/prime/share/themes/Yaru-bark-dark +:: + rm -rf /project/prime/share/themes/Yaru-bark-dark +:: + ln -s ../../usr/share/themes/Yaru-bark-dark /project/prime/share/themes/Yaru-bark-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-blue +:: + resource_name=Yaru-blue +:: + linked_resource=/project/prime/share/themes/Yaru-blue +:: + rm -rf /project/prime/share/themes/Yaru-blue +:: + ln -s ../../usr/share/themes/Yaru-blue /project/prime/share/themes/Yaru-blue +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-blue-dark +:: + resource_name=Yaru-blue-dark +:: + linked_resource=/project/prime/share/themes/Yaru-blue-dark +:: + rm -rf /project/prime/share/themes/Yaru-blue-dark +:: + ln -s ../../usr/share/themes/Yaru-blue-dark /project/prime/share/themes/Yaru-blue-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-dark +:: + resource_name=Yaru-dark +:: + linked_resource=/project/prime/share/themes/Yaru-dark +:: + rm -rf /project/prime/share/themes/Yaru-dark +:: + ln -s ../../usr/share/themes/Yaru-dark /project/prime/share/themes/Yaru-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-dark-hdpi +:: + resource_name=Yaru-dark-hdpi +:: + linked_resource=/project/prime/share/themes/Yaru-dark-hdpi +:: + rm -rf /project/prime/share/themes/Yaru-dark-hdpi +:: + ln -s ../../usr/share/themes/Yaru-dark-hdpi /project/prime/share/themes/Yaru-dark-hdpi +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-dark-xhdpi +:: + resource_name=Yaru-dark-xhdpi +:: + linked_resource=/project/prime/share/themes/Yaru-dark-xhdpi +:: + rm -rf /project/prime/share/themes/Yaru-dark-xhdpi +:: + ln -s ../../usr/share/themes/Yaru-dark-xhdpi /project/prime/share/themes/Yaru-dark-xhdpi +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-hdpi +:: + resource_name=Yaru-hdpi +:: + linked_resource=/project/prime/share/themes/Yaru-hdpi +:: + rm -rf /project/prime/share/themes/Yaru-hdpi +:: + ln -s ../../usr/share/themes/Yaru-hdpi /project/prime/share/themes/Yaru-hdpi +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-magenta +:: + resource_name=Yaru-magenta +:: + linked_resource=/project/prime/share/themes/Yaru-magenta +:: + rm -rf /project/prime/share/themes/Yaru-magenta +:: + ln -s ../../usr/share/themes/Yaru-magenta /project/prime/share/themes/Yaru-magenta +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-magenta-dark +:: + resource_name=Yaru-magenta-dark +:: + linked_resource=/project/prime/share/themes/Yaru-magenta-dark +:: + rm -rf /project/prime/share/themes/Yaru-magenta-dark +:: + ln -s ../../usr/share/themes/Yaru-magenta-dark /project/prime/share/themes/Yaru-magenta-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-olive +:: + resource_name=Yaru-olive +:: + linked_resource=/project/prime/share/themes/Yaru-olive +:: + rm -rf /project/prime/share/themes/Yaru-olive +:: + ln -s ../../usr/share/themes/Yaru-olive /project/prime/share/themes/Yaru-olive +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-olive-dark +:: + resource_name=Yaru-olive-dark +:: + linked_resource=/project/prime/share/themes/Yaru-olive-dark +:: + rm -rf /project/prime/share/themes/Yaru-olive-dark +:: + ln -s ../../usr/share/themes/Yaru-olive-dark /project/prime/share/themes/Yaru-olive-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-prussiangreen +:: + resource_name=Yaru-prussiangreen +:: + linked_resource=/project/prime/share/themes/Yaru-prussiangreen +:: + rm -rf /project/prime/share/themes/Yaru-prussiangreen +:: + ln -s ../../usr/share/themes/Yaru-prussiangreen /project/prime/share/themes/Yaru-prussiangreen +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-prussiangreen-dark +:: + resource_name=Yaru-prussiangreen-dark +:: + linked_resource=/project/prime/share/themes/Yaru-prussiangreen-dark +:: + rm -rf /project/prime/share/themes/Yaru-prussiangreen-dark +:: + ln -s ../../usr/share/themes/Yaru-prussiangreen-dark /project/prime/share/themes/Yaru-prussiangreen-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-purple +:: + resource_name=Yaru-purple +:: + linked_resource=/project/prime/share/themes/Yaru-purple +:: + rm -rf /project/prime/share/themes/Yaru-purple +:: + ln -s ../../usr/share/themes/Yaru-purple /project/prime/share/themes/Yaru-purple +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-purple-dark +:: + resource_name=Yaru-purple-dark +:: + linked_resource=/project/prime/share/themes/Yaru-purple-dark +:: + rm -rf /project/prime/share/themes/Yaru-purple-dark +:: + ln -s ../../usr/share/themes/Yaru-purple-dark /project/prime/share/themes/Yaru-purple-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-red +:: + resource_name=Yaru-red +:: + linked_resource=/project/prime/share/themes/Yaru-red +:: + rm -rf /project/prime/share/themes/Yaru-red +:: + ln -s ../../usr/share/themes/Yaru-red /project/prime/share/themes/Yaru-red +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-red-dark +:: + resource_name=Yaru-red-dark +:: + linked_resource=/project/prime/share/themes/Yaru-red-dark +:: + rm -rf /project/prime/share/themes/Yaru-red-dark +:: + ln -s ../../usr/share/themes/Yaru-red-dark /project/prime/share/themes/Yaru-red-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-sage +:: + resource_name=Yaru-sage +:: + linked_resource=/project/prime/share/themes/Yaru-sage +:: + rm -rf /project/prime/share/themes/Yaru-sage +:: + ln -s ../../usr/share/themes/Yaru-sage /project/prime/share/themes/Yaru-sage +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-sage-dark +:: + resource_name=Yaru-sage-dark +:: + linked_resource=/project/prime/share/themes/Yaru-sage-dark +:: + rm -rf /project/prime/share/themes/Yaru-sage-dark +:: + ln -s ../../usr/share/themes/Yaru-sage-dark /project/prime/share/themes/Yaru-sage-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-viridian +:: + resource_name=Yaru-viridian +:: + linked_resource=/project/prime/share/themes/Yaru-viridian +:: + rm -rf /project/prime/share/themes/Yaru-viridian +:: + ln -s ../../usr/share/themes/Yaru-viridian /project/prime/share/themes/Yaru-viridian +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-viridian-dark +:: + resource_name=Yaru-viridian-dark +:: + linked_resource=/project/prime/share/themes/Yaru-viridian-dark +:: + rm -rf /project/prime/share/themes/Yaru-viridian-dark +:: + ln -s ../../usr/share/themes/Yaru-viridian-dark /project/prime/share/themes/Yaru-viridian-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/themes/Yaru-xhdpi +:: + resource_name=Yaru-xhdpi +:: + linked_resource=/project/prime/share/themes/Yaru-xhdpi +:: + rm -rf /project/prime/share/themes/Yaru-xhdpi +:: + ln -s ../../usr/share/themes/Yaru-xhdpi /project/prime/share/themes/Yaru-xhdpi +:: + for resource_kind in themes icons +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru +:: + resource_name=Yaru +:: + linked_resource=/project/prime/share/icons/Yaru +:: + rm -rf /project/prime/share/icons/Yaru +:: + ln -s ../../usr/share/icons/Yaru /project/prime/share/icons/Yaru +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-bark +:: + resource_name=Yaru-bark +:: + linked_resource=/project/prime/share/icons/Yaru-bark +:: + rm -rf /project/prime/share/icons/Yaru-bark +:: + ln -s ../../usr/share/icons/Yaru-bark /project/prime/share/icons/Yaru-bark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-bark-dark +:: + resource_name=Yaru-bark-dark +:: + linked_resource=/project/prime/share/icons/Yaru-bark-dark +:: + rm -rf /project/prime/share/icons/Yaru-bark-dark +:: + ln -s ../../usr/share/icons/Yaru-bark-dark /project/prime/share/icons/Yaru-bark-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-blue +:: + resource_name=Yaru-blue +:: + linked_resource=/project/prime/share/icons/Yaru-blue +:: + rm -rf /project/prime/share/icons/Yaru-blue +:: + ln -s ../../usr/share/icons/Yaru-blue /project/prime/share/icons/Yaru-blue +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-blue-dark +:: + resource_name=Yaru-blue-dark +:: + linked_resource=/project/prime/share/icons/Yaru-blue-dark +:: + rm -rf /project/prime/share/icons/Yaru-blue-dark +:: + ln -s ../../usr/share/icons/Yaru-blue-dark /project/prime/share/icons/Yaru-blue-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-dark +:: + resource_name=Yaru-dark +:: + linked_resource=/project/prime/share/icons/Yaru-dark +:: + rm -rf /project/prime/share/icons/Yaru-dark +:: + ln -s ../../usr/share/icons/Yaru-dark /project/prime/share/icons/Yaru-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-magenta +:: + resource_name=Yaru-magenta +:: + linked_resource=/project/prime/share/icons/Yaru-magenta +:: + rm -rf /project/prime/share/icons/Yaru-magenta +:: + ln -s ../../usr/share/icons/Yaru-magenta /project/prime/share/icons/Yaru-magenta +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-magenta-dark +:: + resource_name=Yaru-magenta-dark +:: + linked_resource=/project/prime/share/icons/Yaru-magenta-dark +:: + rm -rf /project/prime/share/icons/Yaru-magenta-dark +:: + ln -s ../../usr/share/icons/Yaru-magenta-dark /project/prime/share/icons/Yaru-magenta-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-olive +:: + resource_name=Yaru-olive +:: + linked_resource=/project/prime/share/icons/Yaru-olive +:: + rm -rf /project/prime/share/icons/Yaru-olive +:: + ln -s ../../usr/share/icons/Yaru-olive /project/prime/share/icons/Yaru-olive +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-olive-dark +:: + resource_name=Yaru-olive-dark +:: + linked_resource=/project/prime/share/icons/Yaru-olive-dark +:: + rm -rf /project/prime/share/icons/Yaru-olive-dark +:: + ln -s ../../usr/share/icons/Yaru-olive-dark /project/prime/share/icons/Yaru-olive-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-prussiangreen +:: + resource_name=Yaru-prussiangreen +:: + linked_resource=/project/prime/share/icons/Yaru-prussiangreen +:: + rm -rf /project/prime/share/icons/Yaru-prussiangreen +:: + ln -s ../../usr/share/icons/Yaru-prussiangreen /project/prime/share/icons/Yaru-prussiangreen +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-prussiangreen-dark +:: + resource_name=Yaru-prussiangreen-dark +:: + linked_resource=/project/prime/share/icons/Yaru-prussiangreen-dark +:: + rm -rf /project/prime/share/icons/Yaru-prussiangreen-dark +:: + ln -s ../../usr/share/icons/Yaru-prussiangreen-dark /project/prime/share/icons/Yaru-prussiangreen-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-purple +:: + resource_name=Yaru-purple +:: + linked_resource=/project/prime/share/icons/Yaru-purple +:: + rm -rf /project/prime/share/icons/Yaru-purple +:: + ln -s ../../usr/share/icons/Yaru-purple /project/prime/share/icons/Yaru-purple +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-purple-dark +:: + resource_name=Yaru-purple-dark +:: + linked_resource=/project/prime/share/icons/Yaru-purple-dark +:: + rm -rf /project/prime/share/icons/Yaru-purple-dark +:: + ln -s ../../usr/share/icons/Yaru-purple-dark /project/prime/share/icons/Yaru-purple-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-red +:: + resource_name=Yaru-red +:: + linked_resource=/project/prime/share/icons/Yaru-red +:: + rm -rf /project/prime/share/icons/Yaru-red +:: + ln -s ../../usr/share/icons/Yaru-red /project/prime/share/icons/Yaru-red +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-red-dark +:: + resource_name=Yaru-red-dark +:: + linked_resource=/project/prime/share/icons/Yaru-red-dark +:: + rm -rf /project/prime/share/icons/Yaru-red-dark +:: + ln -s ../../usr/share/icons/Yaru-red-dark /project/prime/share/icons/Yaru-red-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-sage +:: + resource_name=Yaru-sage +:: + linked_resource=/project/prime/share/icons/Yaru-sage +:: + rm -rf /project/prime/share/icons/Yaru-sage +:: + ln -s ../../usr/share/icons/Yaru-sage /project/prime/share/icons/Yaru-sage +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-sage-dark +:: + resource_name=Yaru-sage-dark +:: + linked_resource=/project/prime/share/icons/Yaru-sage-dark +:: + rm -rf /project/prime/share/icons/Yaru-sage-dark +:: + ln -s ../../usr/share/icons/Yaru-sage-dark /project/prime/share/icons/Yaru-sage-dark +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-viridian +:: + resource_name=Yaru-viridian +:: + linked_resource=/project/prime/share/icons/Yaru-viridian +:: + rm -rf /project/prime/share/icons/Yaru-viridian +:: + ln -s ../../usr/share/icons/Yaru-viridian /project/prime/share/icons/Yaru-viridian +:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* +:: + test -e /project/prime/usr/share/icons/Yaru-viridian-dark +:: + resource_name=Yaru-viridian-dark +:: + linked_resource=/project/prime/share/icons/Yaru-viridian-dark +:: + rm -rf /project/prime/share/icons/Yaru-viridian-dark +:: + ln -s ../../usr/share/icons/Yaru-viridian-dark /project/prime/share/icons/Yaru-viridian-dark +:: + install -Dm644 /project/linux/io.busystack.busymark.desktop /project/prime/share/applications/io.busystack.busymark.desktop +:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/meta/gui/io.busystack.busymark.svg +:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/meta/gui/icon.svg +:: + install -Dm644 /project/linux/io.busystack.busymark.metainfo.xml /project/prime/share/metainfo/io.busystack.busymark.metainfo.xml +:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg +Priming gnome/sdk +Packing... +Reading snap metadata... +Running linters... +Running linter: classic +Running linter: library +Lint warnings: +- library: libEGL_mesa.so.0: unused library 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libGLX_mesa.so.0: unused library 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libOpenEXRUtil-3_1.so.30: unused library 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libSoundTouchDll.so.1: unused library 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libXtst.so.6: unused library 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libaa.so.1: unused library 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libavc1394.so.0: unused library 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcaca++.so.0: unused library 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcdda_paranoia.so.0: unused library 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcjson_utils.so.1: unused library 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcolord.so.2: unused library 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libcolordprivate.so.2: unused library 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libdconf.so.1: unused library 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libdv.so.4: unused library 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libexslt.so.0: unused library 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfaad_drm.so.2: unused library 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfftw3_omp.so.3: unused library 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfftw3_threads.so.3: unused library 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libflite_cmu_grapheme_lang.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libflite_cmu_grapheme_lex.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libflite_cmu_indic_lex.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libflite_cmu_time_awb.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libform.so.6: unused library 'usr/lib/x86_64-linux-gnu/libform.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfreebl3.so: unused library 'usr/lib/x86_64-linux-gnu/libfreebl3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libfreeblpriv3.so: unused library 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libgstdxva-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libgstplayer-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libgsttranscoder-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libhwy_contrib.so.1: unused library 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libhwy_test.so.1: unused library 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libicuio.so.74: unused library 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libicutest.so.74: unused library 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libiec61883.so.0: unused library 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libjacknet.so.0: unused library 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libjackserver.so.0: unused library 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libmenu.so.6: unused library 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libmfx-tracer.so.1: unused library 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libmfxhw64.so.1: unused library 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libmpeg2convert.so.0: unused library 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libnssckbi.so: unused library 'usr/lib/x86_64-linux-gnu/libnssckbi.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libnssdbm3.so: unused library 'usr/lib/x86_64-linux-gnu/libnssdbm3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: liborc-test-0.4.so.0: unused library 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libpanel.so.6: unused library 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: librom1394.so.0: unused library 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libshout.so.3: unused library 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libsmime3.so: unused library 'usr/lib/x86_64-linux-gnu/libsmime3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libsoftokn3.so: unused library 'usr/lib/x86_64-linux-gnu/libsoftokn3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libsphinxad.so.3: unused library 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libssl3.so: unused library 'usr/lib/x86_64-linux-gnu/libssl3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libtag.so.1: unused library 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libunwind-coredump.so.0: unused library 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libunwind-ptrace.so.0: unused library 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libunwind-x86_64.so.8: unused library 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libvisual-0.4.so.0: unused library 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libwavpack.so.1: unused library 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +- library: libzvbi-chains.so.0: unused library 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) +Creating snap package... +Packed busymark_0.6.1_amd64.snap diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-confinement.log b/delivery/nextcloud-explicit-adoption/evidence/snap-confinement.log new file mode 100644 index 00000000..5986a8c8 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-confinement.log @@ -0,0 +1,7 @@ + snap.busymark.busymark + snap.busymark.hook.configure +browser-support busymark:browser-support :browser-support - +network busymark:network :network - +password-manager-service busymark:password-manager-service :password-manager-service manual +wayland busymark:wayland :wayland - +x11 busymark:x11 :x11 - diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-confirmation.png b/delivery/nextcloud-explicit-adoption/evidence/snap-confirmation.png new file mode 100644 index 0000000000000000000000000000000000000000..59400fbd07acdc56eedc14f8d66955a06390275b GIT binary patch literal 108227 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-connected-state.json b/delivery/nextcloud-explicit-adoption/evidence/snap-connected-state.json new file mode 100644 index 00000000..0ac35519 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-connected-state.json @@ -0,0 +1,40 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 184, + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791373094, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "base": { + "id": 184, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791373094, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + } + ], + "attachments": [] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-connected.png b/delivery/nextcloud-explicit-adoption/evidence/snap-connected.png new file mode 100644 index 0000000000000000000000000000000000000000..48c4904aab656dfa8aedeb6a4c9e965e324faecc GIT binary patch literal 22104 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-newer-edit.json b/delivery/nextcloud-explicit-adoption/evidence/snap-newer-edit.json new file mode 100644 index 00000000..04710809 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-newer-edit.json @@ -0,0 +1,132 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 184, + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791373094, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "base": { + "id": 184, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791373094, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + }, + { + "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": null, + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n\nNewer local Snap edit", + "title": "New note", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 0, + "etag": null, + "base": null, + "remote": { + "id": 223, + "etag": "4f254d7cd882c0d2fc128669b80b3301", + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin]()\n", + "title": "New note (3)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791375017, + "error": false + }, + "creationAttempt": { + "id": "0200f54d-ee84-400d-bba3-f77e0d503780", + "revision": 44, + "localContent": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", + "wireBody": "{\"content\":\"BusyMark GUI submitted Snap\\n\\n[attachment.bin]()\\n\",\"title\":\"New note\",\"category\":\"\",\"favorite\":false,\"modified\":1791375017}", + "knownServerIds": [ + 89, + 90, + 98, + 94, + 183, + 184 + ], + "candidateServerIds": [ + 223 + ], + "separateNoteLocalId": null + }, + "revision": 66, + "ackRevision": 0, + "editorRevision": 66, + "editorContentDigest": "11546c64358c13cb52bf1ce8bfc63be9bc7321bf857b9e43267af9c54a96e47b", + "syncState": "creationUncertain", + "errorMessage": "Possible server notes were found. Review and deliberately use one or create a separate note." + }, + { + "localId": "4360e315-af41-48f7-b1f1-d7e8ee63f592", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 223, + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin]()\n", + "title": "New note (3)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791375017, + "etag": "4f254d7cd882c0d2fc128669b80b3301", + "base": { + "id": 223, + "etag": "4f254d7cd882c0d2fc128669b80b3301", + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin]()\n", + "title": "New note (3)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791375017, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + } + ], + "attachments": [ + { + "id": "2875b68e-250c-41f9-a951-b4b85a792096", + "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "filename": "attachment.bin", + "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", + "remotePath": null, + "state": "pending", + "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "byteCount": 1024 + } + ] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-draft.json b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-draft.json new file mode 100644 index 00000000..58210cb6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-draft.json @@ -0,0 +1,62 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 184, + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791373094, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "base": { + "id": 184, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791373094, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + }, + { + "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": null, + "content": "BusyMark GUI submitted Snap", + "title": "New note", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 0, + "etag": null, + "base": null, + "remote": null, + "creationAttempt": null, + "revision": 43, + "ackRevision": 0, + "editorRevision": 43, + "editorContentDigest": "b65bda3f7ead8963e4dece34cd2263a81d40a88a1afd3846e1ee6b2d698ce335", + "syncState": "offline", + "errorMessage": "Nextcloud is unreachable. Local changes are preserved." + } + ], + "attachments": [] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-restarted.json b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-restarted.json new file mode 100644 index 00000000..35746cd9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-restarted.json @@ -0,0 +1,73 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 184, + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791373094, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "base": { + "id": 184, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791373094, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + }, + { + "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": null, + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", + "title": "New note", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 0, + "etag": null, + "base": null, + "remote": null, + "creationAttempt": null, + "revision": 44, + "ackRevision": 0, + "editorRevision": 44, + "editorContentDigest": "8972d11ea6e3b68a3cac10228de42f8871e1b91f837b757252595ce509af3247", + "syncState": "offline", + "errorMessage": "Nextcloud is unreachable. Local changes are preserved." + } + ], + "attachments": [ + { + "id": "2875b68e-250c-41f9-a951-b4b85a792096", + "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "filename": "attachment.bin", + "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", + "remotePath": null, + "state": "pending", + "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "byteCount": 1024 + } + ] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.json b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.json new file mode 100644 index 00000000..35746cd9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.json @@ -0,0 +1,73 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 184, + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791373094, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "base": { + "id": 184, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791373094, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + }, + { + "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": null, + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", + "title": "New note", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 0, + "etag": null, + "base": null, + "remote": null, + "creationAttempt": null, + "revision": 44, + "ackRevision": 0, + "editorRevision": 44, + "editorContentDigest": "8972d11ea6e3b68a3cac10228de42f8871e1b91f837b757252595ce509af3247", + "syncState": "offline", + "errorMessage": "Nextcloud is unreachable. Local changes are preserved." + } + ], + "attachments": [ + { + "id": "2875b68e-250c-41f9-a951-b4b85a792096", + "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "filename": "attachment.bin", + "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", + "remotePath": null, + "state": "pending", + "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "byteCount": 1024 + } + ] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.png b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.png new file mode 100644 index 0000000000000000000000000000000000000000..b103355a41a3663eda07891cd561502ff3edaeaa GIT binary patch literal 80058 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 + from snapcraft.application import main +ModuleNotFoundError: No module named 'snapcraft' diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-restart-checks.json b/delivery/nextcloud-explicit-adoption/evidence/snap-restart-checks.json new file mode 100644 index 00000000..fe353efa --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-restart-checks.json @@ -0,0 +1,8 @@ +{ + "ok": true, + "stableLocalId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "serverNoteId": 223, + "acknowledgedRevision": 67, + "accountRestored": true, + "attachmentBytesRetained": 1024 +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-final.log b/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-final.log new file mode 100644 index 00000000..88aa016c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-final.log @@ -0,0 +1,42 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:30691): IBUS-WARNING **: 12:34:47.165: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:30691): WARNING **: 12:34:47.762: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:30691): WARNING **: 12:34:47.763: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:30794): GLib-GIO-WARNING **: 12:34:54.778: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:30815): GLib-GIO-WARNING **: 12:34:55.617: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox +busymark 0.6.1 installed +Warning: Schema “org.gnome.system.locale” has path “/system/locale/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy” has path “/system/proxy/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.http” has path “/system/proxy/http/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.https” has path “/system/proxy/https/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.ftp” has path “/system/proxy/ftp/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +Warning: Schema “org.gnome.system.proxy.socks” has path “/system/proxy/socks/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:32025): IBUS-WARNING **: 12:38:20.868: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:32025): WARNING **: 12:38:21.609: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:32025): WARNING **: 12:38:21.611: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:32402): GLib-GIO-WARNING **: 12:38:28.373: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:32425): GLib-GIO-WARNING **: 12:38:30.913: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:32769): IBUS-WARNING **: 12:39:42.078: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:32769): WARNING **: 12:39:42.926: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:32769): WARNING **: 12:39:42.929: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:32869): GLib-GIO-WARNING **: 12:39:51.109: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:32888): GLib-GIO-WARNING **: 12:39:52.716: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:33247): GLib-GIO-WARNING **: 12:41:39.221: Error releasing name io.busystack.busymark.Sandboxed.WebProcess-f07c2334-05e4-4980-9445-a7ed10b0c09e: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.48" (uid=1000 pid=33247 comm="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitWeb" label="snap.busymark.busymark (enforce)") interface="org.freedesktop.DBus" member="ReleaseName" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-first-timeout.log b/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-first-timeout.log new file mode 100644 index 00000000..2ec1d6b2 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-first-timeout.log @@ -0,0 +1,11 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:30203): IBUS-WARNING **: 12:30:09.290: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:30203): WARNING **: 12:30:09.865: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:30203): WARNING **: 12:30:09.866: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:30359): GLib-GIO-WARNING **: 12:30:16.141: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:30379): GLib-GIO-WARNING **: 12:30:17.497: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-source-identity.json b/delivery/nextcloud-explicit-adoption/evidence/snap-source-identity.json new file mode 100644 index 00000000..6dea8c03 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-source-identity.json @@ -0,0 +1,577 @@ +{ + "ok": true, + "compilationInputCount": 568, + "recipeSha256": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", + "snapSha256": "2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce", + "builder": "Snapcraft 8.11.1, official core24 image, clean --destructive-mode then pack --destructive-mode, actual unchanged recipe", + "buildSourceFiles": { + "lib/main.dart": "f7bb63a6768713a00033b93c91f80327ead164aa9f52058b1c4bc1bf0309a0f9", + "lib/l10n/generated/app_localizations_zh.dart": "2cf6059c3922729f1e46e80414247938afc77f7b6a7b5b7e11b861151f30be5f", + "lib/l10n/generated/app_localizations_vi.dart": "c110fd1e4ed46d432e0fb8c2b0cc762cebba9313a2766a05ed04d164a7ae8909", + "lib/l10n/generated/app_localizations_fr.dart": "00400058186b9ed58239cb556c447007a64b4eaeb19de3057569e5c272cd9df4", + "lib/l10n/generated/app_localizations_et.dart": "10313057337bbaaa7b89235bf3607e9640e5dceb8f77de9d906ed2eb514ab752", + "lib/l10n/generated/app_localizations_es.dart": "78e60f93f9ad461a0f243bf0536a5214f5628adce4936260f04afcf46bd85913", + "lib/l10n/generated/app_localizations_pt.dart": "c6ec16a359c7989a80a83194c787fe5e3c1a5e0ed96f0c771216efc6b39b5a9d", + "lib/l10n/generated/app_localizations.dart": "ad73e41dcc9acd860871b70703286e601e24cbfacb5851c55e0d33dc1faa2ab1", + "lib/l10n/generated/app_localizations_de.dart": "e76b9869523b23f187b8b1f5b988f72baddd71752cc23d16f93a8e3168c15b81", + "lib/l10n/generated/app_localizations_hi.dart": "a2449c0cc26fcde6ae975884e53cc7d708c8db1733be7e8a04736d86ff84036c", + "lib/l10n/generated/app_localizations_ko.dart": "961b04bab3e2775d85641d2a80b378a8ff57162852c195299d08baeb56b4783e", + "lib/l10n/generated/app_localizations_tr.dart": "ef69f4062b38801dc56c73f70ed189104812ffa7ff9457e08182f648ba54da0b", + "lib/l10n/generated/app_localizations_fa.dart": "693e8b9f77f44dcd60e6639e83617d22497462a1fea1112be0162c87c75ef362", + "lib/l10n/generated/app_localizations_uk.dart": "9de3a293fe201fe94472c8488435a274ade0e8ae9f839f7cf828ff83a476aa9c", + "lib/l10n/generated/app_localizations_en.dart": "bd3434b9b442747b87d77ed20513324e181dcb915b0d3df8a0cd77a8ab2e87b4", + "lib/l10n/generated/app_localizations_pl.dart": "068a2007ebd70c532bf2e464eb7c838db9b479cfa5b0e4a6a85d7df0b2dc7133", + "lib/l10n/generated/app_localizations_it.dart": "e15c0ce91901a010343281c0e47de725d84358ab64978ffe51e5d4d1af495708", + "lib/l10n/generated/app_localizations_ja.dart": "5e54f2c792c0cdae2bb3559118977aaa5091f3e6056dddac112930a6d4a6da9e", + "lib/l10n/generated/app_localizations_nb.dart": "b3a2dd2be808d7c9cbce22ccc74f646dbc06fde373862d066840c1e39bf34f5e", + "lib/l10n/generated/app_localizations_ru.dart": "43a664251ddf725025500771e1c1bb4a1b6610c489b3c319fa136cfd2812d10e", + "lib/l10n/generated/app_localizations_nl.dart": "2887454a3434d801c2437371427f0f7fee1b07f1aa1169d6510031d379f3a720", + "lib/l10n/generated/app_localizations_ar.dart": "3e56395c16a3e433271ad1924f1acb15f05d06b8ed1c6992a7089c078947d5de", + "lib/l10n/generated/app_localizations_id.dart": "a6404e286b789f16b8e16f54fba8d66f6a34f72621fabb7684930e743347e255", + "lib/src/comparison/source_comparison.dart": "2aa99d0a5c9927f89c031f43fab3b219d46a8e83b565379d1fb4273e01262dab", + "lib/src/assets/asset_limits.dart": "fe4c11a909e26e8a15d49fe6bdfab419dcdddd93abca220ea757275716a52ea1", + "lib/src/assets/asset_ingestion_service.dart": "13979a6362239563c7544453f660b2527ad533d8168fcc60726d652edb4d261e", + "lib/src/assets/document_media_context.dart": "9036a4d4cb94209d1df5c86d1c457185ab6f82bffaace3fa8341c87349e405f8", + "lib/src/assets/provider_asset_ingestion_service.dart": "1c43cf37fc15c7fe80ce3ef4358ccfd41e394526dfea813f396c26bb0601cf83", + "lib/src/assets/asset_input_service.dart": "33b7c943cc32579d2fdf2edb8fc5a0ca23e64d15c09a87bc183f9a7abd7a57a1", + "lib/src/core/diagnostic.dart": "d27354413aa4d067ae25e359da29c9510cc4d3bcb4b9b7e82a5637fadca74e4a", + "lib/src/core/path_utils.dart": "47878599a28bc4d77a337ce6add6f8a5c38b652b82ee8cf871ed72b712fe2339", + "lib/src/core/atomic_file_writer.dart": "7e1d69d059556cb7a0957ede9c51073c7cdcbc3cfd96c080805f55861f6c28fd", + "lib/src/core/source_span.dart": "13328190cd80041b0414e7a875c4a6c6123c52c7440d2dcbc97b9ea778f62127", + "lib/src/core/input_observer.dart": "81960f8b740427c7ff7ea703c5a8e0aa1ae34cee792e4420414837cca9d07edd", + "lib/src/core/busymark_temporary_path.dart": "236bfbfe1f30cf1d73d0932535a1404f09dc9f1ebb75fd1eba4b555b7ec9c004", + "lib/src/core/local_image_resolver.dart": "1120f3887a407b5a054f81167dc3df4cc0cdebf81915c20476ea5f3cf87bb012", + "lib/src/core/uri_utils.dart": "9ea653086c87ac05af78409e1d73ae2e227b86b3c802163847e85008f059447d", + "lib/src/core/busymark_exception.dart": "580cb56cd470c0355308d2287f59c40700ebebef4c80e51b5b769fa7c8d580ee", + "lib/src/core/diagnostic_localizations.dart": "0d27de95e04d9588ff03d32738a7d59eeba54d1d94e6fea61857af493ac789ba", + "lib/src/core/debug_log.dart": "36007a0bdbaca4e570d8926b5146f2d041932993ba8fb005cc3de4c6d7b6a37a", + "lib/src/core/anchored_path_guard.dart": "f2adf63e49142b58cc315700314feb45349b771af4eb845c166db18f787a4d3d", + "lib/src/core/linux_atomic_file_api.dart": "07b323c55cbe312d34065287eea3fed359b6ef22f3b0bebde7448bded384ea6b", + "lib/src/markdown/writerside_variable_syntax.dart": "fd58ffef14df11a7b2e93a94045cdba9d95fe1ddf7a9a927bc11816ad0fd0824", + "lib/src/markdown/markdown_fence.dart": "f2cb8956737b64546684f23f2a1227906c0549d5d3c646801770894d12427726", + "lib/src/markdown/markdown_source_map.dart": "d67f6350cddda46b337fbfc3884e5325eff0060f4bb6cac0c96f53b5df1558e3", + "lib/src/markdown/markdown_model.dart": "a3c2e3fcbb6c5cc11d62353607e80572aef60de0f175b4bedd755b74201c38a7", + "lib/src/markdown/markdown_parser.dart": "511242d5f489cab3d3512a775836883d3e532816f17b242295ed22f787ad1d46", + "lib/src/markdown/busymark_markdown_serializer.dart": "b8d722297052e284b98a9428ae1f43db25df0017ba7327418257153f001ec585", + "lib/src/markdown/math_syntax.dart": "89ca9433768024d7ccb5ca198a7c291ca72cf619a26fe4596e26947402f65b7b", + "lib/src/markdown/authored_html_diagnostics.dart": "a75b1a14e8d11fd2d1ab3c9451c45284faa917dc738bc73f8b904762f2285ecd", + "lib/src/markdown/markdown_front_matter.dart": "e169c6be40614e7b9922956072427adeb39c48ae6ccbf3f4ad6df7710029004f", + "lib/src/markdown/busymark_document.dart": "55bd5d92597bfc72e4c805712a35717678dac848e3782944328c1fc728a115fa", + "lib/src/markdown/raw_html_adapter.dart": "50e65d4988326c8ddde9c3795a1925988b24cdb94de54f1d52d40c98e5d11caf", + "lib/src/markdown/markdown_source_structure.dart": "7adf1adb47174c61f3f6339b7999878870a49bb859399e069da334baba4f113c", + "lib/src/markdown/markdown_source_annotation.dart": "f6049e32798ef15b5c0b26b95d2bb889daabf4bf91581f46c2061497d35a1e7b", + "lib/src/markdown/markdown_section_editor.dart": "54bebed32db9268db56186cff0e4de9f414bda21ea58ff46f8422948b5e48a03", + "lib/src/markdown/document_outline.dart": "836789d9b985c988ae6cf1926e2f526ea1d0cfebc4a69cd16ca7301d280409cc", + "lib/src/markdown/table_grid.dart": "0fbbcbb6031fd28da05a2a11ccf9b0b0ccba6a9e8c83a15ad3975ba901a6c9a5", + "lib/src/markdown/busymark_preview_builder.dart": "dde16b9dc67b7daa9573420f8c5896a3659c51d76f67a9cc36e26134f59320a2", + "lib/src/markdown/markdown_ast_adapter.dart": "b26b7664398acb29bcc169e5a5939705835acc0d2dc4772c7f5eca6617e6274d", + "lib/src/markdown/raw_html_policy.dart": "6fdbac58be1f2a22e52c08cd0550a4b0e4b528ad4ba81d59d86829009edfb7c9", + "lib/src/markdown/preview_model.dart": "8a00ceb7e143ead23603d558600932a358a63b1afe8c1255646408018e218e56", + "lib/src/spellcheck/spelling_text_patterns.dart": "c80b1418c0acfadd8f6fdbfd772657e6df48b3086e0351a7fcbd9dfe7af3bf93", + "lib/src/spellcheck/markdown_spelling_projection.dart": "17753741d3484ee3f11db511db9825005e33706842ea0e735e1fa7627ee3314f", + "lib/src/spellcheck/wysiwyg_spelling_projection.dart": "fd57482a5c47b6310383abcbaa44b91c498c362ae6e880558941a9e2407232e0", + "lib/src/spellcheck/spelling_dictionary_importer.dart": "07d6bd25411abf39108a1de8e9ab9befbe2013ed2ec1bf24d2aa34d0ce4f3eb3", + "lib/src/spellcheck/spelling_replacement.dart": "e4b5b0a40e640569521b1dc7c36eff3faf66d8ad9da254b061975d3f5e67f003", + "lib/src/spellcheck/spelling_language.dart": "99c7760139bfe007599d6b9f897d750ee86696253857f42d2354027f297d19a0", + "lib/src/spellcheck/spelling_projection.dart": "7f6ceedb9e79abcfd3679acb4cc56087d1bd85fd61704f54ab6a02613660784e", + "lib/src/spellcheck/spelling_session_controller.dart": "5b679e0b2b595d9ca3446550a214d75fa169545fa90e1d19dd8d4465e6467b1d", + "lib/src/spellcheck/spelling_word_store.dart": "08fa43855823c9795eb99e662346cf29cb2530d09e0953f258395414e6f20655", + "lib/src/spellcheck/spelling_dictionary_installer.dart": "eb983f196de5dd4fccfb00b99e49569bb5e27ee9bca722267317f43fd0afec29", + "lib/src/spellcheck/spelling_coordinator.dart": "d5ed439d82e66232613bba9f6c10127dfda3b0dc26d48728bfd8de215239d048", + "lib/src/spellcheck/writerside_spelling_projection.dart": "9c4da13ec0f1de24343abd5028d12441e0798e71b097f5c23eeff0c485a908b2", + "lib/src/spellcheck/spelling_catalog.dart": "47ece3d3be98dfe94fba93571958bc2192b8cdaf97f466051fbc96bf3e736872", + "lib/src/spellcheck/spelling_inline_projection.dart": "bf8b0f92a67658eecd0c716b54118d9677c4c7722dcbb2d434d0f3bb1cdc9d33", + "lib/src/spellcheck/spelling_worker.dart": "cbc1363b897ccc4106903d9bd3b3fbd907a3c343e9c38fd07a9307d13d823bbc", + "lib/src/spellcheck/spelling_release_smoke.dart": "2ab365412bc2acf4ec0ed4416527be913abae10666884c49e3ab5a7994af5250", + "lib/src/spellcheck/spelling_dictionary_downloader.dart": "aeaabe2efaa08cdbb2f79601cafda63385b3096344c0ee1ed79a912603c3d4bf", + "lib/src/export/html_export_links.dart": "8fd6a1abbbfeadfbaa19501c81a2b1f4c3f2397db0d65c8d947ca83dc8b198b9", + "lib/src/export/writerside_pdf_export_ui.dart": "494784364d607ba81f0e88d7f44346312fe16bb16507359da96bbbf60d0c55a1", + "lib/src/export/html_export_ui.dart": "83252c2a909bb3f80793933068e8cbb3c577991d2a8783447d556119288dbf31", + "lib/src/export/html_export_models.dart": "cf884d4cb723a7b403a5b22eace862f9d007f4153cea936dbb49555112480eb9", + "lib/src/export/html_export_service.dart": "ecdf33cd8e2008bf49da3b9f3f68806cfbd77a690e9f29cb5105563acc586f1e", + "lib/src/export/html_release_smoke.dart": "46b30032287c5f3969690bbf79e40232804942ee5446e46d0a2d2e5b7aa89462", + "lib/src/export/markdown_export_document.dart": "aef4f811f4411ab91dacc5a46b4aaf0f01c2629b1b1f535263db81054328e3df", + "lib/src/export/html_export_styles.dart": "e74e813e387ff325e2aa2fcba38e9f6e5b666ccd1a0a4a002ecd4d9d96c51a6b", + "lib/src/export/markdown_pdf_models.dart": "af44b9119c4c6ad0bd96938ffc9d97486c6dbfc76f1d004b96e8cfa6e6550fc0", + "lib/src/export/openapi_static_export_mapper.dart": "9d35f48697570755680a1997c21cbe2b8c102efe0afa5450c7f09849f282c3d4", + "lib/src/export/html_export_assets.dart": "268614a658c58332859ccd1bff93a385ad5c5d577a8dd906e7c6f3adbd41aa69", + "lib/src/export/workspace_export_ui.dart": "b499f480f25ced3a60eee0a39ef1c47916b4adea721038fb079e3c44c5ede29f", + "lib/src/export/markdown_export_assets.dart": "821ac8858d59aa5c78db544666b0b272f0f961e91e8f2d4bf30c90523a80f9d8", + "lib/src/export/typst_compiler.dart": "0ccd531689d2385ed67c9c52d296219385021a28fadad4721cadd3b92cdbb870", + "lib/src/export/markdown_math_export.dart": "92f6d2922d21b644d751076936f6b380ccc4ad130334facaec19e25a27d3bf4d", + "lib/src/export/html_export_publisher.dart": "49ca4c59a8d2e4cb6c0e4f1da8699e512525bd03652c99dc621bd265e7c8cd92", + "lib/src/export/markdown_visualization_export.dart": "4e3707331306bacbd043f90ba0a9f1d22d06072554d4d0fa1cfb5d688635ffd3", + "lib/src/export/markdown_export_mapper.dart": "ce1ba649532ccebb769f207f3873530a9bc2b997a0ed8da2255fa705ea452fb3", + "lib/src/export/typst_payload_builder.dart": "86ea4f6763dcf7293e8e20d77e4e76514b6e7deff8960d63844acd5e005d0a8e", + "lib/src/export/markdown_copy_export_service.dart": "4cdcd9054699042de0e9e8dd06ba111618d00eef9de4228ccaf093ddc985a8ae", + "lib/src/export/writerside_pdf_models.dart": "7ce9195b1278f5fe88a0aab01ba2789fbce669ca1c7e8f8cf2262c60f7828c73", + "lib/src/export/html_publication_plan.dart": "fbbe63664a77bee1353e3bc47407b9cd78cfaf9d25ce7a225d9f74fff4482a55", + "lib/src/export/html_document_writer.dart": "4cfcb1872794e57114cbe1908562bf6c7ff73d6b8c7023e33618b8c60574b3d3", + "lib/src/export/export_options.dart": "f1f9968c89b5efee87ddab5a9a38ef89fd065be342e8f8575e4bbb9ed8bb1d20", + "lib/src/export/export_metadata_mapper.dart": "59d2da61ed86663ff892c9853a317e3e9c234d3360169689c40e94d617b7cda7", + "lib/src/export/pdf_title_page.dart": "3f41ff4a2333d7fa3a91405f995c1d6ac80bf960d39122a1c6e97c7241583274", + "lib/src/export/markdown_pdf_export_ui.dart": "c9a2aae40c7396132e016bc345c79de96a62826709d03700eff9608805547b21", + "lib/src/export/pdf_footnotes.dart": "c9db428963e62bbc598e2ea8b3e8524fd4a5bcc0b9748953887e4c59b3d56a53", + "lib/src/export/html_rich_content.dart": "259bd86ffbe2dfd7498e6c969e9a3a3f0bae53bd4ffa8fce2178dc7939cea42b", + "lib/src/export/export_options_editor.dart": "84714b2535be481250437524fbadb3b7ed799f29caee5d01f62d283e7b084c87", + "lib/src/export/writerside_pdf_export_service.dart": "a18cf74c528d067559a84c76ebca2553d4994550e6865704b23dec4a74e3cb2a", + "lib/src/export/markdown_pdf_export_service.dart": "9707c181f70ac43bea769f514d078c8a6ab437e50ae239597cd65de72ff5fad6", + "lib/src/clipboard/clipboard_models.dart": "c47e0106cdb6ab4a7b83e4128d9b98580a3607c54e525191c09a65bc82a9d3f2", + "lib/src/clipboard/clipboard_history_controller.dart": "da28f2520aa8a6de74beb65738e7a4d353860b8a704ed9aa396fbd329b9e0622", + "lib/src/clipboard/clipboard_history_panel.dart": "1f9e23546822674c89dd92d6b9fba059e86dbc3463fb5c0641663edc84dd6cd5", + "lib/src/clipboard/clipboard_insertion.dart": "164399691117dffb735bedc74bfee7890c9f7e89a911ca217d80ce1dfc37adea", + "lib/src/search/workspace_search_scope.dart": "c596d38f63a27f008c0423a3262192d740ae0268dbe6b88e4bdf8a5af00f91c1", + "lib/src/search/search_replace_service.dart": "cb9789c2353f6939247e4d5667e19d88804c1a2a47abeac90c307db584ddde7d", + "lib/src/editor/writerside_video_view.dart": "c3ea77a26e0a1273e06c45d7ff2d36744eba3bbde53ee4aa44b82f37bf306839", + "lib/src/editor/document_collapsible.dart": "19a6f7356948a7df91fd06de18760182a464db6cd54d42444ed23ce2658a11ea", + "lib/src/editor/clipboard_paste_resolver.dart": "de2f78b1d5c4c7c84cae2c11aec4d68981eaaea7c8ffabf756fb667765f199ca", + "lib/src/editor/document_surface.dart": "0673bb8461fdfefbaa0d74ba0d417b718bba5c98e6c65724f9451ca322233f12", + "lib/src/editor/document_text_direction.dart": "f5dc44f084d8713585853372041803ea9476656e5a9aa5c76c6bae457f453ee5", + "lib/src/editor/document_text_geometry.dart": "aee3c4df5a8f6c0714e64c0cd4bdb26d144f52eab7190082dbc8ada765b34fbd", + "lib/src/editor/source_highlighter.dart": "3861da06bc30dce0391269015253672539fd7d7c6b1120d28c6951bd149fee31", + "lib/src/editor/document_layout.dart": "6a4d6ffe1f06cd60dae42a1d35d89c788a3f22f8c89f2066640de53d782cc22e", + "lib/src/editor/source_folding.dart": "99e8174cea0a8c76fd28f69a9101fc54783fea37b18ec188acafc804db7c0196", + "lib/src/editor/document_list_marker.dart": "5dd78498e9146a1f17d1d46f62d3c67ca605d8a0d4c6934883c6e68a1375869a", + "lib/src/editor/editor_text_context_menu.dart": "1980e9bc0e9be96700f337d3a7397bb92eb7f7a7e5250f192efbd09fbd631e00", + "lib/src/editor/source_language.dart": "d6436f581b61592ba9838be2ff11ff4db7cc935e060b41f8425fcbc8d2be0af4", + "lib/src/editor/inline_semantics.dart": "d0fdc6b2dc31f4b24a9cf103fd2ff7634d8fc7caa06741533cc93610c1b5b220", + "lib/src/editor/writerside_video_player_host.dart": "e52a230eca0f45ca96dd4002d77b80fe69d994ed4c992be7c410eca46a2d9886", + "lib/src/editor/markdown_image_view.dart": "051f057423b29476b34bc8fbbc334fa2741ec98c117e079d13a7813fe69c31c3", + "lib/src/editor/document_callout.dart": "0394b8ce9d46bfe464a6f171fcc1e446a822507dc5392eb30f0b4e55e12fdde9", + "lib/src/editor/clipboard_local_image_path.dart": "85164c4c5cbf227ed6f06108b267e0c572ecfe0e9d12824dc0d5a718431b7f27", + "lib/src/editor/document_thematic_break.dart": "f7af4c85138f3198323608596ebfdd720e4514d67655c4288ab989b6d30e5145", + "lib/src/editor/document_code_block.dart": "140be4216b15342a830ecfc50506d6356378d1667c22cc433986201fde2c3fd4", + "lib/src/editor/editor_shortcuts.dart": "a57b4e4db7d1fff7d3d825b7ada4e2652b18f63e3b54a33f16722e243cc5cf7a", + "lib/src/math/math_providers.dart": "eb69799dc75898df1523497ce1383026e504427897ce15656c85e5ae23f31f09", + "lib/src/math/math_models.dart": "4c857bd76c59f03c473a3569fdd65e62575e16682db390059d310a35f87b53d8", + "lib/src/math/math_coordinator.dart": "03b05f7d79f0ff749a5a81e0e10f1c02517ead55e47fec52eaa6595e18f53704", + "lib/src/math/math_widget.dart": "bb1a239c707a8500a5f41a9c7ba94427e28a6271fabd6d5b5b00286a3694fe0b", + "lib/src/math/math_renderer.dart": "3c93fa6c3cb5e97fb53b8e0d7595426f0d7295ceba6a116b61d263ae3b71a440", + "lib/src/math/math_svg_preprocessor.dart": "be9fffd40ea4f1fe0c8514d2b8e12f24e68ec179b7bf08b4d5ea5ea46a29dd0b", + "lib/src/math/math_cache.dart": "35bd052b169aebf57ebe3c7a5309c5ec763ca7c61a463fe8c865e9398d39b777", + "lib/src/platform/linux_gtk_accent_service.dart": "804d43e87b4ca13c3eae0a091cd172f9b624b9903fe20415082df04886385481", + "lib/src/platform/gtk_header_icon_service.dart": "ec7742a4d6be403b0caff09c2a68d78f6e0093e50986c3fb284dfb69e4c3c660", + "lib/src/platform/gtk_animation_settings_service.dart": "c0efadec0398b234a446420d1da6e186c57ce2bfee503545e1db52d9e5edb782", + "lib/src/platform/linux_header_bar_service.dart": "115273f518b6df8404b4682b9228732bd1c4c901fc39898738c32cbaa266b51b", + "lib/src/platform/gtk_window_preferences_service.dart": "68dd0a6c9e0f1b6f52eab8e594fdee273a4b86f9f681e02d26bc89ddd4dfe938", + "lib/src/platform/native_menu_service.dart": "39e58157d2b990e2dd14ddae7d01f30e66ba9def5bb3ef10d1fe8481f967dd4c", + "lib/src/platform/rich_clipboard_service.dart": "0ab8ea108af54e966185d57cb09dffe0513e3b7491dbacb544cb9394b34e3907", + "lib/src/platform/native_writerside_dialog_service.dart": "de3a461a840d748ee81ef2368068a81155a59d694af31822a6ba49abab5ebd4f", + "lib/src/platform/header_bar_configuration.dart": "30058be37cc11460426305c77bd93bd53376b078abe308144ffdd913acb47d97", + "lib/src/visualization/d2_renderer.dart": "550b5f6429451d038b05f74cabdda7faa861c827aecd55c15aaa82e0a0e38eca", + "lib/src/visualization/openapi_dependency_resolver.dart": "cb799526366bd3728e3e33192003675635439859d3fbbd958b0d6066c6545006", + "lib/src/visualization/web_visualization_renderer.dart": "758556808e20bb99d66344813dff87b28ae5656ede2accce9ae0cf913bf378c3", + "lib/src/visualization/visualization_card.dart": "001ae6551d5d54a3e1503bec9e8ccd456a4ce098387c0898d8bad59ad2cae973", + "lib/src/visualization/visualization_models.dart": "b5e139d3701e2fbdd6986ad4b45276d80e162dada0dbe7ac087b5f0ec029f57d", + "lib/src/visualization/web_render_host.dart": "e4afd5a5216ca338e4ff8b4661ea44c68f5dad77998fd107fcf6bb3be6a69c42", + "lib/src/visualization/visualization_providers.dart": "fc3bd779358fbbb10fa8195f866e0cd19a5f7631f61f68361d5d87505eaa27b5", + "lib/src/visualization/visualization_renderer.dart": "b2143594994f00784ac73762befd84f7dd4e6973058b076c3f6f955fba50fca8", + "lib/src/visualization/visualization_raster_sizing.dart": "6f929642494db3fcafe22de3053d0037960b14d2910a4fdc5763fa945dab10f1", + "lib/src/visualization/visualization_release_smoke.dart": "285fad51f211dcb4a7cb595569181b8dbcffa165cf54dbf99ddbe28a86f483cf", + "lib/src/visualization/visualization_cache.dart": "7209e739344878719adf6ece640da49b8d80301a04e8369a9f237ec1a351d162", + "lib/src/visualization/generated_svg_normalizer.dart": "a09b2a7b6572dc3724c3526b9f0410f743d31e7953239ee1e48d7498aea5878d", + "lib/src/visualization/visualization_coordinator.dart": "92e3eae4e70c7ef3c4fca1e715c3fa3df66c8cc05cf51af4ac586c1bed0c920c", + "lib/src/local_history/local_history_panel.dart": "cc0331682d71fe0984b248a7d40bfd4db2cd4666edaf5ceb24fab00a261ddda3", + "lib/src/local_history/local_history_comparison_view.dart": "3fa9bdb4f31cf15b950a3abe8c404236106760bf7cd3d3ee0999d65feec3660e", + "lib/src/local_history/local_history_models.dart": "7fd7af25b059bf974415b686cc50b41615298548415e4fd2ae4329b8e205b781", + "lib/src/local_history/local_history_controller.dart": "f293684c27fa8cd4db2e1ef297bbb5d87571d983f0acf111a853c05eda27cc8d", + "lib/src/local_history/local_history_store.dart": "f44cf8122fe8cd349183f5325166cbbf17f2217b1e0d615f5de4a68bf5e7690b", + "lib/src/feedback/feedback_metadata.dart": "bd5d3143861575cc5d70c74bb1c49a5ad4d868b39a15e89e6cc548dd3f1d49af", + "lib/src/feedback/feedback_submission.dart": "1f104b45c4f4e37b8feffe0f7ae1349db4ea13ba5c258bfb8fa73d482600580d", + "lib/src/feedback/feedback_service.dart": "f702ab6cd0cbed67b43943116aeeb8cc220cc6064ea1c84c96dc73b2d32a2385", + "lib/src/workspace/workspace_controller.dart": "07cd7fbdcef74b8820bb60d6cc0c2388fb7f95921952467e59e4e0ad81a2b29e", + "lib/src/workspace/workspace_tabs.dart": "b4788061339705181210afd7588e7879ee15eb5f08ae6315eb69c51c77dc1612", + "lib/src/workspace/text_format_metadata.dart": "e86dfa98d8b20c9581bbe77ce700f55a427e8f20bbbb5819799b32c5f3cf0f87", + "lib/src/workspace/workspace_service.dart": "982d985bd7098f0e8c65a856c82a37318b965c7c04327a3f3b75fd170b584c95", + "lib/src/workspace/recovery_persistence.dart": "b940a15f5e390694f9f294ac3ebf3e103fb2cf6effa49d6acd4111cf1c175826", + "lib/src/workspace/workspace_file_snapshot.dart": "a266ea4046c98902d7be1b5ae8580da09e520b0470061d8b9c0fbc8aaac8fd69", + "lib/src/workspace/workspace_glyphs.dart": "281c198ad0afe834470250ffd2840acba3b69b79a1f86d8fe6e44b71afaf6ca0", + "lib/src/workspace/document_origin.dart": "3ec75a42243b2f5a53461a4fbc4266ac4bbd136e8df941343b3dc4389ee784f0", + "lib/src/workspace/workspace_model.dart": "fdf76be407e2c28810534c7b402180186a96e1b5fe4d5df126492eb3887ba898", + "lib/src/workspace/document_buffer.dart": "ff1a2282ade901670c89763634bf1c5fed82ac46c92e52c56a84222253214d31", + "lib/src/workspace/workspace_safety.dart": "82f4191fd3efd68c1d20aac806141c891873712afe3d43c1acfd42cc280b832f", + "lib/src/workspace/workspace_file_monitor.dart": "411c909aaac415acbdb6dfd305e18601d7321408d971efa8f5626007025165ef", + "lib/src/workspace/workspace_message.dart": "f497a2e2e242abbea4a6eddf2686c5edd1efd2b47923bc3a01b5b2edb3abaaf8", + "lib/src/workspace/session_persistence.dart": "faee39ca442c02a570cc2db286ca6dece9db0a2acef16305bc6d5bad0025cad6", + "lib/src/ai/ai_provider.dart": "7276b6655aed05a7e9d517fcf04b754addd8c2a12ad054ec35e0722f70e1d573", + "lib/src/ai/ollama_ai_provider.dart": "2a2714cf4cf81397c659cde8e8eb18fc1d05dbad5fb961273578fc1ce4781fe3", + "lib/src/ai/ai_coordinator.dart": "23bb171bfdceb6165807d465991ae4042017c93ffc5bee1add7dfe9783cea5dc", + "lib/src/ai/ai_providers.dart": "6b839ae7c063e5bd0da2d0e0cd31eb4881f59a9ef43b35b03190cf5d0cacb1c0", + "lib/src/ai/ai_models.dart": "af5a25d4c1080e57b94b9a557a5f795c25da8a6d7bb92b3681d5a5afb48598fa", + "lib/src/ai/gemini_ai_provider.dart": "1e7c598cd06039892a2d41eb550cab512fe4d9fc622dcaed8b0b0e553b4a1d16", + "lib/src/ai/ai_secret_store.dart": "06cac3e65bb0b9537b9904e21ee65fdb3e923623b357cdc63055279e5dd3a04a", + "lib/src/ai/ai_policy.dart": "76506b236ff8da45447d4b619dd8976d9fc98992df463e8db23a9f288062ca6f", + "lib/src/ai/ai_edit_ui.dart": "74cfd3074d85a1743c8882e869eb6e17c2244d3a449b477e0ab8cd5cc86b05bb", + "lib/src/ai/openai_ai_provider.dart": "564e62e6f2cec1baf60feb0808bcb7d8c71ac81b770db6671c37e7a5031b0cc6", + "lib/src/ai/ai_http_transport.dart": "871a58495b2d711017d1509d5233fa0a9f23117e2c22e402ebc6ed7eb715dd09", + "lib/src/ai/ai_markdown_edit_resolver.dart": "1592aa7094b4b36c81e6e4f2efd310b59f68591e9cded57339a3ba7ff7987831", + "lib/src/ai/ai_usage_store.dart": "ae77e75ccd2be1e9ce736cb7a875b7f3d4c7342cf8200722cd7c621f23504ae9", + "lib/src/ai/sse_decoder.dart": "d5dd646cf6d6a89a94ffdcb5274909ad18aca31ff2d575050448e1a618d9d933", + "lib/src/ai/ai_configuration.dart": "222115d102b7fe2afeaf82d4184c09979340b8f981d10be5fcaca9505bf5b44b", + "lib/src/ai/ai_provider_registry.dart": "8cf3f2e47da18a964fd3ceb0828ba64d6c9004ad4a9671310b640b83d1c5863b", + "lib/src/ai/ndjson_decoder.dart": "28aa2849b4b6cc6b83352e89484426effe13d84ddd5b18a60d3fbe9672cf122b", + "lib/src/writerside/writerside_topic_file_editor.dart": "412e149f90fd5531ed75474deeb97cd17b75440efc875dc0ded590099b018a2e", + "lib/src/writerside/writerside_title_editor.dart": "9795207c58a1fda824983c1d1a1ad1835a8d911751c588425114cc131f642581", + "lib/src/writerside/writerside_topic_creator.dart": "77be4c90d8f053bcaf13cc0caf9326b4b0810f00f9c0d38e76e806a0a4cb4854", + "lib/src/writerside/writerside_toc_presentation.dart": "ccb500471e2ca1a2576e63338d8bf4286bbf7a395c152d2a1f23946ebd9f0dd1", + "lib/src/writerside/writerside_topic_removal_service.dart": "b7ee13e9c7123ba07e5a161a2f8f75ba3a0eeff6b6c35b7635d793aa4d7b5276", + "lib/src/writerside/writerside_table_view.dart": "da6ffded35c588153b76889fbb5cfa24bb8a0e72e8fa35ac534b335939b20c2f", + "lib/src/writerside/writerside_topic_file_name.dart": "9f6390f8de9dafa6f37e091b6d775e650bdf82947503ada6d66d559f3b0787d2", + "lib/src/writerside/writerside_code_selection.dart": "4a734d1a6f07cbf12436c17ff1b7eccb7b82d314d4b4ac9789e29358f1776063", + "lib/src/writerside/writerside_summary_exporter.dart": "5e6a7e8a5118f47519f43c4875111a0edfc804258d5d3b47951f2b82da47b0f9", + "lib/src/writerside/writerside_execution.dart": "3ec792be71a0a37c79324c94791251c285859b8344d38a89f4f5cb55abedf6a1", + "lib/src/writerside/writerside_tabs_view.dart": "0d695611a0161d4a641e1aef1fdf51594b15fc42acd15010cbd3366cb46086a4", + "lib/src/writerside/writerside_toc_editor.dart": "fac2efc7469591961ba89f9e0d7f360fd08ff1359696dfc8a84c445a63c47faa", + "lib/src/writerside/writerside_html_reference_scanner.dart": "e9478bbfecb8e631c791a99cce4040149342dd4b788463776a78882b471e11c9", + "lib/src/writerside/writerside_toc_navigation.dart": "23578550c1fb73b170ca94c1f17af00e95c02eeacf8082ce3680ef2c5f6da185", + "lib/src/writerside/writerside_document_parser.dart": "9464e9d7c5b9e0f75439dd0a5c16b4a2b834806d8420e8ee1d8b05ab8982dd71", + "lib/src/writerside/writerside_project_creator.dart": "e3cd11012e904ec319d408032445df70ef56b7829910d6125115927fb8a4bfeb", + "lib/src/writerside/writerside_web_file_name.dart": "5283d08ef4be3fe17b4260b6b13be065462ec3f5361600dcc8c271353cfb3fe7", + "lib/src/writerside/writerside_parsers.dart": "38db5fd08263ae09bc6bf9d0ef30a1ef951759834905aef0073c90e152945385", + "lib/src/writerside/writerside_diagram_source_loader.dart": "6ca2433da703cb6ab0289933f846ac22a675d0620838a980e66765ef147cce61", + "lib/src/writerside/writerside_module_service.dart": "a4a26b6d2905d263da65f3f17313dfc29a2d50b67c1c86203839dfb66bf3eae1", + "lib/src/writerside/writerside_document_serializer.dart": "ff273817f788fc4f055e6da942e93d79526636bb2086bbef8edf1e685244c42d", + "lib/src/writerside/writerside_tree_resolver.dart": "9668782aa1ae5fcfe6569098e193577fbea8de88cba97851fd70348089789bb3", + "lib/src/writerside/writerside_document_resolver.dart": "2b4ecde2485f54bcdd7c8b976db1c0e6251e1c20c8b942ef5455da5180288dff", + "lib/src/writerside/writerside_document.dart": "21fe733602468e5e0dd04b9bf0293d3cfc2abe3f0d4d91f2b602c3836c223fa4", + "lib/src/writerside/writerside_instance_service.dart": "c723d468b97783a8f51a1d67af9f1bf7fcedaa94d573aae0547503510f86af97", + "lib/src/writerside/writerside_model.dart": "937c260ca115085810e2de761453223597b4d830f1e33e160654c4a9c75d21de", + "lib/src/writerside/writerside_schema.dart": "40a85d9de9072061ee00f5e3a12de300b3f5c01f210f281f813b7b89b54dd11a", + "lib/src/writerside/writerside_source_loader.dart": "9606b62c6d12207c114491c94da485f01ab8e3cec5f56b65b022434f9353aa4d", + "lib/src/writerside/writerside_template_service.dart": "5c1a5e52b582408333c554313675d527c2ba0f4b2c0fb2953b6f3975c7f59f17", + "lib/src/writerside/writerside_schema_data.dart": "f92ca667449390557d634ed0bb7af20565288f4e0d3d8d7737b2e59f10397d45", + "lib/src/writerside/writerside_project.dart": "d5887a7ee8b0b2a2ce376be64bb3dced831a489b2b25c01f11811ee47ac3bca0", + "lib/src/writerside/writerside_video.dart": "e179b209051760f954aa2cb73600e5060b596d45c1d97b455ebac3d3aa69cb76", + "lib/src/writerside/writerside_document_renderer.dart": "e4010c548e9bb04c6dd2bda3c3b0de0017ec8650aea2259ccc4d767b31d56aa3", + "lib/src/writerside/writerside_input_snapshot.dart": "8508b5d3b8d45f979f53a01a866476f9d2353621cbd9ad4a700cc5be08bfb7ad", + "lib/src/writerside/writerside_reference_data.dart": "eaf088b436adfed165516af0ce47241442e5e0ff3708081a158d4d09c6336b70", + "lib/src/app/window_control_service.dart": "654e2bf94382a6c60558e77b9d7b84bd9e426c9707195155db4388194984fa4c", + "lib/src/app/command_palette.dart": "4197b7849e48ab86176fa3919c1768c0d3c89e0d92a8b046f6c5250ca5b7445c", + "lib/src/app/system_accent.dart": "d2b83ae7529d9f221d88bde4c5b88daa54b385a9c75b8f1f6ef25b2b1d44084a", + "lib/src/app/command_registry.dart": "059a87232e1229d0836fd870d44bd2c5b1442c3287d38bb2b7680fb4c23f7242", + "lib/src/app/localization.dart": "abee827107fe38559ffb882db1558f63cc21f54b7856fb2ca2e5611d3b242044", + "lib/src/app/busymark_shortcuts.dart": "6258329c54e12fccdb2a81db88a4ed526c274b6e5e9b5812158dd218a359a6bc", + "lib/src/app/busymark_search_field.dart": "ab90c830c87c422ba297d7b1a13925a45fd627535c8655bff3306df75dcfdab2", + "lib/src/app/busymark_toast.dart": "a414b21806b5c27f2bd957eb59d3dcc6007ad143e0b855e641d6262a4333a9cc", + "lib/src/app/startup_path.dart": "e620cc1ce80ff96d0b4b0fb019569676402430196fe2846d834bc06468fe1960", + "lib/src/app/busymark_main_menu.dart": "499b8d1aee2103e2867e7477e43a166364eab9029f2823fbd649f989449a8934", + "lib/src/app/app_locale.dart": "3cc22acde43a996e4a704ddc91309f9ad9114ee6331a9359a8175aa7a972063e", + "lib/src/app/app_theme.dart": "7a678e640d235c8faf8f738bd6cf0545d52abc066525f4abda2d060538ba4001", + "lib/src/app/busymark_app.dart": "6840730d8f37b6eb2dc150fc59962afcf36e97e07b82392f860aefafbfa901c1", + "lib/src/app/busymark_glyphs.dart": "cbd9651ec452510558aaddba61022e1426485353bc89f3ed7371b69c3603e1ad", + "lib/src/app/app_shortcuts.dart": "d0d0cb92e0d273b671b763db42f003146563aa3aeab5debf0666c189e9036f78", + "lib/src/app/app_settings.dart": "e9decd5285c280d5db59cc63f2a5301b709a01b3ab5dc2b6fcee45a93d03593d", + "lib/src/app/busymark_dialog_identity.dart": "f0780ac7bc5468b590786cd475251fee8a4a46712215f202cdcf4cee42e66178", + "lib/src/app/app_router.dart": "00024347e23c44b553945b3e5557deba133049ada6c2c7e2bb1658d9558dfd3c", + "lib/src/app/app_metadata.dart": "d38ce08adf4038224767303c232c860e76f566bcbff898b83d24b8b96e6c9cf5", + "lib/src/app/busymark_design.dart": "3e602db9a507071ef1634cc713648cf162fd437c9e4cf9985e904c580b97130a", + "lib/src/app/busymark_dialogs.dart": "e23a6917b6761a60ed6402f407c5e461938b100770123f4c62563ddcf3bc5d72", + "lib/src/app/busymark_motion_widgets.dart": "e2d85208058fdb7e14e276c078690ac54573f4b354cea2cdb7b9170efc69a4b9", + "lib/src/app/linux/linux_window_host.dart": "53e2aa7dbe557c905359a12d7b01affda6151a3ac750d69becb8baf724806d43", + "lib/src/app/linux/linux_header_style.dart": "9a012cc52c72ad0c9c1fb3be5f04544ccfe3f313c443c993e16ee4aa14c9d1d1", + "lib/src/app/linux/linux_page_frame.dart": "474608aa3b36f7e43e538322939a586f6a3987df6adb9ab1a16fa4ccc0cbc199", + "lib/src/workspace/presentation/writerside_toc_dialogs.dart": "90e073fd5b4c30ad4e69781eaebc1c9413b5cdf4eb4a656e5dae040f5a7d0a68", + "lib/src/workspace/presentation/workspace_screen.dart": "15445c36afc9535a88bce847ecfc36bb03cd9cf03bcd60d4904e01c9fda81e19", + "lib/src/workspace/presentation/writerside_instance_dialog.dart": "33fe4f42eb0d7ebaee22d7f5865b7189e45611b1c710064fff59c6223acfc29b", + "lib/src/workspace/presentation/document_status_bar.dart": "1229eecf7eb9ee7acd18e0f04c6e87d6f9d9f98bb3fce61932ab82c0b5a3512b", + "lib/src/workspace/presentation/welcome_screen.dart": "e2ae3c9c218be94e340ff3a4b04a1301cefc70963598a10af6a9592927110c69", + "lib/src/workspace/presentation/writerside_markdown_import_dialog.dart": "36985fa586f1b9874d88ceb8a8b7dc0cb378432cc74c0e8b098dd173f167e42f", + "lib/src/workspace/presentation/document_format_indicator.dart": "34eca3bc1afcbd4098eb919242d3e33fbd151d4036e52eb6d96be5990aac5872", + "lib/src/workspace/presentation/writerside_template_dialogs.dart": "635d6ac5d764646960e5bfaa73c0da432133bf03b2ece1264f694db6ab00cccc", + "lib/src/workspace/presentation/settings_screen.dart": "0eeac34b179c0f8910f6f8b871a99479aa1a9ac8342a368531bb12fa84971d65", + "lib/src/feedback/presentation/feedback_dialog.dart": "dc7d37dc1a93f35b43da4a0deddcd3a6b6cc1f9cbaca4484667ed930c2c52932", + "lib/src/git/application/git_gateway.dart": "0dde99f8c24c83ad6abe4365c023b3bf31096c54dc4dd3e9c25bb0bab9dc525e", + "lib/src/git/application/git_use_cases.dart": "acdefafd64f871c6299f084c5f4bd7bc1fbeea3de306fc3bc2633465a1e35ec7", + "lib/src/git/application/git_controller.dart": "0166e73c3910c6677a2e2673be115603bb0bc165b8b65d98b6effbb7e42463bf", + "lib/src/git/presentation/git_file_status_colors.dart": "f26feff460268725c9dcf8b83ac58a5425ce4007fe65f8c86a82baa0f62c7077", + "lib/src/git/presentation/git_changes_view.dart": "4ef7ec1dbaffb0077cb7f39efab45262d1df4ae773699bfc20b7bd4b86a718a7", + "lib/src/git/presentation/git_author_identity_dialog.dart": "f7e89acd106a7a3bc62f4dcb8b522c144facf009ba1421a97cd21b7c118cbb69", + "lib/src/git/presentation/git_diff_viewer.dart": "4c5d67e074b4e40657f9236050c0b789adaee5dafcd0f444341a0c65f32e8b8e", + "lib/src/git/presentation/git_history_view.dart": "d4455b8be45c5a4d4614561996edc2f10c8259fe8823aa98f22d4c16c61b87a3", + "lib/src/git/presentation/git_sidebar_tab.dart": "f44b0d36ed25d71787cb63d84ad2ff6f2d94898fe9a5ae028bd813afbfeaf6a2", + "lib/src/git/domain/git_diff_parser.dart": "57377d8b309d5c3f7e024b2d6294dc9cc1bc4468b0bdd9aaab4cef386a6b1198", + "lib/src/git/domain/git_log_parser.dart": "8008314c9c93078db3df2b981ac052a43a2f03ba75eda2b4a3cb1e9c107878a6", + "lib/src/git/domain/git_status_parser.dart": "94fe8d98386cf96f6b1978dee279b07710b6ef9f967527268f455400ff2c2202", + "lib/src/git/domain/git_models.dart": "6c5a6a1bc803f1d80820c9db7a7b3f1ef1a78f8eaa17a621270e0ef81ff8e8e8", + "lib/src/git/data/git_executable_locator.dart": "764e9149415e9c0c4e72a7667127b2e1e8e52a0e3a63b3b908b16cddc7866934", + "lib/src/git/data/git_process_runner.dart": "59d01ae75ee622ce033bfdf5bd544e9b378fd24b6dff0f3f90453bb5ee29bd47", + "lib/src/git/data/git_cli_gateway.dart": "6cfff753640882d3d3afeaedd05329a1b0c3f31fd1385836d781c0eb895af19a", + "lib/src/editor/source/source_hidden_ranges.dart": "33c78b6973db2490a75de8470dd6e2b7bd5d8f4a556bc1436c8f803098792c03", + "lib/src/editor/source/source_document.dart": "9c2562c6ed6c5ff5769dcf559b71424fc1d8b8b0325533d482170e89466f9395", + "lib/src/editor/source/source_intrinsic_width.dart": "567e55f6aeaa0cc0e305c38bb32f37f180c3c57223a2fc627a1d52d4c43055a5", + "lib/src/editor/source/source_gutter.dart": "2e318b55ab977397a1b884dbe75543df0553fcd256f9e6a35c66476543649c0b", + "lib/src/editor/source/source_line_index.dart": "6dd3355a9dce3c6521d84bdbf049073b26d9c9953f3342e5ce4ff8cc68817987", + "lib/src/editor/source/source_highlighting.dart": "88e1d95e163302fc472e92a9bc3c73e18dea44bac9e33f08bdeb5325f85cc338", + "lib/src/editor/source/source_folding.dart": "99a6feced2fb7bd5cab56bec89188ae6074c881432f678e0876fd28575293d88", + "lib/src/editor/source/source_commands.dart": "ee445a92b457546c2469f42b198fe7330212b3d14611d0663e03e6274fbc5ac7", + "lib/src/editor/source/source_editor.dart": "ec21409c030fb38a11eb74d2a75cd02df89866aaaa0efbda8fa94e94ff1b65bd", + "lib/src/editor/source/source_autocomplete.dart": "6d8851278274d6acd0b097b5a71ae929928c9a69c0320f52be1f889e4ad44871", + "lib/src/editor/source/source_read_only_view.dart": "99286ab99ade39543c07d573a23783f8c0f56bf3c91bb33fd8d8fd4e09dbcc33", + "lib/src/editor/source/source_paste_engine.dart": "dd4d430b433215c7b8836be04ec763673c7cbd85bec582b0a0aeba57d9c36c8c", + "lib/src/editor/source/source_search.dart": "d9a06a8de7e3f05203b925067acbb34a16e0622e78476c6f6d3cb4ec99566e41", + "lib/src/editor/source/source_controller.dart": "ab00b5d51cd5efc19e771d186923d022788f11d8622ddc2af21586f394180901", + "lib/src/editor/source/source_diagnostics.dart": "20b30b19125a1cf7c8deac7f8aa4da2d8305b18786355b23fda3f31c6e487ad3", + "lib/src/editor/wysiwyg/wysiwyg_document_controller.dart": "3b05e06a64e530586847925067e68ed3a1c20715434f263dffe1b4b1adcbac74", + "lib/src/editor/wysiwyg/wysiwyg_session_state.dart": "454e9afa2f0fc15720b50f5fdd17f645c7463d8c9cbb553d8926a43398602bf9", + "lib/src/editor/wysiwyg/wysiwyg_block_widgets.dart": "948245c49e419c5a8d9ba1f74349292297c779d5c3a3ec3a0396e5b83429ddb7", + "lib/src/editor/wysiwyg/wysiwyg_commands.dart": "cc212fe423405257e4ef7988d781b6285aeb0803fc3cf57b4be3e05afb2b9390", + "lib/src/editor/wysiwyg/wysiwyg_editor.dart": "1665bf6c08eeb0111a4d3822c1c9b4af4d5b6048089b5992985b7b63b2ca8b1b", + "lib/src/editor/wysiwyg/wysiwyg_clipboard_fragment.dart": "a4466eedb6ea21dfa952cbb041ec572b97a25813c9657bfd9c6b2c51d7da8348", + "lib/src/editor/wysiwyg/wysiwyg_clipboard_html.dart": "16797344be7856aef0367808de8b9c59dae1379c0115abbba4155e21fdfb994a", + "lib/src/editor/wysiwyg/wysiwyg_toolbar.dart": "e3029284b76b4cf800ebadd4cb60fe1201896f9226f9e911dcb913b4ef0c54ad", + "lib/src/editor/wysiwyg/wysiwyg_visualization_navigation.dart": "fce906dfcf4ed96e2869e8e6437ada2f563eb0c36dcaa0622b3a6c665953c9e1", + "lib/src/editor/wysiwyg/wysiwyg_inline_controller.dart": "19832f50162dd2143696140255b6985f9312d1c8dbdd0cc1ffc259633498c632", + "lib/src/nextcloud_notes/application/notes_repository.dart": "b68f0014ca2e671d605012deae2c57421a4738ecfaf9ff86b80324358f5d71da", + "lib/src/nextcloud_notes/application/attachment_markdown.dart": "f74125b2e173fc847a88ee7a674f7928f092a7d2fc0a217f4349356be9113d44", + "lib/src/nextcloud_notes/application/notes_media.dart": "b1723b90674c131b9f23dd17b3a38d52035f6375b4c97007ba356b28013740d1", + "lib/src/nextcloud_notes/application/nextcloud_connection.dart": "40e9cf545a8b8c2ac9107b79016a28a4fc1a14ad8815aafc07e347978b772e10", + "lib/src/nextcloud_notes/presentation/nextcloud_settings.dart": "d0d1ea6cba7aabfb59833f39890d85affd86705f297556ca2119a4bc882cb554", + "lib/src/nextcloud_notes/presentation/notes_sidebar.dart": "bf0aa7e7d5dfa542d5719c0890d1e5d9809c5193eed41ff403c51e2c7efff23b", + "lib/src/nextcloud_notes/domain/notes_conflict.dart": "9a5a73bea64518684f96f10650de4bb87da30e522c9f81512cbd59ede2dc1fd8", + "lib/src/nextcloud_notes/domain/notes_models.dart": "7512674d30bbddfe59e18d1b0466e93771b531b0073719b1b7dcf6065b52f007", + "lib/src/nextcloud_notes/data/notes_attachment_references.dart": "529f8a0294b5a835b5794b8832f6986ca0607b96f28e380da4241898e38b0189", + "lib/src/nextcloud_notes/data/notes_secret_store.dart": "6b7a1421f20cc9bed7f4c0bb697d3acf2a8eeffb2597b6bf845399c05e07563b", + "lib/src/nextcloud_notes/data/server_uri.dart": "a86378012ea47688284d50bfc3b25d585fb9b0d4b841359024769c2acf815b22", + "lib/src/nextcloud_notes/data/login_flow.dart": "258f0bd543d94808176c5be26776a6a816fab1f4961d81512d842d586515c096", + "lib/src/nextcloud_notes/data/notes_store.dart": "0560a30df4217c11bb3969d0b3113428b6bfdee44fb05688a5e240b2c260ac3d", + "lib/src/nextcloud_notes/data/notes_capabilities.dart": "268e10e0a644492357bc4ac8eda9fa31c976f2bd097797c133387ac306191dce", + "lib/src/nextcloud_notes/data/notes_api_client.dart": "700f74aeca3e9d83ca4889a2e85f7403d12243d975a2ac07b1f770e5c589c754", + "lib/l10n/app_it.arb": "74bf3268ad3e77b49469868c43ab341de509b8289ffd78fe258fc18b682ea694", + "lib/l10n/app_nb.arb": "5aa50249f89ef8cef8577b5518b9bb5e3ad1b647c5990502d29fedeec25e0b21", + "lib/l10n/app_id.arb": "1610a2bf9cf8e6033e426dfd493d27efe1f7b98325eac7378e60543894ce342a", + "lib/l10n/app_hi.arb": "d4937a8398800909db22458474150303db79ab5f921e8b2d712f24bc920a13a9", + "lib/l10n/app_fa.arb": "41dafeb4daa06ed4cadcf06211ed69db98d9d68cd0fd68bcb208c0047f259f9a", + "lib/l10n/app_de.arb": "4c08616a2ade79cee2b57e71b0f690331c5b5cdbece84fdd928458ee40dc514e", + "lib/l10n/app_zh_CN.arb": "f3cad9cbdba825fd053ff293b7acc44c80cc702b82be79d099d6f1d5dae17655", + "lib/l10n/app_ar.arb": "039691b2aa89c975fc656f9ba5a1f168f09a4b106e43ad3fc2c3fe065008cb59", + "lib/l10n/app_pt_BR.arb": "01e5e9b508974e06aa8e3c4922c8f112c61095ab4b12624ef19e2193e4bbb921", + "lib/l10n/app_ru.arb": "fb577b6f8997438f6d6306ffbf86a367135a81dce8e1846c20aee48ecc6a7fb4", + "lib/l10n/app_vi.arb": "f7752ed5cc1ed766fa2f5340cd43eba65cf711e08a292be45da0f95df2e7f4f9", + "lib/l10n/app_nl.arb": "e1e2c58ea52b33ab9e6f6a99308520abaa575ffbeb1ed929871cea8506cf96d6", + "lib/l10n/app_fr.arb": "e79bdf65ca16ee3443e0e3218971d184ebd4cb5c2cd252218b6509c87444c18a", + "lib/l10n/app_es.arb": "ab3afc8e396fc8e80865d1892fca886ff63676f0e94ae6bcbd99ebaeefb823dd", + "lib/l10n/app_ko.arb": "17aa0c04d1bd03eaed998399de81de8345a1edabb0dafc19351789b45b2b8597", + "lib/l10n/app_pl.arb": "b6d81032246d67840a15ce41e1b4bb274a45945c2ea159c72551a76cd31c1e16", + "lib/l10n/app_zh.arb": "492baefd14c0f3627baf81a20296dd30408c4db104c1860dad0400446686a2da", + "lib/l10n/app_tr.arb": "eb505765012f3c8a2bc5cf01ed9b727c742411ff8b8c4abb9db457025d1ab9cb", + "lib/l10n/app_ja.arb": "8aebaf9e495ba0fcc117b97cbb9e5391438080cfdb8757bed508de6c00f2d4e2", + "lib/l10n/app_et.arb": "ff18db8cdbb027b2f43ffe027fbeb784b0251a3708cd45fa36b6000d16009d1a", + "lib/l10n/app_pt.arb": "e901e0252e79b9bd5d31321cc28007c85ec0e7e44ac88b77513b2c4e0e0e8b32", + "lib/l10n/app_uk.arb": "9bbead1ecf2bba435ea8f327fa44e19e1bd167e5fba0d000237c1d66d7ade118", + "lib/l10n/app_en.arb": "c215af29845d20d074d7599fc89c33c8a75d3ba0b32a158070300feb6290a36b", + "pubspec.lock": "6062c9287c8030d89989584d023b649c990ed5ca7bb40cb5941d6a48d1bcc9a7", + "pubspec.yaml": "b095829f4ed4f68ccf3d254f873b81f80edfccea1cb930dddd8de804865f211a", + "snap/snapcraft.yaml": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", + "assets/branding/busymark_logo.svg": "dfc2bff2b49a268eede8c0ed49054bc575c415c697736cd84bfc728c5a210381", + "assets/export/html.css": "7b0b65c6c4d5fffc00b52833a7fbc43414dd988490d141d18db0ee683e664a95", + "assets/export/markdown.typ": "9a15349c348bca0742263a6d1228cc93ce850a4b5e046bf12e4a8f4bc6d89851", + "assets/spelling/CHECKSUMS.sha256": "3e09d517676fd8c18ac05a7b5a327404c046e1b5eb6bd97764417c43cd7251dd", + "assets/spelling/NOTICE": "4575a8d402694008656ed3cda93d158f58adbd0ae54a8b9b47824e53f9f7d19e", + "assets/spelling/VERSION": "8b037210fca77dc4fb8f6f0573e1578717d73f429cbb25e8f10b54d314800a11", + "assets/spelling/dictionaries.json": "4fa250112cfbee3fcf3e2dc1cc1f9b60bc556f439bdc0310e35dce19ed5b8bd3", + "assets/spelling/licenses/ar/COPYING.txt": "73480d918cd78d655508e80aa88c022cbd53634524a0f714b5f2519f2cf19124", + "assets/spelling/licenses/ar/README_ar.txt": "5ead684ae5211ccf615686959e24bd21ef6eebbb6195997529fda08b993f615e", + "assets/spelling/licenses/de/COPYING_GPLv2": "e7431ac20e815b6797369e802f9e4bb1b0082485060d8b096235f035d741bd89", + "assets/spelling/licenses/de/COPYING_GPLv3": "8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903", + "assets/spelling/licenses/de/COPYING_LGPL_v2.0.txt": "b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c", + "assets/spelling/licenses/de/COPYING_LGPL_v2.1.txt": "dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551", + "assets/spelling/licenses/de/COPYING_OASIS.txt": "2d9d81e88ecd0e837122f4688ca7a6a5bd7bb41bff6e21ff5d4663eb43372db3", + "assets/spelling/licenses/de/README_de_DE_frami.txt": "c141f4f79c428b7348b5012836f4ad3db4d124f288f15effc22696dc876512ae", + "assets/spelling/licenses/de/README_extension_owner.txt": "7662cbc363fdee12bc03a5295148587bb76923c121792a401115e654fea37b5c", + "assets/spelling/licenses/de/README_hyph_de.txt": "be7b3c67a66ea7185a69a3ce3b1e712cd6bb904dce8ac0eecdefd2f1a948baf3", + "assets/spelling/licenses/de/README_thesaurus.txt": "405accab10106f6d09152f2f5865ec3545fbcf40817b5416b4b99a077f303a87", + "assets/spelling/licenses/en/README.txt": "b8dd4d2ace5358adf5e6ddfac720871188e6f211cf56af97db631f4ee53e0ff3", + "assets/spelling/licenses/en/README_en_AU.txt": "f0897dcfdf058bcfc93fbc8e7e1b5da4c27ae9e175ee3a9242e887f02eb84a8b", + "assets/spelling/licenses/en/README_en_CA.txt": "86700e39b2307dda4c087ad3505a1e634a5b4d518ab808c398a16d21ebe957e2", + "assets/spelling/licenses/en/README_en_GB.txt": "18b5833de60a52ffcb6e5b6b5048bb5a5d910acfecd5b096985b77058223880c", + "assets/spelling/licenses/en/README_en_GB_thes.txt": "cc8abeac37067747d66d5365e8163145be6f3c23f488005074bf255bac89f2e4", + "assets/spelling/licenses/en/README_en_US.txt": "168b4c01cb841f766a72f310b065c04d09cff46376c37a81d799593ce751c371", + "assets/spelling/licenses/en/README_en_ZA.txt": "116ade99dd4a92715b21ae5b358a1a8cc814c76c0d6e582fdba4870835d1a6e2", + "assets/spelling/licenses/en/README_hyph_en_GB.txt": "6f3d1dddcf62d2d452801bd86289ad5826a30d15a502c0825f5c73715372db50", + "assets/spelling/licenses/en/README_hyph_en_US.txt": "9bcae072bff45cc0333d6b3c508c92d85b9065fc861c743c1506b303eba3f4a1", + "assets/spelling/licenses/en/README_lightproof_en.txt": "2271b9893955aa0abae1193cf56a66badaa906c0af030edd46113d10c59f2e24", + "assets/spelling/licenses/en/WordNet_license.txt": "23dbc4f3ea771304e5ab3e5709843813d2619f3c0cfc81229b53fcdb9985f29a", + "assets/spelling/licenses/en/license.txt": "df84246204e3c54cd24aebbc23714235f5fc41d754d53b65444a2afbf070130f", + "assets/spelling/licenses/es/LICENSE.md": "2b70fd5cb8d3b34cc6ae322c969557a2270b99017594addb2531ef5ffd9e1b17", + "assets/spelling/licenses/es/README_hunspell_es.txt": "0b5c39a863ecb61f5c5631ec1cd977667ef9bda6da6f90e80e9fc0edcbfadd97", + "assets/spelling/licenses/es/README_hyph_es.txt": "1f1088dce1140d981660faf3f5acc825e74aa1f943a8bec88cb046e4c528a1fb", + "assets/spelling/licenses/es/README_th_es.txt": "c721aad5e8f15297d4a8aa30b31a1bec1a4cbbeaeec6b2633cd64e2b0fafab30", + "assets/spelling/licenses/et_EE/README_et_EE.txt": "4cff6a48ea9168d545316ab96bac24eff4745bf198cbdd9f57eb10a9d8f93f0d", + "assets/spelling/licenses/et_EE/README_hyph_et_EE.txt": "da273b8ec03e35774a426e9df047ad85253ec9e61a5c056f019d57c1395ef1cb", + "assets/spelling/licenses/fa_IR/LICENSE": "7429736f069a84049bcfbee436e5cea3a3fd9b98348d880d9e43ebcf39721989", + "assets/spelling/licenses/fa_IR/README_fa_IR.txt": "aa1450d6eab0d140719048e7277204bae086947fe5d8cd834d115c0dd0cf7a81", + "assets/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt": "4a25abf740ad6ba5e8d0cfc0d2ffadc3c13c303f8fe389f323b061a389350f83", + "assets/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt": "6951d9806c65c7f757d303061ca49cd7a1ddeddc552147f5c29de6540821f2cf", + "assets/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt": "431a690c5be7741eeaa0e9654aeb75ed2b0af337492e622e8393d090b4612b3e", + "assets/spelling/licenses/hi_IN/COPYING": "204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994", + "assets/spelling/licenses/hi_IN/README_hi_IN.txt": "2b373a1e07efe18e89c04c7f69bd540681a5926edcb478a4331d0df387861487", + "assets/spelling/licenses/id/LICENSE-dict": "97628afebc60f026f5c2b25d7491c46a5c4ee61f693e7cfa07fbd2c03605979b", + "assets/spelling/licenses/id/LICENSE-thes": "1f3360c2c2fbe9918f3658a20fcd2f64113a11726b7327ca1df7220c433689e1", + "assets/spelling/licenses/id/README-dict.adoc": "7c18fabf4169a4b7f0f7effac5309c26294d8cb354d9ed5cbc8ea2868abcf942", + "assets/spelling/licenses/id/README-thes": "6bbe6d0559d00b6e05acc9477cebfbf0da2b183b4c541cf47f7153dc7e3dfda5", + "assets/spelling/licenses/it_IT/README_hyph_it_IT.txt": "e6f356c3c49bc6016b6a635c20b468468eef6d011953a7051bbdfd56e17f0d3b", + "assets/spelling/licenses/it_IT/README_it_IT.txt": "34c3e93595cf3cf5f3afc9bc0d98eea12593750383f1e82ed1d3ca29f9681283", + "assets/spelling/licenses/it_IT/README_th_it_IT.txt": "07cd83b0d7664ebc620f589524069549f6ead33bccedb7f27d04ed0311e62905", + "assets/spelling/licenses/it_IT/legacy/it_IT_COPYING": "3e41d215a0d9ce21c1fa982d48d2958d539a51011f469f741b51f97e2595ec7e", + "assets/spelling/licenses/it_IT/legacy/it_IT_README.1st": "0328874f246fa9511fb19be6fc38db57f1351b00356e7c7187de59529fb04e6f", + "assets/spelling/licenses/it_IT/legacy/it_IT_README.txt": "ec6332fd60cca5d4cd1b69c78aebae33bb49ccea856ed1d69722e3a23f0dfc82", + "assets/spelling/licenses/it_IT/legacy/it_IT_license.txt": "4de624abc748506298e7be68f2213e422673b43e1674da4b376804096b87dcec", + "assets/spelling/licenses/it_IT/legacy/th_it_IT_COPYING": "3e41d215a0d9ce21c1fa982d48d2958d539a51011f469f741b51f97e2595ec7e", + "assets/spelling/licenses/it_IT/legacy/th_it_IT_README": "3097ecbc3ebd844266b556768748b7c07bde915dd5dd0b70eee30670a91a2599", + "assets/spelling/licenses/ko_KR/README_ko_KR.txt": "e0b13b74b287a71bc668a756fe0d1bcfe5adafb860acab0d81e71593333e1724", + "assets/spelling/licenses/nl_NL/LICENSE.txt": "2189c248cbc054445aeac6cd65b87eebd0a115efeb55ed498b0f2a73441805dd", + "assets/spelling/licenses/nl_NL/README.md": "aa4685a78f32d0d24a67dd5043ef4e39acc8720c3e416fe5d201985980dbc004", + "assets/spelling/licenses/no/COPYING": "e7431ac20e815b6797369e802f9e4bb1b0082485060d8b096235f035d741bd89", + "assets/spelling/licenses/no/README": "0fb3b682bbe5fd3fe23a22d26cc7c417115016bb5f40ec4cf5a62aabe6e5c9c9", + "assets/spelling/licenses/no/README_NO.txt": "0fb3b682bbe5fd3fe23a22d26cc7c417115016bb5f40ec4cf5a62aabe6e5c9c9", + "assets/spelling/licenses/no/README_hyph_NO.txt": "5dd6d4fa61585062d8774afff75d0c51d76bb8126078fef0c0e69740eb093ce0", + "assets/spelling/licenses/pl_PL/README_en.txt": "fb5f9b4a0643821cf88775c0932810c1cd05f236136c913e3eaf1e24806f3f44", + "assets/spelling/licenses/pl_PL/README_pl.txt": "ce3ad7ab1d3a8b767b8f7dcc870796fbda76bc7ad8cde22f6312b0cf86a5bd11", + "assets/spelling/licenses/pl_PL/README_pl_PL.txt": "e691ed1e79934293b0cd6996a14af1520ff893c02f920c09ed0c90aa5f0a8abc", + "assets/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt": "9300db07784a8575743e68cd4c9b966c66f9212c708bd3bbf0190df61e75114a", + "assets/spelling/licenses/pt_BR/README_en.txt": "bb064f3db7ba5f5536da7d079773f692c5f928822e8aebc3d78259ff6cceb9e5", + "assets/spelling/licenses/pt_BR/README_hyph_pt_BR.txt": "07400608865ce4c964cc443a9f354c733ca7f3f7d31f4463222b927cb7c54b87", + "assets/spelling/licenses/pt_BR/README_pt_BR.txt": "9974ce691fdc1fe731717d7a2dc668244405fdc2bf9bf3367eb9b29e85177c88", + "assets/spelling/licenses/pt_BR/license-thes.readme": "253031afa265c7bec5d2e195c659129a7ff254f9d57c57a08eba4a9051868840", + "assets/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt": "8de865eb2f5a83a182d96964d1fe0eee05ae0d68a94f9e9938e4f6349075f5c4", + "assets/spelling/licenses/ru_RU/README_ru_RU.txt": "262af2f6ad70a61e5ee1332ff44fa8ee50edca819cf33207d8ad6ba6a0c9be52", + "assets/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt": "faf06127db60c80b4deefc26a86b3c8a18e1ba46e89d29db8f232501ea850b69", + "assets/spelling/licenses/tr_TR/LICENSE": "3f3d9e0024b1921b067d6f7f88deb4a60cbe7a78e76c64e3f1d7fc3b779b9d04", + "assets/spelling/licenses/tr_TR/README.txt": "18750c09a1e666a6d34854b92dfdc0353c3bfe39008b412d539f52821ecdbdec", + "assets/spelling/licenses/uk_UA/README_hyph_uk_UA.txt": "b5866714694f0e9a7c9d044984b4b39ec6289ade07fa7d2a083a31f5072f3529", + "assets/spelling/licenses/uk_UA/README_th_uk_UA.txt": "29aed1f76c8552b9ba22b00f9f3a5f8316498f95b50f5c1aad3a9743a560ba6c", + "assets/spelling/licenses/uk_UA/README_uk_UA.txt": "664436fee625b4a3e712483947d1711a2f467670f4c389bcf10abca2a564e1dc", + "assets/spelling/licenses/vi/LICENSES-en.txt": "d32e4c8faf974bdeb87da10a5951556b33744cf9b50a7f06125074e11f30d7f6", + "assets/spelling/licenses/vi/LICENSES-vi.txt": "e300eee4d3fd59e2886e785b63f6ded6badc7b9c6883cf73e365b59635d6128d", + "assets/writerside/TGDP-LICENSE": "21b8bf433e69c8d8339de0dd28e5fba4f59c405d01f9a7582c05abe1b99eef21", + "assets/writerside/templates.json": "5c8e1dc03d5252fc0bef448eddadd9f5137272eccf771f961a81680418b0a70c", + "linux/.gitignore": "5ded4f1a9d10d34bf6ee5beb0711d88ee2ef07b0f07ace9ed77935a246e8eb82", + "linux/CMakeLists.txt": "5cc7a01d2531071ea0e5963189c9062c02ac278080ab3ca85904c05c89f24a0b", + "linux/flutter/CMakeLists.txt": "787189e2623313cfee590a0b553338eb9fc68b3af922ddd77c5d39c75f989aeb", + "linux/flutter/generated_plugin_registrant.cc": "6905d91aa4b19ccbca2d15c2dd5af6edb5c5617eb1aa59c59793a271d4edb525", + "linux/flutter/generated_plugin_registrant.h": "00f93bb5b1faefdede8f6065df327522900fb0b8efee86bacf424fd947ed14bb", + "linux/flutter/generated_plugins.cmake": "e4df84c18b9ed8f736e2ac6b41e729953080b659175b35c6976ba521f6d68941", + "linux/io.busystack.busymark.desktop": "4ac6cb8435535f657b43c36a48f7d49428d049a83fd895e42fd1a19527bdbd78", + "linux/io.busystack.busymark.metainfo.xml": "05e7d9068a8c900a7d6a2fef34ff618724eee5f5d81da84b9e34abcc95f7c069", + "linux/runner/CMakeLists.txt": "7acfb32ce6f475c611f2608c187a4fdad85fdb127c3964ec5b39f7bbf6c4c097", + "linux/runner/credential_key_policy.h": "1475590e3a729ac1ff977381b97bdc19c27ed68474617e7b35066dc0e8a66b93", + "linux/runner/gtk_accent.cc": "6dc88751a5e90721893136e525f6be262ee52b774feea1e4b09fe42b7ab1bd21", + "linux/runner/gtk_accent.h": "5e9beec7bc2c9d93055250552a5e51936858950b3a96f3f7359ae9d11579829e", + "linux/runner/gtk_accent_host.cc": "7cd07bcef5b4e6d6f25cba8d1324b7030f1801b6a566f4cefe49d579032754f6", + "linux/runner/gtk_accent_host.h": "25f66de951f83a28ba18c36885df7c2b89e7159ea18cb4658f73a47a7cb226b6", + "linux/runner/gtk_header_icons.cc": "6d7e0d02cbed993b7c2783ad0c8bc0c9703f9ffd4c0ba4d00149c5c9f0f12984", + "linux/runner/gtk_header_icons.h": "b9b8579c4a03b6f5ba146719f6a759504a0dc5127e0c5460a5112d3a64eb2e4e", + "linux/runner/gtk_window_preferences.cc": "336d25df249e5ccdc1e3f593306ebc2259adc98f1b7208ecd5f6ff873c4d6329", + "linux/runner/gtk_window_preferences.h": "b8222fe12212da3c009147977477b1196aa8d881341af1007c1dfe161d4714fa", + "linux/runner/linux_chrome_host.cc": "1af116d3cacd9bf7c778541c8f73a98aef1821a0f9483af2163aee186d7a6c86", + "linux/runner/linux_chrome_host.h": "465800ae17a7dbbe8e601a678f9b31d34ad1d3b94150377e4c769e09084b6db4", + "linux/runner/main.cc": "ea23f7cdf74091d63bba29ef60486370b766157b848f0cfe62bd8b1c1695a0c1", + "linux/runner/my_application.cc": "0e946ba6545746531227e637fcd212f45a2e91f0b000bcec0d2c5bcb7a2fe0ca", + "linux/runner/my_application.h": "a4218d7ac0db8a9a6716daf216b2d4fc6bdc7ac647e3183078b2c962ebdfcf70", + "linux/runner/rich_clipboard_host.cc": "fd389a7d006497dd6b6946a7939b3d3e2bbfff64e4ec79bf86f80027b4febcdf", + "linux/runner/rich_clipboard_host.h": "4b3d8d69f57f452f682cb180212856ed379f2d4b39cbc558b3f1724edcb011f6", + "linux/runner/secure_credential_host.cc": "bef3147238daff28eb738cc619ab0939e5aa9069886f028644c384ab8f41c519", + "linux/runner/secure_credential_host.h": "e1cfbaafd690590aa65fb251f474b892a80606b0ddff15660c22ebd13d9db3ea", + "linux/runner/video_player_host.cc": "4e226d327111539cd7b9ac99bc29f2f9635f4df0a7ed45a5dcc5c4c3e36c6104", + "linux/runner/video_player_host.h": "cf2c9c11e8416eb15a79f067ad485582f8c3630875eda84874f18cc64c4c407d", + "linux/runner/web_render_host.cc": "4a4bf8a9762d6c56c3b5ebd79943d7b870c6e47f720568b47b7f7d79237c4fc4", + "linux/runner/web_render_host.h": "0b44dfcc13b64248d7869901d521c486635e2fac297a969d19c1355dbe448328", + "linux/runner/writerside_dialog_host.cc": "60455609795c298c4f510c7e43b5e75f1b8fa393901142dd6b1cc641ff2b6fe9", + "linux/runner/writerside_dialog_host.h": "028656f71da31933cedc05d0d760d1061bfc539b3ae7db58ca65d5ac3bc1b7e8", + "packages/busymark_spellcheck_native/.gitignore": "ade895c6374f13aafb7e03437feca1dd64fda1f5891c312e53130cdf4c027b64", + "packages/busymark_spellcheck_native/.metadata": "e7588290b8eeb8f0497a65ec65755bd24302660e4faa5ac125ea3e92d76fc595", + "packages/busymark_spellcheck_native/CHANGELOG.md": "d050fbf6b182559dd80bc2515f5dcc8c6375da25daf33636d15331bead5c8d48", + "packages/busymark_spellcheck_native/DEPENDENCIES.md": "d26003331e6214376cc0f4108cab7ed00fe12d8c27d56df83dd5f8b4255b2865", + "packages/busymark_spellcheck_native/LICENSE": "a1cae206f17a9accefe0e4b3ed908cfecfb609d38da2bed69e48c66f4f990a64", + "packages/busymark_spellcheck_native/README.md": "fea1b35afca64f30d2f433e68da86899d70cf0c675cc3c4d95e47d0d79688b5f", + "packages/busymark_spellcheck_native/analysis_options.yaml": "0349d6d825f26f0468bb3715590961481ab4d97e5ae0bf8cd1d2922e700e5794", + "packages/busymark_spellcheck_native/ffigen.yaml": "873f0969143d6a8264daf55e04903627b202b41ec9ced483fcd12c832864fa5e", + "packages/busymark_spellcheck_native/hook/build.dart": "1dba88a2d61297ab98865aa115ca5098f07028c4ed872c4d7ea08094c4bfe8f1", + "packages/busymark_spellcheck_native/lib/busymark_spellcheck_native.dart": "a37e98fc693c92cb259d0792986db0aacc901a3ee2813e5bb4fdeede80f494a3", + "packages/busymark_spellcheck_native/lib/busymark_spellcheck_native_bindings_generated.dart": "5967abfc97c1f862cc3a06120ea1cf8a89ae389e8c26576f3e067eb72b74024c", + "packages/busymark_spellcheck_native/lib/src/native_dictionary.dart": "28dbfb9fae2cc7257b99c5625f88c35df520d9c082926aff2794dae80ce95a2a", + "packages/busymark_spellcheck_native/pubspec.yaml": "d3ccb083ce2ea487257e89c887e85644a3e84e7e729b235ab526b830afcab0a8", + "packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp": "8a8537e39697ab396be7ffc15cdd5de9483df18b86c11eb914f1509bbc7d42e9", + "packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h": "15505a4d995dfaae4b3bb69d47336960f939d5fed728b2fe017df2ace1275e9d", + "packages/busymark_spellcheck_native/test/busymark_spellcheck_native_test.dart": "77cfc1955feb22e9dcb6dc38b8ad11b9d33360031f594fc6e338d692b70da249", + "packages/busymark_spellcheck_native/test/fixtures/test.aff": "f5b2afc04c9a69bca21a87f1bc50879a11f3e2f282b2879f891769845c72cf98", + "packages/busymark_spellcheck_native/test/fixtures/test.dic": "d7466d6156f5f7307bc37ba4371d7f9c2f1a092686734c4ef177d8ce7435158f", + "packages/busymark_spellcheck_native/third_party/hunspell/ARCHIVE.sha256": "86f4db66bff8c06074b74986461afc4fecb0cccfd9a2464700a85ade1990cdbb", + "packages/busymark_spellcheck_native/third_party/hunspell/REVISION": "d371b4b9646b6a37d32a5b4ee4f27ef96a05628dfbfd494b239cfced8450fcf2", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING": "640d90f6ee401241ff62834d0d1b33f83049e99b8bfdfa04ed1b0a1635dde3e7", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING.LESSER": "7c6699c75f87b52bdc542db26d6b1b92892577cda46e20eceb79e2790a1c291b", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING.MPL": "53692a2ed6c6a2c6ec9b32dd0b820dfae91e0a1fcdf625ca9ed0bdf8705fcc4f", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/license.hunspell": "3f7ddd07c296edbfe0a47c7bcc82038ad347a2c4f672345b24f95c624db68513", + "packages/busymark_spellcheck_native/third_party/hunspell/licenses/license.myspell": "dcda061adeed22b26f276c01ec374f930789ae0d684e5aa8f8be309dd680ff20", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am": "fd7509a824d65394d3dfe722c50cf5e45f1626e50f03a94f6f01d3c7cc74506c", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx": "acee5674ad818c997efebd0ef89d5a65c9d95da78777f2313091f519d927414c", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx": "4bd5a8ffd6b3185b0b2cdc8809e41502030a0ad802f9d5bd9716a210d1388ef3", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx": "97bea198e797b42708174647e0b848f96fdfb3fc67976ca07023b63af3fb6c6d", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx": "82226e346bfc7ad08ac9da632b38cb323086cf3ae567cb815a2532e2de2c5028", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx": "e58c06e8441cd92a568d32d340dada33217abf3eac73bc178dd2f08a07ed822c", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx": "60987570255d65973f569fed4569676a49ddb874675cb7d6994b4aa8de83a166", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx": "98450eb638b8ebeb6583a30a78cc2e2718496c35641ab3ca7aab117ab7f4cc92", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx": "96907f999891e33bb19fe21ccfb131cea2fdd5afa513e07e19813bab5c0c2636", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx": "fe1b5fed0f5d74f4c092230c8fbf24f93ba58292f4459d97a7bc734c087365cd", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx": "7f690aedac05e832a15deb8bc6a07f4e08102f3c64d1adf75d5ba2d4934b4d90", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx": "cd984a8d8dc060c8043bc3fbf839789f3b885c05b5d46a8aa45db45eb1055ec6", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx": "638a6f560da318506fed3de74c083209ef0f7875201b8805519ad6ae020b59c3", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx": "73698b4755fa5c65893cdbb9d7b1420b22bfb4c597f323c5f22a5d98a29a62cc", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx": "86b420e6227c8c78cfce233c49966f4c8e234fb87be93f32d8612592ff7f121a", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h": "3426379bc96a57a46fb2a604bb9e0c0f62048f92f61c835f9fe47ed18c02e0fa", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx": "7cf85e6c7d97d12787f1735ef6947172402a77c69ae87d17e3274cd802c30176", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h": "7bda44c1dad647e4bd1de1345aef32b9de88222a5b19d7ca395f02932ddcc1ac", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in": "9dea3f382503feb660f1435ede7cd9fafe371c633d8eba95bd9c3f229c043517", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx": "f70b29817519df2e7ed212d27c911501f7f09c3a6acd0c0c345065eb3999fbbf", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx": "2a1104a6798cbafe57c73b74201237600fc96669b9ac93b76d837ec958816c31", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx": "0a8c38f97a137a70320583121a3efb9d3d56fb1032c53e3e16671c23a9c9c978", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx": "33bd24aecb6542fa640ef6be315d95a157691300fe07be081fc951c971bdcb27", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx": "b66ed3023f56138b28d81939e8718198791d893182eb948e92d64e77c52a6f5f", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx": "0b21233bc185f4bc698c33dbf81758166a682bfd8cedaee88c63aeecd0404b62", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx": "c4d880bc20bc9b6487563a06ee34a9c3043f063b7fb729b0a40ec5ab4098a814", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx": "7ed11c66027d9c129bc5ef48cca626659ed94e7b8a4d970a7fccf902bd32267e", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx": "fcd2f8c5125caf478738475e98ee83c479497e9aa10e9cf16ab95d122a680338", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx": "be4c0add3dac468b4d4cb69bfcf70909f2e3627b39bb3d079ad4989807bfc7b9", + "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx": "9133dcec20ff50528ad482f52c1a6b3206bc2381207e6a4d3ead1a256d94eef0", + "packages/busymark_spellcheck_native/tool/fetch_hunspell.sh": "22e4c75b31cb8262c21991f55123fe8b82bc8db878cb84c805fd5a2710be6f93", + "snap/gnome-46-2404-prime-exclusions.amd64": "28fd45afa604e3a77b69f96e52a5225465a7bfb8d1243a9c2b35a61cebce6fa8", + "tools/ai_ollama_qualification.dart": "49612c1b0a8a57e39b4b156449f36656be6ffb32afce853e94326a1968aff386", + "tools/build_install_snap_local.sh": "978b764eddd59b4b576c80c696fb814df75bcfc0709232a52575faf7d60bc757", + "tools/clipboard_smoke.dart": "056a7c6d8b05d7e7fc7b6b547b48f040c8ec95dc865dde65ddb81fd227a77dab", + "tools/extract_writerside_semantics.py": "0b7df9ec2fd85e2b105ba3e25136f3f489310e8fab57cb2041a38ed9885013ad", + "tools/fetch_d2.sh": "2864a38e0b9bacf0deb43ad62e913f4d15e29b95c2429023f3708021d44df31f", + "tools/fetch_spelling_dictionaries.sh": "44cd91cea58bf20d41a1471bcffb51f3a51dab5907afc4898542480e522ec0cb", + "tools/fetch_typst.sh": "49c889970fb4eb8970b97cd08593588bd221f2c3f26e7a554b3b2ff815e6967c", + "tools/fetch_visualization_web.sh": "6707f349bc5a9a0a50cf5017ee6e2a6cf0c026dcac86cf715197e980a8717988", + "tools/generate_writerside_schema.py": "0799c592152bcf26b6ced3d0d45e0214c43d39e31fbad6ab37823608509cf1a1", + "tools/gtk_accent_host_probe.cc": "0c63dc6d70f19fb08c42ec8e5fec0b2b8a7d2b4e01a2833b046061f48d65731a", + "tools/gtk_accent_probe.cc": "03d38ca6a84f6290d5eff61dac9fa1372073bccebee900e0240fb263f944d7bd", + "tools/history_visual_smoke.dart": "4fa26747ba10678ffe462c84f2cec04625f88600cda278a2fc29b0ea73587f10", + "tools/linux_native_menu_probe.py": "3e3da0b5356e89ca9b4dc27870fcdc5501c1de7166393f1cfd70c0c25bab3d25", + "tools/nextcloud_libsecret_probe.cc": "36acb2ae9798bb452ef47fc6291d8942b064fe806641c43eb9ba3c09d7a32c49", + "tools/nextcloud_login_live_acceptance.py": "a023ffc4c69e57efc78902e274ee48952664a7083dd7500388fcb923023e6b3e", + "tools/nextcloud_notes_live_acceptance.dart": "d5aae7de2a35ad08fa27e464413d03114a44c41edad93e64baf85d93e9f2f55b", + "tools/prepare_spelling_dictionaries.dart": "dce9a217ef5892a9aa15cc3c5b7475da521a6eb9c8e23367820a6dde0cb8be03", + "tools/secure_credential_policy_probe.cc": "239829f23b1c1bd6e0a7e864485fd5ebc30ac68065f32e26e918f87238d54462", + "tools/test_gtk_accent.sh": "00503759f1595e1322ee2cd51d494ec11cc79327ad9bbe5322f78eb651e041c6", + "tools/test_gtk_accent_host.sh": "e73c335815ca84c0ce59ba7be80a6a4e3ba5f927e88421552563068c43f32fef", + "tools/test_nextcloud_libsecret.sh": "7fec5b6f7faea2604951e60fe087bed5938c37b12bfd6fc24f5dfb7348c67b54", + "tools/test_secure_credential_policy.sh": "6315f00f0b58578d037a23cab6489c87c03982d02b55fb109d7365e5da2be2a5", + "tools/validate_writerside_conformance.sh": "8253c4c54fb4fb3bbf4a590a99252d0700e69ae9bd2f55d28ca22b6a71e64fb0", + "tools/verify_html_export_browser.py": "a99b8bddc468760157839529b69aacffdb0047b23e0a640a711b2a66d998a44e", + "tools/visualization/bootstrap.js": "15be4b01e7bb92e016509679927603246d41b5afb499f398f22be043a17602ef", + "tools/visualization/build_render_engines.js": "139d3dd7c654686b781a2c2eadbcaaf5bd5da1bbe6c3d8d20f5c812663dbe7e5", + "tools/visualization/generate_notices.js": "b4dc8256ef42bb112500fbd4e6f99a5b88b70db240fb24cc9b610c3e66b9146f", + "tools/visualization/harness.html": "3124bdf61a51d29828a66c4ebb835270e6c926ab8a9ed26132842b70ccc10f69", + "tools/visualization/mathjax_renderer.js": "586c8ed9f6017e6115e845498390d08c6974ed1c8875b0de1522f939ba054681", + "tools/visualization/mermaid_math_disabled.js": "fad5349d62b419ae5a3ccce5007456b44b5f1f7c92d79691702800e35e821c43", + "tools/visualization/package-lock.json": "1bdea046de42d36b9a11775668fcade742d67e18c5336122c7398c4e4c2e2ee4", + "tools/visualization/package.json": "69a0134990fe5030f93f48fb481a5b1864941ff2f3b003b6d46ef7738b05b4b2", + "tools/visualization/reference.html": "c0747c047dd4f1fc3e268748178445d3d8a35965779e6782e27217ba13feba39", + "tools/visualization/reference.js": "862d24589d1841e5be4e83028e3674d90881ca0ff77fb90ae2f7ee50fbd159d5", + "tools/visualization/render_engines.js": "36c571e797d7fbf1fdecc0b43385ab90cbec8f8cc267ec56906202df7539109e", + "tools/visualization_smoke.py": "5d2efbfaeb09670e544c4d2aaf691b3f201fb9c2342452b1c5ddd05a86d4a62c", + "tools/writerside_toc_visual_smoke.dart": "fe5b831b720f985bb429ceb0ff5c1ee09e12e151409d1adf98fa27a79c11f46c", + "tools/wysiwyg_selection_smoke.dart": "480ae202e4366c7a24be4773f2aafd145ce9deabce80187655a89f2a3a937c89" + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-first-success.json b/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-first-success.json new file mode 100644 index 00000000..937dc1e8 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-first-success.json @@ -0,0 +1,7 @@ +{ + "ok": true, + "observedSpellingCheckCount": 20, + "observedInstalledRevision": "x3", + "initialDictionaryInstallAssertionPassed": true, + "evidence": "The CI script reached the revision-change step only after its online dictionary assertions passed; the live read reported ok=true, error=null and all 20 check keys." +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-wayland-final.json b/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-wayland-final.json new file mode 100644 index 00000000..afa365e5 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-wayland-final.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/snap/busymark/x5/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": false, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": true + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain-before-edit.json b/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain-before-edit.json new file mode 100644 index 00000000..ea8c9267 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain-before-edit.json @@ -0,0 +1,88 @@ +{ + "schema": 2, + "integrity": "ok", + "accountCount": 1, + "notes": [ + { + "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": 184, + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 1791373094, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "base": { + "id": 184, + "etag": "fc8c55106bb2b911e42e153c58ab29eb", + "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", + "title": "New note (2)", + "category": "", + "favorite": false, + "readonly": false, + "modified": 1791373094, + "error": false + }, + "remote": null, + "creationAttempt": null, + "revision": 1, + "ackRevision": 1, + "editorRevision": 0, + "editorContentDigest": null, + "syncState": "synced", + "errorMessage": null + }, + { + "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "accountId": "ff21736a-1572-4b11-9006-658c35f00037", + "serverId": null, + "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", + "title": "New note", + "category": "", + "favorite": false, + "readonly": false, + "error": false, + "modified": 0, + "etag": null, + "base": null, + "remote": null, + "creationAttempt": { + "id": "0200f54d-ee84-400d-bba3-f77e0d503780", + "revision": 44, + "localContent": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", + "wireBody": "{\"content\":\"BusyMark GUI submitted Snap\\n\\n[attachment.bin]()\\n\",\"title\":\"New note\",\"category\":\"\",\"favorite\":false,\"modified\":1791375017}", + "knownServerIds": [ + 89, + 90, + 98, + 94, + 183, + 184 + ], + "candidateServerIds": [], + "separateNoteLocalId": null + }, + "revision": 44, + "ackRevision": 0, + "editorRevision": 44, + "editorContentDigest": "8972d11ea6e3b68a3cac10228de42f8871e1b91f837b757252595ce509af3247", + "syncState": "creationUncertain", + "errorMessage": "Nextcloud may have created this note. Refresh and resolve the uncertain result before creating another." + } + ], + "attachments": [ + { + "id": "2875b68e-250c-41f9-a951-b4b85a792096", + "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", + "filename": "attachment.bin", + "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", + "remotePath": null, + "state": "pending", + "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", + "byteCount": 1024 + } + ] +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain.png b/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain.png new file mode 100644 index 0000000000000000000000000000000000000000..745ee3dc2f6a890275373c620a5f01a88597b6b6 GIT binary patch literal 82610 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ℑkkC_6QN+13Z39IFz~$`Ov}CYc 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 literal 0 HcmV?d00001 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-wayland-final.json b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-wayland-final.json new file mode 100644 index 00000000..c9a4ae26 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-wayland-final.json @@ -0,0 +1 @@ +{"ok":false,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true},"error":"Bad state: Typst visualization export failed: mermaid at line 9","stackTrace":"#0 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:286)\n\n#1 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-desktop.log b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-desktop.log new file mode 100644 index 00000000..602a2f8a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-desktop.log @@ -0,0 +1,13 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:34335): IBUS-WARNING **: 12:59:59.831: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:34335): WARNING **: 13:00:00.417: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:34335): WARNING **: 13:00:00.419: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:34441): GLib-GIO-WARNING **: 13:00:06.544: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:34461): GLib-GIO-WARNING **: 13:00:08.899: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:34599): GLib-GIO-WARNING **: 13:00:27.394: Error releasing name io.busystack.busymark.Sandboxed.WebProcess-b46cec18-d358-479c-b36c-97331bda0f6c: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.56" (uid=1000 pid=34599 comm="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitWeb" label="snap.busymark.busymark (enforce)") interface="org.freedesktop.DBus" member="ReleaseName" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-interpreter.log b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-interpreter.log new file mode 100644 index 00000000..cf0ee92a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-interpreter.log @@ -0,0 +1,11 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:33843): IBUS-WARNING **: 12:48:28.698: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:33843): WARNING **: 12:48:29.409: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:33843): WARNING **: 12:48:29.409: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:33947): GLib-GIO-WARNING **: 12:48:35.003: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:33962): GLib-GIO-WARNING **: 12:48:36.868: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-retry.log b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-retry.log new file mode 100644 index 00000000..ea365746 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-retry.log @@ -0,0 +1,11 @@ +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:33430): IBUS-WARNING **: 12:43:43.184: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory + +** (io.busystack.busymark:33430): WARNING **: 12:43:43.750: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:33430): WARNING **: 12:43:43.752: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(process:33533): GLib-GIO-WARNING **: 12:43:50.155: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:33552): GLib-GIO-WARNING **: 12:43:52.118: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-final.log b/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-final.log new file mode 100644 index 00000000..bd73450c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-final.log @@ -0,0 +1,58 @@ +could not load cursor 'dnd-move' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-none' +could not load cursor 'dnd-move' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-none' + +(io.busystack.busymark:38838): Gdk-WARNING **: 13:49:50.620: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop + +(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:49:51.222: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:50:05.021: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:50:09.254: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:38838): IBUS-WARNING **: 13:50:09.304: Failed to mkdir /home/tester/snap/busymark/x5/.config/ibus/bus: Not a directory +Gdk-Message: 13:50:09.330: Unable to load from the cursor theme + +(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:50:10.776: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (io.busystack.busymark:38838): WARNING **: 13:50:10.808: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:38838): WARNING **: 13:50:10.809: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:50:13.597: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(process:38943): GLib-GIO-WARNING **: 13:50:14.785: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:38973): GLib-GIO-WARNING **: 13:50:17.144: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(io.busystack.busymark:39129): Gdk-WARNING **: 13:51:20.890: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop + +(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:21.243: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:24.583: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:26.722: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:39129): IBUS-WARNING **: 13:51:26.764: Failed to mkdir /home/tester/snap/busymark/x5/.config/ibus/bus: Not a directory +Gdk-Message: 13:51:26.780: Unable to load from the cursor theme + +(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:27.700: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (io.busystack.busymark:39129): WARNING **: 13:51:27.721: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied + +** (io.busystack.busymark:39129): WARNING **: 13:51:27.721: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied + +(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:29.594: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(process:39227): GLib-GIO-WARNING **: 13:51:36.574: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(process:39246): GLib-GIO-WARNING **: 13:51:37.985: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox + +(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:52:05.176: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:52:47.182: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-socket-fixture-failure.log b/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-socket-fixture-failure.log new file mode 100644 index 00000000..9dcbedc4 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-socket-fixture-failure.log @@ -0,0 +1,8 @@ +could not load cursor 'dnd-move' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-none' +could not load cursor 'dnd-move' +could not load cursor 'dnd-copy' +could not load cursor 'dnd-none' + +(io.busystack.busymark:38373): Gtk-WARNING **: 13:47:44.301: cannot open display: diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-integration.log b/delivery/nextcloud-explicit-adoption/evidence/spelling-integration.log new file mode 100644 index 00000000..38c93569 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/spelling-integration.log @@ -0,0 +1,6 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart +00:00 +0: real en-CA checks pasted rich content completely in both editors +00:14 +1: packaged catalog opens real regional and non-Latin dictionaries +Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff +00:20 +2: real en-CA checks the general Markdown fixture completely +00:23 +3: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-release.json b/delivery/nextcloud-explicit-adoption/evidence/spelling-release.json new file mode 100644 index 00000000..28b40751 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/spelling-release.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/snap/busymark/x3/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": false, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": true + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-resources.log b/delivery/nextcloud-explicit-adoption/evidence/spelling-resources.log new file mode 100644 index 00000000..e69de29b diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-denied-network.log b/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-denied-network.log new file mode 100644 index 00000000..527c0a49 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-denied-network.log @@ -0,0 +1 @@ +sudo: a password is required diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.json b/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.json new file mode 100644 index 00000000..76fa735e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.json @@ -0,0 +1,25 @@ +{ + "ok": true, + "checks": { + "resourceRoot": "/home/albert/busystack/busymark/build/linux/x64/release/bundle/share/busymark/spelling", + "resourceChecksumInventory": true, + "nativeDependencyNotices": true, + "availableDictionaryCount": 48, + "bundledDictionaryFileCount": 0, + "dictionaryInstalledDuringRun": true, + "installedDictionaryCount": 1, + "sessionLanguageTransition": true, + "realRichUnderline": true, + "realSourceUnderline": true, + "quotedFencedCodeExcluded": true, + "rejectedWord": "helo", + "suggestion": "hello", + "correctedSource": "This is hello.\n", + "sourceEditorTransaction": true, + "workspaceHistoryRoundTrip": true, + "formattedRichEditorTransaction": true, + "tableCellEditorTransaction": true, + "personalWordPersisted": true, + "personalWordPresentBeforeRun": false + } +} diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.log b/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.log new file mode 100644 index 00000000..f358d221 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.log @@ -0,0 +1,9 @@ + +(io.busystack.busymark:851112): dbind-WARNING **: 03:38:47.799: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory + +(io.busystack.busymark:851112): Atk-CRITICAL **: 03:38:47.923: atk_socket_embed: assertion 'plug_id != NULL' failed +[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). + +** (process:2): WARNING **: 03:38:49.509: Failed to connect to bus: Could not connect: No such file or directory + +** (process:2): WARNING **: 03:38:49.588: Can't connect to a11y bus: Error receiving data: Connection reset by peer diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-2.log b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-2.log new file mode 100644 index 00000000..417d3bdb --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-2.log @@ -0,0 +1,7 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:00 +0: selecting and confirming candidate binds draft and retains newer edits +02:32 +0: selecting and confirming candidate binds draft and retains newer edits - did not complete [E] +02:32 +0: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits (did not complete) diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-final.log b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-final.log new file mode 100644 index 00000000..6184f82e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-final.log @@ -0,0 +1,18 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:00 +0: Nextcloud settings route selects its dedicated page +00:02 +1: remote editor tabs retain note titles through metadata rename +00:08 +2: cached note list searches content and excludes clean deletion tombstones +00:11 +3: favorites and ancestor category filtering operate on cached notes +00:12 +4: moving the last selected category note clears its filter +00:13 +5: the final category can disappear without hiding uncategorized notes +00:13 +6: uncertain attachment controls remain available with fetched remote state +00:17 +7: read-only metadata stays read-only while favorite is writable and export is explicit +00:17 +8: attachment deletion warns about links and cancellation retains the file +00:19 +9: remote deletion offers explicit discard with a second confirmation +00:19 +10: merge requires explicit choices for divergent scalar metadata +00:20 +11: read-only favorite conflict offers a safe merge +00:20 +12: uncertain creation lets the user select a candidate +00:21 +13: selecting and confirming candidate binds draft and retains newer edits +00:21 +14: forbidden pending changes offer recovery without overwrite +00:22 +15: unavailable pending changes offer recovery without overwrite +00:22 +16: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-real-zone.log b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-real-zone.log new file mode 100644 index 00000000..53f0cb55 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-real-zone.log @@ -0,0 +1,29 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:00 +0: selecting and confirming candidate binds draft and retains newer edits +══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ +The following StateError was thrown running a test: +Bad state: No element + +When the exception was thrown, this was the stack: +#0 Iterable.single (dart:core/iterable.dart:694:25) +#1 WidgetController.widget (package:flutter_test/src/controller.dart:828:30) +#2 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:807:12) + +#3 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) + +#4 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) + + +(elided one frame from package:stack_trace) + +The test description was: + selecting and confirming candidate binds draft and retains newer edits +════════════════════════════════════════════════════════════════════════════════════════════════════ +00:04 +0 -1: selecting and confirming candidate binds draft and retains newer edits [E] + Test failed. See exception logs above. + The test description was: selecting and confirming candidate binds draft and retains newer edits + +00:04 +0 -1: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation.log b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation.log new file mode 100644 index 00000000..c0031531 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation.log @@ -0,0 +1,3 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:00 +0: selecting and confirming candidate binds draft and retains newer edits +00:05 +1: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-debug-trace.log b/delivery/nextcloud-explicit-adoption/evidence/ui-debug-trace.log new file mode 100644 index 00000000..875d5db4 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/ui-debug-trace.log @@ -0,0 +1,35 @@ +00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +00:00 +0: selecting and confirming candidate binds draft and retains newer edits +debug: tapping confirm +debug: tapped confirm +debug: iteration 0 pumping +debug: iteration 0 waiting +debug: iteration 1 pumping +debug: candidate GET +debug: iteration 1 waiting +debug: iteration 2 pumping +debug: iteration 2 waiting +debug: iteration 3 pumping +debug: iteration 3 waiting +debug: iteration 4 pumping +debug: iteration 4 waiting +unhandled error during finalization of test: +/home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart +PathNotFoundException: Deletion failed, path = '/tmp/flutter_tools.TOVRSC/flutter_test_listener.ILVVKQ' (OS Error: No such file or directory, errno = 2) +#0 _Directory._deleteSync (dart:io/directory_impl.dart:216:7) +#1 FileSystemEntity.deleteSync (dart:io/file_system_entity.dart:425:7) +#2 ForwardingFileSystemEntity.deleteSync (package:file/src/forwarding/forwarding_file_system_entity.dart:70:16) +#3 ErrorHandlingDirectory.deleteSync. (package:flutter_tools/src/base/error_handling_io.dart:717:22) +#4 _runSync (package:flutter_tools/src/base/error_handling_io.dart:1118:16) +#5 ErrorHandlingDirectory.deleteSync (package:flutter_tools/src/base/error_handling_io.dart:716:12) +#6 FlutterPlatform._createListenerDart. (package:flutter_tools/src/test/flutter_platform.dart:786:15) +#7 FlutterPlatform._startTest.finalize (package:flutter_tools/src/test/flutter_platform.dart:591:26) + +#8 asyncGuard. (package:flutter_tools/src/base/async_guard.dart:108:24) + + +03:52 +0: selecting and confirming candidate binds draft and retains newer edits - did not complete [E] +03:52 +0: Some tests failed. + +Failing tests: + /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits (did not complete) diff --git a/delivery/nextcloud-explicit-adoption/evidence/upstream-source-hashes.json b/delivery/nextcloud-explicit-adoption/evidence/upstream-source-hashes.json new file mode 100644 index 00000000..2173410e --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/upstream-source-hashes.json @@ -0,0 +1,10 @@ +{ + "6.0.1": { + "docs/api/v1.md": "75f6d70833fb79542947efeea7c5d9e6707b1056769bea0a91d158f1caff41a4", + "lib/Controller/NotesApiController.php": "ec2f4c96e4d95dd3564f498d16be20fec1dc077a9b9d41eaefc51a2b12c74ab4" + }, + "6.1.0": { + "docs/api/v1.md": "b675f4d2ab24fd7b2580f0acf3b897e90eb4a1705e9f3a351a87e6e58d1c97f7", + "lib/Controller/NotesApiController.php": "93193faafe00d9e5eae5e4f111794f95d821233373b06e7768313bf27cd13c8f" + } +} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/visualization-release-x11.json new file mode 100644 index 00000000..f63de1c9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/visualization-release-x11.json @@ -0,0 +1 @@ +{"ok":false,"checks":{},"error":"PlatformException(visualization.webRenderFailed, Unsupported result type, null, null)","stackTrace":"#0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:653)\n#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:366)\n\n#2 Future.timeout. (dart:async/future_impl.dart:1061)\n\n#3 PlatformWebRenderHost._invokeCancellable (package:busymark/src/visualization/web_render_host.dart:292)\n\n#4 PlatformWebRenderHost._invokeMap (package:busymark/src/visualization/web_render_host.dart:261)\n\n#5 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:74)\n\n#6 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke-mermaid.svg b/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke-mermaid.svg new file mode 100644 index 00000000..6a2e57b0 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke-mermaid.svg @@ -0,0 +1 @@ +MarkdownPreview \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b1e36ec38e2d909d488ac9aa760dee0f782a13a8 GIT binary patch literal 67398 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

hHw5Kp3#w zaRyaKOE_HF#SI1n1pFb@Pi2aL?D99&uIk&k!2tqgaZwq?o%Z|{_M@x*;$y!X2;jEB z)gPX({Ac6<>Q~}*1LDFz1xcAdLla;^HXv0X6gk46pzk{8**Qa67xb?X1)S!*6UlVH z7v8YEXX6Oxk^K(10oay+jq^p&ZFe^hEB8BYHa5C2m^+W$4|+>ChwIL^Fhxa>7I0}} z%>!WB009r~Vq@hF=drbPgxe@9gY@leylmWVy4l#;xY+=G1qTS!?A!nxKpCJL62N|V zARP~PM>}U5IM0sYx*%;!rypoGaQ7Yb@83-XJpUT$MShR;B0nO%%=fMJ%#^?X{3}L# z1C<^T0~#oMyVNL)cg~zG#J>a@MoCpZd$pW_Wm6Y=te+$Kf%OhckvUKklxh}aj-OC z6hF~Q%Iv0&NegjL2?WWza#-DT#mX_X4D+At5 zD=WR5R!(jgt)$rQK9>~#2RyLEE}N7D{{x=XKj2AA@6wf|%s=4CO6yT!22k>>IKYiSKDO3vb*d>Msm0Q zWF%#F;{l!db9-f^B>w?VZdW^Gq<8C222jE-elilfX=Qf%jEtPvu9zb$wp$h;tnKnG zS@3S#kd@u7D>*UAUHvO3F1s5hvvZEY-|aw7ZdV)vmMpt;04zUt`5CN2g9 zn4jtp7n76zxn6NuS@3R{+^&8DLi?^h0!Eo#ehwBB+vVqAF/dev/null' EXIT +xvfb-run -a -s '-screen 0 1280x1024x24' \ + env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ + LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ + --spelling-release-smoke="$report" +python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert not report["checks"]["dictionaryInstalledDuringRun"], report; assert report["checks"]["installedDictionaryCount"] == 1, report; assert report["checks"]["personalWordPresentBeforeRun"], report' "$report" +sudo snap connect busymark:network +trap - EXIT + + +report="$HOME/snap/busymark/common/visualization-release-x11.json" +mkdir -p "$(dirname "$report")" +timeout --signal=TERM 300s \ + xvfb-run -a -s '-screen 0 1280x1024x24' \ + env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ + LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ + --visualization-release-smoke="$report" +python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report' "$report" +test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" + + +runtime_dir="/run/user/$(id -u)" +sudo install -d -m 700 -o "$(id -u)" -g "$(id -g)" "$runtime_dir" +XDG_RUNTIME_DIR="$runtime_dir" \ + weston --backend=headless-backend.so --socket=wayland-99 \ + --idle-time=0 --log="${RUNNER_TEMP}/weston-snap.log" & +weston_pid=$! +sudo snap disconnect busymark:network +trap 'sudo snap connect busymark:network >/dev/null; kill "$weston_pid" 2>/dev/null || true' EXIT +for attempt in {1..40}; do + if [ -S "$runtime_dir/wayland-99" ]; then + break + fi + if ! kill -0 "$weston_pid" 2>/dev/null; then + cat "${RUNNER_TEMP}/weston-snap.log" + exit 1 + fi + sleep 0.25 +done +test -S "$runtime_dir/wayland-99" +spelling_report="$HOME/snap/busymark/common/spelling-release-wayland.json" +XDG_RUNTIME_DIR="$runtime_dir" WAYLAND_DISPLAY=wayland-99 \ + GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 \ + LIBGL_ALWAYS_SOFTWARE=1 \ + timeout --signal=TERM 300s snap run busymark \ + --spelling-release-smoke="$spelling_report" +python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert report["checks"]["sourceEditorTransaction"], report; assert report["checks"]["formattedRichEditorTransaction"], report; assert report["checks"]["tableCellEditorTransaction"], report' "$spelling_report" +report="$HOME/snap/busymark/common/visualization-release-wayland.json" +XDG_RUNTIME_DIR="$runtime_dir" WAYLAND_DISPLAY=wayland-99 \ + GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 \ + LIBGL_ALWAYS_SOFTWARE=1 \ + timeout --signal=TERM 300s snap run busymark \ + --visualization-release-smoke="$report" +python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report' "$report" +test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" +sudo snap connect busymark:network +trap 'kill "$weston_pid" 2>/dev/null || true' EXIT diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-installed-wayland.sh b/delivery/nextcloud-explicit-adoption/evidence/vm-installed-wayland.sh new file mode 100644 index 00000000..909bf34a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/vm-installed-wayland.sh @@ -0,0 +1,22 @@ +#!/bin/bash +set -euo pipefail +export XDG_RUNTIME_DIR=/run/user/1000 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus LP_NUM_THREADS=2 LIBGL_ALWAYS_SOFTWARE=1 BUSYMARK_RELEASE_SMOKE=1 +mkdir -p "$HOME/snap-evidence" +weston --backend=headless --renderer=pixman --socket=wayland-99 --idle-time=0 --log="$HOME/snap-evidence/weston-final.log" & +wpid=$! +sudo snap disconnect busymark:network +trap 'sudo snap connect busymark:network >/dev/null; kill "$wpid" 2>/dev/null || true' EXIT +for attempt in {1..40}; do + test ! -S "$XDG_RUNTIME_DIR/wayland-99" || break + kill -0 "$wpid" + sleep 0.25 +done +test -S "$XDG_RUNTIME_DIR/wayland-99" +export WAYLAND_DISPLAY=wayland-99 GDK_BACKEND=wayland +report="$HOME/snap/busymark/common/spelling-release-wayland-final.json" +timeout --signal=TERM 300s snap run busymark --spelling-release-smoke="$report" +python3 -c 'import json,sys; r=json.load(open(sys.argv[1])); assert r["ok"],r; assert r["checks"]["sourceEditorTransaction"] and r["checks"]["formattedRichEditorTransaction"] and r["checks"]["tableCellEditorTransaction"],r; assert not r["checks"]["dictionaryInstalledDuringRun"] and r["checks"]["personalWordPresentBeforeRun"],r' "$report" +report="$HOME/snap/busymark/common/visualization-release-wayland-final.json" +timeout --signal=TERM 300s snap run busymark --visualization-release-smoke="$report" +python3 -c 'import json,sys; r=json.load(open(sys.argv[1])); assert r["ok"],r' "$report" +test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-native-dependencies.log b/delivery/nextcloud-explicit-adoption/evidence/vm-native-dependencies.log new file mode 100644 index 00000000..cb548a53 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/vm-native-dependencies.log @@ -0,0 +1,186 @@ +Reading package lists... +Building dependency tree... +Reading state information... +fonts-noto-mono is already the newest version (20201225-2). +fonts-noto-mono set to manually installed. +The following NEW packages will be installed: + fonts-noto-core libhandy-1-0 +0 upgraded, 2 newly installed, 0 to remove and 21 not upgraded. +Need to get 13.5 MB of archives. +After this operation, 44.3 MB of additional disk space will be used. +Get:1 http://archive.ubuntu.com/ubuntu noble/main amd64 fonts-noto-core all 20201225-2 [13.3 MB] +Get:2 http://archive.ubuntu.com/ubuntu noble/main amd64 libhandy-1-0 amd64 1.8.3-1build2 [232 kB] +debconf: unable to initialize frontend: Dialog +debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) +debconf: falling back to frontend: Readline +debconf: unable to initialize frontend: Readline +debconf: (This frontend requires a controlling tty.) +debconf: falling back to frontend: Teletype +dpkg-preconfigure: unable to re-open stdin: +Fetched 13.5 MB in 5s (2782 kB/s) +Selecting previously unselected package fonts-noto-core. +(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 95969 files and directories currently installed.) +Preparing to unpack .../fonts-noto-core_20201225-2_all.deb ... +Unpacking fonts-noto-core (20201225-2) ... +Selecting previously unselected package libhandy-1-0:amd64. +Preparing to unpack .../libhandy-1-0_1.8.3-1build2_amd64.deb ... +Unpacking libhandy-1-0:amd64 (1.8.3-1build2) ... +Setting up fonts-noto-core (20201225-2) ... +Setting up libhandy-1-0:amd64 (1.8.3-1build2) ... +Processing triggers for libc-bin (2.39-0ubuntu8.9) ... +Processing triggers for fontconfig (2.15.0-1.1ubuntu2) ... +debconf: unable to initialize frontend: Dialog +debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) +debconf: falling back to frontend: Readline +debconf: unable to initialize frontend: Readline +debconf: (This frontend requires a controlling tty.) +debconf: falling back to frontend: Teletype + +Running kernel seems to be up-to-date. + +No services need to be restarted. + +No containers need to be restarted. + +No user sessions are running outdated binaries. + +No VM guests are running outdated hypervisor (qemu) binaries on this host. + linux-vdso.so.1 (0x00007ffd0bbfa000) + libfile_selector_linux_plugin.so => /home/tester/busymark-release/lib/libfile_selector_linux_plugin.so (0x0000708287caa000) + libgtk_plugin.so => /home/tester/busymark-release/lib/libgtk_plugin.so (0x0000708287ca4000) + libscreen_retriever_linux_plugin.so => /home/tester/busymark-release/lib/libscreen_retriever_linux_plugin.so (0x0000708287c9e000) + liburl_launcher_linux_plugin.so => /home/tester/busymark-release/lib/liburl_launcher_linux_plugin.so (0x0000708287c97000) + libwindow_manager_plugin.so => /home/tester/busymark-release/lib/libwindow_manager_plugin.so (0x0000708287c8b000) + libyaru_window_linux_plugin.so => /home/tester/busymark-release/lib/libyaru_window_linux_plugin.so (0x0000708287c81000) + libflutter_linux_gtk.so => /home/tester/busymark-release/lib/libflutter_linux_gtk.so (0x0000708286a00000) + libhandy-1.so.0 => /lib/x86_64-linux-gnu/libhandy-1.so.0 (0x0000708287bd7000) + libsecret-1.so.0 => /lib/x86_64-linux-gnu/libsecret-1.so.0 (0x0000708287b78000) + libwebkit2gtk-4.1.so.0 => /lib/x86_64-linux-gnu/libwebkit2gtk-4.1.so.0 (0x0000708280e00000) + libgtk-3.so.0 => /lib/x86_64-linux-gnu/libgtk-3.so.0 (0x0000708280600000) + libgdk-3.so.0 => /lib/x86_64-linux-gnu/libgdk-3.so.0 (0x0000708286905000) + libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x0000708287b5a000) + libpangocairo-1.0.so.0 => /lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x0000708287b49000) + libpango-1.0.so.0 => /lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x0000708287ade000) + libharfbuzz.so.0 => /lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007082804f3000) + libatk-1.0.so.0 => /lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x0000708287ab4000) + libcairo-gobject.so.2 => /lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x0000708287aa6000) + libcairo.so.2 => /lib/x86_64-linux-gnu/libcairo.so.2 (0x00007082803af000) + libgdk_pixbuf-2.0.so.0 => /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007082868d7000) + libsoup-3.0.so.0 => /lib/x86_64-linux-gnu/libsoup-3.0.so.0 (0x0000708280315000) + libgmodule-2.0.so.0 => /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x0000708287a9f000) + libgio-2.0.so.0 => /lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x0000708280145000) + libjavascriptcoregtk-4.1.so.0 => /lib/x86_64-linux-gnu/libjavascriptcoregtk-4.1.so.0 (0x000070827e200000) + libgobject-2.0.so.0 => /lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007082800e2000) + libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x000070827e0b7000) + libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x000070827de00000) + libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x000070827dd17000) + libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x0000708280dd2000) + libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x000070827da00000) + libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007082868d2000) + libepoxy.so.0 => /lib/x86_64-linux-gnu/libepoxy.so.0 (0x000070827d8dd000) + libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x000070827dcc6000) + libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007082868cd000) + /lib64/ld-linux-x86-64.so.2 (0x0000708287cdb000) + libfribidi.so.0 => /lib/x86_64-linux-gnu/libfribidi.so.0 (0x00007082800c4000) + libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x000070827d794000) + libatomic.so.1 => /lib/x86_64-linux-gnu/libatomic.so.1 (0x00007082868c2000) + libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x000070827d6c8000) + libwebpmux.so.3 => /lib/x86_64-linux-gnu/libwebpmux.so.3 (0x00007082868b2000) + libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x000070827e089000) + libicudata.so.74 => /lib/x86_64-linux-gnu/libicudata.so.74 (0x000070827b800000) + libicui18n.so.74 => /lib/x86_64-linux-gnu/libicui18n.so.74 (0x000070827b400000) + libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x000070827d5e8000) + libjpeg.so.8 => /lib/x86_64-linux-gnu/libjpeg.so.8 (0x000070827dc43000) + libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x000070827d5b0000) + libicuuc.so.74 => /lib/x86_64-linux-gnu/libicuuc.so.74 (0x000070827b000000) + libxml2.so.2 => /lib/x86_64-linux-gnu/libxml2.so.2 (0x000070827b21e000) + libsqlite3.so.0 => /lib/x86_64-linux-gnu/libsqlite3.so.0 (0x000070827ae98000) + libxslt.so.1 => /lib/x86_64-linux-gnu/libxslt.so.1 (0x000070827d56f000) + liblcms2.so.2 => /lib/x86_64-linux-gnu/liblcms2.so.2 (0x000070827b79e000) + libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x000070827dc1e000) + libgstallocators-1.0.so.0 => /lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 (0x00007082800ba000) + libgstapp-1.0.so.0 => /lib/x86_64-linux-gnu/libgstapp-1.0.so.0 (0x00007082800a4000) + libgstbase-1.0.so.0 => /lib/x86_64-linux-gnu/libgstbase-1.0.so.0 (0x000070827ae13000) + libgstreamer-1.0.so.0 => /lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 (0x000070827acc0000) + libgstpbutils-1.0.so.0 => /lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 (0x000070827b75b000) + libgstaudio-1.0.so.0 => /lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 (0x000070827ac3b000) + libgsttag-1.0.so.0 => /lib/x86_64-linux-gnu/libgsttag-1.0.so.0 (0x000070827abfa000) + libgstvideo-1.0.so.0 => /lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 (0x000070827ab25000) + libgstgl-1.0.so.0 => /lib/x86_64-linux-gnu/libgstgl-1.0.so.0 (0x000070827aa92000) + libgstfft-1.0.so.0 => /lib/x86_64-linux-gnu/libgstfft-1.0.so.0 (0x000070827dc13000) + libwebpdemux.so.2 => /lib/x86_64-linux-gnu/libwebpdemux.so.2 (0x000070827e080000) + libwebp.so.7 => /lib/x86_64-linux-gnu/libwebp.so.7 (0x000070827aa17000) + libharfbuzz-icu.so.0 => /lib/x86_64-linux-gnu/libharfbuzz-icu.so.0 (0x000070827d56a000) + libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x000070827a8da000) + libwayland-server.so.0 => /lib/x86_64-linux-gnu/libwayland-server.so.0 (0x000070827a8c4000) + libwayland-egl.so.1 => /lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x000070827d565000) + libwayland-client.so.0 => /lib/x86_64-linux-gnu/libwayland-client.so.0 (0x000070827b20e000) + libmanette-0.2.so.0 => /lib/x86_64-linux-gnu/libmanette-0.2.so.0 (0x000070827a894000) + libseccomp.so.2 => /lib/x86_64-linux-gnu/libseccomp.so.2 (0x000070827a874000) + libenchant-2.so.2 => /lib/x86_64-linux-gnu/libenchant-2.so.2 (0x000070827b74e000) + libgbm.so.1 => /lib/x86_64-linux-gnu/libgbm.so.1 (0x000070827a86d000) + libdrm.so.2 => /lib/x86_64-linux-gnu/libdrm.so.2 (0x000070827a856000) + libtasn1.so.6 => /lib/x86_64-linux-gnu/libtasn1.so.6 (0x000070827a840000) + libhyphen.so.0 => /lib/x86_64-linux-gnu/libhyphen.so.0 (0x000070827a838000) + libpangoft2-1.0.so.0 => /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x000070827a81d000) + libXi.so.6 => /lib/x86_64-linux-gnu/libXi.so.6 (0x000070827a80a000) + libatk-bridge-2.0.so.0 => /lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0 (0x000070827a7ce000) + libXfixes.so.3 => /lib/x86_64-linux-gnu/libXfixes.so.3 (0x000070827a7c6000) + libxkbcommon.so.0 => /lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x000070827a77b000) + libwayland-cursor.so.0 => /lib/x86_64-linux-gnu/libwayland-cursor.so.0 (0x000070827a771000) + libXext.so.6 => /lib/x86_64-linux-gnu/libXext.so.6 (0x000070827a75d000) + libXcursor.so.1 => /lib/x86_64-linux-gnu/libXcursor.so.1 (0x000070827a751000) + libXdamage.so.1 => /lib/x86_64-linux-gnu/libXdamage.so.1 (0x000070827a74c000) + libXcomposite.so.1 => /lib/x86_64-linux-gnu/libXcomposite.so.1 (0x000070827a747000) + libXrandr.so.2 => /lib/x86_64-linux-gnu/libXrandr.so.2 (0x000070827a738000) + libXinerama.so.1 => /lib/x86_64-linux-gnu/libXinerama.so.1 (0x000070827a733000) + libthai.so.0 => /lib/x86_64-linux-gnu/libthai.so.0 (0x000070827a728000) + libgraphite2.so.3 => /lib/x86_64-linux-gnu/libgraphite2.so.3 (0x000070827a702000) + libXrender.so.1 => /lib/x86_64-linux-gnu/libXrender.so.1 (0x000070827a6f6000) + libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x000070827a6cb000) + libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x000070827a6bc000) + libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x000070827a6b7000) + libpixman-1.so.0 => /lib/x86_64-linux-gnu/libpixman-1.so.0 (0x000070827a608000) + libpsl.so.5 => /lib/x86_64-linux-gnu/libpsl.so.5 (0x000070827a5f4000) + libbrotlidec.so.1 => /lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x000070827a5e4000) + libgssapi_krb5.so.2 => /lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x000070827a590000) + libnghttp2.so.14 => /lib/x86_64-linux-gnu/libnghttp2.so.14 (0x000070827a565000) + libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x000070827a518000) + libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x000070827a4eb000) + libffi.so.8 => /lib/x86_64-linux-gnu/libffi.so.8 (0x000070827a4dd000) + libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x000070827a443000) + libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0 (0x000070827a42f000) + libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x000070827a422000) + liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x000070827a400000) + liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x000070827a3cc000) + libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x000070827a312000) + libunwind.so.8 => /lib/x86_64-linux-gnu/libunwind.so.8 (0x000070827a2f7000) + libdw.so.1 => /lib/x86_64-linux-gnu/libdw.so.1 (0x000070827a243000) + liborc-0.4.so.0 => /lib/x86_64-linux-gnu/liborc-0.4.so.0 (0x000070827a191000) + libGL.so.1 => /lib/x86_64-linux-gnu/libGL.so.1 (0x000070827a108000) + libEGL.so.1 => /lib/x86_64-linux-gnu/libEGL.so.1 (0x000070827a0f6000) + libX11-xcb.so.1 => /lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x000070827a0f1000) + libgudev-1.0.so.0 => /lib/x86_64-linux-gnu/libgudev-1.0.so.0 (0x000070827a0e4000) + libsharpyuv.so.0 => /lib/x86_64-linux-gnu/libsharpyuv.so.0 (0x000070827a0dc000) + libevdev.so.2 => /lib/x86_64-linux-gnu/libevdev.so.2 (0x000070827a0bc000) + libatspi.so.0 => /lib/x86_64-linux-gnu/libatspi.so.0 (0x000070827a082000) + libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x000070827a033000) + libdatrie.so.1 => /lib/x86_64-linux-gnu/libdatrie.so.1 (0x000070827a02a000) + libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x000070827a022000) + libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x000070827a01a000) + libunistring.so.5 => /lib/x86_64-linux-gnu/libunistring.so.5 (0x0000708279e6d000) + libidn2.so.0 => /lib/x86_64-linux-gnu/libidn2.so.0 (0x0000708279e4b000) + libbrotlicommon.so.1 => /lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x0000708279e28000) + libkrb5.so.3 => /lib/x86_64-linux-gnu/libkrb5.so.3 (0x0000708279d5d000) + libk5crypto.so.3 => /lib/x86_64-linux-gnu/libk5crypto.so.3 (0x0000708279d31000) + libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x0000708279d2b000) + libkrb5support.so.0 => /lib/x86_64-linux-gnu/libkrb5support.so.0 (0x0000708279d1e000) + libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x0000708279ce3000) + libelf.so.1 => /lib/x86_64-linux-gnu/libelf.so.1 (0x0000708279cc2000) + libGLdispatch.so.0 => /lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x0000708279c0a000) + libGLX.so.0 => /lib/x86_64-linux-gnu/libGLX.so.0 (0x0000708279bd7000) + libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x0000708279ba4000) + libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x0000708279b8e000) + libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 (0x0000708279b85000) + libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x0000708279b73000) + libmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x0000708279b64000) diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-native-smokes.sh b/delivery/nextcloud-explicit-adoption/evidence/vm-native-smokes.sh new file mode 100644 index 00000000..e411390c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/vm-native-smokes.sh @@ -0,0 +1,25 @@ +#!/bin/bash +set -euo pipefail +export DISPLAY=:101 XDG_RUNTIME_DIR=/run/user/1000 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus +export LIBGL_ALWAYS_SOFTWARE=1 LP_NUM_THREADS=2 BUSYMARK_RELEASE_SMOKE=1 +mkdir -p "$HOME/native-evidence" "$HOME/native-spelling-profile-final" +Xvfb :101 -screen 0 1280x1024x24 -nolisten tcp > "$HOME/native-evidence/xvfb.log" 2>&1 & +xpid=$! +trap 'kill "$xpid" 2>/dev/null || true' EXIT +sleep 2 +export XDG_DATA_HOME="$HOME/native-spelling-profile-final" GDK_BACKEND=x11 +"$HOME/busymark-release/busymark" --spelling-release-smoke="$HOME/native-evidence/spelling-online-final.json" > "$HOME/native-evidence/spelling-online.log" 2>&1 +sudo unshare --net --fork -- runuser -u tester -- env DISPLAY=:101 XDG_RUNTIME_DIR=/run/user/1000 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus XDG_DATA_HOME="$XDG_DATA_HOME" GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 LIBGL_ALWAYS_SOFTWARE=1 LP_NUM_THREADS=2 "$HOME/busymark-release/busymark" --spelling-release-smoke="$HOME/native-evidence/spelling-x11-denied-network-final.json" > "$HOME/native-evidence/spelling-x11-denied-network.log" 2>&1 +weston --backend=headless --renderer=pixman --socket=wayland-native --idle-time=0 --log="$HOME/native-evidence/weston.log" & +wpid=$! +trap 'kill "$xpid" "$wpid" 2>/dev/null || true' EXIT +sleep 3 +sudo unshare --net --fork -- runuser -u tester -- env XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-native XDG_DATA_HOME="$XDG_DATA_HOME" GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 LIBGL_ALWAYS_SOFTWARE=1 LP_NUM_THREADS=2 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus "$HOME/busymark-release/busymark" --spelling-release-smoke="$HOME/native-evidence/spelling-wayland-denied-network-final.json" > "$HOME/native-evidence/spelling-wayland-denied-network.log" 2>&1 +python3 - <<'PY' +import json,pathlib +r=pathlib.Path.home()/'native-evidence' +for p in r.glob('spelling*-final.json'): + d=json.loads(p.read_text());assert d['ok'],d + if 'denied' in p.name:assert not d['checks']['dictionaryInstalledDuringRun'] and d['checks']['personalWordPresentBeforeRun'],d +print('Native dictionary install and actual denied-network restarts passed on X11 and Wayland.') +PY diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-window-manager.log b/delivery/nextcloud-explicit-adoption/evidence/vm-window-manager.log new file mode 100644 index 00000000..d1a693d9 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/vm-window-manager.log @@ -0,0 +1,99 @@ +Reading package lists... +Building dependency tree... +Reading state information... +The following additional packages will be installed: + libgif7 libid3tag0 libimlib2t64 libobrender32v5 libobt2v5 libspectre1 + libstartup-notification0 libxcb-util1 obconf scrot +Suggested packages: + fonts-dejavu libxml2-dev tint2 openbox-gnome-session openbox-kde-session +The following NEW packages will be installed: + libgif7 libid3tag0 libimlib2t64 libobrender32v5 libobt2v5 libspectre1 + libstartup-notification0 libxcb-util1 obconf openbox scrot +0 upgraded, 11 newly installed, 0 to remove and 21 not upgraded. +Need to get 924 kB of archives. +After this operation, 3806 kB of additional disk space will be used. +Get:1 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgif7 amd64 5.2.2-1ubuntu1.2 [35.6 kB] +Get:2 http://archive.ubuntu.com/ubuntu noble/universe amd64 libid3tag0 amd64 0.15.1b-14build1 [33.6 kB] +Get:3 http://archive.ubuntu.com/ubuntu noble/main amd64 libspectre1 amd64 0.2.12-1build2 [30.9 kB] +Get:4 http://archive.ubuntu.com/ubuntu noble/universe amd64 libimlib2t64 amd64 1.12.1-1.1build2 [208 kB] +Get:5 http://archive.ubuntu.com/ubuntu noble/universe amd64 libobt2v5 amd64 3.6.1-12build5 [33.3 kB] +Get:6 http://archive.ubuntu.com/ubuntu noble/universe amd64 libobrender32v5 amd64 3.6.1-12build5 [42.5 kB] +Get:7 http://archive.ubuntu.com/ubuntu noble/main amd64 libxcb-util1 amd64 0.4.0-1build3 [10.7 kB] +Get:8 http://archive.ubuntu.com/ubuntu noble/main amd64 libstartup-notification0 amd64 0.12-6build3 [18.4 kB] +Get:9 http://archive.ubuntu.com/ubuntu noble/universe amd64 obconf amd64 1:2.0.4+git20150213-3build1 [136 kB] +Get:10 http://archive.ubuntu.com/ubuntu noble/universe amd64 openbox amd64 3.6.1-12build5 [304 kB] +Get:11 http://archive.ubuntu.com/ubuntu noble/universe amd64 scrot amd64 1.10-1build2 [71.5 kB] +debconf: unable to initialize frontend: Dialog +debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) +debconf: falling back to frontend: Readline +debconf: unable to initialize frontend: Readline +debconf: (This frontend requires a controlling tty.) +debconf: falling back to frontend: Teletype +dpkg-preconfigure: unable to re-open stdin: +Fetched 924 kB in 3s (330 kB/s) +Selecting previously unselected package libgif7:amd64. +(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 96253 files and directories currently installed.) +Preparing to unpack .../00-libgif7_5.2.2-1ubuntu1.2_amd64.deb ... +Unpacking libgif7:amd64 (5.2.2-1ubuntu1.2) ... +Selecting previously unselected package libid3tag0:amd64. +Preparing to unpack .../01-libid3tag0_0.15.1b-14build1_amd64.deb ... +Unpacking libid3tag0:amd64 (0.15.1b-14build1) ... +Selecting previously unselected package libspectre1:amd64. +Preparing to unpack .../02-libspectre1_0.2.12-1build2_amd64.deb ... +Unpacking libspectre1:amd64 (0.2.12-1build2) ... +Selecting previously unselected package libimlib2t64:amd64. +Preparing to unpack .../03-libimlib2t64_1.12.1-1.1build2_amd64.deb ... +Unpacking libimlib2t64:amd64 (1.12.1-1.1build2) ... +Selecting previously unselected package libobt2v5:amd64. +Preparing to unpack .../04-libobt2v5_3.6.1-12build5_amd64.deb ... +Unpacking libobt2v5:amd64 (3.6.1-12build5) ... +Selecting previously unselected package libobrender32v5. +Preparing to unpack .../05-libobrender32v5_3.6.1-12build5_amd64.deb ... +Unpacking libobrender32v5 (3.6.1-12build5) ... +Selecting previously unselected package libxcb-util1:amd64. +Preparing to unpack .../06-libxcb-util1_0.4.0-1build3_amd64.deb ... +Unpacking libxcb-util1:amd64 (0.4.0-1build3) ... +Selecting previously unselected package libstartup-notification0:amd64. +Preparing to unpack .../07-libstartup-notification0_0.12-6build3_amd64.deb ... +Unpacking libstartup-notification0:amd64 (0.12-6build3) ... +Selecting previously unselected package obconf. +Preparing to unpack .../08-obconf_1%3a2.0.4+git20150213-3build1_amd64.deb ... +Unpacking obconf (1:2.0.4+git20150213-3build1) ... +Selecting previously unselected package openbox. +Preparing to unpack .../09-openbox_3.6.1-12build5_amd64.deb ... +Unpacking openbox (3.6.1-12build5) ... +Selecting previously unselected package scrot. +Preparing to unpack .../10-scrot_1.10-1build2_amd64.deb ... +Unpacking scrot (1.10-1build2) ... +Setting up libspectre1:amd64 (0.2.12-1build2) ... +Setting up libxcb-util1:amd64 (0.4.0-1build3) ... +Setting up libid3tag0:amd64 (0.15.1b-14build1) ... +Setting up libobt2v5:amd64 (3.6.1-12build5) ... +Setting up libgif7:amd64 (5.2.2-1ubuntu1.2) ... +Setting up libstartup-notification0:amd64 (0.12-6build3) ... +Setting up libimlib2t64:amd64 (1.12.1-1.1build2) ... +Setting up libobrender32v5 (3.6.1-12build5) ... +Setting up scrot (1.10-1build2) ... +Setting up obconf (1:2.0.4+git20150213-3build1) ... +Setting up openbox (3.6.1-12build5) ... +update-alternatives: using /usr/bin/openbox to provide /usr/bin/x-window-manager (x-window-manager) in auto mode +update-alternatives: using /usr/bin/openbox-session to provide /usr/bin/x-session-manager (x-session-manager) in auto mode +Processing triggers for libc-bin (2.39-0ubuntu8.9) ... +Processing triggers for man-db (2.12.0-4build2) ... +Processing triggers for shared-mime-info (2.4-4) ... +debconf: unable to initialize frontend: Dialog +debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) +debconf: falling back to frontend: Readline +debconf: unable to initialize frontend: Readline +debconf: (This frontend requires a controlling tty.) +debconf: falling back to frontend: Teletype + +Running kernel seems to be up-to-date. + +No services need to be restarted. + +No containers need to be restarted. + +No user sessions are running outdated binaries. + +No VM guests are running outdated hypervisor (qemu) binaries on this host. diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-xdg-bootstrap.log b/delivery/nextcloud-explicit-adoption/evidence/vm-xdg-bootstrap.log new file mode 100644 index 00000000..6e9b2b6b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/vm-xdg-bootstrap.log @@ -0,0 +1,351 @@ +Reading package lists... +Building dependency tree... +Reading state information... +The following additional packages will be installed: + cpp cpp-13 cpp-13-x86-64-linux-gnu cpp-x86-64-linux-gnu gcc-13-base + libauthen-sasl-perl libclone-perl libdata-dump-perl libencode-locale-perl + libfile-basedir-perl libfile-desktopentry-perl libfile-listing-perl + libfile-mimeinfo-perl libfont-afm-perl libhtml-form-perl libhtml-format-perl + libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl + libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl + libhttp-message-perl libhttp-negotiate-perl libio-html-perl + libio-socket-ssl-perl libio-stringy-perl libipc-system-simple-perl libisl23 + liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libmpc3 + libnet-dbus-perl libnet-http-perl libnet-smtp-ssl-perl libnet-ssleay-perl + libtie-ixhash-perl libtimedate-perl libtry-tiny-perl liburi-perl libwww-perl + libwww-robotrules-perl libx11-protocol-perl libxcb-shape0 libxml-parser-perl + libxml-twig-perl libxml-xpathengine-perl libxxf86dga1 perl-openssl-defaults + x11-utils x11-xserver-utils zutty +Suggested packages: + cpp-doc gcc-13-locales cpp-13-doc libdigest-hmac-perl libgssapi-perl + libio-compress-brotli-perl libcrypt-ssleay-perl libsub-name-perl + libbusiness-isbn-perl libregexp-ipv6-perl libauthen-ntlm-perl + libunicode-map8-perl libunicode-string-perl xml-twig-tools debhelper + mesa-utils nickle cairo-5c xorg-docs-core +Recommended packages: + luit +The following NEW packages will be installed: + cpp cpp-13 cpp-13-x86-64-linux-gnu cpp-x86-64-linux-gnu gcc-13-base + libauthen-sasl-perl libclone-perl libdata-dump-perl libencode-locale-perl + libfile-basedir-perl libfile-desktopentry-perl libfile-listing-perl + libfile-mimeinfo-perl libfont-afm-perl libhtml-form-perl libhtml-format-perl + libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl + libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl + libhttp-message-perl libhttp-negotiate-perl libio-html-perl + libio-socket-ssl-perl libio-stringy-perl libipc-system-simple-perl libisl23 + liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libmpc3 + libnet-dbus-perl libnet-http-perl libnet-smtp-ssl-perl libnet-ssleay-perl + libtie-ixhash-perl libtimedate-perl libtry-tiny-perl liburi-perl libwww-perl + libwww-robotrules-perl libx11-protocol-perl libxcb-shape0 libxml-parser-perl + libxml-twig-perl libxml-xpathengine-perl libxxf86dga1 perl-openssl-defaults + x11-utils x11-xserver-utils xdg-utils zutty +0 upgraded, 54 newly installed, 0 to remove and 21 not upgraded. +Need to get 14.6 MB of archives. +After this operation, 44.0 MB of additional disk space will be used. +Get:1 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gcc-13-base amd64 13.3.0-6ubuntu2~24.04.1 [51.6 kB] +Get:2 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libisl23 amd64 0.26-3build1.1 [680 kB] +Get:3 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libmpc3 amd64 1.3.1-1build1.1 [54.6 kB] +Get:4 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 cpp-13-x86-64-linux-gnu amd64 13.3.0-6ubuntu2~24.04.1 [10.7 MB] +Get:5 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 cpp-13 amd64 13.3.0-6ubuntu2~24.04.1 [1042 B] +Get:6 http://archive.ubuntu.com/ubuntu noble/main amd64 cpp-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [5326 B] +Get:7 http://archive.ubuntu.com/ubuntu noble/main amd64 cpp amd64 4:13.2.0-7ubuntu1 [22.4 kB] +Get:8 http://archive.ubuntu.com/ubuntu noble/main amd64 libclone-perl amd64 0.46-1build3 [10.7 kB] +Get:9 http://archive.ubuntu.com/ubuntu noble/main amd64 libdata-dump-perl all 1.25-1 [25.9 kB] +Get:10 http://archive.ubuntu.com/ubuntu noble/main amd64 libencode-locale-perl all 1.05-3 [11.6 kB] +Get:11 http://archive.ubuntu.com/ubuntu noble/main amd64 libipc-system-simple-perl all 1.30-2 [22.3 kB] +Get:12 http://archive.ubuntu.com/ubuntu noble/main amd64 libfile-basedir-perl all 0.09-2 [14.4 kB] +Get:13 http://archive.ubuntu.com/ubuntu noble/main amd64 liburi-perl all 5.27-1 [88.0 kB] +Get:14 http://archive.ubuntu.com/ubuntu noble/main amd64 libfile-desktopentry-perl all 0.22-3 [16.8 kB] +Get:15 http://archive.ubuntu.com/ubuntu noble/main amd64 libtimedate-perl all 2.3300-2 [34.0 kB] +Get:16 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libhttp-date-perl all 6.06-1ubuntu0.24.04.1 [10.6 kB] +Get:17 http://archive.ubuntu.com/ubuntu noble/main amd64 libfile-listing-perl all 6.16-1 [11.3 kB] +Get:18 http://archive.ubuntu.com/ubuntu noble/main amd64 libfile-mimeinfo-perl all 0.34-1 [42.1 kB] +Get:19 http://archive.ubuntu.com/ubuntu noble/main amd64 libfont-afm-perl all 1.20-4 [13.0 kB] +Get:20 http://archive.ubuntu.com/ubuntu noble/main amd64 libhtml-tagset-perl all 3.20-6 [11.3 kB] +Get:21 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libhtml-parser-perl amd64 3.81-1ubuntu0.1 [86.0 kB] +Get:22 http://archive.ubuntu.com/ubuntu noble/main amd64 libio-html-perl all 1.004-3 [15.9 kB] +Get:23 http://archive.ubuntu.com/ubuntu noble/main amd64 liblwp-mediatypes-perl all 6.04-2 [20.1 kB] +Get:24 http://archive.ubuntu.com/ubuntu noble/main amd64 libhttp-message-perl all 6.45-1ubuntu1 [78.2 kB] +Get:25 http://archive.ubuntu.com/ubuntu noble/main amd64 libhtml-form-perl all 6.11-1 [32.1 kB] +Get:26 http://archive.ubuntu.com/ubuntu noble/main amd64 libhtml-tree-perl all 5.07-3 [200 kB] +Get:27 http://archive.ubuntu.com/ubuntu noble/main amd64 libhtml-format-perl all 2.16-2 [36.9 kB] +Get:28 http://archive.ubuntu.com/ubuntu noble/main amd64 libhttp-cookies-perl all 6.11-1 [18.2 kB] +Get:29 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libhttp-daemon-perl all 6.16-1ubuntu0.24.04.1 [22.8 kB] +Get:30 http://archive.ubuntu.com/ubuntu noble/main amd64 libhttp-negotiate-perl all 6.01-2 [12.4 kB] +Get:31 http://archive.ubuntu.com/ubuntu noble/main amd64 perl-openssl-defaults amd64 7build3 [6626 B] +Get:32 http://archive.ubuntu.com/ubuntu noble/main amd64 libnet-ssleay-perl amd64 1.94-1build4 [316 kB] +Get:33 http://archive.ubuntu.com/ubuntu noble/main amd64 libio-socket-ssl-perl all 2.085-1 [195 kB] +Get:34 http://archive.ubuntu.com/ubuntu noble/main amd64 libio-stringy-perl all 2.111-3 [55.8 kB] +Get:35 http://archive.ubuntu.com/ubuntu noble/main amd64 libnet-http-perl all 6.23-1 [22.3 kB] +Get:36 http://archive.ubuntu.com/ubuntu noble/main amd64 libtry-tiny-perl all 0.31-2 [20.8 kB] +Get:37 http://archive.ubuntu.com/ubuntu noble/main amd64 libwww-robotrules-perl all 6.02-1 [12.6 kB] +Get:38 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libwww-perl all 6.76-1ubuntu0.1 [139 kB] +Get:39 http://archive.ubuntu.com/ubuntu noble/main amd64 liblwp-protocol-https-perl all 6.13-1 [9006 B] +Get:40 http://archive.ubuntu.com/ubuntu noble/main amd64 libnet-smtp-ssl-perl all 1.04-2 [6218 B] +Get:41 http://archive.ubuntu.com/ubuntu noble/main amd64 libmailtools-perl all 2.21-2 [80.4 kB] +Get:42 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libxml-parser-perl amd64 2.47-1ubuntu0.24.04.1 [204 kB] +Get:43 http://archive.ubuntu.com/ubuntu noble/main amd64 libxml-twig-perl all 1:3.52-2 [158 kB] +Get:44 http://archive.ubuntu.com/ubuntu noble/main amd64 libnet-dbus-perl amd64 1.2.0-2build3 [165 kB] +Get:45 http://archive.ubuntu.com/ubuntu noble/main amd64 libtie-ixhash-perl all 1.23-4 [11.3 kB] +Get:46 http://archive.ubuntu.com/ubuntu noble/main amd64 libx11-protocol-perl all 0.56-9 [122 kB] +Get:47 http://archive.ubuntu.com/ubuntu noble/main amd64 libxcb-shape0 amd64 1.15-1ubuntu2 [6100 B] +Get:48 http://archive.ubuntu.com/ubuntu noble/main amd64 libxml-xpathengine-perl all 0.14-2 [32.6 kB] +Get:49 http://archive.ubuntu.com/ubuntu noble/main amd64 libxxf86dga1 amd64 2:1.1.5-1build1 [11.6 kB] +Get:50 http://archive.ubuntu.com/ubuntu noble/main amd64 x11-utils amd64 7.7+6build2 [189 kB] +Get:51 http://archive.ubuntu.com/ubuntu noble/main amd64 x11-xserver-utils amd64 7.7+10build2 [169 kB] +Get:52 http://archive.ubuntu.com/ubuntu noble/main amd64 xdg-utils all 1.1.3-4.1ubuntu3 [62.0 kB] +Get:53 http://archive.ubuntu.com/ubuntu noble/universe amd64 zutty amd64 0.14.8.20231210+dfsg1-1 [185 kB] +Get:54 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libauthen-sasl-perl all 2.1700-1ubuntu0.1 [40.8 kB] +debconf: unable to initialize frontend: Dialog +debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) +debconf: falling back to frontend: Readline +debconf: unable to initialize frontend: Readline +debconf: (This frontend requires a controlling tty.) +debconf: falling back to frontend: Teletype +dpkg-preconfigure: unable to re-open stdin: +Fetched 14.6 MB in 4s (3884 kB/s) +Selecting previously unselected package gcc-13-base:amd64. +(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 94782 files and directories currently installed.) +Preparing to unpack .../00-gcc-13-base_13.3.0-6ubuntu2~24.04.1_amd64.deb ... +Unpacking gcc-13-base:amd64 (13.3.0-6ubuntu2~24.04.1) ... +Selecting previously unselected package libisl23:amd64. +Preparing to unpack .../01-libisl23_0.26-3build1.1_amd64.deb ... +Unpacking libisl23:amd64 (0.26-3build1.1) ... +Selecting previously unselected package libmpc3:amd64. +Preparing to unpack .../02-libmpc3_1.3.1-1build1.1_amd64.deb ... +Unpacking libmpc3:amd64 (1.3.1-1build1.1) ... +Selecting previously unselected package cpp-13-x86-64-linux-gnu. +Preparing to unpack .../03-cpp-13-x86-64-linux-gnu_13.3.0-6ubuntu2~24.04.1_amd64.deb ... +Unpacking cpp-13-x86-64-linux-gnu (13.3.0-6ubuntu2~24.04.1) ... +Selecting previously unselected package cpp-13. +Preparing to unpack .../04-cpp-13_13.3.0-6ubuntu2~24.04.1_amd64.deb ... +Unpacking cpp-13 (13.3.0-6ubuntu2~24.04.1) ... +Selecting previously unselected package cpp-x86-64-linux-gnu. +Preparing to unpack .../05-cpp-x86-64-linux-gnu_4%3a13.2.0-7ubuntu1_amd64.deb ... +Unpacking cpp-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... +Selecting previously unselected package cpp. +Preparing to unpack .../06-cpp_4%3a13.2.0-7ubuntu1_amd64.deb ... +Unpacking cpp (4:13.2.0-7ubuntu1) ... +Selecting previously unselected package libclone-perl:amd64. +Preparing to unpack .../07-libclone-perl_0.46-1build3_amd64.deb ... +Unpacking libclone-perl:amd64 (0.46-1build3) ... +Selecting previously unselected package libdata-dump-perl. +Preparing to unpack .../08-libdata-dump-perl_1.25-1_all.deb ... +Unpacking libdata-dump-perl (1.25-1) ... +Selecting previously unselected package libencode-locale-perl. +Preparing to unpack .../09-libencode-locale-perl_1.05-3_all.deb ... +Unpacking libencode-locale-perl (1.05-3) ... +Selecting previously unselected package libipc-system-simple-perl. +Preparing to unpack .../10-libipc-system-simple-perl_1.30-2_all.deb ... +Unpacking libipc-system-simple-perl (1.30-2) ... +Selecting previously unselected package libfile-basedir-perl. +Preparing to unpack .../11-libfile-basedir-perl_0.09-2_all.deb ... +Unpacking libfile-basedir-perl (0.09-2) ... +Selecting previously unselected package liburi-perl. +Preparing to unpack .../12-liburi-perl_5.27-1_all.deb ... +Unpacking liburi-perl (5.27-1) ... +Selecting previously unselected package libfile-desktopentry-perl. +Preparing to unpack .../13-libfile-desktopentry-perl_0.22-3_all.deb ... +Unpacking libfile-desktopentry-perl (0.22-3) ... +Selecting previously unselected package libtimedate-perl. +Preparing to unpack .../14-libtimedate-perl_2.3300-2_all.deb ... +Unpacking libtimedate-perl (2.3300-2) ... +Selecting previously unselected package libhttp-date-perl. +Preparing to unpack .../15-libhttp-date-perl_6.06-1ubuntu0.24.04.1_all.deb ... +Unpacking libhttp-date-perl (6.06-1ubuntu0.24.04.1) ... +Selecting previously unselected package libfile-listing-perl. +Preparing to unpack .../16-libfile-listing-perl_6.16-1_all.deb ... +Unpacking libfile-listing-perl (6.16-1) ... +Selecting previously unselected package libfile-mimeinfo-perl. +Preparing to unpack .../17-libfile-mimeinfo-perl_0.34-1_all.deb ... +Unpacking libfile-mimeinfo-perl (0.34-1) ... +Selecting previously unselected package libfont-afm-perl. +Preparing to unpack .../18-libfont-afm-perl_1.20-4_all.deb ... +Unpacking libfont-afm-perl (1.20-4) ... +Selecting previously unselected package libhtml-tagset-perl. +Preparing to unpack .../19-libhtml-tagset-perl_3.20-6_all.deb ... +Unpacking libhtml-tagset-perl (3.20-6) ... +Selecting previously unselected package libhtml-parser-perl:amd64. +Preparing to unpack .../20-libhtml-parser-perl_3.81-1ubuntu0.1_amd64.deb ... +Unpacking libhtml-parser-perl:amd64 (3.81-1ubuntu0.1) ... +Selecting previously unselected package libio-html-perl. +Preparing to unpack .../21-libio-html-perl_1.004-3_all.deb ... +Unpacking libio-html-perl (1.004-3) ... +Selecting previously unselected package liblwp-mediatypes-perl. +Preparing to unpack .../22-liblwp-mediatypes-perl_6.04-2_all.deb ... +Unpacking liblwp-mediatypes-perl (6.04-2) ... +Selecting previously unselected package libhttp-message-perl. +Preparing to unpack .../23-libhttp-message-perl_6.45-1ubuntu1_all.deb ... +Unpacking libhttp-message-perl (6.45-1ubuntu1) ... +Selecting previously unselected package libhtml-form-perl. +Preparing to unpack .../24-libhtml-form-perl_6.11-1_all.deb ... +Unpacking libhtml-form-perl (6.11-1) ... +Selecting previously unselected package libhtml-tree-perl. +Preparing to unpack .../25-libhtml-tree-perl_5.07-3_all.deb ... +Unpacking libhtml-tree-perl (5.07-3) ... +Selecting previously unselected package libhtml-format-perl. +Preparing to unpack .../26-libhtml-format-perl_2.16-2_all.deb ... +Unpacking libhtml-format-perl (2.16-2) ... +Selecting previously unselected package libhttp-cookies-perl. +Preparing to unpack .../27-libhttp-cookies-perl_6.11-1_all.deb ... +Unpacking libhttp-cookies-perl (6.11-1) ... +Selecting previously unselected package libhttp-daemon-perl. +Preparing to unpack .../28-libhttp-daemon-perl_6.16-1ubuntu0.24.04.1_all.deb ... +Unpacking libhttp-daemon-perl (6.16-1ubuntu0.24.04.1) ... +Selecting previously unselected package libhttp-negotiate-perl. +Preparing to unpack .../29-libhttp-negotiate-perl_6.01-2_all.deb ... +Unpacking libhttp-negotiate-perl (6.01-2) ... +Selecting previously unselected package perl-openssl-defaults:amd64. +Preparing to unpack .../30-perl-openssl-defaults_7build3_amd64.deb ... +Unpacking perl-openssl-defaults:amd64 (7build3) ... +Selecting previously unselected package libnet-ssleay-perl:amd64. +Preparing to unpack .../31-libnet-ssleay-perl_1.94-1build4_amd64.deb ... +Unpacking libnet-ssleay-perl:amd64 (1.94-1build4) ... +Selecting previously unselected package libio-socket-ssl-perl. +Preparing to unpack .../32-libio-socket-ssl-perl_2.085-1_all.deb ... +Unpacking libio-socket-ssl-perl (2.085-1) ... +Selecting previously unselected package libio-stringy-perl. +Preparing to unpack .../33-libio-stringy-perl_2.111-3_all.deb ... +Unpacking libio-stringy-perl (2.111-3) ... +Selecting previously unselected package libnet-http-perl. +Preparing to unpack .../34-libnet-http-perl_6.23-1_all.deb ... +Unpacking libnet-http-perl (6.23-1) ... +Selecting previously unselected package libtry-tiny-perl. +Preparing to unpack .../35-libtry-tiny-perl_0.31-2_all.deb ... +Unpacking libtry-tiny-perl (0.31-2) ... +Selecting previously unselected package libwww-robotrules-perl. +Preparing to unpack .../36-libwww-robotrules-perl_6.02-1_all.deb ... +Unpacking libwww-robotrules-perl (6.02-1) ... +Selecting previously unselected package libwww-perl. +Preparing to unpack .../37-libwww-perl_6.76-1ubuntu0.1_all.deb ... +Unpacking libwww-perl (6.76-1ubuntu0.1) ... +Selecting previously unselected package liblwp-protocol-https-perl. +Preparing to unpack .../38-liblwp-protocol-https-perl_6.13-1_all.deb ... +Unpacking liblwp-protocol-https-perl (6.13-1) ... +Selecting previously unselected package libnet-smtp-ssl-perl. +Preparing to unpack .../39-libnet-smtp-ssl-perl_1.04-2_all.deb ... +Unpacking libnet-smtp-ssl-perl (1.04-2) ... +Selecting previously unselected package libmailtools-perl. +Preparing to unpack .../40-libmailtools-perl_2.21-2_all.deb ... +Unpacking libmailtools-perl (2.21-2) ... +Selecting previously unselected package libxml-parser-perl. +Preparing to unpack .../41-libxml-parser-perl_2.47-1ubuntu0.24.04.1_amd64.deb ... +Unpacking libxml-parser-perl (2.47-1ubuntu0.24.04.1) ... +Selecting previously unselected package libxml-twig-perl. +Preparing to unpack .../42-libxml-twig-perl_1%3a3.52-2_all.deb ... +Unpacking libxml-twig-perl (1:3.52-2) ... +Selecting previously unselected package libnet-dbus-perl. +Preparing to unpack .../43-libnet-dbus-perl_1.2.0-2build3_amd64.deb ... +Unpacking libnet-dbus-perl (1.2.0-2build3) ... +Selecting previously unselected package libtie-ixhash-perl. +Preparing to unpack .../44-libtie-ixhash-perl_1.23-4_all.deb ... +Unpacking libtie-ixhash-perl (1.23-4) ... +Selecting previously unselected package libx11-protocol-perl. +Preparing to unpack .../45-libx11-protocol-perl_0.56-9_all.deb ... +Unpacking libx11-protocol-perl (0.56-9) ... +Selecting previously unselected package libxcb-shape0:amd64. +Preparing to unpack .../46-libxcb-shape0_1.15-1ubuntu2_amd64.deb ... +Unpacking libxcb-shape0:amd64 (1.15-1ubuntu2) ... +Selecting previously unselected package libxml-xpathengine-perl. +Preparing to unpack .../47-libxml-xpathengine-perl_0.14-2_all.deb ... +Unpacking libxml-xpathengine-perl (0.14-2) ... +Selecting previously unselected package libxxf86dga1:amd64. +Preparing to unpack .../48-libxxf86dga1_2%3a1.1.5-1build1_amd64.deb ... +Unpacking libxxf86dga1:amd64 (2:1.1.5-1build1) ... +Selecting previously unselected package x11-utils. +Preparing to unpack .../49-x11-utils_7.7+6build2_amd64.deb ... +Unpacking x11-utils (7.7+6build2) ... +Selecting previously unselected package x11-xserver-utils. +Preparing to unpack .../50-x11-xserver-utils_7.7+10build2_amd64.deb ... +Unpacking x11-xserver-utils (7.7+10build2) ... +Selecting previously unselected package xdg-utils. +Preparing to unpack .../51-xdg-utils_1.1.3-4.1ubuntu3_all.deb ... +Unpacking xdg-utils (1.1.3-4.1ubuntu3) ... +Selecting previously unselected package zutty. +Preparing to unpack .../52-zutty_0.14.8.20231210+dfsg1-1_amd64.deb ... +Unpacking zutty (0.14.8.20231210+dfsg1-1) ... +Selecting previously unselected package libauthen-sasl-perl. +Preparing to unpack .../53-libauthen-sasl-perl_2.1700-1ubuntu0.1_all.deb ... +Unpacking libauthen-sasl-perl (2.1700-1ubuntu0.1) ... +Setting up libtie-ixhash-perl (1.23-4) ... +Setting up libfont-afm-perl (1.20-4) ... +Setting up libclone-perl:amd64 (0.46-1build3) ... +Setting up libio-stringy-perl (2.111-3) ... +Setting up libhtml-tagset-perl (3.20-6) ... +Setting up libauthen-sasl-perl (2.1700-1ubuntu0.1) ... +Setting up liblwp-mediatypes-perl (6.04-2) ... +Setting up libxcb-shape0:amd64 (1.15-1ubuntu2) ... +Setting up libtry-tiny-perl (0.31-2) ... +Setting up libxxf86dga1:amd64 (2:1.1.5-1build1) ... +Setting up perl-openssl-defaults:amd64 (7build3) ... +Setting up libencode-locale-perl (1.05-3) ... +Setting up gcc-13-base:amd64 (13.3.0-6ubuntu2~24.04.1) ... +Setting up libdata-dump-perl (1.25-1) ... +Setting up libipc-system-simple-perl (1.30-2) ... +Setting up libxml-xpathengine-perl (0.14-2) ... +Setting up libmpc3:amd64 (1.3.1-1build1.1) ... +Setting up libio-html-perl (1.004-3) ... +Setting up libtimedate-perl (2.3300-2) ... +Setting up zutty (0.14.8.20231210+dfsg1-1) ... +update-alternatives: using /usr/bin/zutty to provide /usr/bin/x-terminal-emulator (x-terminal-emulator) in auto mode +Setting up x11-utils (7.7+6build2) ... +Setting up libisl23:amd64 (0.26-3build1.1) ... +Setting up xdg-utils (1.1.3-4.1ubuntu3) ... +update-alternatives: using /usr/bin/xdg-open to provide /usr/bin/open (open) in auto mode +Setting up liburi-perl (5.27-1) ... +Setting up libx11-protocol-perl (0.56-9) ... +Setting up libnet-ssleay-perl:amd64 (1.94-1build4) ... +Setting up libhttp-date-perl (6.06-1ubuntu0.24.04.1) ... +Setting up libfile-basedir-perl (0.09-2) ... +Setting up libfile-listing-perl (6.16-1) ... +Setting up cpp-13-x86-64-linux-gnu (13.3.0-6ubuntu2~24.04.1) ... +Setting up libnet-http-perl (6.23-1) ... +Setting up libfile-desktopentry-perl (0.22-3) ... +Setting up libwww-robotrules-perl (6.02-1) ... +Setting up libhtml-parser-perl:amd64 (3.81-1ubuntu0.1) ... +Setting up libio-socket-ssl-perl (2.085-1) ... +Setting up libhttp-message-perl (6.45-1ubuntu1) ... +Setting up libhtml-form-perl (6.11-1) ... +Setting up cpp-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... +Setting up libfile-mimeinfo-perl (0.34-1) ... +Setting up libhttp-negotiate-perl (6.01-2) ... +Setting up cpp-13 (13.3.0-6ubuntu2~24.04.1) ... +Setting up libhttp-cookies-perl (6.11-1) ... +Setting up libhtml-tree-perl (5.07-3) ... +Setting up libhtml-format-perl (2.16-2) ... +Setting up libnet-smtp-ssl-perl (1.04-2) ... +Setting up libmailtools-perl (2.21-2) ... +Setting up libhttp-daemon-perl (6.16-1ubuntu0.24.04.1) ... +Setting up cpp (4:13.2.0-7ubuntu1) ... +Setting up x11-xserver-utils (7.7+10build2) ... +Setting up liblwp-protocol-https-perl (6.13-1) ... +Setting up libwww-perl (6.76-1ubuntu0.1) ... +Setting up libxml-parser-perl (2.47-1ubuntu0.24.04.1) ... +Setting up libxml-twig-perl (1:3.52-2) ... +Setting up libnet-dbus-perl (1.2.0-2build3) ... +Processing triggers for man-db (2.12.0-4build2) ... +Processing triggers for hicolor-icon-theme (0.17-2) ... +Processing triggers for libc-bin (2.39-0ubuntu8.9) ... +debconf: unable to initialize frontend: Dialog +debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) +debconf: falling back to frontend: Readline +debconf: unable to initialize frontend: Readline +debconf: (This frontend requires a controlling tty.) +debconf: falling back to frontend: Teletype + +Running kernel seems to be up-to-date. + +No services need to be restarted. + +No containers need to be restarted. + +No user sessions are running outdated binaries. + +No VM guests are running outdated hypervisor (qemu) binaries on this host. + Local time: Wed 2026-10-07 10:37:20 UTC + Universal time: Wed 2026-10-07 10:37:20 UTC + RTC time: Wed 2026-10-07 10:37:20 + Time zone: Etc/UTC (UTC, +0000) +System clock synchronized: yes + NTP service: active + RTC in local TZ: no diff --git a/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland-final.log b/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland-final.log new file mode 100644 index 00000000..cfe5248b --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland-final.log @@ -0,0 +1,52 @@ + +(visualization_smoke.py:849701): Gdk-CRITICAL **: 03:38:25.633: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +(visualization_smoke.py:849701): dbind-WARNING **: 03:38:25.679: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory +PASS D2 vector +PASS D2 foreignObject + +(visualization_smoke.py:849701): Gdk-CRITICAL **: 03:38:26.072: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (process:2): WARNING **: 03:38:26.172: Failed to connect to bus: Could not connect: No such file or directory + +** (process:2): WARNING **: 03:38:26.249: Can't connect to a11y bus: Error receiving data: Connection reset by peer +PASS Mermaid +PASS Mermaid dark theme +PASS WebKit process termination and recovery + +(visualization_smoke.py:849701): Gdk-CRITICAL **: 03:38:28.358: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed + +** (process:2): WARNING **: 03:38:28.464: Failed to connect to bus: Could not connect: No such file or directory + +** (process:2): WARNING **: 03:38:28.466: Can't connect to a11y bus: Error receiving data: Connection reset by peer +PASS MathJax NewCM double-struck +PASS MathJax NewCM sequential calligraphic +PASS MathJax scientific package profile +PASS MathJax partial failure +PASS MathJax unsafe and dynamic commands +PASS MathJax local newcommand +PASS MathJax expression isolation +PASS D2 WebKit raster fallback visual snapshot +PASS Responsive SVG raster scaling visual snapshot +PASS PlantUML 1/13 +PASS PlantUML 2/13 +PASS PlantUML 3/13 +PASS PlantUML 4/13 +PASS PlantUML 5/13 +PASS PlantUML 6/13 +PASS PlantUML 7/13 +PASS PlantUML 8/13 +PASS PlantUML 9/13 +PASS PlantUML 10/13 +PASS PlantUML 11/13 +PASS PlantUML 12/13 +PASS PlantUML 13/13 +PASS PlantUML dark theme +PASS OpenAPI parser +PASS OpenAPI local reference inspection +PASS OpenAPI local circular reference +PASS OpenAPI validation source location +PASS OpenAPI parse source location +PASS OpenAPI dependency source location +PASS Scalar API Reference +PASS Scalar local circular reference diff --git a/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland.log b/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland.log new file mode 100644 index 00000000..826ca08d --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland.log @@ -0,0 +1,10 @@ +PASS D2 vector +PASS D2 foreignObject + +** (process:46): ERROR **: 03:37:30.981: Failed to adopt IPC::Connection socket: creating GSocket from fd: Operation not permitted + +(visualization_smoke.py:3): Gtk-CRITICAL **: 03:37:31.031: _gtk_css_lookup_resolve: assertion '(((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ((provider)); GType __t = ((_gtk_style_provider_private_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))' failed +/home/albert/busystack/busymark/tools/visualization_smoke.py:48: Warning: g_object_set_data_full: assertion 'G_IS_OBJECT (object)' failed + self.context = WebKit2.WebContext.new_ephemeral() + +(visualization_smoke.py:3): Gtk-ERROR **: 03:37:31.033: Can't create a GtkStyleContext without a display connection diff --git a/delivery/nextcloud-explicit-adoption/evidence/webkit-x11-final.log b/delivery/nextcloud-explicit-adoption/evidence/webkit-x11-final.log new file mode 100644 index 00000000..4d6f6fcb --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/webkit-x11-final.log @@ -0,0 +1,46 @@ + +(visualization_smoke.py:849763): dbind-WARNING **: 03:38:25.688: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory +PASS D2 vector +PASS D2 foreignObject + +** (process:2): WARNING **: 03:38:26.163: Failed to connect to bus: Could not connect: No such file or directory + +** (process:2): WARNING **: 03:38:26.258: Can't connect to a11y bus: Error receiving data: Connection reset by peer +PASS Mermaid +PASS Mermaid dark theme +PASS WebKit process termination and recovery + +** (process:2): WARNING **: 03:38:28.460: Failed to connect to bus: Could not connect: No such file or directory + +** (process:2): WARNING **: 03:38:28.462: Can't connect to a11y bus: Error receiving data: Connection reset by peer +PASS MathJax NewCM double-struck +PASS MathJax NewCM sequential calligraphic +PASS MathJax scientific package profile +PASS MathJax partial failure +PASS MathJax unsafe and dynamic commands +PASS MathJax local newcommand +PASS MathJax expression isolation +PASS D2 WebKit raster fallback visual snapshot +PASS Responsive SVG raster scaling visual snapshot +PASS PlantUML 1/13 +PASS PlantUML 2/13 +PASS PlantUML 3/13 +PASS PlantUML 4/13 +PASS PlantUML 5/13 +PASS PlantUML 6/13 +PASS PlantUML 7/13 +PASS PlantUML 8/13 +PASS PlantUML 9/13 +PASS PlantUML 10/13 +PASS PlantUML 11/13 +PASS PlantUML 12/13 +PASS PlantUML 13/13 +PASS PlantUML dark theme +PASS OpenAPI parser +PASS OpenAPI local reference inspection +PASS OpenAPI local circular reference +PASS OpenAPI validation source location +PASS OpenAPI parse source location +PASS OpenAPI dependency source location +PASS Scalar API Reference +PASS Scalar local circular reference diff --git a/delivery/nextcloud-explicit-adoption/evidence/webkit-x11.log b/delivery/nextcloud-explicit-adoption/evidence/webkit-x11.log new file mode 100644 index 00000000..04c54efb --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/webkit-x11.log @@ -0,0 +1,10 @@ +PASS D2 vector +PASS D2 foreignObject + +** (process:48): ERROR **: 03:37:07.788: Failed to adopt IPC::Connection socket: creating GSocket from fd: Operation not permitted + +(visualization_smoke.py:3): Gtk-CRITICAL **: 03:37:08.016: _gtk_css_lookup_resolve: assertion '(((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ((provider)); GType __t = ((_gtk_style_provider_private_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))' failed +/home/albert/busystack/busymark/tools/visualization_smoke.py:48: Warning: g_object_set_data_full: assertion 'G_IS_OBJECT (object)' failed + self.context = WebKit2.WebContext.new_ephemeral() + +(visualization_smoke.py:3): Gtk-ERROR **: 03:37:08.017: Can't create a GtkStyleContext without a display connection diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/.busymark-html-export.json new file mode 100644 index 00000000..145a077c --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/.busymark-html-export.json @@ -0,0 +1 @@ +{"owner":"BusyMark HTML export","version":1,"kind":"site","files":{"index.html":"199e09c5f8a4e274ff88c6bf10d8948731f808f8e1edd8412fc1894f475c89c2","hidden.html":"5b3fd26eab5e46c30c83f0c45767b415cd415b082df4851627ca1491afb14d93","reference.html":"28e8338d02eb424b5cc9c0fb2a168bc8e3d2e02fa47c6c70c86ce7b4a5dfe11e","Welcome.html":"199e09c5f8a4e274ff88c6bf10d8948731f808f8e1edd8412fc1894f475c89c2"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/Welcome.html b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/Welcome.html new file mode 100644 index 00000000..0a260c66 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/Welcome.html @@ -0,0 +1,14 @@ + +Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/hidden.html b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/hidden.html new file mode 100644 index 00000000..91f7616a --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/hidden.html @@ -0,0 +1,14 @@ + +Hidden topic

1 Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/index.html b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/index.html new file mode 100644 index 00000000..0a260c66 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/index.html @@ -0,0 +1,14 @@ + +Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/reference.html b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/reference.html new file mode 100644 index 00000000..136ca2e1 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/reference.html @@ -0,0 +1,14 @@ + +Reference

Work in progress

1 Reference

Welcome to Default.

1.1 Table

Both columns
OneTwo
Expandable

1.2 Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside.log b/delivery/nextcloud-explicit-adoption/evidence/writerside.log new file mode 100644 index 00000000..df1256f6 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside.log @@ -0,0 +1 @@ +Official builder: 181 checks passed diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/writerside/.busymark-html-export.json new file mode 100644 index 00000000..2666b808 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside/.busymark-html-export.json @@ -0,0 +1 @@ +{"owner":"BusyMark HTML export","version":1,"kind":"site","files":{"assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png":"f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59","index.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39","hidden.html":"840135bf564db71fe28eb4d0c58e60ae43653faee35aa0fdbf02c9abe47f020e","reference.html":"85b04e445b0b833da84f386c1be1320ece110b56bb93f350f54f398bfc4a1d7d","Welcome.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/Welcome.html b/delivery/nextcloud-explicit-adoption/evidence/writerside/Welcome.html new file mode 100644 index 00000000..f19ec81f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside/Welcome.html @@ -0,0 +1,14 @@ + +Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png b/delivery/nextcloud-explicit-adoption/evidence/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png new file mode 100644 index 0000000000000000000000000000000000000000..1ec24a6fe02b74f933f01609b518e939d96e393e GIT binary patch literal 8020 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 +Hidden topic

Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/index.html b/delivery/nextcloud-explicit-adoption/evidence/writerside/index.html new file mode 100644 index 00000000..f19ec81f --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside/index.html @@ -0,0 +1,14 @@ + +Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/reference.html b/delivery/nextcloud-explicit-adoption/evidence/writerside/reference.html new file mode 100644 index 00000000..e119ebba --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/evidence/writerside/reference.html @@ -0,0 +1,14 @@ + +Reference

Work in progress

Reference

Welcome to Default.

Table

Both columns
OneTwo
Expandable

Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/verify.py b/delivery/nextcloud-explicit-adoption/verify.py new file mode 100644 index 00000000..6a3cb871 --- /dev/null +++ b/delivery/nextcloud-explicit-adoption/verify.py @@ -0,0 +1,68 @@ +#!/usr/bin/env python3 +"""Verify the committed delivery archive and optionally rerun Notes regressions.""" +import argparse +import hashlib +import json +from pathlib import Path +import subprocess +import tarfile +import tempfile + + +def sha(path): + return hashlib.file_digest(path.open('rb'), 'sha256').hexdigest() + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('manifest', type=Path) + parser.add_argument('--run-tests', action='store_true') + args = parser.parse_args() + manifest = json.loads(args.manifest.read_text()) + root = args.manifest.resolve().parent + for artifact in manifest['artifacts']: + assert sha(root / artifact['path']) == artifact['sha256'], artifact['path'] + archive = root / manifest['sourceArchive'] + with tempfile.TemporaryDirectory(prefix='busymark-delivery-verify-') as directory: + extracted = Path(directory) + with tarfile.open(archive) as source: + assert source.pax_headers.get('comment') == manifest['sourceCommit'] + source.extractall(extracted, filter='data') + tree = extracted / manifest['sourcePrefix'] + for name, digest in manifest['sourceFiles'].items(): + assert sha(tree / name) == digest, name + for evidence in ['linux-source-identity.json', 'snap-source-identity.json']: + identity = json.loads((tree / 'delivery/nextcloud-explicit-adoption/evidence' / evidence).read_text()) + for name, digest in identity.get('compiledInputs', identity.get('buildSourceFiles', {})).items(): + assert sha(tree / name) == digest, (evidence, name) + if manifest.get('releaseAcceptanceComplete'): + evidence_root = tree / 'delivery/nextcloud-explicit-adoption/evidence' + installed = json.loads((evidence_root / 'snap-acceptance-results.json').read_text()) + assert installed['complete'] and installed['strictInstalled'] + assert installed['enforcedAppArmorVerified'] and installed['installedSha256Verified'] + snap_artifacts = [a for a in manifest['artifacts'] if a['path'].endswith('.snap')] + assert len(snap_artifacts) == 1 + assert installed['snapSha256'] == snap_artifacts[0]['sha256'] + for name, path in installed['visualization']['reports'].items(): + report = json.loads((evidence_root / path).read_text()) + assert report['ok'] and len(report['checks']) == 23, name + repository = (tree / 'lib/src/nextcloud_notes/application/notes_repository.dart').read_text() + discovery = repository.split('Future _applyList(', 1)[1].split('NextcloudNote _fromRemote(', 1)[0] + assert '_adoptCreation(' not in discovery + assert repository.count('_adoptCreation(') == 2 + confirmation = repository.split('Future _resolveCreation(', 1)[1].split('Future delete(', 1)[0] + assert '_adoptCreation(current, fresh)' in confirmation + regressions = (tree / 'test/src/nextcloud_notes/notes_creation_policy_test.dart').read_text() + assert "'other actor'" in regressions + assert 'transaction' in regressions + assert 'repeated confirmation' in regressions + if args.run_tests: + subprocess.run(['flutter', 'pub', 'get', '--enforce-lockfile'], cwd=tree, check=True) + top_level = sorted(str(p.relative_to(tree)) for p in (tree / 'test/src').glob('nextcloud_*_test.dart')) + subprocess.run(['flutter', 'test', '--no-pub', '--concurrency=1', '--reporter', 'expanded', + 'test/src/nextcloud_notes', *top_level], cwd=tree, check=True) + print('Archive bytes, explicit-adoption policy, regressions and artifact hashes verified.') + + +if __name__ == '__main__': + main() diff --git a/docs/development/nextcloud-notes-validation.md b/docs/development/nextcloud-notes-validation.md index 8cd1adf1..bdb71b2a 100644 --- a/docs/development/nextcloud-notes-validation.md +++ b/docs/development/nextcloud-notes-validation.md @@ -1,10 +1,12 @@ # Nextcloud Notes implementation validation -This record describes the checks actually executed for this implementation on -October 4–5, 2026 (UTC). See [the integration contract](nextcloud-notes.md) for the +The sections dated October 4–5, 2026 are historical records. Their automatic +creation-adoption behavior and incomplete acceptance results are superseded by +the **Explicit-adoption validation, 7 October 2026** section at the end of this +file. See [the integration contract](nextcloud-notes.md) for the current policy, architecture, security boundaries and server limitations. -## Capability and synchronization follow-up (October 5, 2026) +## Historical capability and synchronization follow-up (October 5, 2026) This follow-up addresses only API 1.4 compatibility, uncertain creation, attribute-wise merging, HTTPS enforcement and bounded attachment downloads. The @@ -137,7 +139,8 @@ packages for **Notes 6.0.1 and 6.1.0**. Both completed **13 checks successfully* - Offline new note plus attachment, database close/reopen, reconnect/publication. - Remote deletion with pending work and explicit fresh-state-checked deletion. - A deliberately lost successful POST response, durable wire metadata and staged - attachment across restart, another local edit, automatic candidate adoption, + attachment across restart, another local edit, automatic candidate adoption + (historical behavior, superseded by mandatory confirmation), sanitized title/category adoption, attachment publication and **one note POST**. On 6.0.1, invoking attachment DELETE produced `unsupported` without issuing the @@ -164,7 +167,7 @@ unverified here. Packaging and unpacked dependency checks are reported separatel neither is claimed to prove installed confinement behavior. -### Follow-up changed files +### Historical follow-up changed files - `docs/development/nextcloud-notes-validation.md` - `docs/development/nextcloud-notes.md` @@ -655,3 +658,200 @@ tools/secure_credential_policy_probe.cc tools/test_nextcloud_libsecret.sh tools/test_secure_credential_policy.sh ``` + +## Explicit-adoption validation, 7 October 2026 + +This section supersedes earlier automatic-adoption expectations. Evidence is +retained in `delivery/nextcloud-explicit-adoption/evidence/` and the delivered +manifest records source and artifact hashes. Initial HEAD was `f9b734c`; the +workspace was clean before this work. No unrelated edits were discarded. + +A pre-fix regression failed because discovery assigned server ID 1 without +confirmation. The replacement regression verifies repeated discovery first, +then explicitly confirms adoption before permitting an If-Match PUT. + +Upstream `nextcloud/notes` tags v6.0.1 and v6.1.0 were inspected specifically at +`docs/api/v1.md` and `lib/Controller/NotesApiController.php`: POST accepts writable +attributes and returns the server note, without a client idempotency key; PUT +uses the server identity and ETag check. Payload equality is not identity proof. + +Actual disposable HTTPS Notes **6.0.1** and **6.1.0** runs each passed **14 checks**, +including dropped successful POST response, staged attachment and newer edit +across restart, repeated nonmutating discovery, deliberate adoption, byte +verification, a second restart, and an independently created identical note +whose BusyMark POST was never delivered. CRUD, canonical metadata, ETag conflict, +chunking, deletion and version-specific attachment checks remain included. +The harness's separate `offline` transport-injection scenario is a repository +test and does not establish denied application network access. + +Browser Login Flow passed anonymous start, pending 404, external-browser +launch, browser grant and one-time 200 credentials with disposable browser +profiles. Native libsecret store/read/delete and credential-policy checks passed +in an isolated keyring. Writerside conformance passed 181 checks. The Welcome +routing test passed without weakening its assertions (5 tests in the router +file). The native spelling package passed 13 tests. + +Final regression validation used Flutter **3.47.5**, Dart **3.13.4**, the frozen +Linux release bundle and the CI spelling resources. The complete Nextcloud set +passed **216 tests**; the entire Flutter suite passed **3,638 tests, zero failures +and zero skips** in 18:21. The unchanged Welcome restoration assertion passed in +the full suite. Localization audit passed 21 tests, actual dictionary integration +passed 3, the native spell package passed 13 and Writerside conformance passed 181. +Formatting reported 544 files with zero changes; analysis reported no issues. +Dependency-lock enforcement succeeded without changing the lockfile. + +The final confirmation UI regression clicks a real dropdown option and the +**Use this server note** action. A short timing poll initially failed under +load; the final test drives dialog-dismissal frames and real SQLite work while +retaining its binding, content, pending-revision and duplicate assertions. A +separate failing regression exposed unsaved draft edits arriving during the +confirmation GET; the commit-time controller guard fixes that race. Both +pre-fix failures and the superseded full-suite timing failure remain historical +evidence, alongside the successful final logs. + +The native application and the actual installed **strict Snap** completed +browser Login Flow through the desktop portal and an external Chromium browser +with disposable profiles. Account credentials used the guest's libsecret Secret +Service and survived application restart. Both applications exercised staged +attachment creation, discarded successful POST response, restart, newer local +edit, repeated refresh without binding or publication, actual candidate-dialog +confirmation, canonical metadata, exact attachment bytes, one original POST and +another restart with the exact acknowledged revision. The native binding is +server note 184; the Snap binding is 223. Both preserve their original local IDs. +Snapshots, durable-state reports and server comparisons are retained. + +Application network denial was real: native acceptance used a root-created +network namespace, and installed-Snap acceptance disconnected `busymark:network`. +The Snap kernel audit records denied Internet socket creation by the actual +`busymark` process; the UI preserved its offline draft and bytes across restart. +Reconnect created that previously unsubmitted draft once. No harness `offline` +flag is counted as application network acceptance. + +The native final binary passed fresh dictionary installation and denied-network +restarts on X11 and Wayland in the disposable VM. Linux release visualization +and real WebKit smoke runs passed on both backends. Installed-Snap online and +denied-network X11 spelling passed. Its visualization run failed in WebKit +(`Unsupported result type`, with another run failing MathJax recovery). An +experimental Promise-retention change did not fix acceptance and was reverted. +Installed-Snap Wayland spelling subsequently passed all 20 checks with network +access denied. Wayland visualization failed during Mermaid/Typst export after +13 checks. At that stage, passing installed visualization acceptance remained outstanding. +Automatic approval review rejected uploading the source to public GitHub for +the Ubuntu CI run; explicit export approval was requested. These failed VM +checks are not counted as passing acceptance. The final KVM acceptance below +supersedes that incomplete release status while retaining these failed results. + +The VM is Ubuntu **24.04.5**, kernel **6.8.0-142**, snapd **2.77.1**, software QEMU +TCG (2 CPUs, 4 GiB), Xvfb/Openbox and Weston headless. Its desktop portal has the +correct display/DBus environment. A disposable test CA was trusted only in the +VM/browser fixture; production HTTPS checks were preserved. The VM permits +unprivileged user namespaces for WebKit Bubblewrap; Snap AppArmor profiles remain +enforced, as independently proved by the network denials. `LP_NUM_THREADS=2` +caps software-renderer workers. The final native runs retain the existing smoke +assertions and timeouts. Earlier display/portal setup failures are fixture +history, not passed checks. + +The Snap was built with **Snapcraft 8.11.1**, the official core24 builder and the +unchanged actual `snap/snapcraft.yaml`, from a fresh source directory after +`snapcraft clean --destructive-mode`. `snapcraft pack --destructive-mode` produced +the strict package. The development repack script was not used. The installed +payload checks verify SVG loading, GTK/WebKit/GNOME/Mesa libraries, fonts, media, +Git/SSH/session tools and Yaru assets. Required desktop, X11/Wayland, network, +content and manually connected password-manager interfaces were inspected. +The installed package SHA-256 matches the delivered recipe-built artifact. + +The disposable accounts were deleted after application acceptance; both +HTTPS APIs returned 401 for their revoked credentials. All grants belonging +to those accounts, including application Login Flow grants, were invalidated. +Private fixture credentials, keys and Login Flow URLs are excluded. + +Exact commands and final reports are under +`delivery/nextcloud-explicit-adoption/evidence/`. Key invocations were: + +```sh +flutter pub get --enforce-lockfile +flutter gen-l10n +flutter test test/src/localization_audit_test.dart +dart format --set-exit-if-changed . +flutter analyze +(cd packages/busymark_spellcheck_native && dart pub get && dart test) +tools/fetch_spelling_dictionaries.sh build/spelling-test +BUSYMARK_TEST_SPELLING_ROOT="$PWD/build/spelling-test" flutter test test/src/spelling_bundle_integration_test.dart +tools/validate_writerside_conformance.sh +flutter build linux --release +flutter test --no-pub --concurrency=1 --reporter expanded test/src/nextcloud_notes test/src/nextcloud_*_test.dart +BUSYMARK_NATIVE_DIALOG_TEST_DISPLAY=:97 BUSYMARK_D2_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/d2" BUSYMARK_TYPST_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/typst" BUSYMARK_TEST_SPELLING_ROOT="$PWD/build/spelling-test" flutter test --no-pub --concurrency=1 --reporter expanded +dart run tools/nextcloud_notes_live_acceptance.dart PRIVATE_CREDENTIALS SANITIZED_REPORT TEST_CA_PEM +``` + +The live commands ran separately against Notes 6.0.1 and 6.1.0 on disposable +Nextcloud 35.0.1 HTTPS installations. A persistent server lock through the +supported Files Lock OCS endpoint produced a real **423** while an unrelated note +synchronized successfully. The first Text browser lock probe did not produce +423 and remains a failed historical fixture attempt. + +The final source identity is the commit recorded by the delivery manifest. +`linux-source-identity.json` and `snap-source-identity.json` record 568 compilation +input hashes matching that tree, the recipe hash, artifact hashes and frozen +binary hashes. Tests and documentation changed after the build only where they +do not enter compilation; the manifest and extracted-archive verification tie +their final bytes to the committed source and final test logs. The delivered +source archive is generated from that commit, with a fresh extraction checked +byte-for-byte and the complete Nextcloud regression set rerun there. + +## Final installed acceptance and delivery, 7 October 2026 + +The original recipe-built Snap, SHA-256 +`2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce`, +passed installed visualization on **X11 and Wayland: 23 checks each**, with a +second successful run on each backend. The repeat X11 command took 10 seconds; +the combined Wayland spelling/visualization command took 18 seconds. Installed +spelling passed **20 checks per run**, including fresh dictionary installation, +Snap revision refresh, and X11/Wayland restart with `busymark:network` +disconnected. Wayland visualization also ran with that interface disconnected. +The original assertions and timeouts were retained. + +This fresh disposable VM uses **KVM, 4 CPUs, 4 GiB RAM**, Ubuntu **24.04.5**, +kernel **6.8.0-142**, snapd **2.77.1**, core24 revision **2124**, GNOME revision +**168** and Mesa revision **1839**. The content runtimes match the earlier TCG +fixture. The installed root-owned Snap hash, embedded recipe hash, AOT hash, +interfaces and enforced AppArmor profile were rechecked. The package and all +568 recorded compilation inputs are unchanged; no renderer workaround was +shipped and no executable was replaced during tests. + +The fresh headless VM initially lacked a usable desktop activation environment. +A temporary D-Bus session could not create Snap's cgroup; its normal systemd +user session fixed that. GTK portal activation then waited on a missing display +and the first visualization attempt timed out. A persistent Xvfb display, +`dbus-update-activation-environment --systemd DISPLAY=:97 XDG_CURRENT_DESKTOP=GNOME`, +and explicit GTK portal selection provided a working Settings portal. Both +backends then passed repeatedly without the experimental `NO_AT_BRIDGE` +override. These observations explain the new fixture failures; they do not +establish the cause of every historical TCG `Unsupported result type` error. +All failures remain labelled in the evidence. + +The installed commands were extracted from `.github/workflows/flutter-linux.yml`: +GTK SVG loading; shared-runtime/tool/media/resource inspection; dictionary +install/refresh/offline use; X11 visualization/PDF; and Wayland +spelling/visualization. Their only substitutions are the private report directory +and the exact package path. Scripts, logs, reports, exported HTML/PDF, desktop +configuration and kernel audit evidence are retained in +`delivery/nextcloud-explicit-adoption/evidence/installed-kvm/`. + +Public source publication was explicitly approved after the initial automatic +review rejection. GitHub then returned **403, Resource not accessible by +integration**, and the existing SSH identity could not authenticate. No branch +or draft PR was created and no CI result is claimed. The authorized disposable +VM completed the installed-package checks instead. + +Release acceptance is complete for the recorded source and artifacts: full +Flutter **3,638 passed / 0 failed / 0 skipped**, complete Nextcloud **216 passed**, +the earlier native/Writerside checks, real HTTPS Notes **6.0.1 and 6.1.0**, +real 423 isolation, actual browser/libsecret/application/offline adoption, and +the installed strict-Snap checks above. The application and test source remains +code commit `d55b41ddf47ef716d5113c89da8a3a2f3b80e819`; the final delivery commit +adds evidence and documentation. The final manifest names that commit and the +archives generated directly from it. Fresh extraction verifies every committed +file and build input, then reruns all 216 Nextcloud tests, including the top-level +files. Test accounts were revoked; the acceptance VM and private keys are removed +after evidence collection. diff --git a/docs/development/nextcloud-notes.md b/docs/development/nextcloud-notes.md index 11446dde..aa06ce29 100644 --- a/docs/development/nextcloud-notes.md +++ b/docs/development/nextcloud-notes.md @@ -188,22 +188,41 @@ from the recorded wire content. There is no hidden Markdown marker. There is no documented create idempotency key. A transport failure, malformed response or 5xx after creation enters `creationUncertain`; restart after an in-flight create does the same. Reconciliation requests an unpruned collection. -A plausible candidate must have an unseen ID and equal wire content, favorite -and modified. Automatic adoption additionally requires exact wire title and -category, exactly one match, exactly one matching local attempt, nonempty -content, and no existing downloaded local instance. A title or category changed -by server sanitization/deduplication remains an unresolved candidate for the user -to adopt deliberately. Candidate IDs survive restart, and the comparison UI can -select among multiple plausible notes. Empty-content matches, missing evidence, -or an existing instance also require deliberate resolution. Timestamps alone -are never identity. These are conservative correlation checks, not a server -idempotency guarantee; an independently created fully identical note cannot be -proven distinct. BusyMark never automatically retries an uncertain POST. - -Adoption preserves the logical identity and any newer local revision, adopts the -server ID/base/ETag, and retains pending attachment bytes/references. Attachment -publication then resumes through the existing durable upload/update sequence. -Recovery as a new note is an explicit user decision. +A plausible candidate has an unseen ID and equal wire content, favorite and +modified. Exact and sanitized payload matches only rank possible candidates; +they never establish identity. Every uncertain outcome remains blocked across +refresh, reconnect, autosave and restart, including a single identical nonempty +candidate and an empty result. Discovery persists candidates without binding, +acknowledgment, clearing the attempt or permitting PUT, DELETE or publication. +An independently created identical note cannot be distinguished by its payload. + +The comparison presents the selected server ID, title, category, modification +time and content. **Use this server note** explicitly links the draft and then +synchronizes retained local edits. Confirmation supplies an immutable review +containing the draft revision, account, attempt identity and selected state. +The repository fetches that ID through the authenticated account and compares +all state fields, including permissions. Changed, unavailable, missing or +read-only candidates stay unresolved and need another review. Account removal, +new local revisions and repeated confirmation invalidate the decision. + +Binding preserves the draft's logical identity and history. The fresh server +ID/base/ETag and outbox commit with removal of a clean downloaded duplicate in +one SQLite transaction. Durable duplicate edits and pending attachment +operations block consolidation. Every workspace controller also registers an +open-tab guard; candidate tabs must be closed after preserving their work. +Reserved candidates cannot be opened during confirmation. The same commit-time +editor guard rejects unsaved draft edits that arrived during the confirmation +GET, requiring another review. Newer draft edits and staged bytes remain +pending through the existing ordered attachment/update pipeline, and subsequent PUTs retain If-Match protection. + +**Create a separate note** warns that the first request may already have created +a server note. The explicit decision durably records one replacement identity +and copies recoverable work and attachment bytes atomically. Concurrent clicks +are rejected and repeated confirmation reuses that replacement. The original +uncertain draft remains recoverable and blocked. Cancel and dismissal leave it +untouched. No suspected server duplicate is automatically deleted. Legacy +uncertain records without creation evidence cannot be adopted by guessing; +the existing database migrations and startup recovery remain unchanged. Read-only notes block content/title/category editing while favorite remains writable under the documented contract. A note becoming read-only does not @@ -313,3 +332,10 @@ The current [Text source](https://github.com/nextcloud/text) and describe web-editor ownership and internal collaborative machinery, not a documented supported external native collaboration API. A future official native API would require a separate product decision. + +The 7 October explicit-adoption source, regression, live HTTPS and application +evidence is recorded in [the validation report](nextcloud-notes-validation.md). +Installed-Snap X11 and Wayland visualization acceptance subsequently passed on +the same recipe-built package in a disposable KVM desktop, including repeated +runs. The validation report records the environment, historical failures and +final committed-source archive verification. diff --git a/lib/l10n/app_ar.arb b/lib/l10n/app_ar.arb index f91acbab..8e57304c 100644 --- a/lib/l10n/app_ar.arb +++ b/lib/l10n/app_ar.arb @@ -3406,5 +3406,12 @@ "nextcloudAttachmentReference": "مرجع المرفق على الخادم", "nextcloudAddAttachment": "إضافة مرفق…", "nextcloudDeleteAttachmentWarning": "سيؤدي حذف المرفق إلى جعل روابطه في الملاحظة غير متاحة. يمكن استعادة البيانات المحتفَظ بها من السجل المحلي.", - "nextcloudChooseConflictingAttributes": "اختر قيمة لكل سمة متعارضة." + "nextcloudChooseConflictingAttributes": "اختر قيمة لكل سمة متعارضة.", + "nextcloudUseServerNote": "استخدام هذه الملاحظة على الخادم", + "nextcloudUseServerNoteExplanation": "يربط هذه المسودة بالملاحظة المحددة على الخادم، ثم يزامن التغييرات المحلية المحفوظة. تطابق الطلب لا يؤكد من أنشأ الملاحظة.", + "nextcloudExactCandidate": "تطابق تام مع الطلب؛ الهوية غير مؤكدة.", + "nextcloudPossibleCandidate": "تطابق محتمل بعد تنقية الطلب؛ الهوية غير مؤكدة.", + "nextcloudSelectCandidate": "اختر ملاحظة على الخادم لمراجعتها", + "nextcloudCreateSeparate": "إنشاء ملاحظة منفصلة", + "nextcloudCreateSeparateWarning": "قد يكون الطلب الأول قد أنشأ ملاحظة على الخادم بالفعل. ينشئ هذا ملاحظة منفصلة بعملك المحلي المحفوظ. لن تُحذف أي ملاحظة يُشتبه بأنها مكررة." } diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index c4f3c6b8..1724b1f7 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -3406,5 +3406,12 @@ "nextcloudAttachmentReference": "Anhangreferenz auf dem Server", "nextcloudAddAttachment": "Anhang hinzufügen…", "nextcloudDeleteAttachmentWarning": "Durch Löschen des Anhangs sind seine Links in der Notiz nicht mehr verfügbar. Aufbewahrte Daten können über den lokalen Verlauf wiederhergestellt werden.", - "nextcloudChooseConflictingAttributes": "Wählen Sie jeden widersprüchlichen Wert." + "nextcloudChooseConflictingAttributes": "Wählen Sie jeden widersprüchlichen Wert.", + "nextcloudUseServerNote": "Diese Servernotiz verwenden", + "nextcloudUseServerNoteExplanation": "Verknüpft diesen Entwurf mit der ausgewählten Servernotiz und synchronisiert anschließend die behaltenen lokalen Änderungen. Ein passender Antrag bestätigt nicht, wer die Notiz erstellt hat.", + "nextcloudExactCandidate": "Exakte Übereinstimmung mit der Anfrage; Identität unbestätigt.", + "nextcloudPossibleCandidate": "Mögliche Übereinstimmung nach Bereinigung der Anfrage; Identität unbestätigt.", + "nextcloudSelectCandidate": "Servernotiz zur Prüfung auswählen", + "nextcloudCreateSeparate": "Separate Notiz erstellen", + "nextcloudCreateSeparateWarning": "Die erste Anfrage hat möglicherweise bereits eine Servernotiz erstellt. Dies erstellt eine separate Notiz mit Ihrer behaltenen lokalen Arbeit. Vermutete Duplikate werden nicht gelöscht." } diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 37a8033a..87f7b9b1 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -2839,5 +2839,12 @@ "nextcloudAttachmentReference": "Attachment reference on server", "nextcloudAddAttachment": "Add attachment…", "nextcloudDeleteAttachmentWarning": "Deleting this attachment makes its links in the note unavailable. Retained bytes can be recovered through local history.", - "nextcloudChooseConflictingAttributes": "Choose each conflicting attribute." + "nextcloudChooseConflictingAttributes": "Choose each conflicting attribute.", + "nextcloudUseServerNote": "Use this server note", + "nextcloudUseServerNoteExplanation": "Links this draft to the selected server note, then synchronizes retained local changes. A matching request does not confirm who created the note.", + "nextcloudExactCandidate": "Exact request match; identity is unconfirmed.", + "nextcloudPossibleCandidate": "Possible sanitized request match; identity is unconfirmed.", + "nextcloudSelectCandidate": "Select a server note to review", + "nextcloudCreateSeparate": "Create a separate note", + "nextcloudCreateSeparateWarning": "The first request may already have created a server note. This creates a separate note with your retained local work. No suspected duplicate will be deleted." } diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index 5357455e..6f046521 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -3406,5 +3406,12 @@ "nextcloudAttachmentReference": "Referencia del archivo adjunto en el servidor", "nextcloudAddAttachment": "Añadir archivo adjunto…", "nextcloudDeleteAttachmentWarning": "Al eliminar este archivo adjunto, sus enlaces en la nota dejarán de estar disponibles. Los datos conservados se pueden recuperar mediante el historial local.", - "nextcloudChooseConflictingAttributes": "Elige cada atributo en conflicto." + "nextcloudChooseConflictingAttributes": "Elige cada atributo en conflicto.", + "nextcloudUseServerNote": "Usar esta nota del servidor", + "nextcloudUseServerNoteExplanation": "Vincula este borrador con la nota seleccionada del servidor y luego sincroniza los cambios locales conservados. Una solicitud coincidente no confirma quién creó la nota.", + "nextcloudExactCandidate": "Coincidencia exacta con la solicitud; identidad sin confirmar.", + "nextcloudPossibleCandidate": "Posible coincidencia con la solicitud saneada; identidad sin confirmar.", + "nextcloudSelectCandidate": "Seleccionar una nota del servidor para revisarla", + "nextcloudCreateSeparate": "Crear una nota aparte", + "nextcloudCreateSeparateWarning": "La primera solicitud puede haber creado ya una nota en el servidor. Esto crea una nota aparte con su trabajo local conservado. No se eliminará ningún posible duplicado." } diff --git a/lib/l10n/app_et.arb b/lib/l10n/app_et.arb index 56483d2c..12e9e91c 100644 --- a/lib/l10n/app_et.arb +++ b/lib/l10n/app_et.arb @@ -3866,5 +3866,12 @@ "nextcloudAttachmentReference": "Manuse viide serveris", "nextcloudAddAttachment": "Lisa manus…", "nextcloudDeleteAttachmentWarning": "Manuse kustutamine muudab selle lingid märkmes kättesaamatuks. Säilitatud andmed saab taastada kohalikust ajaloost.", - "nextcloudChooseConflictingAttributes": "Valige iga vastuolulise atribuudi väärtus." + "nextcloudChooseConflictingAttributes": "Valige iga vastuolulise atribuudi väärtus.", + "nextcloudUseServerNote": "Kasuta seda serverimärkust", + "nextcloudUseServerNoteExplanation": "Seob mustandi valitud serverimärkusega ja sünkroonib seejärel säilitatud kohalikud muudatused. Päringu vastavus ei kinnita märkuse loojat.", + "nextcloudExactCandidate": "Täpne päringu vaste; identiteet on kinnitamata.", + "nextcloudPossibleCandidate": "Võimalik puhastatud päringu vaste; identiteet on kinnitamata.", + "nextcloudSelectCandidate": "Vali ülevaatamiseks serverimärkus", + "nextcloudCreateSeparate": "Loo eraldi märkus", + "nextcloudCreateSeparateWarning": "Esimene päring võis serveris juba märkuse luua. See loob eraldi märkuse koos säilitatud kohaliku tööga. Võimalikke duplikaate ei kustutata." } diff --git a/lib/l10n/app_fa.arb b/lib/l10n/app_fa.arb index febd1173..42521715 100644 --- a/lib/l10n/app_fa.arb +++ b/lib/l10n/app_fa.arb @@ -3448,5 +3448,12 @@ "nextcloudAttachmentReference": "مرجع پیوست روی سرور", "nextcloudAddAttachment": "افزودن پیوست…", "nextcloudDeleteAttachmentWarning": "با حذف این پیوست، پیوندهای آن در یادداشت دیگر در دسترس نخواهند بود. داده‌های نگه‌داری‌شده را می‌توان از تاریخچهٔ محلی بازیابی کرد.", - "nextcloudChooseConflictingAttributes": "مقدار هر ویژگی متعارض را انتخاب کنید." + "nextcloudChooseConflictingAttributes": "مقدار هر ویژگی متعارض را انتخاب کنید.", + "nextcloudUseServerNote": "استفاده از این یادداشت سرور", + "nextcloudUseServerNoteExplanation": "این پیش‌نویس را به یادداشت انتخاب‌شدهٔ سرور پیوند می‌دهد و سپس تغییرات محلی حفظ‌شده را همگام می‌کند. تطابق درخواست مشخص نمی‌کند چه کسی یادداشت را ایجاد کرده است.", + "nextcloudExactCandidate": "تطابق دقیق درخواست؛ هویت تأیید نشده است.", + "nextcloudPossibleCandidate": "تطابق احتمالی درخواست پاک‌سازی‌شده؛ هویت تأیید نشده است.", + "nextcloudSelectCandidate": "یک یادداشت سرور را برای بررسی انتخاب کنید", + "nextcloudCreateSeparate": "ایجاد یک یادداشت جداگانه", + "nextcloudCreateSeparateWarning": "ممکن است درخواست نخست قبلاً یک یادداشت سرور ایجاد کرده باشد. این کار یک یادداشت جداگانه با کار محلی حفظ‌شدهٔ شما ایجاد می‌کند. هیچ یادداشت مشکوک به تکراری بودن حذف نمی‌شود." } diff --git a/lib/l10n/app_fr.arb b/lib/l10n/app_fr.arb index d57a49c9..5ec0a443 100644 --- a/lib/l10n/app_fr.arb +++ b/lib/l10n/app_fr.arb @@ -3406,5 +3406,12 @@ "nextcloudAttachmentReference": "Référence de la pièce jointe sur le serveur", "nextcloudAddAttachment": "Ajouter une pièce jointe…", "nextcloudDeleteAttachmentWarning": "Supprimer cette pièce jointe rend ses liens dans la note indisponibles. Les données conservées peuvent être récupérées dans l’historique local.", - "nextcloudChooseConflictingAttributes": "Choisissez chaque attribut en conflit." + "nextcloudChooseConflictingAttributes": "Choisissez chaque attribut en conflit.", + "nextcloudUseServerNote": "Utiliser cette note du serveur", + "nextcloudUseServerNoteExplanation": "Lie ce brouillon à la note sélectionnée sur le serveur, puis synchronise les modifications locales conservées. Une requête identique ne confirme pas qui a créé la note.", + "nextcloudExactCandidate": "Correspondance exacte avec la requête ; identité non confirmée.", + "nextcloudPossibleCandidate": "Correspondance possible après normalisation ; identité non confirmée.", + "nextcloudSelectCandidate": "Sélectionner une note du serveur à examiner", + "nextcloudCreateSeparate": "Créer une note distincte", + "nextcloudCreateSeparateWarning": "La première requête a peut-être déjà créé une note sur le serveur. Ceci crée une note distincte avec votre travail local conservé. Aucun doublon supposé ne sera supprimé." } diff --git a/lib/l10n/app_hi.arb b/lib/l10n/app_hi.arb index 64bcdb25..a548caf1 100644 --- a/lib/l10n/app_hi.arb +++ b/lib/l10n/app_hi.arb @@ -3406,5 +3406,12 @@ "nextcloudAttachmentReference": "सर्वर पर संलग्नक का संदर्भ", "nextcloudAddAttachment": "अटैचमेंट जोड़ें…", "nextcloudDeleteAttachmentWarning": "यह अटैचमेंट हटाने पर नोट में इसके लिंक उपलब्ध नहीं रहेंगे। सुरक्षित रखे गए डेटा को स्थानीय इतिहास से पुनर्प्राप्त किया जा सकता है।", - "nextcloudChooseConflictingAttributes": "हर परस्पर विरोधी विशेषता का मान चुनें।" + "nextcloudChooseConflictingAttributes": "हर परस्पर विरोधी विशेषता का मान चुनें।", + "nextcloudUseServerNote": "सर्वर के इस नोट का उपयोग करें", + "nextcloudUseServerNoteExplanation": "इस मसौदे को सर्वर के चुने हुए नोट से जोड़ता है, फिर सुरक्षित स्थानीय बदलाव समन्वयित करता है। अनुरोध का मिलना यह पुष्टि नहीं करता कि नोट किसने बनाया था।", + "nextcloudExactCandidate": "अनुरोध से पूरी तरह मेल; पहचान की पुष्टि नहीं हुई है।", + "nextcloudPossibleCandidate": "संशोधित अनुरोध से संभावित मेल; पहचान की पुष्टि नहीं हुई है।", + "nextcloudSelectCandidate": "समीक्षा के लिए सर्वर का नोट चुनें", + "nextcloudCreateSeparate": "अलग नोट बनाएँ", + "nextcloudCreateSeparateWarning": "पहले अनुरोध ने सर्वर पर पहले ही नोट बना दिया हो सकता है। यह आपके सुरक्षित स्थानीय काम के साथ अलग नोट बनाता है। किसी संभावित प्रतिलिपि को हटाया नहीं जाएगा।" } diff --git a/lib/l10n/app_id.arb b/lib/l10n/app_id.arb index 81b02243..b4e7dd2f 100644 --- a/lib/l10n/app_id.arb +++ b/lib/l10n/app_id.arb @@ -4945,5 +4945,12 @@ "nextcloudAttachmentReference": "Referensi lampiran di server", "nextcloudAddAttachment": "Tambahkan lampiran…", "nextcloudDeleteAttachmentWarning": "Menghapus lampiran ini membuat tautannya dalam catatan tidak tersedia. Data yang disimpan dapat dipulihkan melalui riwayat lokal.", - "nextcloudChooseConflictingAttributes": "Pilih setiap atribut yang berkonflik." + "nextcloudChooseConflictingAttributes": "Pilih setiap atribut yang berkonflik.", + "nextcloudUseServerNote": "Gunakan catatan server ini", + "nextcloudUseServerNoteExplanation": "Menautkan draf ini ke catatan server yang dipilih, lalu menyinkronkan perubahan lokal yang dipertahankan. Permintaan yang cocok tidak memastikan siapa yang membuat catatan.", + "nextcloudExactCandidate": "Sama persis dengan permintaan; identitas belum dikonfirmasi.", + "nextcloudPossibleCandidate": "Kemungkinan cocok setelah permintaan disanitasi; identitas belum dikonfirmasi.", + "nextcloudSelectCandidate": "Pilih catatan server untuk ditinjau", + "nextcloudCreateSeparate": "Buat catatan terpisah", + "nextcloudCreateSeparateWarning": "Permintaan pertama mungkin sudah membuat catatan server. Ini membuat catatan terpisah dengan pekerjaan lokal yang dipertahankan. Tidak ada dugaan duplikat yang akan dihapus." } diff --git a/lib/l10n/app_it.arb b/lib/l10n/app_it.arb index daecb24f..da86472f 100644 --- a/lib/l10n/app_it.arb +++ b/lib/l10n/app_it.arb @@ -3406,5 +3406,12 @@ "nextcloudAttachmentReference": "Riferimento allegato sul server", "nextcloudAddAttachment": "Aggiungi allegato…", "nextcloudDeleteAttachmentWarning": "Eliminando questo allegato, i suoi collegamenti nella nota non saranno più disponibili. I dati conservati possono essere recuperati dalla cronologia locale.", - "nextcloudChooseConflictingAttributes": "Scegli ogni attributo in conflitto." + "nextcloudChooseConflictingAttributes": "Scegli ogni attributo in conflitto.", + "nextcloudUseServerNote": "Usa questa nota del server", + "nextcloudUseServerNoteExplanation": "Collega questa bozza alla nota selezionata sul server, poi sincronizza le modifiche locali conservate. Una richiesta corrispondente non conferma chi ha creato la nota.", + "nextcloudExactCandidate": "Corrispondenza esatta con la richiesta; identità non confermata.", + "nextcloudPossibleCandidate": "Possibile corrispondenza dopo la normalizzazione; identità non confermata.", + "nextcloudSelectCandidate": "Seleziona una nota del server da esaminare", + "nextcloudCreateSeparate": "Crea una nota separata", + "nextcloudCreateSeparateWarning": "La prima richiesta potrebbe aver già creato una nota sul server. Questa azione crea una nota separata con il lavoro locale conservato. Nessun presunto duplicato verrà eliminato." } diff --git a/lib/l10n/app_ja.arb b/lib/l10n/app_ja.arb index 3bb9dc30..f5acddd1 100644 --- a/lib/l10n/app_ja.arb +++ b/lib/l10n/app_ja.arb @@ -4945,5 +4945,12 @@ "nextcloudAttachmentReference": "サーバー上の添付ファイル参照", "nextcloudAddAttachment": "添付ファイルを追加…", "nextcloudDeleteAttachmentWarning": "この添付ファイルを削除すると、ノート内のリンクは利用できなくなります。保持されたデータはローカル履歴から復元できます。", - "nextcloudChooseConflictingAttributes": "競合する各属性の値を選択してください。" + "nextcloudChooseConflictingAttributes": "競合する各属性の値を選択してください。", + "nextcloudUseServerNote": "このサーバーノートを使用", + "nextcloudUseServerNoteExplanation": "この下書きを選択したサーバーノートにリンクし、保持したローカル変更を同期します。リクエストの一致だけでは作成者を確認できません。", + "nextcloudExactCandidate": "リクエストと完全一致。識別情報は未確認です。", + "nextcloudPossibleCandidate": "正規化されたリクエストと一致する可能性あり。識別情報は未確認です。", + "nextcloudSelectCandidate": "確認するサーバーノートを選択", + "nextcloudCreateSeparate": "別のノートを作成", + "nextcloudCreateSeparateWarning": "最初のリクエストですでにサーバーノートが作成された可能性があります。保持したローカル作業から別のノートを作成します。重複の疑いがあるノートは削除されません。" } diff --git a/lib/l10n/app_ko.arb b/lib/l10n/app_ko.arb index cfaf321d..69c463dd 100644 --- a/lib/l10n/app_ko.arb +++ b/lib/l10n/app_ko.arb @@ -4945,5 +4945,12 @@ "nextcloudAttachmentReference": "서버의 첨부 파일 참조", "nextcloudAddAttachment": "첨부 파일 추가…", "nextcloudDeleteAttachmentWarning": "이 첨부 파일을 삭제하면 노트 안의 해당 링크를 사용할 수 없습니다. 보관된 데이터는 로컬 기록에서 복구할 수 있습니다.", - "nextcloudChooseConflictingAttributes": "충돌하는 각 속성의 값을 선택하세요." + "nextcloudChooseConflictingAttributes": "충돌하는 각 속성의 값을 선택하세요.", + "nextcloudUseServerNote": "이 서버 노트 사용", + "nextcloudUseServerNoteExplanation": "이 초안을 선택한 서버 노트에 연결한 다음 보존된 로컬 변경 사항을 동기화합니다. 요청이 일치해도 누가 노트를 만들었는지는 확인되지 않습니다.", + "nextcloudExactCandidate": "요청과 정확히 일치합니다. 동일한 노트인지 확인되지 않았습니다.", + "nextcloudPossibleCandidate": "정리된 요청과 일치할 수 있습니다. 동일한 노트인지 확인되지 않았습니다.", + "nextcloudSelectCandidate": "검토할 서버 노트 선택", + "nextcloudCreateSeparate": "별도 노트 만들기", + "nextcloudCreateSeparateWarning": "첫 요청으로 서버 노트가 이미 만들어졌을 수 있습니다. 보존된 로컬 작업으로 별도 노트를 만듭니다. 중복으로 의심되는 노트는 삭제하지 않습니다." } diff --git a/lib/l10n/app_nb.arb b/lib/l10n/app_nb.arb index 5bfc99b2..41036699 100644 --- a/lib/l10n/app_nb.arb +++ b/lib/l10n/app_nb.arb @@ -3406,5 +3406,12 @@ "nextcloudAttachmentReference": "Vedleggsreferanse på serveren", "nextcloudAddAttachment": "Legg til vedlegg…", "nextcloudDeleteAttachmentWarning": "Når du sletter dette vedlegget, blir lenkene til det i notatet utilgjengelige. Lagrede data kan gjenopprettes fra lokal historikk.", - "nextcloudChooseConflictingAttributes": "Velg hver motstridende egenskap." + "nextcloudChooseConflictingAttributes": "Velg hver motstridende egenskap.", + "nextcloudUseServerNote": "Bruk dette servernotatet", + "nextcloudUseServerNoteExplanation": "Knytter dette utkastet til det valgte servernotatet og synkroniserer deretter beholdte lokale endringer. En samsvarende forespørsel bekrefter ikke hvem som opprettet notatet.", + "nextcloudExactCandidate": "Nøyaktig samsvar med forespørselen; identiteten er ubekreftet.", + "nextcloudPossibleCandidate": "Mulig samsvar etter normalisering; identiteten er ubekreftet.", + "nextcloudSelectCandidate": "Velg et servernotat som skal gjennomgås", + "nextcloudCreateSeparate": "Opprett et separat notat", + "nextcloudCreateSeparateWarning": "Den første forespørselen kan allerede ha opprettet et servernotat. Dette oppretter et separat notat med ditt beholdte lokale arbeid. Ingen antatte duplikater slettes." } diff --git a/lib/l10n/app_nl.arb b/lib/l10n/app_nl.arb index 6e953260..e9ebf0aa 100644 --- a/lib/l10n/app_nl.arb +++ b/lib/l10n/app_nl.arb @@ -4945,5 +4945,12 @@ "nextcloudAttachmentReference": "Bijlageverwijzing op de server", "nextcloudAddAttachment": "Bijlage toevoegen…", "nextcloudDeleteAttachmentWarning": "Als u deze bijlage verwijdert, zijn de links ernaar in de notitie niet meer beschikbaar. Bewaarde gegevens kunnen via de lokale geschiedenis worden hersteld.", - "nextcloudChooseConflictingAttributes": "Kies voor elk conflicterend kenmerk een waarde." + "nextcloudChooseConflictingAttributes": "Kies voor elk conflicterend kenmerk een waarde.", + "nextcloudUseServerNote": "Deze servernotitie gebruiken", + "nextcloudUseServerNoteExplanation": "Koppelt dit concept aan de geselecteerde servernotitie en synchroniseert daarna de behouden lokale wijzigingen. Een overeenkomend verzoek bevestigt niet wie de notitie heeft gemaakt.", + "nextcloudExactCandidate": "Exacte overeenkomst met het verzoek; identiteit onbevestigd.", + "nextcloudPossibleCandidate": "Mogelijke overeenkomst na normalisatie; identiteit onbevestigd.", + "nextcloudSelectCandidate": "Selecteer een servernotitie om te bekijken", + "nextcloudCreateSeparate": "Een afzonderlijke notitie maken", + "nextcloudCreateSeparateWarning": "Het eerste verzoek heeft mogelijk al een servernotitie gemaakt. Dit maakt een afzonderlijke notitie met uw behouden lokale werk. Vermoedelijke duplicaten worden niet verwijderd." } diff --git a/lib/l10n/app_pl.arb b/lib/l10n/app_pl.arb index 24a14d09..f9929456 100644 --- a/lib/l10n/app_pl.arb +++ b/lib/l10n/app_pl.arb @@ -3432,5 +3432,12 @@ "nextcloudAttachmentReference": "Odnośnik do załącznika na serwerze", "nextcloudAddAttachment": "Dodaj załącznik…", "nextcloudDeleteAttachmentWarning": "Usunięcie tego załącznika spowoduje, że jego odnośniki w notatce będą niedostępne. Zachowane dane można odzyskać z lokalnej historii.", - "nextcloudChooseConflictingAttributes": "Wybierz wartość każdego sprzecznego atrybutu." + "nextcloudChooseConflictingAttributes": "Wybierz wartość każdego sprzecznego atrybutu.", + "nextcloudUseServerNote": "Użyj tej notatki z serwera", + "nextcloudUseServerNoteExplanation": "Łączy ten szkic z wybraną notatką na serwerze, a następnie synchronizuje zachowane zmiany lokalne. Zgodne żądanie nie potwierdza, kto utworzył notatkę.", + "nextcloudExactCandidate": "Dokładna zgodność z żądaniem; tożsamość niepotwierdzona.", + "nextcloudPossibleCandidate": "Możliwa zgodność po normalizacji żądania; tożsamość niepotwierdzona.", + "nextcloudSelectCandidate": "Wybierz notatkę z serwera do sprawdzenia", + "nextcloudCreateSeparate": "Utwórz osobną notatkę", + "nextcloudCreateSeparateWarning": "Pierwsze żądanie mogło już utworzyć notatkę na serwerze. Ta czynność tworzy osobną notatkę z zachowaną pracą lokalną. Żadne podejrzane duplikaty nie zostaną usunięte." } diff --git a/lib/l10n/app_pt.arb b/lib/l10n/app_pt.arb index bd8bca48..9c439090 100644 --- a/lib/l10n/app_pt.arb +++ b/lib/l10n/app_pt.arb @@ -3406,5 +3406,12 @@ "nextcloudAttachmentReference": "Referência do anexo no servidor", "nextcloudAddAttachment": "Adicionar anexo…", "nextcloudDeleteAttachmentWarning": "Ao eliminar este anexo, as suas ligações na nota deixam de estar disponíveis. Os dados conservados podem ser recuperados através do histórico local.", - "nextcloudChooseConflictingAttributes": "Escolha cada atributo em conflito." + "nextcloudChooseConflictingAttributes": "Escolha cada atributo em conflito.", + "nextcloudUseServerNote": "Usar esta nota do servidor", + "nextcloudUseServerNoteExplanation": "Associa este rascunho à nota selecionada no servidor e depois sincroniza as alterações locais preservadas. Um pedido correspondente não confirma quem criou a nota.", + "nextcloudExactCandidate": "Correspondência exata com o pedido; identidade não confirmada.", + "nextcloudPossibleCandidate": "Possível correspondência após normalização; identidade não confirmada.", + "nextcloudSelectCandidate": "Selecionar uma nota do servidor para rever", + "nextcloudCreateSeparate": "Criar uma nota separada", + "nextcloudCreateSeparateWarning": "O primeiro pedido pode já ter criado uma nota no servidor. Isto cria uma nota separada com o trabalho local preservado. Nenhum possível duplicado será eliminado." } diff --git a/lib/l10n/app_pt_BR.arb b/lib/l10n/app_pt_BR.arb index fe2e86ad..073e6620 100644 --- a/lib/l10n/app_pt_BR.arb +++ b/lib/l10n/app_pt_BR.arb @@ -3406,5 +3406,12 @@ "nextcloudAttachmentReference": "Referência do anexo no servidor", "nextcloudAddAttachment": "Adicionar anexo…", "nextcloudDeleteAttachmentWarning": "Excluir este anexo torna seus links na nota indisponíveis. Os dados preservados podem ser recuperados pelo histórico local.", - "nextcloudChooseConflictingAttributes": "Escolha cada atributo em conflito." + "nextcloudChooseConflictingAttributes": "Escolha cada atributo em conflito.", + "nextcloudUseServerNote": "Usar esta nota do servidor", + "nextcloudUseServerNoteExplanation": "Vincula este rascunho à nota selecionada no servidor e depois sincroniza as alterações locais preservadas. Uma solicitação correspondente não confirma quem criou a nota.", + "nextcloudExactCandidate": "Correspondência exata com a solicitação; identidade não confirmada.", + "nextcloudPossibleCandidate": "Possível correspondência após normalização; identidade não confirmada.", + "nextcloudSelectCandidate": "Selecionar uma nota do servidor para revisar", + "nextcloudCreateSeparate": "Criar uma nota separada", + "nextcloudCreateSeparateWarning": "A primeira solicitação pode já ter criado uma nota no servidor. Isso cria uma nota separada com o trabalho local preservado. Nenhuma possível duplicata será excluída." } diff --git a/lib/l10n/app_ru.arb b/lib/l10n/app_ru.arb index 36d8bc28..4d5d3e8a 100644 --- a/lib/l10n/app_ru.arb +++ b/lib/l10n/app_ru.arb @@ -3432,5 +3432,12 @@ "nextcloudAttachmentReference": "Ссылка на вложение на сервере", "nextcloudAddAttachment": "Добавить вложение…", "nextcloudDeleteAttachmentWarning": "После удаления этого вложения ссылки на него в заметке станут недоступны. Сохранённые данные можно восстановить через локальную историю.", - "nextcloudChooseConflictingAttributes": "Выберите значение каждого конфликтующего атрибута." + "nextcloudChooseConflictingAttributes": "Выберите значение каждого конфликтующего атрибута.", + "nextcloudUseServerNote": "Использовать эту заметку на сервере", + "nextcloudUseServerNoteExplanation": "Связывает этот черновик с выбранной заметкой на сервере, затем синхронизирует сохранённые локальные изменения. Совпадение запроса не подтверждает, кто создал заметку.", + "nextcloudExactCandidate": "Точное совпадение с запросом; идентичность не подтверждена.", + "nextcloudPossibleCandidate": "Возможное совпадение после нормализации; идентичность не подтверждена.", + "nextcloudSelectCandidate": "Выберите заметку на сервере для проверки", + "nextcloudCreateSeparate": "Создать отдельную заметку", + "nextcloudCreateSeparateWarning": "Первый запрос мог уже создать заметку на сервере. Будет создана отдельная заметка с сохранённой локальной работой. Предполагаемые дубликаты не будут удалены." } diff --git a/lib/l10n/app_tr.arb b/lib/l10n/app_tr.arb index 0e4f40ac..567ec90e 100644 --- a/lib/l10n/app_tr.arb +++ b/lib/l10n/app_tr.arb @@ -4945,5 +4945,12 @@ "nextcloudAttachmentReference": "Sunucudaki ek başvurusu", "nextcloudAddAttachment": "Ek ekle…", "nextcloudDeleteAttachmentWarning": "Bu eki silmek, nottaki bağlantılarını kullanılamaz hale getirir. Saklanan veriler yerel geçmişten kurtarılabilir.", - "nextcloudChooseConflictingAttributes": "Çakışan her öznitelik için bir değer seçin." + "nextcloudChooseConflictingAttributes": "Çakışan her öznitelik için bir değer seçin.", + "nextcloudUseServerNote": "Bu sunucu notunu kullan", + "nextcloudUseServerNoteExplanation": "Bu taslağı seçilen sunucu notuna bağlar, ardından korunan yerel değişiklikleri eşitler. Eşleşen bir istek, notu kimin oluşturduğunu doğrulamaz.", + "nextcloudExactCandidate": "İstekle tam eşleşme; kimlik doğrulanmadı.", + "nextcloudPossibleCandidate": "Düzenlenmiş istekle olası eşleşme; kimlik doğrulanmadı.", + "nextcloudSelectCandidate": "İncelemek için bir sunucu notu seçin", + "nextcloudCreateSeparate": "Ayrı bir not oluştur", + "nextcloudCreateSeparateWarning": "İlk istek sunucuda zaten bir not oluşturmuş olabilir. Bu işlem korunan yerel çalışmanızla ayrı bir not oluşturur. Olası kopyalar silinmez." } diff --git a/lib/l10n/app_uk.arb b/lib/l10n/app_uk.arb index d9138e6b..782057fd 100644 --- a/lib/l10n/app_uk.arb +++ b/lib/l10n/app_uk.arb @@ -3432,5 +3432,12 @@ "nextcloudAttachmentReference": "Посилання на вкладення на сервері", "nextcloudAddAttachment": "Додати вкладення…", "nextcloudDeleteAttachmentWarning": "Після видалення цього вкладення посилання на нього в нотатці стануть недоступними. Збережені дані можна відновити з локальної історії.", - "nextcloudChooseConflictingAttributes": "Виберіть значення кожного конфліктного атрибута." + "nextcloudChooseConflictingAttributes": "Виберіть значення кожного конфліктного атрибута.", + "nextcloudUseServerNote": "Використати цю нотатку на сервері", + "nextcloudUseServerNoteExplanation": "Пов’язує цю чернетку з вибраною нотаткою на сервері, а потім синхронізує збережені локальні зміни. Збіг запиту не підтверджує, хто створив нотатку.", + "nextcloudExactCandidate": "Точний збіг із запитом; тотожність не підтверджено.", + "nextcloudPossibleCandidate": "Можливий збіг після нормалізації; тотожність не підтверджено.", + "nextcloudSelectCandidate": "Виберіть нотатку на сервері для перегляду", + "nextcloudCreateSeparate": "Створити окрему нотатку", + "nextcloudCreateSeparateWarning": "Перший запит міг уже створити нотатку на сервері. Буде створено окрему нотатку зі збереженою локальною роботою. Ймовірні дублікати не буде видалено." } diff --git a/lib/l10n/app_vi.arb b/lib/l10n/app_vi.arb index a335918b..d51a6492 100644 --- a/lib/l10n/app_vi.arb +++ b/lib/l10n/app_vi.arb @@ -4945,5 +4945,12 @@ "nextcloudAttachmentReference": "Tham chiếu tệp đính kèm trên máy chủ", "nextcloudAddAttachment": "Thêm tệp đính kèm…", "nextcloudDeleteAttachmentWarning": "Xóa tệp đính kèm này sẽ khiến các liên kết đến tệp trong ghi chú không còn khả dụng. Dữ liệu được giữ lại có thể khôi phục qua lịch sử cục bộ.", - "nextcloudChooseConflictingAttributes": "Chọn giá trị cho từng thuộc tính xung đột." + "nextcloudChooseConflictingAttributes": "Chọn giá trị cho từng thuộc tính xung đột.", + "nextcloudUseServerNote": "Dùng ghi chú trên máy chủ này", + "nextcloudUseServerNoteExplanation": "Liên kết bản nháp này với ghi chú đã chọn trên máy chủ, rồi đồng bộ các thay đổi cục bộ được giữ lại. Yêu cầu trùng khớp không xác nhận ai đã tạo ghi chú.", + "nextcloudExactCandidate": "Khớp chính xác với yêu cầu; chưa xác nhận danh tính.", + "nextcloudPossibleCandidate": "Có thể khớp sau khi chuẩn hóa yêu cầu; chưa xác nhận danh tính.", + "nextcloudSelectCandidate": "Chọn ghi chú trên máy chủ để xem xét", + "nextcloudCreateSeparate": "Tạo ghi chú riêng", + "nextcloudCreateSeparateWarning": "Yêu cầu đầu tiên có thể đã tạo ghi chú trên máy chủ. Thao tác này tạo ghi chú riêng với công việc cục bộ được giữ lại. Không xóa ghi chú nào bị nghi trùng lặp." } diff --git a/lib/l10n/app_zh.arb b/lib/l10n/app_zh.arb index 0d80daa9..69910cd2 100644 --- a/lib/l10n/app_zh.arb +++ b/lib/l10n/app_zh.arb @@ -4945,5 +4945,12 @@ "nextcloudAttachmentReference": "服务器上的附件引用", "nextcloudAddAttachment": "添加附件…", "nextcloudDeleteAttachmentWarning": "删除此附件后,笔记中指向它的链接将不可用。保留的数据可通过本地历史记录恢复。", - "nextcloudChooseConflictingAttributes": "为每个冲突属性选择一个值。" + "nextcloudChooseConflictingAttributes": "为每个冲突属性选择一个值。", + "nextcloudUseServerNote": "使用此服务器笔记", + "nextcloudUseServerNoteExplanation": "将此草稿关联到选定的服务器笔记,然后同步保留的本地更改。请求匹配并不能确认笔记由谁创建。", + "nextcloudExactCandidate": "与请求完全匹配;身份尚未确认。", + "nextcloudPossibleCandidate": "可能与规范化后的请求匹配;身份尚未确认。", + "nextcloudSelectCandidate": "选择要检查的服务器笔记", + "nextcloudCreateSeparate": "创建独立笔记", + "nextcloudCreateSeparateWarning": "首次请求可能已在服务器上创建笔记。此操作将使用保留的本地工作创建独立笔记。不会删除任何疑似重复的笔记。" } diff --git a/lib/l10n/app_zh_CN.arb b/lib/l10n/app_zh_CN.arb index 13217ab7..072d21bb 100644 --- a/lib/l10n/app_zh_CN.arb +++ b/lib/l10n/app_zh_CN.arb @@ -4945,5 +4945,12 @@ "nextcloudAttachmentReference": "服务器上的附件引用", "nextcloudAddAttachment": "添加附件…", "nextcloudDeleteAttachmentWarning": "删除此附件后,笔记中指向它的链接将不可用。保留的数据可通过本地历史记录恢复。", - "nextcloudChooseConflictingAttributes": "为每个冲突属性选择一个值。" + "nextcloudChooseConflictingAttributes": "为每个冲突属性选择一个值。", + "nextcloudUseServerNote": "使用此服务器笔记", + "nextcloudUseServerNoteExplanation": "将此草稿关联到选定的服务器笔记,然后同步保留的本地更改。请求匹配并不能确认笔记由谁创建。", + "nextcloudExactCandidate": "与请求完全匹配;身份尚未确认。", + "nextcloudPossibleCandidate": "可能与规范化后的请求匹配;身份尚未确认。", + "nextcloudSelectCandidate": "选择要检查的服务器笔记", + "nextcloudCreateSeparate": "创建独立笔记", + "nextcloudCreateSeparateWarning": "首次请求可能已在服务器上创建笔记。此操作将使用保留的本地工作创建独立笔记。不会删除任何疑似重复的笔记。" } diff --git a/lib/l10n/generated/app_localizations.dart b/lib/l10n/generated/app_localizations.dart index f3bd2bab..a637c4d3 100644 --- a/lib/l10n/generated/app_localizations.dart +++ b/lib/l10n/generated/app_localizations.dart @@ -8045,6 +8045,48 @@ abstract class AppLocalizations { /// In en, this message translates to: /// **'Choose each conflicting attribute.'** String get nextcloudChooseConflictingAttributes; + + /// No description provided for @nextcloudUseServerNote. + /// + /// In en, this message translates to: + /// **'Use this server note'** + String get nextcloudUseServerNote; + + /// No description provided for @nextcloudUseServerNoteExplanation. + /// + /// In en, this message translates to: + /// **'Links this draft to the selected server note, then synchronizes retained local changes. A matching request does not confirm who created the note.'** + String get nextcloudUseServerNoteExplanation; + + /// No description provided for @nextcloudExactCandidate. + /// + /// In en, this message translates to: + /// **'Exact request match; identity is unconfirmed.'** + String get nextcloudExactCandidate; + + /// No description provided for @nextcloudPossibleCandidate. + /// + /// In en, this message translates to: + /// **'Possible sanitized request match; identity is unconfirmed.'** + String get nextcloudPossibleCandidate; + + /// No description provided for @nextcloudSelectCandidate. + /// + /// In en, this message translates to: + /// **'Select a server note to review'** + String get nextcloudSelectCandidate; + + /// No description provided for @nextcloudCreateSeparate. + /// + /// In en, this message translates to: + /// **'Create a separate note'** + String get nextcloudCreateSeparate; + + /// No description provided for @nextcloudCreateSeparateWarning. + /// + /// In en, this message translates to: + /// **'The first request may already have created a server note. This creates a separate note with your retained local work. No suspected duplicate will be deleted.'** + String get nextcloudCreateSeparateWarning; } class _AppLocalizationsDelegate diff --git a/lib/l10n/generated/app_localizations_ar.dart b/lib/l10n/generated/app_localizations_ar.dart index 2d33967d..829f7b52 100644 --- a/lib/l10n/generated/app_localizations_ar.dart +++ b/lib/l10n/generated/app_localizations_ar.dart @@ -4777,4 +4777,28 @@ class AppLocalizationsAr extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'اختر قيمة لكل سمة متعارضة.'; + + @override + String get nextcloudUseServerNote => 'استخدام هذه الملاحظة على الخادم'; + + @override + String get nextcloudUseServerNoteExplanation => + 'يربط هذه المسودة بالملاحظة المحددة على الخادم، ثم يزامن التغييرات المحلية المحفوظة. تطابق الطلب لا يؤكد من أنشأ الملاحظة.'; + + @override + String get nextcloudExactCandidate => 'تطابق تام مع الطلب؛ الهوية غير مؤكدة.'; + + @override + String get nextcloudPossibleCandidate => + 'تطابق محتمل بعد تنقية الطلب؛ الهوية غير مؤكدة.'; + + @override + String get nextcloudSelectCandidate => 'اختر ملاحظة على الخادم لمراجعتها'; + + @override + String get nextcloudCreateSeparate => 'إنشاء ملاحظة منفصلة'; + + @override + String get nextcloudCreateSeparateWarning => + 'قد يكون الطلب الأول قد أنشأ ملاحظة على الخادم بالفعل. ينشئ هذا ملاحظة منفصلة بعملك المحلي المحفوظ. لن تُحذف أي ملاحظة يُشتبه بأنها مكررة.'; } diff --git a/lib/l10n/generated/app_localizations_de.dart b/lib/l10n/generated/app_localizations_de.dart index 60b26431..7d14940a 100644 --- a/lib/l10n/generated/app_localizations_de.dart +++ b/lib/l10n/generated/app_localizations_de.dart @@ -4789,4 +4789,29 @@ class AppLocalizationsDe extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Wählen Sie jeden widersprüchlichen Wert.'; + + @override + String get nextcloudUseServerNote => 'Diese Servernotiz verwenden'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Verknüpft diesen Entwurf mit der ausgewählten Servernotiz und synchronisiert anschließend die behaltenen lokalen Änderungen. Ein passender Antrag bestätigt nicht, wer die Notiz erstellt hat.'; + + @override + String get nextcloudExactCandidate => + 'Exakte Übereinstimmung mit der Anfrage; Identität unbestätigt.'; + + @override + String get nextcloudPossibleCandidate => + 'Mögliche Übereinstimmung nach Bereinigung der Anfrage; Identität unbestätigt.'; + + @override + String get nextcloudSelectCandidate => 'Servernotiz zur Prüfung auswählen'; + + @override + String get nextcloudCreateSeparate => 'Separate Notiz erstellen'; + + @override + String get nextcloudCreateSeparateWarning => + 'Die erste Anfrage hat möglicherweise bereits eine Servernotiz erstellt. Dies erstellt eine separate Notiz mit Ihrer behaltenen lokalen Arbeit. Vermutete Duplikate werden nicht gelöscht.'; } diff --git a/lib/l10n/generated/app_localizations_en.dart b/lib/l10n/generated/app_localizations_en.dart index 0d11d477..8e6eb55f 100644 --- a/lib/l10n/generated/app_localizations_en.dart +++ b/lib/l10n/generated/app_localizations_en.dart @@ -4760,4 +4760,29 @@ class AppLocalizationsEn extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Choose each conflicting attribute.'; + + @override + String get nextcloudUseServerNote => 'Use this server note'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Links this draft to the selected server note, then synchronizes retained local changes. A matching request does not confirm who created the note.'; + + @override + String get nextcloudExactCandidate => + 'Exact request match; identity is unconfirmed.'; + + @override + String get nextcloudPossibleCandidate => + 'Possible sanitized request match; identity is unconfirmed.'; + + @override + String get nextcloudSelectCandidate => 'Select a server note to review'; + + @override + String get nextcloudCreateSeparate => 'Create a separate note'; + + @override + String get nextcloudCreateSeparateWarning => + 'The first request may already have created a server note. This creates a separate note with your retained local work. No suspected duplicate will be deleted.'; } diff --git a/lib/l10n/generated/app_localizations_es.dart b/lib/l10n/generated/app_localizations_es.dart index 37ebafce..b8edaca3 100644 --- a/lib/l10n/generated/app_localizations_es.dart +++ b/lib/l10n/generated/app_localizations_es.dart @@ -4794,4 +4794,30 @@ class AppLocalizationsEs extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Elige cada atributo en conflicto.'; + + @override + String get nextcloudUseServerNote => 'Usar esta nota del servidor'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Vincula este borrador con la nota seleccionada del servidor y luego sincroniza los cambios locales conservados. Una solicitud coincidente no confirma quién creó la nota.'; + + @override + String get nextcloudExactCandidate => + 'Coincidencia exacta con la solicitud; identidad sin confirmar.'; + + @override + String get nextcloudPossibleCandidate => + 'Posible coincidencia con la solicitud saneada; identidad sin confirmar.'; + + @override + String get nextcloudSelectCandidate => + 'Seleccionar una nota del servidor para revisarla'; + + @override + String get nextcloudCreateSeparate => 'Crear una nota aparte'; + + @override + String get nextcloudCreateSeparateWarning => + 'La primera solicitud puede haber creado ya una nota en el servidor. Esto crea una nota aparte con su trabajo local conservado. No se eliminará ningún posible duplicado.'; } diff --git a/lib/l10n/generated/app_localizations_et.dart b/lib/l10n/generated/app_localizations_et.dart index df236e8c..f3537d4d 100644 --- a/lib/l10n/generated/app_localizations_et.dart +++ b/lib/l10n/generated/app_localizations_et.dart @@ -4746,4 +4746,29 @@ class AppLocalizationsEt extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Valige iga vastuolulise atribuudi väärtus.'; + + @override + String get nextcloudUseServerNote => 'Kasuta seda serverimärkust'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Seob mustandi valitud serverimärkusega ja sünkroonib seejärel säilitatud kohalikud muudatused. Päringu vastavus ei kinnita märkuse loojat.'; + + @override + String get nextcloudExactCandidate => + 'Täpne päringu vaste; identiteet on kinnitamata.'; + + @override + String get nextcloudPossibleCandidate => + 'Võimalik puhastatud päringu vaste; identiteet on kinnitamata.'; + + @override + String get nextcloudSelectCandidate => 'Vali ülevaatamiseks serverimärkus'; + + @override + String get nextcloudCreateSeparate => 'Loo eraldi märkus'; + + @override + String get nextcloudCreateSeparateWarning => + 'Esimene päring võis serveris juba märkuse luua. See loob eraldi märkuse koos säilitatud kohaliku tööga. Võimalikke duplikaate ei kustutata.'; } diff --git a/lib/l10n/generated/app_localizations_fa.dart b/lib/l10n/generated/app_localizations_fa.dart index c20ca30c..33bb866f 100644 --- a/lib/l10n/generated/app_localizations_fa.dart +++ b/lib/l10n/generated/app_localizations_fa.dart @@ -4783,4 +4783,30 @@ class AppLocalizationsFa extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'مقدار هر ویژگی متعارض را انتخاب کنید.'; + + @override + String get nextcloudUseServerNote => 'استفاده از این یادداشت سرور'; + + @override + String get nextcloudUseServerNoteExplanation => + 'این پیش‌نویس را به یادداشت انتخاب‌شدهٔ سرور پیوند می‌دهد و سپس تغییرات محلی حفظ‌شده را همگام می‌کند. تطابق درخواست مشخص نمی‌کند چه کسی یادداشت را ایجاد کرده است.'; + + @override + String get nextcloudExactCandidate => + 'تطابق دقیق درخواست؛ هویت تأیید نشده است.'; + + @override + String get nextcloudPossibleCandidate => + 'تطابق احتمالی درخواست پاک‌سازی‌شده؛ هویت تأیید نشده است.'; + + @override + String get nextcloudSelectCandidate => + 'یک یادداشت سرور را برای بررسی انتخاب کنید'; + + @override + String get nextcloudCreateSeparate => 'ایجاد یک یادداشت جداگانه'; + + @override + String get nextcloudCreateSeparateWarning => + 'ممکن است درخواست نخست قبلاً یک یادداشت سرور ایجاد کرده باشد. این کار یک یادداشت جداگانه با کار محلی حفظ‌شدهٔ شما ایجاد می‌کند. هیچ یادداشت مشکوک به تکراری بودن حذف نمی‌شود.'; } diff --git a/lib/l10n/generated/app_localizations_fr.dart b/lib/l10n/generated/app_localizations_fr.dart index a7937f35..cdb5d92c 100644 --- a/lib/l10n/generated/app_localizations_fr.dart +++ b/lib/l10n/generated/app_localizations_fr.dart @@ -4796,4 +4796,30 @@ class AppLocalizationsFr extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Choisissez chaque attribut en conflit.'; + + @override + String get nextcloudUseServerNote => 'Utiliser cette note du serveur'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Lie ce brouillon à la note sélectionnée sur le serveur, puis synchronise les modifications locales conservées. Une requête identique ne confirme pas qui a créé la note.'; + + @override + String get nextcloudExactCandidate => + 'Correspondance exacte avec la requête ; identité non confirmée.'; + + @override + String get nextcloudPossibleCandidate => + 'Correspondance possible après normalisation ; identité non confirmée.'; + + @override + String get nextcloudSelectCandidate => + 'Sélectionner une note du serveur à examiner'; + + @override + String get nextcloudCreateSeparate => 'Créer une note distincte'; + + @override + String get nextcloudCreateSeparateWarning => + 'La première requête a peut-être déjà créé une note sur le serveur. Ceci crée une note distincte avec votre travail local conservé. Aucun doublon supposé ne sera supprimé.'; } diff --git a/lib/l10n/generated/app_localizations_hi.dart b/lib/l10n/generated/app_localizations_hi.dart index 27c0cfcb..bebc77ba 100644 --- a/lib/l10n/generated/app_localizations_hi.dart +++ b/lib/l10n/generated/app_localizations_hi.dart @@ -4736,4 +4736,29 @@ class AppLocalizationsHi extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'हर परस्पर विरोधी विशेषता का मान चुनें।'; + + @override + String get nextcloudUseServerNote => 'सर्वर के इस नोट का उपयोग करें'; + + @override + String get nextcloudUseServerNoteExplanation => + 'इस मसौदे को सर्वर के चुने हुए नोट से जोड़ता है, फिर सुरक्षित स्थानीय बदलाव समन्वयित करता है। अनुरोध का मिलना यह पुष्टि नहीं करता कि नोट किसने बनाया था।'; + + @override + String get nextcloudExactCandidate => + 'अनुरोध से पूरी तरह मेल; पहचान की पुष्टि नहीं हुई है।'; + + @override + String get nextcloudPossibleCandidate => + 'संशोधित अनुरोध से संभावित मेल; पहचान की पुष्टि नहीं हुई है।'; + + @override + String get nextcloudSelectCandidate => 'समीक्षा के लिए सर्वर का नोट चुनें'; + + @override + String get nextcloudCreateSeparate => 'अलग नोट बनाएँ'; + + @override + String get nextcloudCreateSeparateWarning => + 'पहले अनुरोध ने सर्वर पर पहले ही नोट बना दिया हो सकता है। यह आपके सुरक्षित स्थानीय काम के साथ अलग नोट बनाता है। किसी संभावित प्रतिलिपि को हटाया नहीं जाएगा।'; } diff --git a/lib/l10n/generated/app_localizations_id.dart b/lib/l10n/generated/app_localizations_id.dart index c03e1b36..7b39a059 100644 --- a/lib/l10n/generated/app_localizations_id.dart +++ b/lib/l10n/generated/app_localizations_id.dart @@ -4746,4 +4746,29 @@ class AppLocalizationsId extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Pilih setiap atribut yang berkonflik.'; + + @override + String get nextcloudUseServerNote => 'Gunakan catatan server ini'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Menautkan draf ini ke catatan server yang dipilih, lalu menyinkronkan perubahan lokal yang dipertahankan. Permintaan yang cocok tidak memastikan siapa yang membuat catatan.'; + + @override + String get nextcloudExactCandidate => + 'Sama persis dengan permintaan; identitas belum dikonfirmasi.'; + + @override + String get nextcloudPossibleCandidate => + 'Kemungkinan cocok setelah permintaan disanitasi; identitas belum dikonfirmasi.'; + + @override + String get nextcloudSelectCandidate => 'Pilih catatan server untuk ditinjau'; + + @override + String get nextcloudCreateSeparate => 'Buat catatan terpisah'; + + @override + String get nextcloudCreateSeparateWarning => + 'Permintaan pertama mungkin sudah membuat catatan server. Ini membuat catatan terpisah dengan pekerjaan lokal yang dipertahankan. Tidak ada dugaan duplikat yang akan dihapus.'; } diff --git a/lib/l10n/generated/app_localizations_it.dart b/lib/l10n/generated/app_localizations_it.dart index f1c3bcd4..5e55b154 100644 --- a/lib/l10n/generated/app_localizations_it.dart +++ b/lib/l10n/generated/app_localizations_it.dart @@ -4787,4 +4787,30 @@ class AppLocalizationsIt extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Scegli ogni attributo in conflitto.'; + + @override + String get nextcloudUseServerNote => 'Usa questa nota del server'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Collega questa bozza alla nota selezionata sul server, poi sincronizza le modifiche locali conservate. Una richiesta corrispondente non conferma chi ha creato la nota.'; + + @override + String get nextcloudExactCandidate => + 'Corrispondenza esatta con la richiesta; identità non confermata.'; + + @override + String get nextcloudPossibleCandidate => + 'Possibile corrispondenza dopo la normalizzazione; identità non confermata.'; + + @override + String get nextcloudSelectCandidate => + 'Seleziona una nota del server da esaminare'; + + @override + String get nextcloudCreateSeparate => 'Crea una nota separata'; + + @override + String get nextcloudCreateSeparateWarning => + 'La prima richiesta potrebbe aver già creato una nota sul server. Questa azione crea una nota separata con il lavoro locale conservato. Nessun presunto duplicato verrà eliminato.'; } diff --git a/lib/l10n/generated/app_localizations_ja.dart b/lib/l10n/generated/app_localizations_ja.dart index 7c5fc03b..336f3b88 100644 --- a/lib/l10n/generated/app_localizations_ja.dart +++ b/lib/l10n/generated/app_localizations_ja.dart @@ -4615,4 +4615,27 @@ class AppLocalizationsJa extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => '競合する各属性の値を選択してください。'; + + @override + String get nextcloudUseServerNote => 'このサーバーノートを使用'; + + @override + String get nextcloudUseServerNoteExplanation => + 'この下書きを選択したサーバーノートにリンクし、保持したローカル変更を同期します。リクエストの一致だけでは作成者を確認できません。'; + + @override + String get nextcloudExactCandidate => 'リクエストと完全一致。識別情報は未確認です。'; + + @override + String get nextcloudPossibleCandidate => '正規化されたリクエストと一致する可能性あり。識別情報は未確認です。'; + + @override + String get nextcloudSelectCandidate => '確認するサーバーノートを選択'; + + @override + String get nextcloudCreateSeparate => '別のノートを作成'; + + @override + String get nextcloudCreateSeparateWarning => + '最初のリクエストですでにサーバーノートが作成された可能性があります。保持したローカル作業から別のノートを作成します。重複の疑いがあるノートは削除されません。'; } diff --git a/lib/l10n/generated/app_localizations_ko.dart b/lib/l10n/generated/app_localizations_ko.dart index 3c9a55cf..2aa28746 100644 --- a/lib/l10n/generated/app_localizations_ko.dart +++ b/lib/l10n/generated/app_localizations_ko.dart @@ -4609,4 +4609,28 @@ class AppLocalizationsKo extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => '충돌하는 각 속성의 값을 선택하세요.'; + + @override + String get nextcloudUseServerNote => '이 서버 노트 사용'; + + @override + String get nextcloudUseServerNoteExplanation => + '이 초안을 선택한 서버 노트에 연결한 다음 보존된 로컬 변경 사항을 동기화합니다. 요청이 일치해도 누가 노트를 만들었는지는 확인되지 않습니다.'; + + @override + String get nextcloudExactCandidate => '요청과 정확히 일치합니다. 동일한 노트인지 확인되지 않았습니다.'; + + @override + String get nextcloudPossibleCandidate => + '정리된 요청과 일치할 수 있습니다. 동일한 노트인지 확인되지 않았습니다.'; + + @override + String get nextcloudSelectCandidate => '검토할 서버 노트 선택'; + + @override + String get nextcloudCreateSeparate => '별도 노트 만들기'; + + @override + String get nextcloudCreateSeparateWarning => + '첫 요청으로 서버 노트가 이미 만들어졌을 수 있습니다. 보존된 로컬 작업으로 별도 노트를 만듭니다. 중복으로 의심되는 노트는 삭제하지 않습니다.'; } diff --git a/lib/l10n/generated/app_localizations_nb.dart b/lib/l10n/generated/app_localizations_nb.dart index 68ee4d89..7bef7fab 100644 --- a/lib/l10n/generated/app_localizations_nb.dart +++ b/lib/l10n/generated/app_localizations_nb.dart @@ -4748,4 +4748,30 @@ class AppLocalizationsNb extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Velg hver motstridende egenskap.'; + + @override + String get nextcloudUseServerNote => 'Bruk dette servernotatet'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Knytter dette utkastet til det valgte servernotatet og synkroniserer deretter beholdte lokale endringer. En samsvarende forespørsel bekrefter ikke hvem som opprettet notatet.'; + + @override + String get nextcloudExactCandidate => + 'Nøyaktig samsvar med forespørselen; identiteten er ubekreftet.'; + + @override + String get nextcloudPossibleCandidate => + 'Mulig samsvar etter normalisering; identiteten er ubekreftet.'; + + @override + String get nextcloudSelectCandidate => + 'Velg et servernotat som skal gjennomgås'; + + @override + String get nextcloudCreateSeparate => 'Opprett et separat notat'; + + @override + String get nextcloudCreateSeparateWarning => + 'Den første forespørselen kan allerede ha opprettet et servernotat. Dette oppretter et separat notat med ditt beholdte lokale arbeid. Ingen antatte duplikater slettes.'; } diff --git a/lib/l10n/generated/app_localizations_nl.dart b/lib/l10n/generated/app_localizations_nl.dart index d3d3e856..e1c8bab0 100644 --- a/lib/l10n/generated/app_localizations_nl.dart +++ b/lib/l10n/generated/app_localizations_nl.dart @@ -4793,4 +4793,30 @@ class AppLocalizationsNl extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Kies voor elk conflicterend kenmerk een waarde.'; + + @override + String get nextcloudUseServerNote => 'Deze servernotitie gebruiken'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Koppelt dit concept aan de geselecteerde servernotitie en synchroniseert daarna de behouden lokale wijzigingen. Een overeenkomend verzoek bevestigt niet wie de notitie heeft gemaakt.'; + + @override + String get nextcloudExactCandidate => + 'Exacte overeenkomst met het verzoek; identiteit onbevestigd.'; + + @override + String get nextcloudPossibleCandidate => + 'Mogelijke overeenkomst na normalisatie; identiteit onbevestigd.'; + + @override + String get nextcloudSelectCandidate => + 'Selecteer een servernotitie om te bekijken'; + + @override + String get nextcloudCreateSeparate => 'Een afzonderlijke notitie maken'; + + @override + String get nextcloudCreateSeparateWarning => + 'Het eerste verzoek heeft mogelijk al een servernotitie gemaakt. Dit maakt een afzonderlijke notitie met uw behouden lokale werk. Vermoedelijke duplicaten worden niet verwijderd.'; } diff --git a/lib/l10n/generated/app_localizations_pl.dart b/lib/l10n/generated/app_localizations_pl.dart index f7fd873c..ae31859c 100644 --- a/lib/l10n/generated/app_localizations_pl.dart +++ b/lib/l10n/generated/app_localizations_pl.dart @@ -4801,4 +4801,30 @@ class AppLocalizationsPl extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Wybierz wartość każdego sprzecznego atrybutu.'; + + @override + String get nextcloudUseServerNote => 'Użyj tej notatki z serwera'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Łączy ten szkic z wybraną notatką na serwerze, a następnie synchronizuje zachowane zmiany lokalne. Zgodne żądanie nie potwierdza, kto utworzył notatkę.'; + + @override + String get nextcloudExactCandidate => + 'Dokładna zgodność z żądaniem; tożsamość niepotwierdzona.'; + + @override + String get nextcloudPossibleCandidate => + 'Możliwa zgodność po normalizacji żądania; tożsamość niepotwierdzona.'; + + @override + String get nextcloudSelectCandidate => + 'Wybierz notatkę z serwera do sprawdzenia'; + + @override + String get nextcloudCreateSeparate => 'Utwórz osobną notatkę'; + + @override + String get nextcloudCreateSeparateWarning => + 'Pierwsze żądanie mogło już utworzyć notatkę na serwerze. Ta czynność tworzy osobną notatkę z zachowaną pracą lokalną. Żadne podejrzane duplikaty nie zostaną usunięte.'; } diff --git a/lib/l10n/generated/app_localizations_pt.dart b/lib/l10n/generated/app_localizations_pt.dart index 9bfada37..ed892b2f 100644 --- a/lib/l10n/generated/app_localizations_pt.dart +++ b/lib/l10n/generated/app_localizations_pt.dart @@ -4808,6 +4808,32 @@ class AppLocalizationsPt extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Escolha cada atributo em conflito.'; + + @override + String get nextcloudUseServerNote => 'Usar esta nota do servidor'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Associa este rascunho à nota selecionada no servidor e depois sincroniza as alterações locais preservadas. Um pedido correspondente não confirma quem criou a nota.'; + + @override + String get nextcloudExactCandidate => + 'Correspondência exata com o pedido; identidade não confirmada.'; + + @override + String get nextcloudPossibleCandidate => + 'Possível correspondência após normalização; identidade não confirmada.'; + + @override + String get nextcloudSelectCandidate => + 'Selecionar uma nota do servidor para rever'; + + @override + String get nextcloudCreateSeparate => 'Criar uma nota separada'; + + @override + String get nextcloudCreateSeparateWarning => + 'O primeiro pedido pode já ter criado uma nota no servidor. Isto cria uma nota separada com o trabalho local preservado. Nenhum possível duplicado será eliminado.'; } /// The translations for Portuguese, as used in Brazil (`pt_BR`). @@ -9610,4 +9636,30 @@ class AppLocalizationsPtBr extends AppLocalizationsPt { @override String get nextcloudChooseConflictingAttributes => 'Escolha cada atributo em conflito.'; + + @override + String get nextcloudUseServerNote => 'Usar esta nota do servidor'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Vincula este rascunho à nota selecionada no servidor e depois sincroniza as alterações locais preservadas. Uma solicitação correspondente não confirma quem criou a nota.'; + + @override + String get nextcloudExactCandidate => + 'Correspondência exata com a solicitação; identidade não confirmada.'; + + @override + String get nextcloudPossibleCandidate => + 'Possível correspondência após normalização; identidade não confirmada.'; + + @override + String get nextcloudSelectCandidate => + 'Selecionar uma nota do servidor para revisar'; + + @override + String get nextcloudCreateSeparate => 'Criar uma nota separada'; + + @override + String get nextcloudCreateSeparateWarning => + 'A primeira solicitação pode já ter criado uma nota no servidor. Isso cria uma nota separada com o trabalho local preservado. Nenhuma possível duplicata será excluída.'; } diff --git a/lib/l10n/generated/app_localizations_ru.dart b/lib/l10n/generated/app_localizations_ru.dart index 75ec669a..53bd7592 100644 --- a/lib/l10n/generated/app_localizations_ru.dart +++ b/lib/l10n/generated/app_localizations_ru.dart @@ -4804,4 +4804,30 @@ class AppLocalizationsRu extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Выберите значение каждого конфликтующего атрибута.'; + + @override + String get nextcloudUseServerNote => 'Использовать эту заметку на сервере'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Связывает этот черновик с выбранной заметкой на сервере, затем синхронизирует сохранённые локальные изменения. Совпадение запроса не подтверждает, кто создал заметку.'; + + @override + String get nextcloudExactCandidate => + 'Точное совпадение с запросом; идентичность не подтверждена.'; + + @override + String get nextcloudPossibleCandidate => + 'Возможное совпадение после нормализации; идентичность не подтверждена.'; + + @override + String get nextcloudSelectCandidate => + 'Выберите заметку на сервере для проверки'; + + @override + String get nextcloudCreateSeparate => 'Создать отдельную заметку'; + + @override + String get nextcloudCreateSeparateWarning => + 'Первый запрос мог уже создать заметку на сервере. Будет создана отдельная заметка с сохранённой локальной работой. Предполагаемые дубликаты не будут удалены.'; } diff --git a/lib/l10n/generated/app_localizations_tr.dart b/lib/l10n/generated/app_localizations_tr.dart index e5da693d..f1346556 100644 --- a/lib/l10n/generated/app_localizations_tr.dart +++ b/lib/l10n/generated/app_localizations_tr.dart @@ -4748,4 +4748,29 @@ class AppLocalizationsTr extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Çakışan her öznitelik için bir değer seçin.'; + + @override + String get nextcloudUseServerNote => 'Bu sunucu notunu kullan'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Bu taslağı seçilen sunucu notuna bağlar, ardından korunan yerel değişiklikleri eşitler. Eşleşen bir istek, notu kimin oluşturduğunu doğrulamaz.'; + + @override + String get nextcloudExactCandidate => + 'İstekle tam eşleşme; kimlik doğrulanmadı.'; + + @override + String get nextcloudPossibleCandidate => + 'Düzenlenmiş istekle olası eşleşme; kimlik doğrulanmadı.'; + + @override + String get nextcloudSelectCandidate => 'İncelemek için bir sunucu notu seçin'; + + @override + String get nextcloudCreateSeparate => 'Ayrı bir not oluştur'; + + @override + String get nextcloudCreateSeparateWarning => + 'İlk istek sunucuda zaten bir not oluşturmuş olabilir. Bu işlem korunan yerel çalışmanızla ayrı bir not oluşturur. Olası kopyalar silinmez.'; } diff --git a/lib/l10n/generated/app_localizations_uk.dart b/lib/l10n/generated/app_localizations_uk.dart index 21b80834..7f79a0a4 100644 --- a/lib/l10n/generated/app_localizations_uk.dart +++ b/lib/l10n/generated/app_localizations_uk.dart @@ -4814,4 +4814,30 @@ class AppLocalizationsUk extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Виберіть значення кожного конфліктного атрибута.'; + + @override + String get nextcloudUseServerNote => 'Використати цю нотатку на сервері'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Пов’язує цю чернетку з вибраною нотаткою на сервері, а потім синхронізує збережені локальні зміни. Збіг запиту не підтверджує, хто створив нотатку.'; + + @override + String get nextcloudExactCandidate => + 'Точний збіг із запитом; тотожність не підтверджено.'; + + @override + String get nextcloudPossibleCandidate => + 'Можливий збіг після нормалізації; тотожність не підтверджено.'; + + @override + String get nextcloudSelectCandidate => + 'Виберіть нотатку на сервері для перегляду'; + + @override + String get nextcloudCreateSeparate => 'Створити окрему нотатку'; + + @override + String get nextcloudCreateSeparateWarning => + 'Перший запит міг уже створити нотатку на сервері. Буде створено окрему нотатку зі збереженою локальною роботою. Ймовірні дублікати не буде видалено.'; } diff --git a/lib/l10n/generated/app_localizations_vi.dart b/lib/l10n/generated/app_localizations_vi.dart index 3869078a..6dfe4d66 100644 --- a/lib/l10n/generated/app_localizations_vi.dart +++ b/lib/l10n/generated/app_localizations_vi.dart @@ -4738,4 +4738,29 @@ class AppLocalizationsVi extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => 'Chọn giá trị cho từng thuộc tính xung đột.'; + + @override + String get nextcloudUseServerNote => 'Dùng ghi chú trên máy chủ này'; + + @override + String get nextcloudUseServerNoteExplanation => + 'Liên kết bản nháp này với ghi chú đã chọn trên máy chủ, rồi đồng bộ các thay đổi cục bộ được giữ lại. Yêu cầu trùng khớp không xác nhận ai đã tạo ghi chú.'; + + @override + String get nextcloudExactCandidate => + 'Khớp chính xác với yêu cầu; chưa xác nhận danh tính.'; + + @override + String get nextcloudPossibleCandidate => + 'Có thể khớp sau khi chuẩn hóa yêu cầu; chưa xác nhận danh tính.'; + + @override + String get nextcloudSelectCandidate => 'Chọn ghi chú trên máy chủ để xem xét'; + + @override + String get nextcloudCreateSeparate => 'Tạo ghi chú riêng'; + + @override + String get nextcloudCreateSeparateWarning => + 'Yêu cầu đầu tiên có thể đã tạo ghi chú trên máy chủ. Thao tác này tạo ghi chú riêng với công việc cục bộ được giữ lại. Không xóa ghi chú nào bị nghi trùng lặp.'; } diff --git a/lib/l10n/generated/app_localizations_zh.dart b/lib/l10n/generated/app_localizations_zh.dart index 600dcb2e..3f02fda9 100644 --- a/lib/l10n/generated/app_localizations_zh.dart +++ b/lib/l10n/generated/app_localizations_zh.dart @@ -4540,6 +4540,29 @@ class AppLocalizationsZh extends AppLocalizations { @override String get nextcloudChooseConflictingAttributes => '为每个冲突属性选择一个值。'; + + @override + String get nextcloudUseServerNote => '使用此服务器笔记'; + + @override + String get nextcloudUseServerNoteExplanation => + '将此草稿关联到选定的服务器笔记,然后同步保留的本地更改。请求匹配并不能确认笔记由谁创建。'; + + @override + String get nextcloudExactCandidate => '与请求完全匹配;身份尚未确认。'; + + @override + String get nextcloudPossibleCandidate => '可能与规范化后的请求匹配;身份尚未确认。'; + + @override + String get nextcloudSelectCandidate => '选择要检查的服务器笔记'; + + @override + String get nextcloudCreateSeparate => '创建独立笔记'; + + @override + String get nextcloudCreateSeparateWarning => + '首次请求可能已在服务器上创建笔记。此操作将使用保留的本地工作创建独立笔记。不会删除任何疑似重复的笔记。'; } /// The translations for Chinese, as used in China (`zh_CN`). @@ -9076,4 +9099,27 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get nextcloudChooseConflictingAttributes => '为每个冲突属性选择一个值。'; + + @override + String get nextcloudUseServerNote => '使用此服务器笔记'; + + @override + String get nextcloudUseServerNoteExplanation => + '将此草稿关联到选定的服务器笔记,然后同步保留的本地更改。请求匹配并不能确认笔记由谁创建。'; + + @override + String get nextcloudExactCandidate => '与请求完全匹配;身份尚未确认。'; + + @override + String get nextcloudPossibleCandidate => '可能与规范化后的请求匹配;身份尚未确认。'; + + @override + String get nextcloudSelectCandidate => '选择要检查的服务器笔记'; + + @override + String get nextcloudCreateSeparate => '创建独立笔记'; + + @override + String get nextcloudCreateSeparateWarning => + '首次请求可能已在服务器上创建笔记。此操作将使用保留的本地工作创建独立笔记。不会删除任何疑似重复的笔记。'; } diff --git a/lib/src/nextcloud_notes/application/notes_repository.dart b/lib/src/nextcloud_notes/application/notes_repository.dart index 58bc7fba..be8147e7 100644 --- a/lib/src/nextcloud_notes/application/notes_repository.dart +++ b/lib/src/nextcloud_notes/application/notes_repository.dart @@ -35,6 +35,39 @@ class NotesRepository { final _accountErrors = {}; final _syncs = >{}; final _removing = {}; + final _creationResolutions = {}; + final _bindingCandidates = {}; + final _creationBindingGuards = )>{}; + + /// Every controller registers its open tabs, including unsaved candidate tabs. + void addCreationBindingGuard(bool Function(String, Set) guard) => + _creationBindingGuards.add(guard); + void removeCreationBindingGuard(bool Function(String, Set) guard) => + _creationBindingGuards.remove(guard); + bool isCreationCandidateBinding(String localId) => + _bindingCandidates.contains(localId); + + NotesCreationReview creationReview(String localId, NoteState candidate) { + final note = _require(localId); + final attempt = note.creationAttempt; + if (note.serverId != null || + note.syncState != NoteSyncState.creationUncertain || + attempt == null || + !attempt.candidateServerIds.contains(candidate.id)) { + throw const NotesException( + NotesFailureCode.conflict, + 'Refresh and review the uncertain creation again.', + ); + } + return NotesCreationReview( + localId: localId, + accountId: note.accountId, + attemptId: attempt.id, + revision: note.revision, + candidate: candidate, + ); + } + final _uuid = const Uuid(); Future _mutations = Future.value(); Future? _initialization; @@ -341,6 +374,16 @@ class NotesRepository { 'Nextcloud may have created this note. Refresh and resolve the uncertain result before creating another.', ); } else { + // A definitive rejection establishes that this request created no note. + await _mutate(() async { + final current = _require(id); + if (current.creationAttempt?.id != sent.creationAttempt?.id) { + return; + } + final rejected = current.copyWith(creationAttempt: null); + await store.saveNote(rejected); + _notes[id] = rejected; + }); await _recordError(id, error); } continue; @@ -365,6 +408,7 @@ class NotesRepository { } bool _isBlocked(NextcloudNote note) => + (note.serverId == null && note.creationAttempt != null) || note.error || (note.readonly && (note.base == null || @@ -388,6 +432,9 @@ class NotesRepository { NextcloudAccount account, NotesListResult list, ) => _mutate(() async { + if (_removing.contains(account.id) || !_accounts.containsKey(account.id)) { + return; + } final updated = []; final existing = { for (final n in _notes.values.where( @@ -402,48 +449,29 @@ class NotesRepository { n.syncState == NoteSyncState.creationUncertain, ) .toList(); - final adoptedIds = {}; for (final note in uncertain) { final attempt = note.creationAttempt; - if (attempt == null) { - continue; // Older uncertain operations need user resolution. - } - final matches = list.notes.where(attempt.matches).toList(); - final plausible = list.notes.where(attempt.plausiblyMatches).toList(); - final candidate = matches.length == 1 ? matches.single : null; - final twin = candidate == null ? null : existing[candidate.id]; - final uniqueAttempt = - candidate != null && - uncertain - .where( - (n) => - n.creationAttempt?.plausiblyMatches(candidate) ?? false, - ) - .length == - 1; - // Empty content plus a second-resolution timestamp is weak evidence. - // Likewise, never absorb another locally edited instance of a candidate. - if (uniqueAttempt && candidate.content.isNotEmpty && twin == null) { - updated.add(_adoptCreation(note, candidate)); - adoptedIds.add(candidate.id); - } else { - updated.add( - note.copyWith( - remote: plausible.length == 1 ? plausible.single : null, - creationAttempt: attempt.withCandidateServerIds( - plausible.map((value) => value.id), - ), - errorMessage: plausible.isEmpty - ? note.errorMessage - : plausible.length == 1 - ? 'A possible server note was found. Review and deliberately adopt it or create a separate note.' - : '${plausible.length} possible server notes were found. Select one deliberately or create a separate note.', + if (attempt == null) continue; + // Payload equality is correlation evidence, never proof of identity. + final plausible = list.notes.where(attempt.plausiblyMatches).toList() + ..sort( + (a, b) => (attempt.matches(b) ? 1 : 0).compareTo( + attempt.matches(a) ? 1 : 0, ), ); - } + updated.add( + note.copyWith( + remote: plausible.length == 1 ? plausible.single : null, + creationAttempt: attempt.withCandidateServerIds( + plausible.map((n) => n.id), + ), + errorMessage: plausible.isEmpty + ? 'The creation outcome remains unknown. No matching note was found; this does not prove the request failed.' + : 'Possible server notes were found. Review and deliberately use one or create a separate note.', + ), + ); } for (final remote in list.notes) { - if (adoptedIds.contains(remote.id)) continue; final current = existing[remote.id]; if (current == null) { updated.add(_fromRemote(_uuid.v4(), account.id, remote)); @@ -561,6 +589,14 @@ class NotesRepository { Future _markCreationSending(String id) => _mutate(() async { final current = _require(id); + if (current.serverId != null || + current.creationAttempt != null || + _isBlocked(current)) { + throw const NotesException( + NotesFailureCode.conflict, + 'Resolve the previous creation attempt before creating another.', + ); + } final attributes = await NotesApiClient.creationAttributes(current); final attempt = NotesCreationAttempt( id: _uuid.v4(), @@ -590,13 +626,13 @@ class NotesRepository { final attempt = current.creationAttempt!; final wire = attempt.attributes; final latest = current.revision == attempt.revision; - final staged = current.content != wire['content']; + final staged = current.content != remote.content; final adopted = current.copyWith( serverId: remote.id, etag: remote.etag, base: remote, remote: null, - content: latest && !staged ? remote.content : current.content, + content: current.content, title: current.title == wire['title'] ? remote.title : current.title, category: current.category == wire['category'] ? remote.category @@ -639,6 +675,17 @@ class NotesRepository { NoteState remote, ) => _mutate(() async { final current = _require(sent.localId); + if (_removing.contains(current.accountId) || + !_accounts.containsKey(current.accountId) || + (sent.serverId == null && + (current.serverId != null || + current.creationAttempt?.id != sent.creationAttempt?.id)) || + (sent.serverId != null && current.serverId != sent.serverId)) { + throw const NotesException( + NotesFailureCode.conflict, + 'This response no longer belongs to the active request.', + ); + } if (remote.error) { final unavailable = current.copyWith( serverId: remote.id, @@ -761,8 +808,19 @@ class NotesRepository { String originalLocalId, { String? content, String? title, + bool creationDecision = false, }) async { final original = _require(originalLocalId); + final separateId = original.creationAttempt?.separateNoteLocalId; + if (creationDecision && separateId != null) return _require(separateId); + if (creationDecision && + (original.serverId != null || + original.syncState != NoteSyncState.creationUncertain)) { + throw const NotesException( + NotesFailureCode.conflict, + 'Review the creation outcome again.', + ); + } final source = content ?? original.content; final references = await scanNotesAttachmentReferences(source); final originals = await store.attachments(originalLocalId); @@ -853,7 +911,32 @@ class NotesRepository { content: rewritten, ); return _mutate(() async { - await store.createWithAttachments(recovered, copied.values.toList()); + final current = _require(originalLocalId); + if (_removing.contains(original.accountId) || + !_accounts.containsKey(original.accountId) || + current.revision != original.revision || + current.creationAttempt?.id != original.creationAttempt?.id || + (creationDecision && current.serverId != null)) { + throw const NotesException( + NotesFailureCode.conflict, + 'Local work or the account changed during recovery. Review again.', + ); + } + final existingId = current.creationAttempt?.separateNoteLocalId; + if (creationDecision && existingId != null) return _require(existingId); + final decided = creationDecision && current.creationAttempt != null + ? current.copyWith( + creationAttempt: current.creationAttempt!.withSeparateNote( + localId, + ), + ) + : null; + await store.createWithAttachments( + recovered, + copied.values.toList(), + additionalNotes: [if (decided != null) decided], + ); + if (decided != null) _notes[originalLocalId] = decided; _notes[localId] = recovered; _notify(); return recovered; @@ -1021,6 +1104,7 @@ class NotesRepository { Map metadataChoices = const {}, int? expectedRevision, int? creationCandidateServerId, + NotesCreationReview? creationReview, }) async { final original = _require(localId); if (expectedRevision != null && original.revision != expectedRevision) { @@ -1030,94 +1114,39 @@ class NotesRepository { ); } if (resolution == NoteConflictResolution.saveAsNew) { - await recoverAsNew(localId); + if (!_creationResolutions.add(localId)) { + throw const NotesException( + NotesFailureCode.conflict, + 'A creation decision is already in progress.', + ); + } + try { + await recoverAsNew( + localId, + creationDecision: original.serverId == null, + ); + } finally { + _creationResolutions.remove(localId); + } return; } - if (original.serverId == null) { - NoteState? selectedRemote = original.remote; - if (creationCandidateServerId != null) { - if (!(original.creationAttempt?.candidateServerIds.contains( - creationCandidateServerId, - ) ?? - false)) { - throw const NotesException( - NotesFailureCode.conflict, - 'That note is not a current creation candidate. Refresh and review the possible matches again.', - ); - } - selectedRemote = _notes.values - .where( - (candidate) => - candidate.accountId == original.accountId && - candidate.serverId == creationCandidateServerId, - ) - .map((candidate) => candidate.base) - .whereType() - .firstOrNull; - } - if (resolution != NoteConflictResolution.takeRemote || - selectedRemote == null) { + if (resolution == NoteConflictResolution.useServerNote) { + if (creationReview == null || + creationCandidateServerId != creationReview.candidate.id) { throw const NotesException( NotesFailureCode.conflict, - 'An uncertain creation must be deliberately adopted or recovered as a new note.', + 'Select and review a server note before confirming adoption.', ); } - await _mutate(() async { - if (_require(localId).revision != original.revision) { - throw const NotesException( - NotesFailureCode.conflict, - 'New local edits appeared while resolving this note. Review them before adoption.', - ); - } - final remote = selectedRemote!; - final duplicate = _notes.values - .where( - (n) => - n.accountId == original.accountId && - n.serverId == remote.id && - n.localId != original.localId, - ) - .toList(); - for (final twin in duplicate) { - final attachments = await store.attachments(twin.localId); - final pendingAttachments = attachments.any( - (attachment) => { - 'pending', - 'uploading', - 'uncertain', - 'uploaded', - 'deletePending', - }.contains(attachment.state), - ); - if (twin.hasPendingChanges || pendingAttachments) { - throw const NotesException( - NotesFailureCode.conflict, - 'The downloaded instance of this note contains durable local changes or pending attachments. Preserve or resolve those changes before adopting it.', - ); - } - } - // Adopt into the stable logical identity atomically, remove downloaded twin. - final adopted = original.creationAttempt != null - ? _adoptCreation(original, remote) - : _fromRemote( - original.localId, - original.accountId, - remote, - revision: original.revision, - previous: original, - ); - await store.commit( - notes: [adopted], - removeNotes: duplicate.map((n) => n.localId).toList(), - ); - for (final n in duplicate) { - _notes.remove(n.localId); - } - _notes[localId] = adopted; - _notify(); - }); + await _resolveCreation(original, creationReview); return; } + if (original.serverId == null) { + throw const NotesException( + NotesFailureCode.conflict, + 'An uncertain creation needs explicit server-note confirmation or a separate note.', + ); + } final client = await _clientForAccount(_accounts[original.accountId]!); late NoteState fresh; try { @@ -1221,6 +1250,157 @@ class NotesRepository { }); } + Future _resolveCreation( + NextcloudNote original, + NotesCreationReview review, + ) async { + if (!_creationResolutions.add(original.localId)) { + throw const NotesException( + NotesFailureCode.conflict, + 'A creation decision is already in progress.', + ); + } + final candidateIds = _notes.values + .where( + (n) => + n.accountId == original.accountId && + n.serverId == review.candidate.id, + ) + .map((n) => n.localId) + .toSet(); + _bindingCandidates.addAll(candidateIds); + try { + final account = _accounts[original.accountId]; + void validate() { + final current = _require(original.localId); + if (account == null || + _removing.contains(original.accountId) || + _accounts[original.accountId]?.server != account.server || + _accounts[original.accountId]?.loginName != account.loginName || + current.serverId != null || + current.syncState != NoteSyncState.creationUncertain || + review.localId != current.localId || + review.accountId != current.accountId || + current.creationAttempt?.id != review.attemptId || + current.creationAttempt?.separateNoteLocalId != null || + current.revision != review.revision || + !(current.creationAttempt?.candidateServerIds.contains( + review.candidate.id, + ) ?? + false)) { + throw const NotesException( + NotesFailureCode.conflict, + 'The account, local edits or creation decision changed. Review again.', + ); + } + } + + validate(); + final running = _syncs[original.accountId]; + if (running != null) await running; + validate(); + final client = await _clientForAccount(account!); + late NoteState fresh; + try { + fresh = await client.get(review.candidate.id); + } on NotesException catch (error) { + await _mutate(() async { + validate(); + final current = _require(original.localId); + final ids = {...current.creationAttempt!.candidateServerIds}; + if (error.code == NotesFailureCode.missing) { + ids.remove(review.candidate.id); + } + final unresolved = current.copyWith( + remote: null, + creationAttempt: current.creationAttempt!.withCandidateServerIds( + ids, + ), + errorMessage: + 'The selected server note is unavailable. Refresh and review again.', + ); + await store.saveNote(unresolved); + _notes[current.localId] = unresolved; + _notify(); + }); + rethrow; + } + await _mutate(() async { + validate(); + final current = _require(original.localId); + if (jsonEncode(fresh.toJson()) != + jsonEncode(review.candidate.toJson()) || + fresh.error || + fresh.readonly) { + final unresolved = current.copyWith( + remote: fresh, + errorMessage: + 'The selected server note changed or is read-only. Review its current state before deciding.', + ); + await store.saveNote(unresolved); + _notes[current.localId] = unresolved; + _notify(); + throw NotesException( + NotesFailureCode.conflict, + unresolved.errorMessage!, + remote: fresh, + ); + } + final duplicates = _notes.values + .where( + (n) => + n.accountId == current.accountId && + n.serverId == fresh.id && + n.localId != current.localId, + ) + .toList(); + candidateIds.addAll(duplicates.map((n) => n.localId)); + _bindingCandidates.addAll(candidateIds); + for (final twin in duplicates) { + final attachments = await store.attachments(twin.localId); + if (twin.hasPendingChanges || + attachments.any( + (a) => { + 'pending', + 'uploading', + 'uncertain', + 'uploaded', + 'deletePending', + }.contains(a.state), + )) { + throw const NotesException( + NotesFailureCode.conflict, + 'The downloaded candidate has local changes or pending attachments. Preserve or resolve them first.', + ); + } + } + validate(); + final ids = duplicates.map((n) => n.localId).toSet(); + if (_creationBindingGuards.any( + (guard) => !guard(current.localId, ids), + )) { + throw const NotesException( + NotesFailureCode.conflict, + 'New editor changes appeared or a downloaded candidate is still open. Preserve those edits, close candidate tabs, and review again.', + ); + } + final adopted = _adoptCreation(current, fresh); + // Binding/outbox and clean-twin removal are a single SQLite transaction. + await store.commit(notes: [adopted], removeNotes: ids.toList()); + for (final id in ids) { + _notes.remove(id); + } + _notes[current.localId] = adopted; + _baseGenerations[current.localId] = + (_baseGenerations[current.localId] ?? 0) + 1; + _notify(); + }); + } finally { + _bindingCandidates.removeAll(candidateIds); + _creationResolutions.remove(original.localId); + } + } + /// Online refresh plus explicit action only. The API has no atomic conditional DELETE. Future delete(String localId) async { final original = _require(localId); diff --git a/lib/src/nextcloud_notes/data/notes_store.dart b/lib/src/nextcloud_notes/data/notes_store.dart index 8d9c2451..93ddb9b8 100644 --- a/lib/src/nextcloud_notes/data/notes_store.dart +++ b/lib/src/nextcloud_notes/data/notes_store.dart @@ -150,8 +150,9 @@ class NotesStore { Future createWithAttachments( NextcloudNote note, - List<({NotesAttachment attachment, Uint8List bytes})> attachments, - ) async { + List<({NotesAttachment attachment, Uint8List bytes})> attachments, { + List additionalNotes = const [], + }) async { await _call('createWithAttachments', [ note.toJson(), attachments @@ -164,6 +165,7 @@ class NotesStore { ], ) .toList(), + additionalNotes.map((n) => n.toJson()).toList(), ]); } @@ -424,6 +426,12 @@ Object? _execute(Database db, String action, dynamic argument) { final a = argument as List; db.execute('BEGIN IMMEDIATE'); try { + for (final note in a[2] as List) { + _writeNote( + db, + NextcloudNote.fromJson(Map.from(note as Map)), + ); + } _writeNote( db, NextcloudNote.fromJson(Map.from(a[0] as Map)), diff --git a/lib/src/nextcloud_notes/domain/notes_models.dart b/lib/src/nextcloud_notes/domain/notes_models.dart index f189b15d..3232e01d 100644 --- a/lib/src/nextcloud_notes/domain/notes_models.dart +++ b/lib/src/nextcloud_notes/domain/notes_models.dart @@ -15,7 +15,13 @@ enum NoteSyncState { deletedRemotely, } -enum NoteConflictResolution { keepLocal, takeRemote, saveAsNew, merge } +enum NoteConflictResolution { + keepLocal, + takeRemote, + saveAsNew, + merge, + useServerNote, +} enum NotesFailureCode { authentication, @@ -190,6 +196,7 @@ class NotesCreationAttempt { required this.wireBody, required Set knownServerIds, Set candidateServerIds = const {}, + this.separateNoteLocalId, }) : knownServerIds = Set.unmodifiable(knownServerIds), candidateServerIds = Set.unmodifiable(candidateServerIds); @@ -199,6 +206,7 @@ class NotesCreationAttempt { final String wireBody; final Set knownServerIds; final Set candidateServerIds; + final String? separateNoteLocalId; Map get attributes => jsonDecode(wireBody) as Map; @@ -226,8 +234,19 @@ class NotesCreationAttempt { wireBody: wireBody, knownServerIds: knownServerIds, candidateServerIds: ids.toSet(), + separateNoteLocalId: separateNoteLocalId, ); + NotesCreationAttempt withSeparateNote(String localId) => NotesCreationAttempt( + id: id, + revision: revision, + localContent: localContent, + wireBody: wireBody, + knownServerIds: knownServerIds, + candidateServerIds: candidateServerIds, + separateNoteLocalId: localId, + ); + Map toJson() => { 'id': id, 'revision': revision, @@ -235,10 +254,12 @@ class NotesCreationAttempt { 'wireBody': wireBody, 'knownServerIds': knownServerIds.toList(), 'candidateServerIds': candidateServerIds.toList(), + 'separateNoteLocalId': separateNoteLocalId, }; factory NotesCreationAttempt.fromJson(Map json) => NotesCreationAttempt( id: json['id'] as String, + separateNoteLocalId: json['separateNoteLocalId'] as String?, revision: json['revision'] as int, localContent: json['localContent'] as String, wireBody: json['wireBody'] as String, @@ -249,6 +270,22 @@ class NotesCreationAttempt { ); } +/// The immutable comparison explicitly approved by the user. +class NotesCreationReview { + const NotesCreationReview({ + required this.localId, + required this.accountId, + required this.attemptId, + required this.revision, + required this.candidate, + }); + final String localId; + final String accountId; + final String attemptId; + final int revision; + final NoteState candidate; +} + const _unchanged = Object(); /// In-memory provenance of an editor buffer. A server observation advances the diff --git a/lib/src/nextcloud_notes/presentation/notes_sidebar.dart b/lib/src/nextcloud_notes/presentation/notes_sidebar.dart index a98cce0a..ec2db9b9 100644 --- a/lib/src/nextcloud_notes/presentation/notes_sidebar.dart +++ b/lib/src/nextcloud_notes/presentation/notes_sidebar.dart @@ -566,15 +566,27 @@ Future showNextcloudConflict( onPressed: () => Navigator.pop(context), ), BusyMarkDialogButton( - label: context.l10n.nextcloudNewNote, + label: note.serverId == null + ? context.l10n.nextcloudCreateSeparate + : context.l10n.nextcloudNewNote, onPressed: () => Navigator.pop(context, NoteConflictResolution.saveAsNew), ), - if (displayedRemote != null && !displayedRemote.error) + if (displayedRemote != null && + !displayedRemote.error && + (note.serverId != null || note.creationAttempt != null)) BusyMarkDialogButton( - label: context.l10n.nextcloudTakeRemote, - onPressed: () => - Navigator.pop(context, NoteConflictResolution.takeRemote), + label: note.serverId == null + ? context.l10n.nextcloudUseServerNote + : context.l10n.nextcloudTakeRemote, + onPressed: displayedRemote.readonly && note.serverId == null + ? null + : () => Navigator.pop( + context, + note.serverId == null + ? NoteConflictResolution.useServerNote + : NoteConflictResolution.takeRemote, + ), ), if (deletedRemotely) BusyMarkDialogButton( @@ -605,7 +617,7 @@ Future showNextcloudConflict( DropdownButton( isExpanded: true, value: creationCandidateServerId, - hint: Text(context.l10n.nextcloudTakeRemote), + hint: Text(context.l10n.nextcloudSelectCandidate), items: [ for (final candidate in creationCandidates) DropdownMenuItem( @@ -619,6 +631,22 @@ Future showNextcloudConflict( creationCandidateServerId = value; }), ), + if (note.serverId == null && displayedRemote != null) ...[ + Text( + '#${displayedRemote.id} · ${displayedRemote.title} · ${displayedRemote.category}', + ), + Text( + DateTime.fromMillisecondsSinceEpoch( + displayedRemote.modified * 1000, + ).toLocal().toString(), + ), + Text( + note.creationAttempt?.matches(displayedRemote) == true + ? context.l10n.nextcloudExactCandidate + : context.l10n.nextcloudPossibleCandidate, + ), + Text(context.l10n.nextcloudUseServerNoteExplanation), + ], if (note.serverId != null && !deletedRemotely) _UncertainAttachments(note: note), SizedBox( @@ -697,6 +725,38 @@ Future showNextcloudConflict( ); if (confirmed != true) return; } + if (note.serverId == null && resolution == NoteConflictResolution.saveAsNew) { + if (!context.mounted) return; + final confirmed = await showBusyMarkModalDialog( + context, + builder: (context) => BusyMarkDialogShell( + title: context.l10n.nextcloudCreateSeparate, + actions: [ + BusyMarkDialogButton( + label: context.l10n.cancel, + onPressed: () => Navigator.pop(context, false), + ), + BusyMarkDialogButton( + label: context.l10n.nextcloudCreateSeparate, + onPressed: () => Navigator.pop(context, true), + ), + ], + children: [Text(context.l10n.nextcloudCreateSeparateWarning)], + ), + ); + if (confirmed != true) return; + } + final selected = selectedCreationRemote(); + final review = + resolution == NoteConflictResolution.useServerNote && selected != null + ? NotesCreationReview( + localId: note.localId, + accountId: note.accountId, + attemptId: note.creationAttempt!.id, + revision: note.revision, + candidate: selected, + ) + : null; if (resolution != null) { await ref .read(workspaceControllerProvider.notifier) @@ -709,6 +769,7 @@ Future showNextcloudConflict( ? merged : null, creationCandidateServerId: creationCandidateServerId, + creationReview: review, ); } } diff --git a/lib/src/workspace/workspace_controller.dart b/lib/src/workspace/workspace_controller.dart index 384473a0..bc9559dd 100644 --- a/lib/src/workspace/workspace_controller.dart +++ b/lib/src/workspace/workspace_controller.dart @@ -452,6 +452,14 @@ class WorkspaceController extends Notifier { await repository.initialize(); if (!ref.mounted) throw StateError('Workspace closed'); _notesRepository = repository; + bool bindingGuard(String localId, Set ids) => + !state.documentBuffers.any( + (b) => + ids.contains(b.remoteNote?.localId) || + (b.remoteNote?.localId == localId && b.isDirty), + ); + repository.addCreationBindingGuard(bindingGuard); + ref.onDispose(() => repository.removeCreationBindingGuard(bindingGuard)); _notesSubscription = repository.changes.listen((_) => _notesChanged()); return repository; } @@ -681,7 +689,9 @@ class WorkspaceController extends Notifier { final repository = await _ensureNotesRepository(); final note = repository.noteById(localId); final workspace = state.workspace; - if (note == null || workspace?.nextcloudAccountId != note.accountId) { + if (note == null || + repository.isCreationCandidateBinding(localId) || + workspace?.nextcloudAccountId != note.accountId) { return false; } final existing = state.documentBuffers @@ -1005,9 +1015,28 @@ class WorkspaceController extends Notifier { Map metadataChoices = const {}, int? expectedRevision, int? creationCandidateServerId, + NotesCreationReview? creationReview, }) async { try { final repository = await _ensureNotesRepository(); + if (resolution == NoteConflictResolution.useServerNote) { + final candidateIds = repository.notes + .where( + (n) => + n.accountId == creationReview?.accountId && + n.serverId == creationCandidateServerId, + ) + .map((n) => n.localId) + .toSet(); + if (state.documentBuffers.any( + (b) => candidateIds.contains(b.remoteNote?.localId), + )) { + throw const NotesException( + NotesFailureCode.conflict, + 'Close the downloaded candidate’s editor tabs after preserving their changes, then review again.', + ); + } + } final buffer = state.documentBuffers .where((b) => b.remoteNote?.localId == localId) .firstOrNull; @@ -1037,6 +1066,7 @@ class WorkspaceController extends Notifier { metadataChoices: metadataChoices, expectedRevision: expectedRevision, creationCandidateServerId: creationCandidateServerId, + creationReview: creationReview, ); final accountId = repository.noteById(localId)?.accountId; if (accountId != null) _scheduleRemoteSync(accountId); diff --git a/test/src/nextcloud_notes/notes_creation_policy_test.dart b/test/src/nextcloud_notes/notes_creation_policy_test.dart new file mode 100644 index 00000000..2d30b63e --- /dev/null +++ b/test/src/nextcloud_notes/notes_creation_policy_test.dart @@ -0,0 +1,370 @@ +import 'dart:async'; +import 'dart:convert'; +import 'dart:io'; +import 'dart:typed_data'; + +import 'package:busymark/src/nextcloud_notes/application/notes_repository.dart'; +import 'package:busymark/src/nextcloud_notes/data/notes_api_client.dart'; +import 'package:busymark/src/nextcloud_notes/data/notes_store.dart'; +import 'package:busymark/src/nextcloud_notes/domain/notes_models.dart'; +import 'package:flutter_test/flutter_test.dart'; +import 'package:http/http.dart' as http; +import 'package:http/testing.dart'; +import 'package:sqlite3/sqlite3.dart'; + +import 'notes_api_test.dart' show serverNote, testAccount; + +void main() { + late Directory root; + late NotesRepository repository; + late MockClient transport; + final remotes = >{}; + var creates = 0; + var puts = 0; + var uploads = 0; + var deliverCreate = true; + Future Function(http.Request)? getCandidate; + Future reopen() async { + repository = NotesRepository( + store: await NotesStore.open(path: '${root.path}/notes.sqlite3'), + clientForAccount: (account) async => NotesApiClient( + client: transport, + account: account, + appPassword: 'test', + ), + ); + await repository.initialize(); + if (repository.accounts.isEmpty) { + await repository.upsertAccount(testAccount()); + } + } + + Future uncertain({String content = 'submitted'}) async { + final note = await repository.create(testAccount().id, content: content); + await repository.synchronize(note.accountId); + expect( + repository.noteById(note.localId)!.syncState, + NoteSyncState.creationUncertain, + ); + return repository.noteById(note.localId)!; + } + + NotesCreationReview review(String id) => + repository.creationReview(id, repository.noteById(id)!.remote!); + Future adopt(NotesCreationReview reviewed) => + repository.resolveConflict( + reviewed.localId, + NoteConflictResolution.useServerNote, + expectedRevision: reviewed.revision, + creationCandidateServerId: reviewed.candidate.id, + creationReview: reviewed, + ); + setUp(() async { + root = await Directory.systemTemp.createTemp('creation-policy-'); + remotes.clear(); + creates = puts = uploads = 0; + deliverCreate = true; + getCandidate = null; + transport = MockClient((request) async { + if (request.method == 'POST' && request.url.path.endsWith('/notes')) { + creates++; + if (deliverCreate) { + remotes[1] = {...serverNote(1), ...jsonDecode(request.body) as Map}; + } + throw http.ClientException('lost response'); + } + if (request.method == 'GET' && request.url.path.endsWith('/notes')) { + return http.Response(jsonEncode(remotes.values.toList()), 200); + } + if (request.method == 'GET') { + if (getCandidate != null) return getCandidate!(request); + final remote = remotes[int.parse(request.url.pathSegments.last)]; + return http.Response( + remote == null ? '{}' : jsonEncode(remote), + remote == null ? 404 : 200, + ); + } + if (request.method == 'PUT') { + puts++; + final id = int.parse(request.url.pathSegments.last); + expect(request.headers['If-Match'], '"${remotes[id]!['etag']}"'); + remotes[id] = { + ...remotes[id]!, + ...jsonDecode(request.body) as Map, + 'etag': 'updated-$puts', + }; + return http.Response(jsonEncode(remotes[id]), 200); + } + if (request.method == 'POST') { + uploads++; + return http.Response('{"filename":".attachments.1/photo.png"}', 200); + } + fail('Unexpected mutation: ${request.method}'); + }); + await reopen(); + }); + tearDown(() async { + await repository.dispose(); + await root.delete(recursive: true); + }); + + for (final scenario in [ + 'exact', + 'sanitized', + 'multiple', + 'none', + 'empty', + 'other actor', + ]) { + test( + '$scenario discovery across refresh reconnect and restart cannot bind or mutate draft', + () async { + deliverCreate = scenario != 'other actor'; + final note = await uncertain( + content: scenario == 'empty' ? '' : 'submitted', + ); + final attachment = await repository.addAttachment( + note.localId, + filename: 'photo.png', + bytes: Uint8List.fromList([1, 2, 3]), + ); + await repository.save( + note.localId, + content: '${note.content}\n![photo](${attachment.reference})', + ); + final immutable = note.creationAttempt!.wireBody; + if (scenario == 'other actor') { + remotes[1] = {...serverNote(1), ...note.creationAttempt!.attributes}; + } + if (scenario == 'none') remotes.clear(); + if (scenario == 'sanitized') remotes[1]!['title'] = 'Sanitized'; + if (scenario == 'multiple') remotes[2] = {...remotes[1]!, 'id': 2}; + final before = jsonEncode(remotes.values.toList()); + for (var i = 0; i < 3; i++) { + await repository.synchronize(note.accountId); + await repository.dispose(); + await reopen(); + await repository.upsertAccount(testAccount()); + final pending = repository.noteById(note.localId)!; + expect(pending.serverId, isNull); + expect(pending.ackRevision, 0); + expect(pending.creationAttempt!.id, note.creationAttempt!.id); + expect(pending.creationAttempt!.wireBody, immutable); + expect( + pending.creationAttempt!.candidateServerIds, + scenario == 'none' + ? {} + : scenario == 'multiple' + ? {1, 2} + : {1}, + ); + expect(pending.content, contains('busymark-attachment:')); + expect(await repository.store.attachmentBytes(attachment.id), [ + 1, + 2, + 3, + ]); + await expectLater( + repository.delete(note.localId), + throwsA(isA()), + ); + await expectLater( + repository.retryUncertainAttachments(note.localId), + throwsA(isA()), + ); + } + expect(creates, 1); + expect(puts, 0); + expect(uploads, 0); + expect(jsonEncode(remotes.values.toList()), before); + // The unresolved draft cannot stop an independently pending update. + remotes[9] = serverNote(9); + await repository.synchronize(note.accountId); + final other = repository.notes.firstWhere((n) => n.serverId == 9); + await repository.save(other.localId, content: 'unrelated edit'); + await repository.synchronize(note.accountId); + expect(remotes[9]!['content'], 'unrelated edit'); + expect(repository.noteById(note.localId)!.serverId, isNull); + expect(puts, 1); + }, + ); + } + + for (final change in [ + 'content', + 'readonly', + 'error', + 'deleted', + 'unavailable', + ]) { + test( + 'confirmation rejects $change candidate and retains unresolved work', + () async { + final note = await uncertain(); + await repository.synchronize(note.accountId); + final reviewed = review(note.localId); + switch (change) { + case 'content': + remotes[1]!['content'] = 'external edit'; + case 'readonly': + remotes[1]!['readonly'] = true; + case 'error': + remotes[1]!['error'] = true; + case 'deleted': + remotes.remove(1); + case 'unavailable': + getCandidate = (_) async => http.Response('{}', 503); + } + await expectLater(adopt(reviewed), throwsA(isA())); + final pending = repository.noteById(note.localId)!; + expect(pending.serverId, isNull); + expect(pending.content, 'submitted'); + expect(pending.creationAttempt!.id, reviewed.attemptId); + expect(puts, 0); + expect(creates, 1); + if (change == 'content') { + expect(pending.remote!.content, 'external edit'); + } + }, + ); + } + + for (final race in ['local edit', 'account removal', 'repeat confirmation']) { + test('confirmation revalidates $race during authenticated GET', () async { + final note = await uncertain(); + await repository.synchronize(note.accountId); + final reviewed = review(note.localId); + final entered = Completer(); + final response = Completer(); + getCandidate = (_) { + entered.complete(); + return response.future; + }; + final confirmation = adopt(reviewed); + final check = race == 'repeat confirmation' + ? expectLater(confirmation, completes) + : expectLater(confirmation, throwsA(isA())); + await entered.future; + switch (race) { + case 'local edit': + await repository.save(note.localId, content: 'new local revision'); + case 'account removal': + await repository.removeAccount(note.accountId); + case 'repeat confirmation': + await expectLater(adopt(reviewed), throwsA(isA())); + } + response.complete(http.Response(jsonEncode(remotes[1]), 200)); + await check; + if (race == 'local edit') { + expect( + repository.noteById(note.localId)!.content, + 'new local revision', + ); + expect(repository.noteById(note.localId)!.serverId, isNull); + } + if (race == 'account removal') expect(repository.notes, isEmpty); + if (race == 'repeat confirmation') { + await expectLater(adopt(reviewed), throwsA(isA())); + expect(repository.noteById(note.localId)!.serverId, 1); + } + expect(puts, 0); + }); + } + + for (final competing in [ + 'durable edit', + 'pending attachment', + 'open editor', + ]) { + test('binding protects downloaded candidate with $competing', () async { + final note = await uncertain(); + await repository.synchronize(note.accountId); + final reviewed = review(note.localId); + final twin = repository.notes.firstWhere((n) => n.serverId == 1); + if (competing == 'durable edit') { + await repository.save(twin.localId, content: 'twin edit'); + } + if (competing == 'pending attachment') { + await repository.addAttachment( + twin.localId, + filename: 'photo.png', + bytes: Uint8List.fromList([4, 5]), + ); + } + if (competing == 'open editor') { + repository.addCreationBindingGuard( + (localId, ids) => !ids.contains(twin.localId), + ); + } + await expectLater(adopt(reviewed), throwsA(isA())); + expect(repository.noteById(note.localId)!.serverId, isNull); + expect(repository.noteById(twin.localId), isNotNull); + await repository.dispose(); + await reopen(); + expect(repository.noteById(twin.localId), isNotNull); + }); + } + + test( + 'failed adoption transaction rolls back binding and downloaded identity', + () async { + final note = await uncertain(); + await repository.synchronize(note.accountId); + final reviewed = review(note.localId); + final twin = repository.notes.firstWhere((n) => n.serverId == 1); + final db = sqlite3.open(repository.store.path); + db.execute( + "CREATE TRIGGER fail_binding BEFORE UPDATE ON notes WHEN NEW.server_id=1 AND NEW.id='${note.localId}' BEGIN SELECT RAISE(ABORT,'fixture'); END", + ); + await expectLater(adopt(reviewed), throwsA(isA())); + expect(repository.noteById(note.localId)!.serverId, isNull); + expect(repository.noteById(twin.localId), isNotNull); + db.execute('DROP TRIGGER fail_binding'); + db.close(); + await repository.dispose(); + await reopen(); + expect(repository.noteById(note.localId)!.serverId, isNull); + expect(repository.noteById(twin.localId), isNotNull); + await adopt(review(note.localId)); + await repository.dispose(); + await reopen(); + expect(repository.noteById(note.localId)!.serverId, 1); + expect(repository.noteById(twin.localId), isNull); + expect(repository.noteById(note.localId)!.creationAttempt, isNull); + }, + ); + + test( + 'separate-note decision is durable and repeated confirmation makes one replacement', + () async { + final note = await uncertain(); + await repository.synchronize(note.accountId); + await repository.resolveConflict( + note.localId, + NoteConflictResolution.saveAsNew, + ); + await repository.resolveConflict( + note.localId, + NoteConflictResolution.saveAsNew, + ); + final separateId = repository + .noteById(note.localId)! + .creationAttempt! + .separateNoteLocalId; + expect(separateId, isNotNull); + expect(repository.notes, hasLength(3)); + await repository.dispose(); + await reopen(); + await repository.resolveConflict( + note.localId, + NoteConflictResolution.saveAsNew, + ); + expect(repository.notes, hasLength(3)); + expect(repository.noteById(separateId!)!.content, 'submitted'); + await expectLater( + adopt(review(note.localId)), + throwsA(isA()), + ); + }, + ); +} diff --git a/test/src/nextcloud_notes/notes_repository_test.dart b/test/src/nextcloud_notes/notes_repository_test.dart index 8897eb2c..a68ab2db 100644 --- a/test/src/nextcloud_notes/notes_repository_test.dart +++ b/test/src/nextcloud_notes/notes_repository_test.dart @@ -86,7 +86,7 @@ void main() { ); test( - 'uncertain creation adopts wire revision and preserves later edits', + 'uncertain creation discovery preserves later edits until deliberate adoption', () async { Map? remote; var posts = 0; @@ -109,7 +109,9 @@ void main() { } return http.Response( jsonEncode( - request.method == 'GET' ? [if (remote != null) remote] : remote, + request.method == 'GET' && request.url.path.endsWith('/notes') + ? [if (remote != null) remote] + : remote, ), 200, ); @@ -121,6 +123,25 @@ void main() { ); await repository.synchronize(local.accountId); await repository.save(local.localId, content: 'newer local content'); + for (var i = 0; i < 3; i++) { + await repository.synchronize(local.accountId); + } + final unresolved = repository.noteById(local.localId)!; + expect(unresolved.serverId, isNull); + expect(unresolved.syncState, NoteSyncState.creationUncertain); + expect(unresolved.creationAttempt!.candidateServerIds, {1}); + expect(unresolved.ackRevision, 0); + expect(posts, 1); + expect(puts, 0); + await repository.resolveConflict( + local.localId, + NoteConflictResolution.useServerNote, + creationCandidateServerId: 1, + creationReview: repository.creationReview( + local.localId, + repository.noteById(local.localId)!.remote!, + ), + ); await repository.synchronize(local.accountId); expect( repository.noteById(local.localId)!.content, @@ -203,7 +224,7 @@ void main() { 'ambiguous', ]) { test( - 'lost create response reconciles $scenario without another POST', + 'lost create response requires deliberate adoption for $scenario', () async { late NotesRepository repository; Map? remote; @@ -212,11 +233,15 @@ void main() { final client = MockClient((request) async { if (request.method == 'GET') { return http.Response( - jsonEncode([ - if (remote != null) remote, - if (remote != null && scenario == 'ambiguous') - {...remote!, 'id': 2}, - ]), + jsonEncode( + request.url.path.endsWith('/notes') + ? [ + if (remote != null) remote, + if (remote != null && scenario == 'ambiguous') + {...remote!, 'id': 2}, + ] + : remote, + ), 200, ); } @@ -299,9 +324,7 @@ void main() { repository = await open(client, addAccount: false); reconciled = repository.noteById(note.localId)!; } - final requiresAdoption = - scenario.contains('sanitized') || scenario == 'ambiguous'; - if (requiresAdoption) { + { expect(reconciled.serverId, isNull); expect(reconciled.syncState, NoteSyncState.creationUncertain); expect( @@ -311,8 +334,15 @@ void main() { expect(reconciled.remote?.id, scenario == 'ambiguous' ? isNull : 1); await repository.resolveConflict( note.localId, - NoteConflictResolution.takeRemote, - creationCandidateServerId: scenario == 'ambiguous' ? 1 : null, + NoteConflictResolution.useServerNote, + creationCandidateServerId: 1, + creationReview: repository.creationReview( + note.localId, + repository + .uncertainCreationCandidates(note.localId) + .firstWhere((n) => n.serverId == 1) + .base!, + ), ); await repository.synchronize(note.accountId); reconciled = repository.noteById(note.localId)!; @@ -1989,7 +2019,9 @@ void main() { await store.commit(notes: [original, twin]); await store.close(); final repository = await open( - MockClient((_) async => throw StateError('Adoption needs no HTTP')), + MockClient( + (_) async => http.Response(jsonEncode(remote.toJson()), 200), + ), addAccount: false, ); await repository.save( diff --git a/test/src/nextcloud_notes_ui_test.dart b/test/src/nextcloud_notes_ui_test.dart index 263a4e20..4d7f9c2f 100644 --- a/test/src/nextcloud_notes_ui_test.dart +++ b/test/src/nextcloud_notes_ui_test.dart @@ -1,4 +1,9 @@ import 'dart:io'; +import 'dart:convert'; + +import 'package:http/http.dart' as http; +import 'package:http/testing.dart'; +import 'package:busymark/src/nextcloud_notes/data/notes_api_client.dart'; import 'package:busymark/l10n/generated/app_localizations.dart'; import 'package:busymark/src/app/app_settings.dart'; @@ -733,7 +738,8 @@ void main() { await tester.pumpAndSettle(); final takeRemote = find.byWidgetPredicate( (widget) => - widget is BusyMarkDialogButton && widget.label == 'Take remote', + widget is BusyMarkDialogButton && + widget.label == 'Use this server note', ); expect(takeRemote, findsNothing); final candidates = find.byType(DropdownButton); @@ -744,9 +750,111 @@ void main() { expect(find.textContaining('Sanitized A'), findsWidgets); await tester.tap(find.text('Cancel')); await tester.pumpAndSettle(); + expect(repository.noteById('uncertain-create')!.serverId, isNull); expect(tester.takeException(), isNull); }); + testWidgets( + 'selecting and confirming candidate binds draft and retains newer edits', + (tester) async { + for (final channelName in ['yaru_window', 'yaru_window/events']) { + TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger + .setMockMethodCallHandler( + MethodChannel(channelName), + (call) async => + call.method == 'state' ? {} : null, + ); + } + await tester.runAsync( + () => repository.save( + 'uncertain-create', + content: 'newer editor content', + ), + ); + await tester.pumpWidget( + ProviderScope( + overrides: [ + nextcloudNotesRepositoryProvider.overrideWith( + (ref) async => repository, + ), + localSettingsStoreProvider.overrideWithValue(_TabSettings()), + localHistoryStoreProvider.overrideWithValue( + MemoryLocalHistoryStore(), + ), + documentSessionStoreProvider.overrideWithValue( + MemoryDocumentSessionStore(), + ), + documentRecoveryStoreProvider.overrideWithValue( + MemoryDocumentRecoveryStore(), + ), + ], + child: MaterialApp( + localizationsDelegates: AppLocalizations.localizationsDelegates, + supportedLocales: AppLocalizations.supportedLocales, + home: const Scaffold( + body: NextcloudNoteStatus( + localId: 'uncertain-create', + unsaved: false, + ), + ), + ), + ), + ); + await tester.pumpAndSettle(); + await tester.runAsync(() => tester.tap(find.text('Compare'))); + for ( + var i = 0; + i < 100 && find.byType(DropdownButton).evaluate().isEmpty; + i++ + ) { + await tester.runAsync( + () => Future.delayed(const Duration(milliseconds: 10)), + ); + await tester.pump(const Duration(milliseconds: 50)); + } + await tester.tap(find.byType(DropdownButton)); + await tester.pumpAndSettle(); + await tester.tap(find.text('Sanitized A (#10)').last); + await tester.pumpAndSettle(); + expect(find.textContaining('identity is unconfirmed'), findsOneWidget); + expect(find.textContaining('#10'), findsWidgets); + await tester.runAsync( + () => tester.tap(find.text('Use this server note')), + ); + final confirmationDeadline = Stopwatch()..start(); + while (repository.noteById('uncertain-create')!.serverId == null && + confirmationDeadline.elapsed < const Duration(seconds: 30)) { + // Modal dismissal needs widget frames; SQLite needs real async time. + await tester.pump(const Duration(milliseconds: 50)); + await tester.runAsync( + () => Future.delayed(const Duration(milliseconds: 20)), + ); + } + await tester.pump(const Duration(milliseconds: 250)); + final uiContainer = ProviderScope.containerOf( + tester.element(find.byType(NextcloudNoteStatus)), + ); + expect( + repository.noteById('uncertain-create')!.serverId, + 10, + reason: + '${uiContainer.read(workspaceControllerProvider).message?.error}', + ); + expect( + repository.noteById('uncertain-create')!.content, + 'newer editor content', + ); + expect( + repository.noteById('uncertain-create')!.hasPendingChanges, + isTrue, + ); + expect(repository.noteById('creation-candidate-10'), isNull); + expect(repository.noteById('creation-candidate-11'), isNotNull); + expect(tester.takeException(), isNull); + await tester.pumpWidget(const SizedBox.shrink()); + }, + ); + for (final state in [NoteSyncState.forbidden, NoteSyncState.unavailable]) { testWidgets( '${state.name} pending changes offer recovery without overwrite', @@ -793,7 +901,19 @@ class _TabSettings implements LocalSettingsStore { class _CachedNotesRepository extends NotesRepository { _CachedNotesRepository({required super.store}) - : super(clientForAccount: (_) async => throw StateError('Cached UI only')); + : super( + clientForAccount: (account) async => NotesApiClient( + client: MockClient((request) async { + final id = int.parse(request.url.pathSegments.last); + final candidate = (await store.notes()).firstWhere( + (n) => n.serverId == id, + ); + return http.Response(jsonEncode(candidate.base!.toJson()), 200); + }), + account: account, + appPassword: 'fixture', + ), + ); @override Future synchronize(String accountId) async {} diff --git a/test/src/nextcloud_workspace_test.dart b/test/src/nextcloud_workspace_test.dart index faac4779..3e355c85 100644 --- a/test/src/nextcloud_workspace_test.dart +++ b/test/src/nextcloud_workspace_test.dart @@ -27,6 +27,139 @@ import 'nextcloud_notes/notes_api_test.dart' show serverNote; const _accountId = 'ba6d02cd-42fe-4e14-a577-3e2c13822459'; void main() { + test( + 'unsaved draft edits during confirmation require another review', + () async { + Map? remote; + final started = Completer(); + final release = Completer(); + var confirming = false; + final harness = await _Harness.create( + seedLocal: false, + deferPersistence: true, + client: MockClient((request) async { + if (request.method == 'POST') { + remote = {...serverNote(1), ...jsonDecode(request.body) as Map}; + throw http.ClientException('lost response'); + } + if (confirming && request.url.path.endsWith('/notes/1')) { + started.complete(); + await release.future; + confirming = false; + } + return http.Response( + jsonEncode( + request.url.path.endsWith('/notes') + ? [if (remote != null) remote] + : remote, + ), + 200, + ); + }), + ); + addTearDown(harness.dispose); + final repository = harness.repository; + final draft = await repository.create(_accountId, content: 'submitted'); + await repository.synchronize(_accountId); + await repository.synchronize(_accountId); + await harness.controller.openNextcloudWorkspace(_accountId); + await harness.controller.openNextcloudNote(draft.localId); + await harness.container + .read(appSettingsControllerProvider.notifier) + .setAutoSave(false); + final reviewed = repository.creationReview( + draft.localId, + repository.noteById(draft.localId)!.remote!, + ); + confirming = true; + final decision = harness.controller.resolveNextcloudConflict( + draft.localId, + NoteConflictResolution.useServerNote, + expectedRevision: reviewed.revision, + creationCandidateServerId: 1, + creationReview: reviewed, + ); + await started.future; + harness.controller.updateActiveText('unsaved newer draft edit'); + release.complete(); + await decision; + expect(repository.noteById(draft.localId)!.serverId, isNull); + expect(repository.noteById(draft.localId)!.creationAttempt, isNotNull); + expect(harness.state.activeBuffer!.text, 'unsaved newer draft edit'); + expect(harness.state.activeBuffer!.isDirty, isTrue); + expect(harness.state.message, isNotNull); + }, + ); + + test( + 'an unsaved independently opened candidate blocks consolidation without orphaning its tab', + () async { + Map? remote; + final harness = await _Harness.create( + seedLocal: false, + deferPersistence: true, + client: MockClient((request) async { + if (request.method == 'POST') { + remote = {...serverNote(1), ...jsonDecode(request.body) as Map}; + throw http.ClientException('lost response'); + } + return http.Response( + jsonEncode( + request.url.path.endsWith('/notes') + ? [if (remote != null) remote] + : remote, + ), + 200, + ); + }), + ); + addTearDown(harness.dispose); + final repository = harness.repository; + final draft = await repository.create( + _accountId, + content: 'wire content', + ); + await repository.synchronize(_accountId); + await repository.synchronize(_accountId); + final twin = repository.notes.firstWhere((n) => n.serverId == 1); + final reviewed = repository.creationReview( + draft.localId, + repository.noteById(draft.localId)!.remote!, + ); + expect( + await harness.controller.openNextcloudWorkspace(_accountId), + isTrue, + ); + expect(await harness.controller.openNextcloudNote(twin.localId), isTrue); + expect(harness.state.activeBuffer!.remoteNote!.localId, twin.localId); + await harness.container + .read(appSettingsControllerProvider.notifier) + .setAutoSave(false); + harness.controller.updateActiveText('unsaved candidate edit'); + expect(harness.state.activeBuffer!.text, 'unsaved candidate edit'); + await harness.controller.resolveNextcloudConflict( + draft.localId, + NoteConflictResolution.useServerNote, + expectedRevision: reviewed.revision, + creationCandidateServerId: 1, + creationReview: reviewed, + ); + expect(repository.noteById(draft.localId)!.serverId, isNull); + expect(repository.noteById(twin.localId), isNotNull); + final tab = harness.state.documentBuffers.firstWhere( + (b) => b.remoteNote?.localId == twin.localId, + ); + expect(tab.text, 'unsaved candidate edit'); + expect(tab.isDirty, isTrue); + expect(harness.state.message, isNotNull); + expect(await harness.controller.saveActive(), isTrue); + expect( + repository.noteById(twin.localId)!.content, + 'unsaved candidate edit', + ); + }, + ); + test( 'Save, Save All, autosave and shutdown durably retain offline notes', () async { diff --git a/tools/nextcloud_login_live_acceptance.py b/tools/nextcloud_login_live_acceptance.py index 29e2662d..f207be0f 100644 --- a/tools/nextcloud_login_live_acceptance.py +++ b/tools/nextcloud_login_live_acceptance.py @@ -55,6 +55,9 @@ def main(): browser = playwright.chromium.launch( executable_path=os.getenv("BUSYMARK_CHROME_PATH", "/usr/bin/google-chrome"), headless=True, + # Disposable acceptance only: trust the explicitly supplied leaf key. + args=(["--ignore-certificate-errors-spki-list=" + os.environ["BUSYMARK_TEST_TLS_SPKI"]] + if "BUSYMARK_TEST_TLS_SPKI" in os.environ else []), ) try: page = browser.new_page() diff --git a/tools/nextcloud_notes_live_acceptance.dart b/tools/nextcloud_notes_live_acceptance.dart index d0f6bc22..748755da 100644 --- a/tools/nextcloud_notes_live_acceptance.dart +++ b/tools/nextcloud_notes_live_acceptance.dart @@ -17,6 +17,12 @@ class _Connection extends http.BaseClient { final http.Client _client; bool offline = false; bool loseNextCreateResponse = false; + bool discardNextCreate = false; + Map? discardedCreation; + int attachmentUploads = 0; + int noteUpdates = 0; + final noteUpdatesById = {}; + final attachmentUploadsById = {}; int noteCreates = 0; int chunkRequests = 0; @override @@ -26,6 +32,24 @@ class _Connection extends http.BaseClient { final creation = request.method == 'POST' && request.url.path.endsWith('/v1/notes'); if (creation) noteCreates++; + if (request.method == 'POST' && request.url.path.contains('/attachment/')) { + attachmentUploads++; + final id = int.parse(request.url.pathSegments.last); + attachmentUploadsById.update(id, (v) => v + 1, ifAbsent: () => 1); + } + if (request.method == 'PUT' && request.url.path.contains('/notes/')) { + noteUpdates++; + final id = int.parse(request.url.pathSegments.last); + noteUpdatesById.update(id, (v) => v + 1, ifAbsent: () => 1); + } + if (creation && discardNextCreate) { + discardNextCreate = false; + discardedCreation = + jsonDecode((request as http.Request).body) as Map; + throw http.ClientException( + 'Intentional nondelivery of creation request.', + ); + } final response = await _client.send(request); if (creation && loseNextCreateResponse) { loseNextCreateResponse = false; @@ -334,6 +358,35 @@ Future main(List arguments) async { uncertain.localId, content: '${pending.content}\nNewer local edit', ); + for (var i = 0; i < 3; i++) { + await repository.synchronize(account.id); + } + final unresolved = repository.noteById(uncertain.localId)!; + _require( + unresolved.serverId == null && + unresolved.syncState == NoteSyncState.creationUncertain, + 'Discovery adopted the uncertain draft without confirmation.', + ); + final candidate = repository + .uncertainCreationCandidates(uncertain.localId) + .single + .base!; + createdIds.add(candidate.id); + final unchangedCandidate = await api(account).get(candidate.id); + _require( + jsonEncode(unchangedCandidate.toJson()) == + jsonEncode(candidate.toJson()) && + (connection.attachmentUploadsById[candidate.id] ?? 0) == 0 && + (connection.noteUpdatesById[candidate.id] ?? 0) == 0 && + connection.noteCreates == beforeCreates + 1, + 'Discovery mutated the candidate or published an attachment.', + ); + await repository.resolveConflict( + uncertain.localId, + NoteConflictResolution.useServerNote, + creationCandidateServerId: candidate.id, + creationReview: repository.creationReview(uncertain.localId, candidate), + ); await repository.synchronize(account.id); final adopted = repository.noteById(uncertain.localId)!; _require( @@ -356,8 +409,76 @@ Future main(List arguments) async { adopted.category != pending.category, 'Reconciliation failed to adopt sanitized title/category and published content.', ); - checks['uncertainCreateStagedAttachmentSanitizationRestartNoDuplicate'] = - true; + final adoptedAttachment = (await repository.attachments( + uncertain.localId, + )).single; + final received = await (await api(account).fetchAttachment( + adopted.serverId!, + adoptedAttachment.remotePath!, + destination: File('${directory.path}/adopted-attachment'), + )).readAsBytes(); + final stagedBytes = await repository.store.attachmentBytes( + adoptedAttachment.id, + ); + _require( + base64Encode(received) == base64Encode(stagedBytes!), + 'Adopted attachment bytes differ.', + ); + await repository.dispose(); + repository = await reopen(); + final durableBinding = repository.noteById(uncertain.localId)!; + _require( + durableBinding.serverId == adopted.serverId && + !durableBinding.hasPendingChanges && + durableBinding.creationAttempt == null, + 'Adopted binding did not survive restart.', + ); + checks['uncertainCreateExplicitAdoptionAttachmentRestart'] = true; + + connection.discardNextCreate = true; + final counterexample = await repository.create( + account.id, + title: 'Independent identical candidate', + content: '# Independent identical content', + ); + await repository.synchronize(account.id); + final wire = connection.discardedCreation!; + final actor = api(account); + final independent = await actor.create( + NextcloudNote( + localId: 'independent', + accountId: account.id, + title: wire['title'] as String, + content: wire['content'] as String, + category: wire['category'] as String, + favorite: wire['favorite'] as bool, + creationAttempt: NotesCreationAttempt( + id: 'actor', + revision: 1, + localContent: wire['content'] as String, + wireBody: jsonEncode(wire), + knownServerIds: {}, + ), + ), + ); + createdIds.add(independent.id); + final beforeIndependentUpdates = + connection.noteUpdatesById[independent.id] ?? 0; + for (var i = 0; i < 3; i++) { + await repository.synchronize(account.id); + } + _require( + repository.noteById(counterexample.localId)!.serverId == null && + repository + .uncertainCreationCandidates(counterexample.localId) + .any((n) => n.serverId == independent.id) && + (connection.noteUpdatesById[independent.id] ?? 0) == + beforeIndependentUpdates && + jsonEncode((await actor.get(independent.id)).toJson()) == + jsonEncode(independent.toJson()), + 'An independently created identical note was adopted or mutated.', + ); + checks['independentIdenticalCandidateRequiresConfirmation'] = true; final chunked = await api(account).list(chunkSize: 1); _require( From c9b1a3a219959d70675422502ce612644f74074e Mon Sep 17 00:00:00 2001 From: Albert G Date: Wed, 7 Oct 2026 19:44:58 -0700 Subject: [PATCH 4/9] Fix/spell check double space (#46) * Clean repository artifacts and refresh maintained documentation * Fixed the spelling mapping bug and related bugs involving list/quote continuations, Markdown line breaks, and inline HTML. Added regression tests for accurate underlines and corrections that preserve formatting. --- .gitignore | 3 + README.md | 1 + .../.gitattributes | 2 - .../nextcloud-explicit-adoption/.gitignore | 1 - .../nextcloud-explicit-adoption/README.md | 34 - .../evidence/analyze-final.log | 65 - .../evidence/analyze-initial.log | 7 - .../evidence/analyze.log | 2 - .../evidence/application-results.json | 15 - .../evidence/automatic-single.html | 22 - .../evidence/boundary-debug.log | 88 - .../evidence/boundary-debug2.log | 48 - .../evidence/boundary-debug3.log | 32 - .../evidence/browser-login.json | 7 - .../evidence/candidate-tab-debug.log | 19 - .../evidence/confirmation-races-final.log | 35 - .../evidence/creation-policy.log | 53 - .../evidence/credential-policy.log | 0 .../evidence/credential-revocation.json | 15 - .../evidence/customized.pdf | Bin 72063 -> 0 bytes .../.busymark-html-export.json | 1 - ...54a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png | Bin 8126 -> 0 bytes ...fabcd82fb194466aa864db1174930d37987c02.svg | 1 - ...6f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg | 1 - ...f55403dcb3dce2b04a0e8c6796d266009157de.svg | 1 - ...53fefa19817867c950e5d788f19f4cc63e1272.svg | 1 - ...4c685f3a0edd2330ae48f931f3bff79d569cb5.png | Bin 10479 -> 0 bytes ...a75c44af4f5fbbe34ff4bb5776543e82ea74f8.png | Bin 6591 -> 0 bytes ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 - ...1b7d454699738c8ea89286f76b474d56eedecd.png | Bin 10868 -> 0 bytes ...ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png | Bin 7183 -> 0 bytes ...9793a43c752b49ebcb4170776147c18f39cfac.svg | 1 - ...476bf8460d1471437bc6a034fab96d2def0b6e.png | Bin 8102 -> 0 bytes ...7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg | 1 - .../evidence/dark-assets.html | 22 - .../evidence/dependency-lock.log | 63 - .../evidence/focused-before-renderer.log | 232 - .../evidence/focused-final.log | 232 - .../evidence/focused-initial.log | 258 - .../evidence/focused-serial.log | 494 - .../evidence/focused.log | 228 - .../evidence/format-final.log | 1 - .../evidence/format-prepare.log | 3 - .../evidence/format.log | 2 - .../evidence/full-flutter-before-renderer.log | 4412 -------- .../evidence/full-flutter-final.log | 4412 -------- .../evidence/full-flutter-timing-failure.log | 4440 --------- .../evidence/full-flutter.log | 4411 -------- .../evidence/gtk-accent-host.log | 25 - .../evidence/gtk-accent.log | 7 - .../live-fixtures/live-lock-persistent.json | 20 - .../historical/live-fixtures/live-lock.json | 12 - .../native-fixtures/spelling-online.json | 25 - .../native-fixtures/spelling-online.log | 7 - .../spelling-wayland-denied-network.json | 17 - .../spelling-wayland-denied-network.log | 12 - .../spelling-x11-denied-network.json | 25 - .../spelling-x11-denied-network.log | 7 - .../historical/native-fixtures/weston.log | 32 - .../historical/native-fixtures/xvfb.log | 57 - .../renderer-experiment/change.patch | 28 - .../renderer-experiment/identity.json | 18 - .../linux-build-render-root.log | 65 - .../native-visualization-wayland-render.log | 26 - .../native-visualization-x11-render.log | 13 - .../renderer-experiment/snap-clean-render.log | 8848 ---------------- .../snap-visualization-x11-render-retry.json | 1 - .../snap-visualization-x11-render-retry.log | 13 - .../snap-visualization-x11-render.json | 1 - .../snap-visualization-x11-render.log | 18 - .../01-verify-gtk-svg-icon-loader.sh | 12 - ...imes-packaged-tools-media-and-resources.sh | 100 - ...ctionary-and-verify-refresh-offline-use.sh | 29 - ...p-visualization-and-pdf-paths-under-x11.sh | 14 - ...pelling-and-visualization-under-wayland.sh | 40 - .../evidence/installed-kvm/README.md | 72 - .../01-verify-gtk-svg-icon-loader/run.log | 1 - .../acceptance-session-fixture/status.tsv | 1 - .../01-verify-gtk-svg-icon-loader/run.log | 6 - .../run.log | 2 - .../run.log | 35 - .../spelling-release.json | 25 - .../run.log | 12 - .../spelling-release.json | 25 - .../visualization-release-x11.json | 1 - .../acceptance/desktop-environment.txt | 2 - .../installed-kvm/acceptance/desktop-xvfb.log | 19 - .../acceptance/installed-identity-final.log | 59 - .../acceptance/installed-identity.log | 59 - .../installed-kvm/acceptance/kernel-audit.log | 1009 -- .../acceptance/portal-settings.txt | 1 - .../installed-kvm/acceptance/portals.conf | 3 - .../acceptance/rendered-exports.tar.gz | Bin 118776 -> 0 bytes .../acceptance/spelling-online-install.json | 25 - .../installed-kvm/acceptance/status.tsv | 7 - .../wayland-configured-desktop/run.log | 52 - .../spelling-release-wayland.json | 25 - .../visualization-release-wayland.json | 1 - .../visualization-smoke.pdf | Bin 71212 -> 0 bytes .../acceptance/wayland-repeat/run.log | 52 - .../spelling-release-wayland.json | 25 - .../visualization-release-wayland.json | 1 - .../wayland-repeat/visualization-smoke.pdf | Bin 71212 -> 0 bytes .../installed-kvm/acceptance/weston-snap.log | 62 - .../acceptance/x11-configured-desktop/run.log | 11 - .../visualization-release-x11.json | 1 - .../visualization-smoke.pdf | Bin 66398 -> 0 bytes .../acceptance/x11-no-at-bridge/run.log | 10 - .../visualization-release-x11.json | 1 - .../acceptance/x11-repeat/run.log | 11 - .../x11-repeat/visualization-release-x11.json | 1 - .../x11-repeat/visualization-smoke.pdf | Bin 66398 -> 0 bytes .../evidence/installed-kvm/cleanup.json | 9 - .../installed-kvm/collect-identity.sh | 19 - .../evidence/installed-kvm/install.log | 34 - .../evidence/installed-kvm/portal-setup.log | 1 - .../installed-kvm/public-ci-access.json | 12 - .../installed-kvm/repeat-acceptance.sh | 16 - .../evidence/installed-kvm/results.json | 44 - .../evidence/installed-kvm/run-acceptance.sh | 17 - .../snap-acceptance-before-kvm.json | 28 - .../evidence/installed-kvm/workflow-run.log | 8 - .../installed-kvm/workflow-steps.json | 22 - .../installed-kvm/workflow-user-session.log | 4 - .../installed-kvm/x11-configured-desktop.log | 1 - .../evidence/libsecret.log | 0 .../evidence/linux-build-final.log | 2 - .../evidence/linux-build.log | 2 - .../evidence/linux-release-hashes.txt | 3 - .../evidence/linux-source-identity.json | 578 -- .../evidence/live-6.0.1-final.json | 19 - .../evidence/live-6.0.1-final.log | 1 - .../evidence/live-6.0.1.json | 19 - .../evidence/live-6.0.1.log | 1 - .../evidence/live-6.1.0-final.json | 19 - .../evidence/live-6.1.0-final.log | 1 - .../evidence/live-6.1.0.json | 19 - .../evidence/live-6.1.0.log | 1 - .../evidence/live-lock-final.json | 23 - .../evidence/live-lock-final.log | 1 - .../evidence/live-lock-persistent.log | 1 - .../evidence/live-lock.log | 1 - .../evidence/localization-audit.log | 23 - .../evidence/localization-generation.log | 4 - .../evidence/native-adopted-restarted.png | Bin 68261 -> 0 bytes .../evidence/native-adoption-checks.json | 31 - .../evidence/native-after-adoption.json | 51 - .../evidence/native-after-restart.json | 51 - .../native-before-adoption-server.json | 15 - .../evidence/native-confirmation.png | Bin 106143 -> 0 bytes .../evidence/native-connected.png | Bin 278 -> 0 bytes .../evidence/native-final-unresolved.png | Bin 91488 -> 0 bytes .../evidence/native-offline-draft.json | 63 - .../evidence/native-offline-staged.png | Bin 87890 -> 0 bytes .../evidence/native-restart-checks.json | 8 - .../evidence/native-spelling-dependencies.log | 19 - .../evidence/native-spelling.log | 15 - .../native-uncertain-before-edit.json | 55 - .../evidence/native-uncertain-newer-edit.json | 99 - .../evidence/native-uncertain.png | Bin 83532 -> 0 bytes .../evidence/native-unresolved-checks.json | 14 - .../native-visualization-wayland-final.log | 26 - .../native-visualization-x11-final.log | 13 - .../evidence/native-vm-final.log | 7 - .../spelling-online-final.json | 25 - .../native-vm-final/spelling-online.log | 3 - ...spelling-wayland-denied-network-final.json | 25 - .../spelling-wayland-denied-network.log | 12 - .../spelling-x11-denied-network-final.json | 25 - .../spelling-x11-denied-network.log | 1 - .../evidence/native-vm-final/weston.log | 64 - .../evidence/native-vm-final/xvfb.log | 57 - .../evidence/native-vm-smokes.log | 6 - .../offline.assets/.busymark-html-export.json | 1 - ...54a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png | Bin 8126 -> 0 bytes ...c1b02bd63f106d5abd4402820562c3c423ec1e.svg | 1 - ...49c1d49b1ede4096047cf7c0de72a236825eb6.svg | 1 - ...30ee752e9d5846cac2e2162bccbbb31744093e.svg | 1 - ...5b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg | 1 - ...4c685f3a0edd2330ae48f931f3bff79d569cb5.png | Bin 10479 -> 0 bytes ...a75c44af4f5fbbe34ff4bb5776543e82ea74f8.png | Bin 6591 -> 0 bytes ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 - ...1b7d454699738c8ea89286f76b474d56eedecd.png | Bin 10868 -> 0 bytes ...d8a45e196dc124ec370a66a24aaa0fc1a1d8cd.svg | 1 - ...ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png | Bin 7183 -> 0 bytes ...7b20a2ff6039cfdda4d284443c966f4156ae0b.svg | 1 - ...476bf8460d1471437bc6a034fab96d2def0b6e.png | Bin 8102 -> 0 bytes .../evidence/offline.html | 22 - .../pre-fix-draft-confirmation-race.log | 14 - .../evidence/pre-fix-regression.log | 14 - .../evidence/regression-results.json | 50 - .../release-wayland/automatic-single.html | 22 - .../evidence/release-wayland/customized.pdf | Bin 72063 -> 0 bytes .../.busymark-html-export.json | 1 - ...2516098c77c4b5028e77108c208c39f217f2ed.svg | 1 - ...65def2695ed6da5b3f24791b3c01f9b293b38a.svg | 1 - ...27b337b1277d02c745394ff0a7c9b2a2d49831.svg | 1 - ...4c685f3a0edd2330ae48f931f3bff79d569cb5.png | Bin 10479 -> 0 bytes ...a75c44af4f5fbbe34ff4bb5776543e82ea74f8.png | Bin 6591 -> 0 bytes ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 - ...d967a0b721bb4fb4b4026ffdbe2dab18774e08.svg | 1 - ...c8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg | 1 - ...ed3a68e7294086d4397eeddd3183be658e1a41.svg | 1 - ...476bf8460d1471437bc6a034fab96d2def0b6e.png | Bin 8102 -> 0 bytes .../evidence/release-wayland/dark-assets.html | 22 - .../offline.assets/.busymark-html-export.json | 1 - ...46e9083386f10abe201d5abdd58a25a5038c62.svg | 1 - ...93730dc299d3a223e326034ad8e7eaebc6888a.svg | 1 - ...579432e751882cb3cf8718261ab705486a5559.svg | 1 - ...4d800651cc64129c3f082eb6d830415aae3946.svg | 1 - ...5e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg | 1 - ...4c685f3a0edd2330ae48f931f3bff79d569cb5.png | Bin 10479 -> 0 bytes ...a75c44af4f5fbbe34ff4bb5776543e82ea74f8.png | Bin 6591 -> 0 bytes ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 - ...b686d1b2dae2cd5cecf8be4d166be480a808f0.svg | 1 - ...476bf8460d1471437bc6a034fab96d2def0b6e.png | Bin 8102 -> 0 bytes .../evidence/release-wayland/offline.html | 22 - .../visualization-smoke-mermaid.svg | 1 - .../release-wayland/visualization-smoke.pdf | Bin 67398 -> 0 bytes .../release-wayland/visualization.json | 1 - .../release-wayland/visualization.log | 26 - .../.busymark-html-export.json | 1 - .../writerside-embedded/Welcome.html | 14 - .../writerside-embedded/hidden.html | 14 - .../writerside-embedded/index.html | 14 - .../writerside-embedded/reference.html | 14 - .../writerside/.busymark-html-export.json | 1 - .../release-wayland/writerside/Welcome.html | 14 - ...f8b2f9195e34e32a7c152936f1557d95a68b59.png | Bin 8020 -> 0 bytes .../release-wayland/writerside/hidden.html | 14 - .../release-wayland/writerside/index.html | 14 - .../release-wayland/writerside/reference.html | 14 - .../release-x11/automatic-single.html | 22 - .../evidence/release-x11/customized.pdf | Bin 71882 -> 0 bytes .../.busymark-html-export.json | 1 - ...c11b33dd0706d10bccde39de18ec949d19cd79.svg | 1 - ...54a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png | Bin 8126 -> 0 bytes ...8129858dfc9cd63e8656587e7165d98b10408a.svg | 1 - ...f42810ea5b437bd822d0c35b6449d52213ec2f.svg | 1 - ...40448687760f83c5ee93cc688e29c829715873.svg | 1 - ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 - ...1b7d454699738c8ea89286f76b474d56eedecd.png | Bin 10868 -> 0 bytes ...ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png | Bin 7183 -> 0 bytes ...699496bfe3703810a33db0285081dadd2169d6.svg | 1 - ...1f00206a7592d4ebf2452dba12c78d05329c1f.svg | 1 - .../evidence/release-x11/dark-assets.html | 22 - .../offline.assets/.busymark-html-export.json | 1 - ...54a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png | Bin 8126 -> 0 bytes ...f524e670ccc2de0559f1bc1faeb1000a86ffcc.svg | 1 - ...b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg | 1 - ...1d6b2a7ded6ac72a595953a61d366d2e645dfc.svg | 1 - ...cb9524d0689095c32cc9dca40ba45b6b386dcd.svg | 1 - ...749154ab22d02972f76be6af8cfd2548ddb23e.svg | 1 - ...1b7d454699738c8ea89286f76b474d56eedecd.png | Bin 10868 -> 0 bytes ...17b71b28f462b801cc6521add241cac34cc3af.svg | 1 - ...249679217ca3ee8ba1eb7ddf356194ecf1033d.svg | 1 - ...ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png | Bin 7183 -> 0 bytes .../evidence/release-x11/offline.html | 22 - .../visualization-smoke-mermaid.svg | 1 - .../release-x11/visualization-smoke.pdf | Bin 67205 -> 0 bytes .../evidence/release-x11/visualization.json | 1 - .../evidence/release-x11/visualization.log | 13 - .../.busymark-html-export.json | 1 - .../writerside-embedded/Welcome.html | 14 - .../writerside-embedded/hidden.html | 14 - .../writerside-embedded/index.html | 14 - .../writerside-embedded/reference.html | 14 - .../writerside/.busymark-html-export.json | 1 - .../release-x11/writerside/Welcome.html | 14 - ...2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png | Bin 7026 -> 0 bytes .../release-x11/writerside/hidden.html | 14 - .../release-x11/writerside/index.html | 14 - .../release-x11/writerside/reference.html | 14 - .../evidence/repository-router-initial.log | 67 - .../evidence/router-final.log | 7 - .../evidence/selected-logs.json | 62 - .../evidence/snap-acceptance-results.json | 34 - .../evidence/snap-adopted-restarted.png | Bin 68209 -> 0 bytes .../evidence/snap-adopted.png | Bin 68276 -> 0 bytes .../evidence/snap-adoption-checks.json | 25 - .../evidence/snap-after-adoption.json | 83 - .../evidence/snap-after-restart.json | 83 - .../evidence/snap-before-adoption-server.json | 15 - .../evidence/snap-browser-login.log | 1 - .../evidence/snap-build-final.log | 1548 --- .../evidence/snap-build-retry.log | 6224 ------------ .../evidence/snap-build.log | 24 - .../evidence/snap-clean-final.log | 8850 ----------------- .../evidence/snap-confinement.log | 7 - .../evidence/snap-confirmation.png | Bin 108227 -> 0 bytes .../evidence/snap-connected-state.json | 40 - .../evidence/snap-connected.png | Bin 22104 -> 0 bytes .../evidence/snap-denied-network.log | 8 - .../evidence/snap-install-events.log | 6 - .../evidence/snap-install.log | 170 - .../evidence/snap-installed-final.log | 9 - .../snap-installed-identity-final.log | 31 - .../evidence/snap-installed-identity.log | 27 - .../evidence/snap-installed-payload.log | 8 - .../evidence/snap-installed-restored.log | 9 - .../evidence/snap-network-denials.log | 13 - .../evidence/snap-network-denied.png | Bin 57173 -> 0 bytes .../evidence/snap-newer-edit.json | 132 - .../evidence/snap-offline-draft.json | 62 - .../evidence/snap-offline-restarted.json | 73 - .../evidence/snap-offline-staged.json | 73 - .../evidence/snap-offline-staged.png | Bin 80058 -> 0 bytes .../evidence/snap-offline-state.json | 40 - .../evidence/snap-pack-complete.log | 2674 ----- .../evidence/snap-pack-final.log | 11 - .../evidence/snap-restart-checks.json | 8 - .../evidence/snap-smokes-final.log | 42 - .../evidence/snap-smokes-first-timeout.log | 11 - .../evidence/snap-source-identity.json | 577 -- .../evidence/snap-spelling-first-success.json | 7 - .../evidence/snap-spelling-wayland-final.json | 25 - .../evidence/snap-uncertain-before-edit.json | 88 - .../evidence/snap-uncertain.png | Bin 82610 -> 0 bytes .../evidence/snap-unresolved-checks.json | 18 - .../evidence/snap-unresolved-newer.png | Bin 85277 -> 0 bytes .../snap-visualization-wayland-final.json | 1 - .../snap-visualization-x11-desktop.log | 13 - .../snap-visualization-x11-interpreter.log | 11 - .../evidence/snap-visualization-x11-retry.log | 11 - .../evidence/snap-wayland-final.log | 58 - .../snap-wayland-socket-fixture-failure.log | 8 - .../evidence/spelling-integration.log | 6 - .../evidence/spelling-release.json | 25 - .../evidence/spelling-resources.log | 0 .../evidence/spelling-x11-denied-network.log | 1 - .../evidence/spelling-x11-online.json | 25 - .../evidence/spelling-x11-online.log | 9 - .../evidence/ui-confirmation-2.log | 7 - .../evidence/ui-confirmation-final.log | 18 - .../evidence/ui-confirmation-real-zone.log | 29 - .../evidence/ui-confirmation.log | 3 - .../evidence/ui-debug-trace.log | 35 - .../evidence/upstream-source-hashes.json | 10 - .../evidence/visualization-release-x11.json | 1 - .../evidence/visualization-smoke-mermaid.svg | 1 - .../evidence/visualization-smoke.pdf | Bin 67398 -> 0 bytes .../evidence/visualization-wayland-final.json | 1 - .../evidence/visualization-wayland-final.log | 26 - .../evidence/visualization-x11-final.json | 1 - .../evidence/visualization-x11-final.log | 13 - .../evidence/visualization-x11.json | 1 - .../evidence/visualization-x11.log | 13 - .../evidence/vm-bootstrap.log | 10 - .../evidence/vm-desktop.log | 6 - .../evidence/vm-installed-smokes.sh | 80 - .../evidence/vm-installed-wayland.sh | 22 - .../evidence/vm-native-dependencies.log | 186 - .../evidence/vm-native-smokes.sh | 25 - .../evidence/vm-window-manager.log | 99 - .../evidence/vm-xdg-bootstrap.log | 351 - .../evidence/webkit-wayland-final.log | 52 - .../evidence/webkit-wayland.log | 10 - .../evidence/webkit-x11-final.log | 46 - .../evidence/webkit-x11.log | 10 - .../.busymark-html-export.json | 1 - .../evidence/writerside-embedded/Welcome.html | 14 - .../evidence/writerside-embedded/hidden.html | 14 - .../evidence/writerside-embedded/index.html | 14 - .../writerside-embedded/reference.html | 14 - .../evidence/writerside.log | 1 - .../writerside/.busymark-html-export.json | 1 - .../evidence/writerside/Welcome.html | 14 - ...f8b2f9195e34e32a7c152936f1557d95a68b59.png | Bin 8020 -> 0 bytes .../evidence/writerside/hidden.html | 14 - .../evidence/writerside/index.html | 14 - .../evidence/writerside/reference.html | 14 - .../nextcloud-explicit-adoption/verify.py | 68 - docs/README.md | 1 + docs/development/export-verification.md | 4 +- docs/development/history.md | 25 + .../development/nextcloud-notes-validation.md | 857 -- docs/development/nextcloud-notes.md | 76 +- .../writerside-toc-implementation.md | 429 - docs/development/writerside-verification.md | 71 + docs/screenshots/busymark-welcome.png | Bin 32705 -> 0 bytes docs/snap-confinement.md | 11 +- docs/writerside-instances.md | 60 +- lib/src/markdown/markdown_ast_adapter.dart | 1 + .../markdown/markdown_source_annotation.dart | 5 + lib/src/markdown/markdown_source_map.dart | 12 + lib/src/markdown/raw_html_adapter.dart | 36 +- .../markdown_spelling_projection.dart | 334 +- linux/io.busystack.busymark.metainfo.xml | 1 + packages/busymark_spellcheck_native/README.md | 13 +- snap/snapcraft.yaml | 2 + .../clipboard-cross-process.json | 1 - .../clipboard-plain-replacement.json | 1 - .../history-runtime/clipboard-roundtrip.json | 1 - .../markdown-clipboard-history-1280x800.png | Bin 132470 -> 0 bytes .../markdown-comparison-1920x1080.png | Bin 176463 -> 0 bytes .../markdown-deleted-comparison-1920x1080.png | Bin 106890 -> 0 bytes .../markdown-deleted-recovered-1920x1080.png | Bin 129567 -> 0 bytes .../markdown-fragment-restored-1920x1080.png | Bin 180851 -> 0 bytes .../markdown-local-history-1280x800.png | Bin 117688 -> 0 bytes .../history-runtime/markdown-report.json | 23 - .../writerside-clipboard-history-1280x800.png | Bin 149065 -> 0 bytes .../writerside-comparison-1920x1080.png | Bin 175238 -> 0 bytes ...writerside-fragment-restored-1920x1080.png | Bin 180021 -> 0 bytes .../writerside-local-history-1280x800.png | Bin 133698 -> 0 bytes .../history-runtime/writerside-report.json | 17 - test/src/spellcheck_projection_test.dart | 4 +- test/src/spelling_line_breaks_test.dart | 245 + test/src/spelling_workspace_test.dart | 41 + 408 files changed, 834 insertions(+), 56953 deletions(-) delete mode 100644 delivery/nextcloud-explicit-adoption/.gitattributes delete mode 100644 delivery/nextcloud-explicit-adoption/.gitignore delete mode 100644 delivery/nextcloud-explicit-adoption/README.md delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/analyze-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/analyze-initial.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/analyze.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/application-results.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/automatic-single.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/boundary-debug.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/boundary-debug2.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/boundary-debug3.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/browser-login.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/candidate-tab-debug.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/confirmation-races-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/creation-policy.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/credential-policy.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/credential-revocation.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/customized.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/00dc2b13e7375241e7f30a5b38fabcd82fb194466aa864db1174930d37987c02.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/488e2153188474157043755ba66f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/4fe9a6f229ceb15e135a8b5795f55403dcb3dce2b04a0e8c6796d266009157de.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/5d7bd89ebd4399d5aa15ea380853fefa19817867c950e5d788f19f4cc63e1272.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/cae605b340dbaa9cb7c6544ea19793a43c752b49ebcb4170776147c18f39cfac.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f6f894eb8be03336e2e11b946d7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dark-assets.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/dependency-lock.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused-before-renderer.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused-initial.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused-serial.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/focused.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/format-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/format-prepare.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/format.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/full-flutter-before-renderer.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/full-flutter-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/full-flutter-timing-failure.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/full-flutter.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/gtk-accent-host.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/gtk-accent.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock-persistent.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/weston.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/xvfb.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/change.patch delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/identity.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/linux-build-render-root.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-wayland-render.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-x11-render.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-clean-render.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/01-verify-gtk-svg-icon-loader.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/02-verify-shared-runtimes-packaged-tools-media-and-resources.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/README.md delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/status.tsv delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/spelling-release.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/spelling-release.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/visualization-release-x11.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-environment.txt delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-xvfb.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/kernel-audit.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portal-settings.txt delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portals.conf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/rendered-exports.tar.gz delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/spelling-online-install.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/status.tsv delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/spelling-release-wayland.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-smoke.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/spelling-release-wayland.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-smoke.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/weston-snap.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-smoke.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/visualization-release-x11.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-release-x11.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-smoke.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/cleanup.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/collect-identity.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/install.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/portal-setup.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/public-ci-access.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/repeat-acceptance.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/results.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/run-acceptance.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/snap-acceptance-before-kvm.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-run.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-steps.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-user-session.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/installed-kvm/x11-configured-desktop.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/libsecret.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/linux-build-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/linux-build.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/linux-release-hashes.txt delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/linux-source-identity.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-lock-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-lock-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-lock-persistent.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/live-lock.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/localization-audit.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/localization-generation.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-adopted-restarted.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-adoption-checks.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-after-adoption.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-after-restart.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-before-adoption-server.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-confirmation.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-connected.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-final-unresolved.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-offline-draft.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-offline-staged.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-restart-checks.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-spelling-dependencies.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-spelling.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-uncertain-before-edit.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-uncertain-newer-edit.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-uncertain.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-unresolved-checks.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-visualization-wayland-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-visualization-x11-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-online-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-online.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-wayland-denied-network-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-wayland-denied-network.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-x11-denied-network-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/spelling-x11-denied-network.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/weston.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-final/xvfb.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/native-vm-smokes.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/1332073baa61e5fd36e184fa69c1b02bd63f106d5abd4402820562c3c423ec1e.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/263c38a91bb224683bf0bf491749c1d49b1ede4096047cf7c0de72a236825eb6.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/415512507417b44334457993dc30ee752e9d5846cac2e2162bccbbb31744093e.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/9f7edb574746d2ebfcb68eb3825b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/b565a6bcc734884e93f754d9bed8a45e196dc124ec370a66a24aaa0fc1a1d8cd.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/c23fbc6f37566397cb25ac17047b20a2ff6039cfdda4d284443c966f4156ae0b.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/offline.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/pre-fix-draft-confirmation-race.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/pre-fix-regression.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/regression-results.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/automatic-single.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/customized.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/6d1048497a0b097d6cfb66fd4c2516098c77c4b5028e77108c208c39f217f2ed.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7a5b411b813e97f3f756a0109f65def2695ed6da5b3f24791b3c01f9b293b38a.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7d6e03816ccea2d09fb0ef83a827b337b1277d02c745394ff0a7c9b2a2d49831.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/bc6895a0b73c8d683eeeb5b72bd967a0b721bb4fb4b4026ffdbe2dab18774e08.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c89f96c760e56029e22e5afebfc8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c9693d70fc9bcc18d336ad2743ed3a68e7294086d4397eeddd3183be658e1a41.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/040ee0eadaf8d1ab732a6cffc646e9083386f10abe201d5abdd58a25a5038c62.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/26cd9de5fcc5fb9e147045cb6f93730dc299d3a223e326034ad8e7eaebc6888a.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/3eb9114c8addc4d5e713578ddf579432e751882cb3cf8718261ab705486a5559.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/5289ba0ea5ad014da5f44046224d800651cc64129c3f082eb6d830415aae3946.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke-mermaid.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/Welcome.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/hidden.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/index.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/reference.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/Welcome.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/hidden.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/index.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/reference.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/automatic-single.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/customized.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0019f7540aa7f466f453fb3bb7c11b33dd0706d10bccde39de18ec949d19cd79.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/129a629565c69215557b06221d8129858dfc9cd63e8656587e7165d98b10408a.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/9a8ea2ea8e0e10ada47ca38bb740448687760f83c5ee93cc688e29c829715873.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/cdd258a527cfd2d66f69934411699496bfe3703810a33db0285081dadd2169d6.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/434232ac03faf3e7aaf927762cf524e670ccc2de0559f1bc1faeb1000a86ffcc.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/5153cceea929c29c2d92145807b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/8a2bccd105c3d7f5814003657acb9524d0689095c32cc9dca40ba45b6b386dcd.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc0f8faa10e56ac8f8bdb7694a17b71b28f462b801cc6521add241cac34cc3af.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke-mermaid.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/Welcome.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/hidden.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/index.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/reference.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/Welcome.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/assets/f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/hidden.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/index.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/reference.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/repository-router-initial.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/router-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/selected-logs.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-acceptance-results.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-adopted-restarted.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-adopted.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-adoption-checks.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-after-adoption.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-after-restart.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-before-adoption-server.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-browser-login.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-build-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-build-retry.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-build.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-clean-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-confinement.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-confirmation.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-connected-state.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-connected.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-denied-network.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-install-events.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-install.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-identity-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-identity.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-payload.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-installed-restored.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-network-denials.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-network-denied.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-newer-edit.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-draft.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-restarted.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-offline-state.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-pack-complete.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-pack-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-restart-checks.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-smokes-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-smokes-first-timeout.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-source-identity.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-spelling-first-success.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-spelling-wayland-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-uncertain-before-edit.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-uncertain.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-unresolved-checks.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-unresolved-newer.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-visualization-wayland-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-desktop.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-interpreter.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-retry.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-wayland-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/snap-wayland-socket-fixture-failure.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-integration.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-release.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-resources.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-x11-denied-network.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-2.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-real-zone.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-confirmation.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/ui-debug-trace.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/upstream-source-hashes.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-release-x11.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-smoke-mermaid.svg delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-smoke.pdf delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-wayland-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-wayland-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-x11-final.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-x11-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-x11.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/visualization-x11.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-bootstrap.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-desktop.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-installed-smokes.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-installed-wayland.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-native-dependencies.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-native-smokes.sh delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-window-manager.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/vm-xdg-bootstrap.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/webkit-wayland-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/webkit-wayland.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/webkit-x11-final.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/webkit-x11.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/Welcome.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/hidden.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/index.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/reference.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside.log delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/.busymark-html-export.json delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/Welcome.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/hidden.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/index.html delete mode 100644 delivery/nextcloud-explicit-adoption/evidence/writerside/reference.html delete mode 100644 delivery/nextcloud-explicit-adoption/verify.py delete mode 100644 docs/development/nextcloud-notes-validation.md delete mode 100644 docs/development/writerside-toc-implementation.md delete mode 100644 docs/screenshots/busymark-welcome.png delete mode 100644 test-results/history-runtime/clipboard-cross-process.json delete mode 100644 test-results/history-runtime/clipboard-plain-replacement.json delete mode 100644 test-results/history-runtime/clipboard-roundtrip.json delete mode 100644 test-results/history-runtime/markdown-clipboard-history-1280x800.png delete mode 100644 test-results/history-runtime/markdown-comparison-1920x1080.png delete mode 100644 test-results/history-runtime/markdown-deleted-comparison-1920x1080.png delete mode 100644 test-results/history-runtime/markdown-deleted-recovered-1920x1080.png delete mode 100644 test-results/history-runtime/markdown-fragment-restored-1920x1080.png delete mode 100644 test-results/history-runtime/markdown-local-history-1280x800.png delete mode 100644 test-results/history-runtime/markdown-report.json delete mode 100644 test-results/history-runtime/writerside-clipboard-history-1280x800.png delete mode 100644 test-results/history-runtime/writerside-comparison-1920x1080.png delete mode 100644 test-results/history-runtime/writerside-fragment-restored-1920x1080.png delete mode 100644 test-results/history-runtime/writerside-local-history-1280x800.png delete mode 100644 test-results/history-runtime/writerside-report.json create mode 100644 test/src/spelling_line_breaks_test.dart diff --git a/.gitignore b/.gitignore index 6a125821..9099c2b2 100644 --- a/.gitignore +++ b/.gitignore @@ -34,6 +34,9 @@ migrate_working_dir/ .pub/ /build/ /coverage/ +/delivery/ +/test-results/ +/evidence/ .widget_preview/ **/node_modules/ linux/flutter/ephemeral/ diff --git a/README.md b/README.md index e0cd2a22..8f226b99 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,7 @@ Markdown and Writerside editor for Linux. * **Markdown editing** — Source, Editor, Reading, and Split views with formatting tools, syntax highlighting, code folding, tables, images, links, code blocks, callouts, collapsible content, and document diagnostics. * **Writerside projects** — Open and create Writerside-compatible projects; edit Markdown and XML topics; manage instances, tables of contents, reusable TOC libraries, and project structure. +* **[Nextcloud Notes](docs/development/nextcloud-notes.md)** — Remote note workspaces with offline-safe synchronization, categories, favorites, and attachments. * **Project navigation and search** — Files, Topics, and Outline views, tabbed documents, command palette, keyboard shortcuts, document search and replace, reviewed workspace-wide replacement, and Markdown TOC generation. * **Technical documentation** — Local rendering of Mermaid, PlantUML, D2, fenced OpenAPI specifications, and MathJax mathematical expressions. * **PDF and HTML publishing** — Export Markdown documents and Writerside instances to configurable PDF or portable offline HTML, with controls for layout, typography, tables of contents, heading numbering, and HTML styling. diff --git a/delivery/nextcloud-explicit-adoption/.gitattributes b/delivery/nextcloud-explicit-adoption/.gitattributes deleted file mode 100644 index 7bd03846..00000000 --- a/delivery/nextcloud-explicit-adoption/.gitattributes +++ /dev/null @@ -1,2 +0,0 @@ -# Preserve captured reports, screenshots and binary exports byte-for-byte. -evidence/** -text -diff diff --git a/delivery/nextcloud-explicit-adoption/.gitignore b/delivery/nextcloud-explicit-adoption/.gitignore deleted file mode 100644 index 37beecae..00000000 --- a/delivery/nextcloud-explicit-adoption/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/artifacts/ diff --git a/delivery/nextcloud-explicit-adoption/README.md b/delivery/nextcloud-explicit-adoption/README.md deleted file mode 100644 index 25bb8555..00000000 --- a/delivery/nextcloud-explicit-adoption/README.md +++ /dev/null @@ -1,34 +0,0 @@ -# Explicit Notes adoption delivery - -The source implementation is committed. Candidate discovery only records evidence; -linking an uncertain draft requires authenticated fresh review and an explicit -user decision. The source archive and build artifacts are in `artifacts/`, with -commit, file and artifact hashes in its `manifest.json`. - -Run `python3 verify.py artifacts/manifest.json --run-tests` with Flutter 3.47.5 -on PATH to extract the committed archive, compare all recorded source bytes and -build inputs, audit discovery/adoption separation, and rerun the complete -Nextcloud regression set, including the top-level tests. - -The evidence includes full Flutter and focused test logs, pre-fix failing -regressions, live HTTPS Notes 6.0.1/6.1.0 and real 423 reports, native and strict -Snap application screenshots/state/server comparisons, real denied-network -proof, recipe build provenance, installed interface/payload verification, and -credential revocation. `selected-logs.json` identifies retained command logs. -Historical failures and the reverted renderer experiment are explicitly labelled. - -Release acceptance is **complete**. The same recipe-built strict Snap passed -installed X11 and Wayland visualization (23 checks each, repeated successfully) -in a disposable Ubuntu KVM desktop. Installed spelling passed 20 checks per -run, including refresh and denied-network restart. Browser/keyring restart, -offline durability, explicit adoption and attachment publication had already -passed against this identical package. See `evidence/installed-kvm/README.md` -for the desktop setup, commands and results. Earlier failures remain historical -evidence and are not counted as passes. - -Public CI publication was explicitly approved, but the GitHub integration -returned HTTP 403 and existing SSH authentication was unavailable. No branch -or PR was created. The authorized disposable VM completed installed acceptance. -Credentials and private VM/HTTPS fixture files are excluded. `artifacts/manifest.json` -identifies the final commit, current archives, exact build hashes and checks; -superseded archives are kept separately under `artifacts/historical/`. diff --git a/delivery/nextcloud-explicit-adoption/evidence/analyze-final.log b/delivery/nextcloud-explicit-adoption/evidence/analyze-final.log deleted file mode 100644 index 25270308..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/analyze-final.log +++ /dev/null @@ -1,65 +0,0 @@ -Resolving dependencies... -Downloading packages... - _fe_analyzer_shared 99.0.0 (109.0.0 available) - analyzer 12.1.0 (14.5.0 available) - animated_vector 0.2.2 (0.2.3 available) - animated_vector_annotations 0.2.2 (0.3.0 available) - archive 4.0.9 (4.3.0 available) - assorted_layout_widgets 11.0.0 (13.1.0 available) - clock 1.1.2 (1.1.3 available) - code_assets 1.2.1 (2.1.0 available) - cross_file 0.3.5+4 (0.4.0 available) - dbus 0.7.13 (0.8.0 available) - file_selector_android 0.5.2+8 (0.5.2+11 available) - file_selector_ios 0.5.3+5 (0.5.3+6 available) - file_selector_linux 0.9.4 (0.9.4+1 available) - file_selector_macos 0.9.5 (0.9.5+1 available) - file_selector_windows 0.9.3+5 (0.9.3+6 available) - flutter_riverpod 3.3.2 (3.4.3 available) - frontend_server_client 4.0.0 (4.1.0 available) - glob 2.1.3 (2.2.0 available) - go_router 17.3.0 (18.0.2 available) - gsettings 0.2.8 (0.2.9 available) - html 0.15.6 (0.15.7 available) - image 4.9.1 (4.10.1 available) - io 1.0.5 (1.1.0 available) - jni 1.0.0 (1.1.0 available) - jni_flutter 1.0.1 (1.0.4+1 available) - material_color_utilities 0.13.0 (0.13.1 available) - mime 2.0.0 (2.1.0 available) - native_toolchain_c 0.19.3 (0.19.5 available) - objective_c 9.4.1 (9.6.2 available) - package_config 2.2.0 (3.0.0 available) - package_info_plus 10.2.1 (10.2.2 available) - petitparser 7.0.2 (7.1.0 available) - platform 3.1.6 (3.2.0 available) - pool 1.5.2 (1.5.3 available) - posix 6.5.0 (6.5.2 available) - pub_semver 2.2.0 (2.2.1 available) - riverpod 3.3.2 (3.4.3 available) - source_maps 0.10.13 (0.10.14 available) - stack_trace 1.12.1 (1.12.2 available) - test 1.31.1 (1.32.0 available) - test_api 0.7.12 (0.7.14 available) - test_core 0.6.18 (0.6.20 available) - ubuntu_localizations 0.5.2+3 (0.5.2+4 available) - unorm_dart 0.3.2 (0.3.3 available) - url_launcher 6.3.2 (6.3.3 available) - url_launcher_android 6.3.32 (6.3.33 available) - url_launcher_ios 6.4.1 (6.4.2 available) - url_launcher_linux 3.2.2 (3.2.3 available) - url_launcher_macos 3.2.5 (3.2.6 available) - url_launcher_windows 3.1.5 (3.1.6 available) - vector_graphics 1.2.2 (1.2.3 available) - vector_graphics_compiler 1.2.6 (1.3.0 available) - vector_math 2.4.2 (2.4.3 available) - vm_service 15.2.0 (15.3.0 available) - win32 6.3.0 (6.4.0 available) - xml 7.0.1 (7.1.0 available) - yaml 3.1.3 (3.1.4 available) - yaru 10.2.0 (11.0.0 available) -Got dependencies! -58 packages have newer versions incompatible with dependency constraints. -Try `flutter pub outdated` for more information. -Analyzing busymark... -No issues found! (ran in 6.2s) diff --git a/delivery/nextcloud-explicit-adoption/evidence/analyze-initial.log b/delivery/nextcloud-explicit-adoption/evidence/analyze-initial.log deleted file mode 100644 index b5af9036..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/analyze-initial.log +++ /dev/null @@ -1,7 +0,0 @@ -Analyzing busymark... - - info • Statements in an if should be enclosed in a block. Try wrapping the statement in a block • lib/src/nextcloud_notes/application/notes_repository.dart:425:7 • curly_braces_in_flow_control_structures - info • Statements in an if should be enclosed in a block. Try wrapping the statement in a block • lib/src/nextcloud_notes/application/notes_repository.dart:1300:13 • curly_braces_in_flow_control_structures - info • The 'children' argument should be last in widget constructor invocations. Try moving the argument to the end of the argument list • lib/src/nextcloud_notes/presentation/notes_sidebar.dart:732:9 • sort_child_properties_last - -3 issues found. (ran in 2.5s) diff --git a/delivery/nextcloud-explicit-adoption/evidence/analyze.log b/delivery/nextcloud-explicit-adoption/evidence/analyze.log deleted file mode 100644 index 2c92f220..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/analyze.log +++ /dev/null @@ -1,2 +0,0 @@ -Analyzing busymark... -No issues found! (ran in 3.9s) diff --git a/delivery/nextcloud-explicit-adoption/evidence/application-results.json b/delivery/nextcloud-explicit-adoption/evidence/application-results.json deleted file mode 100644 index 75d6d877..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/application-results.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "ok": true, - "native": { - "unresolved": "native-unresolved-checks.json", - "adoption": "native-adoption-checks.json", - "restart": "native-restart-checks.json" - }, - "strictSnap": { - "unresolved": "snap-unresolved-checks.json", - "adoption": "snap-adoption-checks.json", - "restart": "snap-restart-checks.json", - "networkConfinement": "snap-network-denials.log", - "browser": "snap-browser-login.log" - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/automatic-single.html b/delivery/nextcloud-explicit-adoption/evidence/automatic-single.html deleted file mode 100644 index 42430bb3..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/automatic-single.html +++ /dev/null @@ -1,22 +0,0 @@ - -Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
-
    -
  1. -

    A structured footnote with a return link.

    -

    ↩

    -
  2. -
-
diff --git a/delivery/nextcloud-explicit-adoption/evidence/boundary-debug.log b/delivery/nextcloud-explicit-adoption/evidence/boundary-debug.log deleted file mode 100644 index aec29931..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/boundary-debug.log +++ /dev/null @@ -1,88 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:06 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:06 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab [E] - Expected: 'unsaved candidate edit' - Actual: 'wire content' - Which: is different. - Expected: unsaved ca ... - Actual: wire conte ... - ^ - Differ at offset 0 - message=Close the downloaded candidate’s editor tabs after preserving their changes, then review again., repository=wire content, buffers=[(f0377467-dffb-4136-8993-60ec0c2cb2ad, wire content, false), (db4d7b63-c914-48d8-aa41-eb780d455c4d, wire content, false)] - - package:matcher expect - package:flutter_test/src/widget_tester.dart 473:18 expect - test/src/nextcloud_workspace_test.dart 85:7 main. - -00:08 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ -The following MissingPluginException was thrown running a test: -MissingPluginException(No implementation found for method state on channel yaru_window) - -When the exception was thrown, this was the stack: -#0 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:364:7) - -#1 MethodChannel.invokeMapMethod (package:flutter/src/services/platform_channel.dart:566:43) - -#2 YaruWindowMethodChannel._invokeMapMethod. (package:yaru_window_platform_interface/src/method_channel.dart:76:15) - -#3 YaruWindowState.YaruWindowState.fromJson (package:yaru_window_platform_interface/src/state.dart:22:3) - -#4 YaruWindowInstance.states (package:yaru_window/src/window.dart:216:11) - - -The test description was: - selecting and confirming candidate binds draft and retains newer edits -════════════════════════════════════════════════════════════════════════════════════════════════════ -00:08 +0 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] - Test failed. See exception logs above. - The test description was: selecting and confirming candidate binds draft and retains newer edits - -══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ -The following MissingPluginException was thrown running a test (but after the test had completed): -MissingPluginException(No implementation found for method state on channel yaru_window) - -When the exception was thrown, this was the stack: -#0 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:364:7) - -#1 MethodChannel.invokeMapMethod (package:flutter/src/services/platform_channel.dart:566:43) - -#2 YaruWindowMethodChannel._invokeMapMethod. (package:yaru_window_platform_interface/src/method_channel.dart:76:15) - -#3 YaruWindowState.YaruWindowState.fromJson (package:yaru_window_platform_interface/src/state.dart:22:3) - -#4 YaruWindowInstance.states (package:yaru_window/src/window.dart:216:11) - -════════════════════════════════════════════════════════════════════════════════════════════════════ - Test failed. See exception logs above. - The test description was: selecting and confirming candidate binds draft and retains newer edits - -══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ -The following TestFailure was thrown running a test (but after the test had completed): -Expected: <10> - Actual: -null - -When the exception was thrown, this was the stack: -#0 fail (package:matcher/src/expect/expect.dart:187:31) -#1 _expect (package:matcher/src/expect/expect.dart:182:3) -#2 expect (package:matcher/src/expect/expect.dart:65:3) -#3 expect (package:flutter_test/src/widget_tester.dart:473:18) -#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:807:7) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - - -(elided one frame from package:stack_trace) -════════════════════════════════════════════════════════════════════════════════════════════════════ - Test failed. See exception logs above. - The test description was: selecting and confirming candidate binds draft and retains newer edits - -00:08 +0 -2: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits - /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab diff --git a/delivery/nextcloud-explicit-adoption/evidence/boundary-debug2.log b/delivery/nextcloud-explicit-adoption/evidence/boundary-debug2.log deleted file mode 100644 index 949b41a6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/boundary-debug2.log +++ /dev/null @@ -1,48 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:06 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:06 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab [E] - Expected: 'unsaved candidate edit' - Actual: 'wire content' - Which: is different. - Expected: unsaved ca ... - Actual: wire conte ... - ^ - Differ at offset 0 - trace=[[(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, true)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, true)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, unsaved candidate edit, 2, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, wire content, 3, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, wire content, 3, false)], [(d52dc052-73e8-49dc-856f-12b696acab27, wire content, 1, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, wire content, 3, false)]], message=Close the downloaded candidate’s editor tabs after preserving their changes, then review again., repository=wire content, buffers=[(d52dc052-73e8-49dc-856f-12b696acab27, wire content, false), (a1c68c96-b2fc-4dff-86f8-a12a53c018a2, wire content, false)] - - package:matcher expect - package:flutter_test/src/widget_tester.dart 473:18 expect - test/src/nextcloud_workspace_test.dart 87:7 main. - -00:08 +0 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ -The following TestFailure was thrown running a test: -Expected: <10> - Actual: -null - -When the exception was thrown, this was the stack: -#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:815:7) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - - -(elided one frame from package:stack_trace) - -This was caught by the test expectation on the following line: - file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart line 815 -The test description was: - selecting and confirming candidate binds draft and retains newer edits -════════════════════════════════════════════════════════════════════════════════════════════════════ -00:08 +0 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] - Test failed. See exception logs above. - The test description was: selecting and confirming candidate binds draft and retains newer edits - -00:08 +0 -2: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits - /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab diff --git a/delivery/nextcloud-explicit-adoption/evidence/boundary-debug3.log b/delivery/nextcloud-explicit-adoption/evidence/boundary-debug3.log deleted file mode 100644 index 2d8a8c77..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/boundary-debug3.log +++ /dev/null @@ -1,32 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:12 +1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ -The following TestFailure was thrown running a test: -Expected: <10> - Actual: -null - -When the exception was thrown, this was the stack: -#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:826:7) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - - -(elided one frame from package:stack_trace) - -This was caught by the test expectation on the following line: - file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart line 826 -The test description was: - selecting and confirming candidate binds draft and retains newer edits -════════════════════════════════════════════════════════════════════════════════════════════════════ -00:15 +1 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] - Test failed. See exception logs above. - The test description was: selecting and confirming candidate binds draft and retains newer edits - -00:16 +1 -1: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits diff --git a/delivery/nextcloud-explicit-adoption/evidence/browser-login.json b/delivery/nextcloud-explicit-adoption/evidence/browser-login.json deleted file mode 100644 index bcfcf2d4..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/browser-login.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "ok": true, - "externalBrowserOpened": true, - "pending404": true, - "browserGrant": true, - "success200Once": true -} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/candidate-tab-debug.log b/delivery/nextcloud-explicit-adoption/evidence/candidate-tab-debug.log deleted file mode 100644 index 4a948bd5..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/candidate-tab-debug.log +++ /dev/null @@ -1,19 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -00:00 +0: an unsaved independently opened candidate blocks consolidation without orphaning its tab -00:00 +0 -1: an unsaved independently opened candidate blocks consolidation without orphaning its tab [E] - Expected: 'unsaved candidate edit' - Actual: 'wire content' - Which: is different. - Expected: unsaved ca ... - Actual: wire conte ... - ^ - Differ at offset 0 - - package:matcher expect - package:flutter_test/src/widget_tester.dart 473:18 expect - test/src/nextcloud_workspace_test.dart 85:7 main. - -00:00 +0 -1: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab diff --git a/delivery/nextcloud-explicit-adoption/evidence/confirmation-races-final.log b/delivery/nextcloud-explicit-adoption/evidence/confirmation-races-final.log deleted file mode 100644 index d41d9e42..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/confirmation-races-final.log +++ /dev/null @@ -1,35 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review -00:01 +1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab -00:02 +2: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes -00:02 +3: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save -00:02 +4: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) -00:02 +5: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) -00:02 +6: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) -00:02 +7: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) -00:02 +8: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart -00:03 +9: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation -00:03 +10: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox -00:03 +11: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit -00:03 +12: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session -00:03 +13: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart -00:05 +13: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -00:06 +14: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -00:06 +15: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft -00:06 +16: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -00:07 +17: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft -00:07 +18: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -00:07 +19: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work -00:07 +20: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work -00:07 +21: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work -00:07 +22: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work -00:08 +23: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work -00:08 +24: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET -00:08 +25: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET -00:08 +26: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET -00:08 +27: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit -00:08 +28: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment -00:08 +29: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor -00:08 +30: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity -00:09 +31: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement -00:09 +32: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/creation-policy.log b/delivery/nextcloud-explicit-adoption/evidence/creation-policy.log deleted file mode 100644 index e01fec23..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/creation-policy.log +++ /dev/null @@ -1,53 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart -00:00 +0: exact discovery across refresh reconnect and restart cannot bind or mutate draft -00:01 +0 -1: exact discovery across refresh reconnect and restart cannot bind or mutate draft [E] - Converting object to an encodable object failed: _Map len:1 - dart:convert jsonEncode - test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. - -00:01 +0 -1: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -00:01 +0 -2: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft [E] - Converting object to an encodable object failed: _Map len:1 - dart:convert jsonEncode - test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. - -00:01 +0 -2: multiple discovery across refresh reconnect and restart cannot bind or mutate draft -00:01 +0 -3: multiple discovery across refresh reconnect and restart cannot bind or mutate draft [E] - Converting object to an encodable object failed: _Map len:2 - dart:convert jsonEncode - test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. - -00:01 +0 -3: none discovery across refresh reconnect and restart cannot bind or mutate draft -00:01 +1 -3: empty discovery across refresh reconnect and restart cannot bind or mutate draft -00:01 +1 -4: empty discovery across refresh reconnect and restart cannot bind or mutate draft [E] - Converting object to an encodable object failed: _Map len:1 - dart:convert jsonEncode - test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. - -00:01 +1 -4: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -00:02 +1 -5: other actor discovery across refresh reconnect and restart cannot bind or mutate draft [E] - Converting object to an encodable object failed: _Map len:1 - dart:convert jsonEncode - test/src/nextcloud_notes/notes_creation_policy_test.dart 139:24 main. - -00:02 +1 -5: confirmation rejects content candidate and retains unresolved work -00:02 +2 -5: confirmation rejects readonly candidate and retains unresolved work -00:02 +3 -5: confirmation rejects error candidate and retains unresolved work -00:02 +4 -5: confirmation rejects deleted candidate and retains unresolved work -00:02 +5 -5: confirmation rejects unavailable candidate and retains unresolved work -00:02 +6 -5: confirmation revalidates local edit during authenticated GET -00:02 +7 -5: confirmation revalidates account removal during authenticated GET -00:02 +8 -5: confirmation revalidates repeat confirmation during authenticated GET -00:03 +9 -5: binding protects downloaded candidate with durable edit -00:03 +10 -5: binding protects downloaded candidate with pending attachment -00:03 +11 -5: binding protects downloaded candidate with open editor -00:03 +12 -5: failed adoption transaction rolls back binding and downloaded identity -00:03 +13 -5: separate-note decision is durable and repeated confirmation makes one replacement -00:03 +14 -5: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft - /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft - /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft - /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft - /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft diff --git a/delivery/nextcloud-explicit-adoption/evidence/credential-policy.log b/delivery/nextcloud-explicit-adoption/evidence/credential-policy.log deleted file mode 100644 index e69de29b..00000000 diff --git a/delivery/nextcloud-explicit-adoption/evidence/credential-revocation.json b/delivery/nextcloud-explicit-adoption/evidence/credential-revocation.json deleted file mode 100644 index fb1aaf2e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/credential-revocation.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "ok": true, - "accounts": { - "6.1.0": { - "disposableAccountDeleted": true, - "allAccountGrantsRevoked": true, - "notesApiAfterRemoval": 401 - }, - "6.0.1": { - "disposableAccountDeleted": true, - "allAccountGrantsRevoked": true, - "notesApiAfterRemoval": 401 - } - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/customized.pdf b/delivery/nextcloud-explicit-adoption/evidence/customized.pdf deleted file mode 100644 index 47ff331289424c4a594d89d46a16577b74a50dd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 72063 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/488e2153188474157043755ba66f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/488e2153188474157043755ba66f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg deleted file mode 100644 index d79894e2..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/488e2153188474157043755ba66f2fb4b05a1a82bcab3b423ff6b0e86124f6a7.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/4fe9a6f229ceb15e135a8b5795f55403dcb3dce2b04a0e8c6796d266009157de.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/4fe9a6f229ceb15e135a8b5795f55403dcb3dce2b04a0e8c6796d266009157de.svg deleted file mode 100644 index 1dfc4c93..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/4fe9a6f229ceb15e135a8b5795f55403dcb3dce2b04a0e8c6796d266009157de.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/5d7bd89ebd4399d5aa15ea380853fefa19817867c950e5d788f19f4cc63e1272.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/5d7bd89ebd4399d5aa15ea380853fefa19817867c950e5d788f19f4cc63e1272.svg deleted file mode 100644 index 2e5d08b6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/5d7bd89ebd4399d5aa15ea380853fefa19817867c950e5d788f19f4cc63e1272.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png deleted file mode 100644 index b69f50189d2e28fd0696393cdf0213835ebf83d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10479 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
(Ecjv z-SAB%pA*xx{Qg82w6c*4c|k?Qcit!EP`Y++X)8hXRsQ(M=|If@O c4MW}_dz3p(Z-0#aBZH%=q@`H-#wzr`02XVqlmGw# diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg deleted file mode 100644 index 1ed6e56e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg +++ /dev/null @@ -1 +0,0 @@ -BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png deleted file mode 100644 index a1a64ca1f311b06e2effafd75d388116ab40b038..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10868 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png deleted file mode 100644 index 5807f943d68afc0e510b8fac8be4814486b7b817..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8102 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f6f894eb8be03336e2e11b946d7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f6f894eb8be03336e2e11b946d7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg deleted file mode 100644 index 8112ef9d..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.assets/f6f894eb8be03336e2e11b946d7b66fc4c3afaf91a0c3ce7c33e46c11141916e.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.html b/delivery/nextcloud-explicit-adoption/evidence/dark-assets.html deleted file mode 100644 index 21034d5c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/dark-assets.html +++ /dev/null @@ -1,22 +0,0 @@ - -Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
-
    -
  1. -

    A structured footnote with a return link.

    -

    ↩

    -
  2. -
-
diff --git a/delivery/nextcloud-explicit-adoption/evidence/dependency-lock.log b/delivery/nextcloud-explicit-adoption/evidence/dependency-lock.log deleted file mode 100644 index 2bb18ee4..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/dependency-lock.log +++ /dev/null @@ -1,63 +0,0 @@ -Resolving dependencies... -Downloading packages... - _fe_analyzer_shared 99.0.0 (109.0.0 available) - analyzer 12.1.0 (14.5.0 available) - animated_vector 0.2.2 (0.2.3 available) - animated_vector_annotations 0.2.2 (0.3.0 available) - archive 4.0.9 (4.3.0 available) - assorted_layout_widgets 11.0.0 (13.1.0 available) - clock 1.1.2 (1.1.3 available) - code_assets 1.2.1 (2.1.0 available) - cross_file 0.3.5+4 (0.4.0 available) - dbus 0.7.13 (0.8.0 available) - file_selector_android 0.5.2+8 (0.5.2+11 available) - file_selector_ios 0.5.3+5 (0.5.3+6 available) - file_selector_linux 0.9.4 (0.9.4+1 available) - file_selector_macos 0.9.5 (0.9.5+1 available) - file_selector_windows 0.9.3+5 (0.9.3+6 available) - flutter_riverpod 3.3.2 (3.4.3 available) - frontend_server_client 4.0.0 (4.1.0 available) - glob 2.1.3 (2.2.0 available) - go_router 17.3.0 (18.0.2 available) - gsettings 0.2.8 (0.2.9 available) - html 0.15.6 (0.15.7 available) - image 4.9.1 (4.10.1 available) - io 1.0.5 (1.1.0 available) - jni 1.0.0 (1.1.0 available) - jni_flutter 1.0.1 (1.0.4+1 available) - material_color_utilities 0.13.0 (0.13.1 available) - mime 2.0.0 (2.1.0 available) - native_toolchain_c 0.19.3 (0.19.5 available) - objective_c 9.4.1 (9.6.2 available) - package_config 2.2.0 (3.0.0 available) - package_info_plus 10.2.1 (10.2.2 available) - petitparser 7.0.2 (7.1.0 available) - platform 3.1.6 (3.2.0 available) - pool 1.5.2 (1.5.3 available) - posix 6.5.0 (6.5.2 available) - pub_semver 2.2.0 (2.2.1 available) - riverpod 3.3.2 (3.4.3 available) - source_maps 0.10.13 (0.10.14 available) - stack_trace 1.12.1 (1.12.2 available) - test 1.31.1 (1.32.0 available) - test_api 0.7.12 (0.7.14 available) - test_core 0.6.18 (0.6.20 available) - ubuntu_localizations 0.5.2+3 (0.5.2+4 available) - unorm_dart 0.3.2 (0.3.3 available) - url_launcher 6.3.2 (6.3.3 available) - url_launcher_android 6.3.32 (6.3.33 available) - url_launcher_ios 6.4.1 (6.4.2 available) - url_launcher_linux 3.2.2 (3.2.3 available) - url_launcher_macos 3.2.5 (3.2.6 available) - url_launcher_windows 3.1.5 (3.1.6 available) - vector_graphics 1.2.2 (1.2.3 available) - vector_graphics_compiler 1.2.6 (1.3.0 available) - vector_math 2.4.2 (2.4.3 available) - vm_service 15.2.0 (15.3.0 available) - win32 6.3.0 (6.4.0 available) - xml 7.0.1 (7.1.0 available) - yaml 3.1.3 (3.1.4 available) - yaru 10.2.0 (11.0.0 available) -Got dependencies! -58 packages have newer versions incompatible with dependency constraints. -Try `flutter pub outdated` for more information. diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused-before-renderer.log b/delivery/nextcloud-explicit-adoption/evidence/focused-before-renderer.log deleted file mode 100644 index 70439d01..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/focused-before-renderer.log +++ /dev/null @@ -1,232 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -00:01 +1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -00:01 +2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft -00:01 +3: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -00:02 +4: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft -00:02 +5: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -00:02 +6: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work -00:02 +7: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work -00:03 +8: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work -00:03 +9: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work -00:03 +10: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work -00:03 +11: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET -00:03 +12: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET -00:03 +13: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET -00:03 +14: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit -00:04 +15: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment -00:04 +16: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor -00:04 +17: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity -00:04 +18: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement -00:04 +19: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart -00:05 +19: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt -00:06 +20: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption -00:06 +21: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -00:06 +22: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary -00:06 +23: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment -00:06 +24: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title -00:06 +25: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category -00:07 +26: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment -00:07 +27: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart -00:07 +28: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment -00:07 +29: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment -00:07 +30: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -00:07 +31: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -00:08 +32: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -00:08 +33: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -00:08 +34: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit -00:08 +35: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit -00:08 +36: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -00:08 +37: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice -00:08 +38: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note -00:08 +39: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -00:09 +40: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions -00:09 +41: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -00:09 +42: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:09 +43: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -00:09 +44: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:09 +45: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -00:09 +46: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -00:09 +47: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:10 +48: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:10 +49: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -00:10 +50: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -00:10 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -00:10 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -00:10 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -00:10 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -00:10 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -00:10 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -00:10 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -00:11 +58: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -00:11 +59: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -00:11 +60: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename -00:11 +61: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -00:11 +62: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -00:11 +63: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -00:12 +64: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -00:12 +65: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -00:12 +66: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -00:12 +67: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -00:12 +68: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -00:12 +69: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -00:12 +70: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -00:12 +71: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -00:13 +72: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -00:13 +73: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -00:13 +74: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -00:13 +75: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -00:13 +76: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -00:13 +77: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -00:13 +78: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -00:13 +79: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart -00:14 +79: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice -00:14 +80: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes -00:14 +81: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice -00:14 +82: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart -00:15 +82: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty -00:15 +83: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty -00:15 +84: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty -00:15 +85: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body -00:15 +86: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null -00:15 +87: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 -00:15 +88: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file -00:15 +89: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file -00:15 +90: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file -00:15 +91: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file -00:15 +92: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call -00:15 +93: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin -00:15 +94: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched -00:15 +95: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart -00:16 +95: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations -00:16 +96: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions -00:16 +97: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations -00:16 +98: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart -00:17 +98: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated -00:17 +99: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated -00:17 +100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated -00:17 +101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated -00:17 +102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated -00:17 +103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated -00:17 +104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated -00:17 +105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated -00:17 +106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request -00:17 +107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible -00:17 +108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content -00:17 +109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match -00:17 +110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted -00:17 +111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state -00:17 +112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility -00:17 +113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility -00:17 +114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility -00:17 +115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility -00:17 +116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility -00:17 +117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility -00:17 +118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility -00:17 +119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility -00:17 +120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects -00:17 +121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids -00:17 +122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body -00:17 +123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence -00:17 +124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path -00:17 +125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note -00:17 +126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials -00:17 +127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 -00:17 +128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references -00:17 +129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference -00:17 +130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update -00:17 +131: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart -00:18 +131: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields -00:18 +132: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 -00:18 +133: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 -00:18 +134: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 -00:18 +135: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 -00:18 +136: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null -00:18 +137: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version -00:18 +138: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed -00:18 +139: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 -00:18 +140: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately -00:18 +141: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers -00:18 +142: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin -00:18 +143: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 -00:18 +144: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart -00:19 +144: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:20 +145: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback -00:20 +146: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -00:20 +147: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error -00:20 +148: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token -00:20 +149: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails -00:20 +150: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache -00:20 +151: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox -00:20 +152: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret -00:20 +153: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry -00:20 +154: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart -00:21 +154: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication -00:21 +155: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path -00:21 +156: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content -00:21 +157: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document -00:21 +158: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart -00:22 +158: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:23 +159: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions -00:24 +160: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart -00:24 +160: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes -00:24 +161: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs -00:24 +162: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin -00:24 +163: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success -00:24 +164: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser -00:24 +165: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll -00:24 +166: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll -00:24 +167: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password -00:24 +168: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling -00:24 +169: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints -00:24 +170: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors -00:24 +171: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account -00:24 +172: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics -00:24 +173: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart -00:26 +173: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver -00:26 +174: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider -00:27 +175: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider -00:27 +176: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files -00:27 +177: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text -00:28 +178: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations -00:28 +179: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads -00:28 +180: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy -00:28 +181: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy -00:28 +182: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:29 +182: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:34 +183: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:37 +184: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones -00:38 +185: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -00:39 +186: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -00:39 +187: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -00:40 +188: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -00:40 +189: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -00:41 +190: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -00:42 +191: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -00:42 +192: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -00:43 +193: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -00:43 +194: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -00:43 +195: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:44 +196: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -00:44 +197: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -00:44 +198: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart -00:45 +198: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace -00:46 +199: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret -00:46 +200: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string -00:46 +201: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls -00:46 +202: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback -00:46 +203: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -00:48 +203: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review -00:48 +204: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab -00:48 +205: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes -00:48 +206: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save -00:49 +207: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) -00:49 +208: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) -00:49 +209: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) -00:49 +210: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) -00:49 +211: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart -00:49 +212: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation -00:49 +213: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox -00:50 +214: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit -00:50 +215: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session -00:50 +216: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused-final.log b/delivery/nextcloud-explicit-adoption/evidence/focused-final.log deleted file mode 100644 index 5b79843c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/focused-final.log +++ /dev/null @@ -1,232 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -00:05 +1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -00:06 +2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft -00:06 +3: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -00:07 +4: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft -00:07 +5: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -00:07 +6: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work -00:07 +7: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work -00:08 +8: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work -00:08 +9: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work -00:08 +10: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work -00:08 +11: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET -00:08 +12: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET -00:08 +13: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET -00:09 +14: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit -00:09 +15: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment -00:09 +16: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor -00:09 +17: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity -00:09 +18: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement -00:09 +19: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart -00:10 +19: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt -00:11 +20: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption -00:12 +21: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -00:12 +22: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary -00:12 +23: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment -00:12 +24: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title -00:12 +25: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category -00:12 +26: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment -00:13 +27: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart -00:13 +28: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment -00:13 +29: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment -00:14 +30: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -00:14 +31: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -00:14 +32: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -00:14 +33: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -00:14 +34: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit -00:14 +35: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit -00:14 +36: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -00:14 +37: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice -00:15 +38: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note -00:15 +39: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -00:15 +40: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions -00:15 +41: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -00:15 +42: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:15 +43: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -00:15 +44: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:15 +45: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -00:15 +46: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -00:16 +47: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:16 +48: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:16 +49: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -00:16 +50: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -00:16 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -00:16 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -00:16 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -00:16 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -00:17 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -00:17 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -00:17 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -00:17 +58: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -00:17 +59: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -00:17 +60: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename -00:18 +61: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -00:18 +62: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -00:18 +63: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -00:18 +64: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -00:18 +65: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -00:18 +66: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -00:18 +67: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -00:18 +68: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -00:19 +69: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -00:19 +70: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -00:19 +71: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -00:19 +72: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -00:19 +73: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -00:20 +74: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -00:20 +75: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -00:20 +76: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -00:20 +77: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -00:20 +78: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -00:20 +79: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart -00:21 +79: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice -00:21 +80: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes -00:21 +81: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice -00:21 +82: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart -00:23 +82: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty -00:23 +83: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty -00:23 +84: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty -00:23 +85: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body -00:24 +86: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null -00:24 +87: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 -00:24 +88: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file -00:24 +89: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file -00:24 +90: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file -00:24 +91: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file -00:24 +92: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call -00:24 +93: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin -00:24 +94: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched -00:24 +95: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart -00:25 +95: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations -00:25 +96: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions -00:25 +97: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations -00:25 +98: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart -00:26 +98: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated -00:27 +99: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated -00:27 +100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated -00:27 +101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated -00:27 +102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated -00:27 +103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated -00:27 +104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated -00:28 +105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated -00:28 +106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request -00:28 +107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible -00:28 +108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content -00:28 +109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match -00:28 +110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted -00:28 +111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state -00:28 +112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility -00:28 +113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility -00:28 +114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility -00:28 +115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility -00:28 +116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility -00:28 +117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility -00:28 +118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility -00:28 +119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility -00:28 +120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects -00:28 +121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids -00:28 +122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body -00:28 +123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence -00:28 +124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path -00:28 +125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note -00:28 +126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials -00:28 +127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 -00:28 +128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references -00:28 +129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference -00:28 +130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update -00:28 +131: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart -00:29 +131: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields -00:29 +132: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 -00:29 +133: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 -00:29 +134: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 -00:29 +135: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 -00:29 +136: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null -00:29 +137: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version -00:29 +138: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed -00:29 +139: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 -00:29 +140: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately -00:29 +141: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers -00:29 +142: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin -00:29 +143: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 -00:29 +144: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart -00:29 +144: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:31 +145: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback -00:31 +146: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -00:31 +147: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error -00:31 +148: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token -00:32 +149: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails -00:32 +150: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache -00:32 +151: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox -00:32 +152: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret -00:32 +153: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry -00:32 +154: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart -00:34 +154: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication -00:34 +155: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path -00:34 +156: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content -00:34 +157: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document -00:34 +158: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart -00:36 +158: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:37 +159: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions -00:38 +160: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart -00:39 +160: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes -00:39 +161: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs -00:39 +162: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin -00:39 +163: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success -00:40 +164: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser -00:40 +165: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll -00:40 +166: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll -00:40 +167: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password -00:40 +168: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling -00:40 +169: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints -00:40 +170: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors -00:40 +171: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account -00:40 +172: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics -00:40 +173: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart -00:42 +173: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver -00:43 +174: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider -00:43 +175: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider -00:43 +176: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files -00:43 +177: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text -00:46 +178: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations -00:46 +179: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads -00:46 +180: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy -00:46 +181: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy -00:46 +182: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:50 +182: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:52 +183: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:56 +184: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones -00:57 +185: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -00:58 +186: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -00:58 +187: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -00:58 +188: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -00:59 +189: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -00:59 +190: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -01:00 +191: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -01:04 +192: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -01:04 +193: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -01:05 +194: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -01:05 +195: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -01:11 +196: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -01:11 +197: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -01:12 +198: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart -01:12 +198: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace -01:12 +199: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret -01:12 +200: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string -01:12 +201: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls -01:12 +202: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback -01:13 +203: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -01:15 +203: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review -01:17 +204: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab -01:17 +205: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes -01:17 +206: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save -01:17 +207: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) -01:17 +208: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) -01:17 +209: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) -01:18 +210: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) -01:18 +211: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart -01:18 +212: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation -01:18 +213: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox -01:18 +214: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit -01:18 +215: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session -01:18 +216: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused-initial.log b/delivery/nextcloud-explicit-adoption/evidence/focused-initial.log deleted file mode 100644 index d7791699..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/focused-initial.log +++ /dev/null @@ -1,258 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields -00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 -00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 -00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 -00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 -00:00 +5: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null -00:00 +6: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version -00:00 +7: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed -00:00 +8: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 -00:00 +9: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately -00:00 +10: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers -00:00 +11: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin -00:00 +12: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 -00:01 +13: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:04 +14: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:04 +15: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:04 +16: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:04 +17: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:11 +18: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:11 +19: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:11 +20: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:11 +21: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:11 +22: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:11 +23: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:11 +24: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:11 +25: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:11 +26: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:11 +27: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry -00:11 +28: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions -00:12 +29: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes -00:12 +30: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs -00:12 +31: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin -00:12 +32: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success -00:12 +33: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser -00:12 +34: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll -00:12 +35: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll -00:12 +36: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password -00:12 +37: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling -00:12 +38: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints -00:12 +39: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors -00:12 +40: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account -00:12 +41: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics -00:14 +42: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver -00:14 +43: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider -00:14 +44: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider -00:14 +45: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files -00:14 +46: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text -00:24 +47: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:24 +48: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:24 +49: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:24 +50: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:24 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:24 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:24 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:24 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:24 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:24 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:24 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:30 +57 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:30 +57 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab [E] - Expected: 'unsaved candidate edit' - Actual: 'wire content' - Which: is different. - Expected: unsaved ca ... - Actual: wire conte ... - ^ - Differ at offset 0 - - package:matcher expect - package:flutter_test/src/widget_tester.dart 473:18 expect - test/src/nextcloud_workspace_test.dart 83:7 main. - -00:31 +58 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:31 +59 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:31 +60 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:31 +61 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:31 +62 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:31 +63 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:31 +64 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:32 +65 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:32 +66 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:32 +67 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:32 +68 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:33 +69 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -00:33 +70 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones -00:33 +71 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -00:33 +72 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -00:34 +73 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -00:34 +74 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -00:34 +75 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -00:34 +76 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -00:34 +77 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -00:35 +78 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -00:35 +79 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -00:35 +80 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work -00:35 +81 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -00:35 +82 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -00:35 +83 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -00:35 +84 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -00:35 +85 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET -00:35 +86 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -00:36 +87 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -00:36 +88 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -00:36 +89 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit -00:36 +90 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -00:36 +91 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -00:36 +92 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -00:36 +93 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -00:36 +94 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement -00:36 +95 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -00:41 +96 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt -00:41 +97 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -00:41 +98 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -00:41 +99 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -00:42 +100 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -00:42 +101 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -00:42 +102 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment -00:42 +103 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -00:42 +104 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -00:42 +105 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category -00:42 +106 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:43 +107 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:43 +108 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:43 +109 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:43 +110 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:43 +111 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:43 +112 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:44 +113 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:44 +114 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:44 +115 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:44 +116 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ -The following TestFailure was thrown running a test: -Expected: <10> - Actual: - -When the exception was thrown, this was the stack: -#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:805:7) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - - -(elided one frame from package:stack_trace) - -This was caught by the test expectation on the following line: - file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart line 805 -The test description was: - selecting and confirming candidate binds draft and retains newer edits -════════════════════════════════════════════════════════════════════════════════════════════════════ -00:44 +116 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -00:44 +116 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] - Test failed. See exception logs above. - The test description was: selecting and confirming candidate binds draft and retains newer edits - -00:44 +117 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -00:44 +118 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -00:44 +119 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -00:44 +120 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -00:44 +121 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -00:45 +122 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -00:45 +123 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -00:45 +124 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:45 +125 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:45 +126 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:45 +127 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:47 +128 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:47 +129 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:47 +130 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:47 +131 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body -00:47 +132 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -00:47 +133 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -00:47 +134 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -00:47 +135 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file -00:47 +136 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:47 +137 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:47 +138 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:47 +139 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:47 +140 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:47 +141 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:47 +142 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:47 +143 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -00:48 +144 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -00:48 +145 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -00:48 +146 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -00:48 +147 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated -00:48 +148 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -00:48 +149 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -00:48 +150 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -00:48 +151 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -00:48 +152 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated -00:48 +153 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:48 +154 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +155 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +156 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +157 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +158 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +159 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +160 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +161 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +162 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +163 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +164 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +165 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:49 +166 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility -00:49 +167 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +168 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +169 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +170 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +171 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +172 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +173 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +174 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +175 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +176 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +177 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +178 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +179 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +180 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +181 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +182 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:49 +183 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -00:49 +184 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -00:49 +185 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -00:49 +186 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -00:49 +187 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -00:49 +188 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -00:49 +189 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -00:49 +190 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -00:49 +191 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -00:50 +192 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -00:50 +193 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -00:50 +194 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename -00:50 +195 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -00:50 +196 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -00:51 +197 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -00:51 +198 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -00:51 +199 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -00:51 +200 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -00:51 +201 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -00:51 +202 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -00:52 +203 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -00:52 +204 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -00:52 +205 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -00:52 +206 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -00:52 +207 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -00:52 +208 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -00:53 +209 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -00:53 +210 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -00:53 +211 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -00:53 +212 -2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -00:53 +213 -2: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits - /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused-serial.log b/delivery/nextcloud-explicit-adoption/evidence/focused-serial.log deleted file mode 100644 index 840efc6b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/focused-serial.log +++ /dev/null @@ -1,494 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields -00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 -00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 -00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 -00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 -00:00 +5: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null -00:00 +6: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version -00:00 +7: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed -00:00 +8: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 -00:00 +9: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately -00:00 +10: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers -00:00 +11: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin -00:00 +12: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 -00:00 +13: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart -00:01 +13: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:05 +14: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback -00:05 +15: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -00:05 +16: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error -00:05 +17: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token -00:05 +18: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails -00:05 +19: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache -00:06 +20: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox -00:06 +21: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret -00:06 +22: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry -00:06 +23: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart -00:07 +23: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication -00:07 +24: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path -00:07 +25: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content -00:07 +26: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document -00:07 +27: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart -00:12 +27: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -00:13 +28: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions -00:13 +29: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart -00:14 +29: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes -00:14 +30: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs -00:14 +31: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin -00:14 +32: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success -00:14 +33: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser -00:14 +34: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll -00:14 +35: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll -00:14 +36: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password -00:14 +37: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling -00:14 +38: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints -00:14 +39: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors -00:14 +40: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account -00:14 +41: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics -00:14 +42: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart -00:16 +42: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver -00:20 +43: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider -00:20 +44: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider -00:20 +45: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files -00:20 +46: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text -00:21 +47: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations -00:21 +48: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads -00:21 +49: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy -00:21 +50: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy -00:21 +51: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:26 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:27 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -00:34 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones -00:35 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -00:36 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -00:36 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -00:37 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -00:38 +58: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -00:38 +59: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -00:40 +60: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -00:40 +61: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -00:41 +62: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -00:41 +63: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -00:41 +64: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -00:42 +65: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -00:42 +66: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -00:42 +67: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart -00:43 +67: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace -00:43 +68: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret -00:43 +69: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string -00:43 +70: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls -00:43 +71: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback -00:43 +72: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -00:44 +72: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab -00:50 +73: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes -00:52 +74: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save -00:52 +75: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) -00:52 +76: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) -00:53 +77: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) -00:53 +78: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) -00:53 +79: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart -00:53 +80: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation -00:53 +81: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox -00:53 +82: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit -00:53 +83: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session -00:54 +84: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart -00:54 +84: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -00:56 +85: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -00:57 +86: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft -00:57 +87: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -00:57 +88: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft -00:58 +89: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -00:58 +90: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work -00:58 +91: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work -00:58 +92: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work -00:58 +93: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work -00:58 +94: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work -00:58 +95: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET -00:59 +96: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET -00:59 +97: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET -00:59 +98: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit -00:59 +99: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment -00:59 +100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor -00:59 +101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity -00:59 +102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement -01:00 +103: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart -01:01 +103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt -01:07 +104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption -01:07 +105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -01:07 +106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary -01:07 +107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment -01:08 +108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title -01:08 +109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category -01:08 +110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment -01:08 +111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart -01:08 +112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment -01:09 +113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment -01:09 +114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:09 +115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -01:09 +116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:09 +117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -01:10 +118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit -01:10 +119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit -01:10 +120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -01:10 +121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice -01:10 +122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note -01:10 +123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -01:10 +124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions -01:11 +125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -01:11 +126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -01:11 +127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -01:11 +128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -01:11 +129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -01:11 +130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -01:11 +131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -01:11 +132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -01:12 +133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -01:12 +134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -01:12 +135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -01:12 +136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -01:12 +137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -01:12 +138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -01:12 +139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -01:12 +140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -01:12 +141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -01:13 +142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -01:13 +143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -01:13 +144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename -01:14 +145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -01:14 +146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -01:14 +147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -01:14 +148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -01:14 +149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -01:14 +150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -01:14 +151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -01:15 +152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -01:15 +153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -01:15 +154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -01:15 +155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -01:15 +156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -01:15 +157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -01:16 +158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -01:16 +159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -01:16 +160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -01:16 +161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -01:16 +162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -01:16 +163: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart -01:17 +163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice -01:17 +164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes -01:17 +165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice -01:17 +166: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart -01:18 +166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty -01:20 +167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty -01:20 +168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty -01:20 +169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body -01:20 +170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null -01:20 +171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 -01:20 +172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file -01:20 +173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file -01:20 +174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file -01:20 +175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file -01:20 +176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call -01:20 +177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin -01:20 +178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched -01:21 +179: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart -01:21 +179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations -01:21 +180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions -01:21 +181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations -01:21 +182: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart -01:22 +182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated -01:23 +183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated -01:23 +184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated -01:23 +185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated -01:23 +186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated -01:23 +187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated -01:23 +188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated -01:23 +189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated -01:23 +190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request -01:23 +191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible -01:23 +192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content -01:23 +193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match -01:23 +194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted -01:23 +195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state -01:23 +196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility -01:23 +197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility -01:23 +198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility -01:23 +199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility -01:23 +200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility -01:23 +201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility -01:23 +202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility -01:23 +203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility -01:23 +204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects -01:23 +205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids -01:23 +206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body -01:23 +207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence -01:23 +208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path -01:23 +209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note -01:23 +210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials -01:23 +211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 -01:23 +212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references -01:23 +213: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference -01:23 +214: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update -01:23 +215: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart -01:24 +215: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces -01:26 +216: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark -01:26 +217: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync -01:26 +218: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces -01:26 +219: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog -01:26 +220: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present -01:26 +221: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging -01:27 +222: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface -01:27 +223: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body -01:27 +224: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters -01:27 +225: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components -01:27 +226: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers -01:27 +227: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface -01:27 +228: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry -01:27 +229: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary -01:27 +230: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer -01:27 +231: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting -01:27 +232: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI -01:27 +233: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text -01:27 +234: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration -01:27 +235: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR -01:27 +236: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface -01:27 +237: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography -01:27 +238: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style -01:27 +239: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives -01:27 +240: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries -01:27 +241: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind -01:27 +242: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces -01:27 +243: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu -01:27 +244: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback -01:27 +245: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup -01:27 +246: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel -01:27 +247: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter -01:27 +248: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu -01:27 +249: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor -01:27 +250: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors -01:27 +251: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation -01:27 +252: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row -01:27 +253: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model -01:27 +254: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row -01:27 +255: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation -01:27 +256: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span -01:28 +257: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout -01:28 +258: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts -01:28 +259: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls -01:28 +260: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds -01:28 +261: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog -01:28 +262: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release -01:28 +263: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome -01:28 +264: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart -01:29 +264: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings -01:29 +265: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded -01:29 +266: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales -01:29 +267: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale -01:29 +268: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes -01:29 +269: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs -01:29 +270: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders -01:29 +271: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct -01:29 +272: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed -01:29 +272 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed [E] - Expected: empty - Actual: [ - 'lib/l10n/app_it.arb: nextcloudUseServerNote unexpectedly still matches English', - 'lib/l10n/app_it.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English', - 'lib/l10n/app_it.arb: nextcloudExactCandidate unexpectedly still matches English', - 'lib/l10n/app_it.arb: nextcloudPossibleCandidate unexpectedly still matches English', - 'lib/l10n/app_it.arb: nextcloudSelectCandidate unexpectedly still matches English', - 'lib/l10n/app_it.arb: nextcloudCreateSeparate unexpectedly still matches English', - 'lib/l10n/app_it.arb: nextcloudCreateSeparateWarning unexpectedly still matches English', - 'lib/l10n/app_nb.arb: nextcloudUseServerNote unexpectedly still matches English', - 'lib/l10n/app_nb.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English', - 'lib/l10n/app_nb.arb: nextcloudExactCandidate unexpectedly still matches English', - 'lib/l10n/app_nb.arb: nextcloudPossibleCandidate unexpectedly still matches English', - 'lib/l10n/app_nb.arb: nextcloudSelectCandidate unexpectedly still matches English', - 'lib/l10n/app_nb.arb: nextcloudCreateSeparate unexpectedly still matches English', - 'lib/l10n/app_nb.arb: nextcloudCreateSeparateWarning unexpectedly still matches English', - 'lib/l10n/app_id.arb: nextcloudUseServerNote unexpectedly still matches English', - 'lib/l10n/app_id.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English', - 'lib/l10n/app_id.arb: nextcloudExactCandidate unexpectedly still matches English', - 'lib/l10n/app_id.arb: nextcloudPossibleCandidate unexpectedly still matches English', - 'lib/l10n/app_id.arb: nextcloudSelectCandidate unexpectedly still matches English', - 'lib/l10n/app_id.arb: nextcloudCreateSeparate unexpectedly still matches English', - 'lib/l10n/app_id.arb: nextcloudCreateSeparateWarning unexpectedly still matches English', - 'lib/l10n/app_hi.arb: nextcloudUseServerNote unexpectedly still matches English', - 'lib/l10n/app_hi.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English', - 'lib/l10n/app_hi.arb: nextcloudExactCandidate unexpectedly still matches English', - ... - ] - lib/l10n/app_it.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_it.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_it.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_it.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_it.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_it.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_it.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_nb.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_nb.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_nb.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_nb.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_nb.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_nb.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_nb.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_id.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_id.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_id.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_id.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_id.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_id.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_id.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_hi.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_hi.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_hi.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_hi.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_hi.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_hi.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_hi.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_fa.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_fa.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_fa.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_fa.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_fa.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_fa.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_fa.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_de.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_de.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_de.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_de.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_de.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_de.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_de.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_zh_CN.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_zh_CN.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_zh_CN.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_zh_CN.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_zh_CN.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_zh_CN.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_zh_CN.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_ar.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_ar.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_ar.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_ar.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_ar.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_ar.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_ar.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_pt_BR.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_pt_BR.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_pt_BR.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_pt_BR.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_pt_BR.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_pt_BR.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_pt_BR.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_ru.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_ru.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_ru.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_ru.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_ru.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_ru.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_ru.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_vi.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_vi.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_vi.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_vi.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_vi.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_vi.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_vi.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_nl.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_nl.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_nl.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_nl.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_nl.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_nl.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_nl.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_fr.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_fr.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_fr.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_fr.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_fr.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_fr.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_fr.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_es.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_es.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_es.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_es.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_es.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_es.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_es.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_ko.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_ko.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_ko.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_ko.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_ko.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_ko.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_ko.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_pl.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_pl.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_pl.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_pl.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_pl.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_pl.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_pl.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_zh.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_zh.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_zh.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_zh.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_zh.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_zh.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_zh.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_tr.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_tr.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_tr.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_tr.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_tr.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_tr.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_tr.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_ja.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_ja.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_ja.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_ja.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_ja.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_ja.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_ja.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_et.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_et.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_et.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_et.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_et.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_et.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_et.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_pt.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_pt.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_pt.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_pt.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_pt.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_pt.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_pt.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - lib/l10n/app_uk.arb: nextcloudUseServerNote unexpectedly still matches English - lib/l10n/app_uk.arb: nextcloudUseServerNoteExplanation unexpectedly still matches English - lib/l10n/app_uk.arb: nextcloudExactCandidate unexpectedly still matches English - lib/l10n/app_uk.arb: nextcloudPossibleCandidate unexpectedly still matches English - lib/l10n/app_uk.arb: nextcloudSelectCandidate unexpectedly still matches English - lib/l10n/app_uk.arb: nextcloudCreateSeparate unexpectedly still matches English - lib/l10n/app_uk.arb: nextcloudCreateSeparateWarning unexpectedly still matches English - - package:matcher expect - package:flutter_test/src/widget_tester.dart 473:18 expect - test/src/localization_audit_test.dart 339:5 main. - -01:29 +272 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys -01:29 +273 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale -01:29 +274 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose -01:29 +275 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches -01:29 +276 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form -01:29 +277 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural -01:29 +278 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology -01:29 +279 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations -01:29 +280 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits -01:29 +281 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English -01:29 +282 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog -01:30 +283 -1: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args -01:30 +284 -1: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed diff --git a/delivery/nextcloud-explicit-adoption/evidence/focused.log b/delivery/nextcloud-explicit-adoption/evidence/focused.log deleted file mode 100644 index 50cdebd9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/focused.log +++ /dev/null @@ -1,228 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields -00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 -00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 -00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 -00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 -00:00 +5: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null -00:00 +6: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version -00:00 +7: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed -00:00 +8: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 -00:00 +9: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately -00:00 +10: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers -00:00 +11: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin -00:00 +12: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 -00:03 +13: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:12 +14: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:12 +15: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:12 +16: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:12 +17: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:18 +18: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:18 +19: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +20: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +21: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +22: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +23: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +24: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +25: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +26: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +27: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +28: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +29: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +30: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +31: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:19 +32: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:27 +33: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:27 +34: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:27 +35: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:27 +36: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -00:28 +37: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text -00:29 +38: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback -00:29 +39: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback -00:29 +40: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads -00:29 +41: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -00:29 +42: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -00:29 +43: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -00:29 +44: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error -00:29 +45: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token -00:29 +46: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails -00:29 +47: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache -00:30 +48: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox -00:30 +49: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret -00:30 +50: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry -00:35 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:41 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:41 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:41 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:41 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -00:41 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -01:05 +56 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab -01:05 +56 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page [E] - TimeoutException after 0:00:30.000000: Test timed out after 30 seconds. See https://pub.dev/packages/test#timeouts - dart:isolate _RawReceivePort._handleMessage - - LateInitializationError: Local 'repository' has not been initialized. - dart:_internal LateError._throwLocalNotInitialized - test/src/nextcloud_notes_ui_test.dart main. - -01:13 +57 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:14 +58 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:14 +59 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:14 +60 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:14 +61 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:15 +62 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:15 +63 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:15 +64 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:16 +65 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:16 +66 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:16 +67 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:16 +68 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -01:19 +69 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -01:21 +70 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -01:21 +71 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -01:22 +72 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -01:22 +73 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -01:22 +74 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -01:23 +75 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -01:23 +76 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft -01:23 +77 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -01:23 +78 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -01:23 +79 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work -01:24 +80 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -01:24 +81 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -01:24 +82 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -01:24 +83 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -01:24 +84 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work -01:24 +85 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -01:25 +86 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -01:25 +87 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -01:25 +88 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET -01:25 +89 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -01:25 +90 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -01:25 +91 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -01:26 +92 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -01:26 +93 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity -01:26 +94 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -01:26 +95 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -01:26 +96 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -01:34 +97 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -01:35 +98 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -01:35 +99 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -01:35 +100 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -01:35 +101 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary -01:35 +102 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -01:36 +103 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -01:36 +104 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title -01:36 +105 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -01:36 +106 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -01:36 +107 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -01:36 +108 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart -01:37 +109 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -01:37 +110 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment -01:37 +111 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -01:38 +112 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment -01:38 +113 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:38 +114 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:38 +115 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:38 +116 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:41 +117 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:41 +118 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:41 +119 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:41 +120 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:42 +121 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:42 +122 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:42 +123 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:42 +124 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:42 +125 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:42 +126 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:42 +127 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:42 +128 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:42 +129 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -01:43 +130 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -01:44 +131 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -01:44 +132 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -01:44 +133 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -01:45 +134 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -01:45 +135 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -01:45 +136 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -01:46 +137 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -01:46 +138 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated -01:46 +139 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +140 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +141 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +142 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +143 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +144 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +145 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +146 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +147 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +148 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +149 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +150 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +151 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +152 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +153 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +154 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +155 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +156 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +157 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +158 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +159 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +160 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +161 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +162 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +163 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +164 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -01:46 +165 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references -01:46 +166 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -01:46 +167 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -01:46 +168 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -01:48 +169 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit -01:53 +170 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit -01:53 +171 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -01:54 +172 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice -01:54 +173 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note -01:54 +174 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -01:54 +175 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions -01:55 +176 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -01:55 +177 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -01:55 +178 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -01:55 +179 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -01:55 +180 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -01:56 +181 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -01:56 +182 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -01:56 +183 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -01:56 +184 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -01:56 +185 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -01:56 +186 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -01:57 +187 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -01:57 +188 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -01:57 +189 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -01:57 +190 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -01:57 +191 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -01:58 +192 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -01:58 +193 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -01:58 +194 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -01:59 +195 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename -01:59 +196 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -01:59 +197 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -01:59 +198 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -02:00 +199 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -02:00 +200 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -02:00 +201 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -02:00 +202 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -02:00 +203 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -02:01 +204 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -02:02 +205 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -02:02 +206 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -02:02 +207 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -02:02 +208 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -02:03 +209 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -02:03 +210 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -02:03 +211 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -02:03 +212 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -02:03 +213 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -02:04 +214 -1: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page diff --git a/delivery/nextcloud-explicit-adoption/evidence/format-final.log b/delivery/nextcloud-explicit-adoption/evidence/format-final.log deleted file mode 100644 index 0cb68adf..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/format-final.log +++ /dev/null @@ -1 +0,0 @@ -Formatted 544 files (0 changed) in 7.06 seconds. diff --git a/delivery/nextcloud-explicit-adoption/evidence/format-prepare.log b/delivery/nextcloud-explicit-adoption/evidence/format-prepare.log deleted file mode 100644 index 882a1fc6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/format-prepare.log +++ /dev/null @@ -1,3 +0,0 @@ -Formatted lib/src/nextcloud_notes/application/notes_repository.dart -Formatted test/src/nextcloud_notes_ui_test.dart -Formatted 544 files (2 changed) in 6.78 seconds. diff --git a/delivery/nextcloud-explicit-adoption/evidence/format.log b/delivery/nextcloud-explicit-adoption/evidence/format.log deleted file mode 100644 index 93ae2154..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/format.log +++ /dev/null @@ -1,2 +0,0 @@ -Formatted tools/nextcloud_notes_live_acceptance.dart -Formatted 544 files (1 changed) in 7.20 seconds. diff --git a/delivery/nextcloud-explicit-adoption/evidence/full-flutter-before-renderer.log b/delivery/nextcloud-explicit-adoption/evidence/full-flutter-before-renderer.log deleted file mode 100644 index b849d0b3..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/full-flutter-before-renderer.log +++ /dev/null @@ -1,4412 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver -00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider -00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider -00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files -00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text -00:00 +5: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations -00:00 +6: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads -00:01 +7: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy -00:01 +8: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy -00:01 +9: loading /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart -00:01 +9: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a complete subtree as the last child of an exact node -00:02 +10: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry after a root sibling -00:02 +11: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry to the end of the TOC root -00:02 +12: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry relative to itself without writing -00:02 +13: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry into its descendant without writing -00:02 +14: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: requires a destination for child and sibling placement -00:02 +15: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects invalid structural paths without writing -00:02 +16: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects stale paths whose expected TOC identities moved -00:02 +17: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a root entry and promotes its children in place -00:02 +18: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a nested entry and promotes its child before its sibling -00:02 +19: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes multiple entries atomically against one tree snapshot -00:02 +20: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: batch removal handles a selected descendant and ancestor -00:02 +21: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves multiple subtrees as an ordered group -00:02 +22: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a tree outside the guarded module root -00:02 +23: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a symlinked tree without mutating its target -00:02 +24: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: does not overwrite a tree changed before atomic publication -00:02 +25: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: atomic replacement preserves the tree POSIX mode -00:02 +26: loading /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart -00:05 +26: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal dialogs stop app and editor shortcuts -00:06 +27: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: Escape closes a modal without an initially focused control -00:06 +28: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal fallback does not steal a child autofocus request -00:06 +29: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: overlapping dialogs synchronize native modal depth -00:06 +30: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: serializes rapid manual native barrier transitions -00:06 +31: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: failed native barrier acquisition rolls back and can retry -00:06 +32: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal coordinator resolves the service from ProviderScope -00:06 +33: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: open modal barrier follows live theme changes -00:06 +34: loading /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart -00:10 +34: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: analysis finds every tree, topic link, include, and start page -00:11 +35: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove promotes children, updates usages, adds redirect, and keeps file -00:11 +36: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates all usages and removes every TOC occurrence -00:11 +37: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect to a promoted child is written to the promoted copy -00:11 +38: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed XML topics make usage analysis fail closed -00:11 +39: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: file-size-skipped topics make removal fail closed -00:11 +40: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: document-count-skipped topics make removal fail closed -00:12 +41: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: unreadable topic contents make removal fail closed -00:12 +42: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: topic-root traversal truncation makes removal fail closed -00:12 +43: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: incomplete project-module discovery makes removal fail closed -00:12 +44: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: tree directory enumeration failure makes removal fail closed -00:12 +45: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: single-quoted includes without element-id are found and removed -00:12 +46: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: variable-expanded links are analyzed and the variables file is stale-checked -00:12 +47: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: Safe Delete finds and unlinks authored HTML anchors without literal false positives -00:12 +48: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed authored HTML anchors are manual Safe Delete blockers -00:12 +49: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML variable hrefs are expanded and ambiguity blocks -00:12 +50: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML relevance follows its conditioned Markdown chapter -00:12 +51: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: automatic HTML unlinking permits project-wide orphan status -00:13 +52: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a surviving authored HTML link suppresses orphan status -00:13 +53: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: ambiguous references block deletion without changing any file -00:13 +54: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: old web file names follow Writerside normalization and exact overrides -00:13 +55: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: existing redirect rules block conflicting redirects -00:13 +56: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect preserves direct and rule-based accepted aliases -00:13 +57: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a transferred redirect alias collision fails before writes -00:13 +58: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect sources use each host instance web filename -00:13 +59: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remaining start-page and cross-instance usages prevent orphan status -00:13 +60: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove-from-instance relevance respects document conditions -00:13 +61: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: start-page and stale analyses fail closed without deleting the topic -00:13 +62: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: generic Files deletion cannot bypass Writerside Safe Delete -00:13 +63: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: project analysis finds origin links, includes, cards, and ref TOC nodes -00:13 +64: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored Markdown HTML anchors resolve origin project-wide -00:14 +65: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates automatic cross-module origin usages -00:14 +66: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: selected ref node uses removal workflow and promotes its children -00:14 +67: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: semantic tree scan includes hidden/build trees and excludes VCS metadata -00:14 +68: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a new module after analysis makes the reviewed plan stale -00:14 +69: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: cross-module failure rolls back BusyMark edits without overwriting a concurrent edit -00:14 +70: loading /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart -00:16 +70: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source paste preserves incoming nested blocks and returns its caret -00:16 +71: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves structural block kinds -00:16 +72: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: removing final formula leaves normal editing mode -00:16 +73: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits preserve nested list children -00:16 +74: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: descendant math does not put a plain list parent in source mode -00:16 +75: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first inline math insertion preserves unaffected inline AST -00:16 +76: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math edits retain explicit heading IDs -00:16 +77: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first math insertion recalculates a generated heading ID -00:16 +78: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion always emits reparsable source -00:16 +79: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: additional inline math uses the same reparsable insertion policy -00:16 +80: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion rejects multiline selections without mutation -00:16 +81: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves zero-width semantic inlines -00:16 +82: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table-cell source editing retains and removes semantic math -00:16 +83: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits cannot discard additional Markdown blocks -00:16 +84: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source editing preserves escaped literal dollars -00:16 +85: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves the intended inline position -00:16 +86: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math field source boundaries map to semantic text boundaries -00:16 +87: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: source-mode math insertion preserves the intended inline position -00:16 +88: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG renders math, edits exact source, and reparses without corruption -00:18 +89: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG toolbar inserts inline and display math source -00:18 +90: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math toolbar preserves existing inline structure -00:18 +91: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: rendered and focused math list items keep one marker -00:18 +92: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table math renders unfocused and edits delimiter source -00:18 +93: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: plain table cell treats typed Markdown as rich text -00:19 +94: loading /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart -00:21 +94: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery refresh preserves a valid second instance -00:21 +95: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: selected instance removed -00:21 +96: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: intentional selection -00:21 +97: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: another module -00:21 +98: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction incomplete observations are presentation only and reject changed reads -00:21 +99: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction limited inventory retains raw counts for excluded Git entries -00:21 +100: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: rejected source size remains an input to freshness checking -00:21 +101: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: bounded topic rejection detects recovery on the real worker -00:21 +102: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: oversized buffer overrides retain their consumed-input hash -00:21 +103: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: unreadable sources keep error diagnostics and invalidate on recovery -00:21 +104: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: real execution transfers results and propagates worker failures -00:22 +105: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: basic_project -00:22 +106: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: conformance_project -00:22 +107: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: markdown_export_compatibility -00:22 +108: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: malformed XML -00:22 +109: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: missing configured root -00:22 +110: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: unsafe include -00:22 +111: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: scan limit -00:22 +112: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: preparation consumes complete overlays once, then selects with zero loads -00:22 +113: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: reuse checks equal-size disk dependencies and added inputs -00:22 +114: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: planned path exclusions cannot hide a new colon-named dependency -00:22 +115: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: configuration overlay rediscovery retains symbols and diagnostics -00:22 +116: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: creation returns its typed publication result without reopening -00:22 +117: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal application shares one ownership-checked fresh project -00:22 +118: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects changed input before fingerprint collection -00:22 +119: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects added input before fingerprint collection -00:22 +120: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects removed input before fingerprint collection -00:23 +121: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects tree input before fingerprint collection -00:23 +122: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects configuration input before fingerprint collection -00:23 +123: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects disk dependency after fingerprint verification and before commit -00:23 +124: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects dirty affected buffer after fingerprint verification and before commit -00:23 +125: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: analysis is never reused across confirmation -00:23 +126: loading /home/albert/busystack/busymark/test/src/local_history_controller_test.dart -00:26 +126: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed opened baseline retries its original source without an edit -00:26 +127: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: baseline before edit preserves original and coalesces latest edit -00:26 +128: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: closed failures keep ownership and stale settlement cannot drop newer work -00:26 +129: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed protective capture survives refresh failure without recapture -00:26 +130: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: protective authorization is invalidated while committed refresh awaits -00:26 +131: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: disable cancels an in-flight baseline at the store boundary -00:26 +132: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: exclude cancels an in-flight baseline at the store boundary -00:26 +133: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed promotion stays associated when refresh fails -00:26 +134: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As binds destination even when list refresh fails -00:26 +135: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: settling one buffer resumes retries accepted by another buffer -00:26 +136: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear document cancels its failed unbound baseline -00:26 +137: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=true) -00:26 +138: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=false) -00:26 +139: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=false) -00:26 +140: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=true) -00:26 +141: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains a source identity established before later settlement fails -00:26 +142: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As refreshes a staged destination after its concurrent checkpoint -00:26 +143: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: abandoned and superseded moves retain the newest committed association -00:26 +144: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued edits share one retained baseline retry owner -00:26 +145: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: independent failures, permanent baselines and policy cancellation remain isolated -00:27 +146: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: cancelled failed baselines cannot be restored by delayed callbacks -00:27 +147: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: continuous typing captures latest text at fixed checkpoint interval -00:27 +148: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: inactive buffers receive independent checkpoint timers -00:27 +149: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first checkpoint attaches an empty untitled browsing scope and publishes it -00:27 +150: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file store checkpoint persists across reopen and clear stays authoritative -00:29 +151: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: active revision search follows matching and nonmatching captures -00:29 +152: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed automatic capture keeps pending source and retries without another edit -00:29 +153: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a newer edit accepted during a failed write wins the retry -00:29 +154: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: automatic checkpoint retries a transient first-save promotion failure -00:29 +155: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush waits behind queued observation and captures its latest source -00:29 +156: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear wins over an in-flight capture and later edits record normally -00:29 +157: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear Document records in the replacement lineage -00:29 +158: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document blocks replacement capture while its journal is pending -00:29 +159: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear All records in the replacement lineage -00:29 +160: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All blocks replacement capture while its journal is pending -00:29 +161: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an automatic checkpoint queued for an untitled draft -00:29 +162: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear Document -00:29 +163: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear All -00:29 +164: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clearing the displayed comparison closes it without a missing warning -00:29 +165: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an in-flight path capture for the same document -00:29 +166: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first edit after another controller clears a stale binding starts a new lineage -00:29 +167: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight buffer replacement protection -00:29 +168: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued buffer replacement protection -00:29 +169: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight path replacement protection -00:29 +170: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued path replacement protection -00:29 +171: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight buffer replacement protection -00:29 +172: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued buffer replacement protection -00:29 +173: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight path replacement protection -00:29 +174: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued path replacement protection -00:29 +175: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording off prevents baseline and checkpoints without deleting history -00:29 +176: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: store-wide find locates closed and deleted documents by path or content -00:29 +177: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: retained-document lookup is temporary and normal document selection resumes following -00:29 +178: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: panel construction preserves an explicit retained-document inspection -00:30 +179: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: delayed revision search cannot repopulate a newly selected document scope -00:30 +180: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision search failure finishes searching and remains in scope -00:30 +181: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Local History follows active tabs and clears the visible query without a document dropdown -00:31 +182: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision rows use local second-precision time, date groups, event metadata, and RTL -00:31 +183: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a delayed revision read cannot cross the selected document or leave loading stuck -00:31 +184: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As settles pending named and untitled checkpoints safely -00:32 +185: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: untitled overwrite Save As retains a failed source checkpoint -00:32 +186: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As source capture is idempotent after a lost result -00:32 +187: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As recovery never adopts unrelated same-content destination history -00:32 +188: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording-disabled first save promotes untitled history identity -00:32 +189: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: excluding a recovered first-save destination preserves its untitled source baseline -00:32 +190: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued committed Save As cannot recreate a newly excluded destination side -00:32 +191: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed first-save promotion is retried before a later capture -00:32 +192: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush retries a failed first-save promotion without another edit -00:32 +193: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush reports a content failure after successfully retrying promotion -00:32 +194: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: remap settles pending first-save promotions for files and directories -00:32 +195: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file and directory moves settle pending checkpoints before remap -00:32 +196: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed path reconciliation blocks affected captures but not unrelated documents -00:32 +197: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: successful path queue prefix is published before a later failure -00:32 +198: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path deletion warnings remain scoped to affected owners -00:32 +199: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed path operation is not replayed after refresh failure -00:32 +200: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: restored targetless executing reconciliation preserves its owner -00:32 +201: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) -00:32 +202: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/B.md) -00:32 +203: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/A.md, recursive: false, source: /workspace/C.md) -00:32 +204: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/B.md, recursive: false, source: /workspace/C.md) -00:32 +205: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirA/nested/C.md) -00:32 +206: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirB/nested/C.md) -00:32 +207: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: false, source: /workspace/C.md) -00:32 +208: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirB/nested/C.md, recursive: false, source: /workspace/C.md) -00:32 +209: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /other, recursive: false, source: /workspace) -00:32 +210: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace, recursive: false, source: /other) -00:32 +211: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/dirB-sibling/C.md, recursive: false, source: /workspace/dirA-sibling/C.md) -00:32 +212: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) -00:32 +213: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: true, source: /workspace/dirA/nested/C.md) -00:32 +214: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: true, source: /workspace/C.md) -00:32 +215: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /other, recursive: true, source: /workspace) -00:32 +216: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: true, source: /workspace/C.md) -00:32 +217: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) -00:32 +218: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) -00:32 +219: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses prepared target with different paths -00:32 +220: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses bound identity with different paths -00:32 +221: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses destination identity with different paths -00:32 +222: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency checks promotion destination identity at a different path -00:32 +223: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency settles only conflicting entries behind an unresolved head -00:32 +224: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=false) -00:32 +225: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=true) -00:32 +226: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency preserves transitive queue ordering -00:32 +227: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=false) -00:32 +228: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=true) -00:32 +229: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: staged path commit survives refresh failure until workspace acknowledgement -00:32 +230: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: external staged remap refreshes its bound target after checkpoint settlement -00:32 +231: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: definitive false staged result retires its executing journal -00:32 +232: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred deletion cannot delete replacement path history -00:32 +233: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document removes only its recursive reconciliation target -00:32 +234: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document preserves timer retry for remaining recursive target -00:32 +235: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: prepared remap rejects a checkpoint that changed its frozen target -00:32 +236: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: ownerless path failure is visible only in history presentation -00:32 +237: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: detached promotion capture is included in durable retained work -00:32 +238: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: live external retained owner is not replayed and Clear All retires it -00:32 +239: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a clear conflict cancels the old baseline retry owner -00:32 +240: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit after failed Clear waits and persists in the replacement lineage -00:32 +241: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: post-Clear edit uses committed epoch when reconciliation refresh fails -00:32 +242: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred remap cannot mutate replacement path history -00:32 +243: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed remap reserves source and destination paths until reconciliation -00:32 +244: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deletion remains ordered behind a retained path remap -00:32 +245: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first save waits for a reserved source path before promoting its history -00:32 +246: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path target discovery observes history written after cached load -00:32 +247: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear document -00:32 +248: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear all -00:32 +249: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after disposal -00:32 +250: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As transfers retained remap ownership with source work -00:32 +251: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flushBuffer reports retained remap work and retires closed owner -00:32 +252: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All cannot be undone by an in-flight path remap -00:32 +253: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path reconciliation resumes a newly opened destination owner -00:32 +254: loading /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart -00:34 +254: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: HTML retains complex Markdown and resolves both heading ID spellings -00:36 +255: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: PDF retains complex Markdown and resolved heading links -00:36 +256: loading /home/albert/busystack/busymark/test/src/math_widget_test.dart -00:38 +256: /home/albert/busystack/busymark/test/src/math_widget_test.dart: inline math applies MathJax baseline and surrounding text metrics -00:39 +257: /home/albert/busystack/busymark/test/src/math_widget_test.dart: wide display math scrolls horizontally without clipping -00:39 +258: /home/albert/busystack/busymark/test/src/math_widget_test.dart: failed formulas retain source and a localized explanation -00:39 +259: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart -00:41 +259: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: reduced fixture uses rendered offsets without Markdown delimiters or block separators -00:41 +260: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All: logical range and copy include styled suffixes and table -00:43 +261: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b0 BusyBlockKind.paragraph -00:43 +262: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b1 BusyBlockKind.paragraph -00:43 +263: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b2 BusyBlockKind.paragraph -00:44 +264: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b3 BusyBlockKind.unorderedListItem -00:45 +265: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b4 BusyBlockKind.unorderedListItem -00:45 +266: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b5 BusyBlockKind.unorderedListItem -00:45 +267: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b6 BusyBlockKind.paragraph -00:46 +268: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b17 BusyBlockKind.paragraph -00:46 +269: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table cells paint the same selected text as document copy -00:47 +270: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: repeated Select All keeps the entire document selected -00:47 +271: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: Before. - -| H | -| --- | -| Body! | - -00:47 +272: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: | H | -| --- | -| Body! | - -After. - -00:48 +273: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag endpoints use the styled rendered coordinate system -00:48 +274: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag from a paragraph into a table copies and selects its cells -00:48 +275: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across table cells selects the existing complete-table document block -00:49 +276: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 460.0 -00:49 +277: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 460.0 -00:49 +278: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 460.0 -00:49 +279: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 460.0 -00:50 +280: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 460.0 -00:50 +281: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 460.0 -00:50 +282: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 1000.0 -00:51 +283: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 1000.0 -00:51 +284: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 1000.0 -00:51 +285: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 1000.0 -00:51 +286: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 1000.0 -00:52 +287: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 1000.0 -00:52 +288: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=2 -00:52 +289: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=10 -00:52 +290: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=11 -00:52 +291: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=2 -00:52 +292: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=10 -00:52 +293: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=11 -00:52 +294: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=2 -00:52 +295: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=10 -00:52 +296: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=11 -00:53 +297: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=2 -00:53 +298: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=10 -00:53 +299: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=11 -00:53 +300: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=2 -00:53 +301: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=10 -00:53 +302: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=11 -00:53 +303: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=2 -00:53 +304: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=14 -00:53 +305: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=15 -00:53 +306: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 3, 29) includes the final rendered character -00:53 +307: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (4, 0, 4, 36) includes the final rendered character -00:54 +308: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 4, 36) includes the final rendered character -00:54 +309: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 4, 4, 36) includes the final rendered character -00:54 +310: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 6, 9) includes the final rendered character -00:54 +311: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 0, 6, 93) includes the final rendered character -00:54 +312: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (5, 0, 5, 29) includes the final rendered character -00:54 +313: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: mouse range across paragraph, list, table and paragraph equals Select All -00:55 +314: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All, mouse and keyboard ranges produce equivalent local selection geometry -00:55 +315: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: local table cell selection stays local; subsequent Select All expands to document -00:56 +316: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table to following paragraph retains complete selected rows -00:56 +317: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: document selection survives viewport scrolling and block recreation -00:56 +318: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: selected table text follows horizontal cell scrolling -00:57 +319: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across a viewport jump resolves the visible extent block (variant: TargetPlatform.linux) -00:57 +320: loading /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart -01:00 +320: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video card embeds a supported YouTube source in place -01:01 +321: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: mini-player embeds Vimeo with the reduced video ID -01:01 +322: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: local video player receives only a canonical media path -01:01 +323: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video dimensions preserve ratio and scale to available width -01:01 +324: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: failed native player leaves a usable poster fallback -01:01 +325: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: WYSIWYG renders a Writerside video without rewriting source -01:01 +326: loading /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart -01:04 +326: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: uses the native grouped modal-editor structure -01:06 +327: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shared report form remains directional in an Arabic UI -01:06 +328: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: dark route uses the shared dialog surface -01:06 +329: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows required-field validation without sending -01:06 +330: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: rejects an invalid optional reply email -01:06 +331: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: category can return to the unselected placeholder -01:06 +332: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: disables submit while a request is active -01:07 +333: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: clears the form and shows the server reference on success -01:07 +334: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows a distinct message when the server rejects the form -01:07 +335: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: keeps retry UUID until submitted content changes -01:07 +336: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: cannot dismiss the dialog while submission is active -01:08 +337: loading /home/albert/busystack/busymark/test/src/headless_chrome_test.dart -01:08 +337: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: evaluates the requested document after it becomes ready -01:08 +338: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: does not evaluate the initial about:blank target -01:08 +339: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: retries when navigation destroys the execution context -01:08 +340: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a silent open DevTools socket respects the readiness bound -01:09 +341: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: socket closure before a response fails deterministically -01:09 +342: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a DevTools error is not mistaken for navigation -01:09 +343: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a page that never becomes ready reports its last state -01:09 +344: loading /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart -01:11 +344: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in untitledMarkdown -01:11 +345: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in singleMarkdown -01:11 +346: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in markdownFolder -01:11 +347: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in writersideModule -01:11 +348: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in nextcloudNotes -01:11 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (setUpAll) -01:11 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered Markdown topic wins over generic file inventory -01:11 +350: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered XML topic resolves as a Writerside XML topic -01:11 +351: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution ordinary Markdown under the project is still CommonMark -01:11 +352: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution path fallback does not depend on workspace file inventory -01:11 +353: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (tearDownAll) -01:11 +353: loading /home/albert/busystack/busymark/test/src/html_export_test.dart -01:13 +353: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsaved Markdown is a complete styled document with stable semantic anchors -01:14 +354: /home/albert/busystack/busymark/test/src/html_export_test.dart: raw disclosures, definitions and spans survive with structural sanitization -01:14 +355: /home/albert/busystack/busymark/test/src/html_export_test.dart: explicit blank lines export as consecutive HTML breaks -01:14 +356: /home/albert/busystack/busymark/test/src/html_export_test.dart: content-addressed assets relocate, deduplicate and reject symlink escapes -01:14 +357: /home/albert/busystack/busymark/test/src/html_export_test.dart: home-relative images use the shared local-media path rules -01:14 +358: /home/albert/busystack/busymark/test/src/html_export_test.dart: untrusted metadata and data URLs cannot create active HTML -01:14 +359: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsafe SVG and CSS never reach exported assets -01:14 +360: /home/albert/busystack/busymark/test/src/html_export_test.dart: overwrite refusal, cancellation and rendering failure preserve previous HTML -01:14 +361: /home/albert/busystack/busymark/test/src/html_export_test.dart: metadata title remains separate from a formatted Markdown title heading -01:14 +362: /home/albert/busystack/busymark/test/src/html_export_test.dart: UTF-8 byte limits are enforced -01:14 +363: /home/albert/busystack/busymark/test/src/html_export_test.dart: Writerside produces linked pages, hidden topics, WIP and start copy -01:15 +364: /home/albert/busystack/busymark/test/src/html_export_test.dart: official conformance fixture exports as individual pages -01:15 +365: loading /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart -01:18 +365: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside blockquotes become typed admonitions and round-trip -01:18 +366: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown blockquotes do not acquire Writerside semantics -01:18 +367: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: semantic admonition elements include quote and preserve attributes -01:18 +368: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: admonition editing emits source that reparses semantically -01:18 +369: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: editing inside an existing admonition changes its outer type -01:18 +370: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: WYSIWYG Admonition menu applies the selected type -01:19 +371: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown does not show the Writerside editing menu -01:19 +372: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside .topic preview keeps content inside its admonition -01:19 +373: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: PDF export keeps admonitions semantic and quotes neutral -01:19 +374: loading /home/albert/busystack/busymark/test/src/d2_renderer_test.dart -01:22 +374: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy rejects imports and icon assets with source locations -01:22 +375: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy does not treat comments, quoted labels, or block strings as imports -01:22 +376: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: returns normalized vector SVG for browser-independent output -01:22 +377: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes foreignObject output at PDF resolution -01:22 +378: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes browser CSS that cannot be preserved in vector form -01:22 +379: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: maps D2 diagnostics and renderer limits to typed results -01:22 +380: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: locates only executable files at deterministic bundle paths -01:22 +381: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: bundled D2 CLI renders stdin to stdout without a shell -01:22 +382: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart -01:24 +382: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -01:25 +383: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions -01:26 +384: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart -01:27 +384: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: display images do not reserve a fixed-height letterbox -01:27 +385: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: quotes and admonitions use the existing callout presentation -01:27 +386: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF export ignores redundant blank lines between blocks -01:28 +387: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF payload preserves an explicit blank line as two breaks -01:28 +388: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders two explicit breaks as one blank PDF line -01:29 +389: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders redundant blank lines identically -01:29 +390: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template exports representative Markdown to a valid PDF -01:29 +391: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside video poster and link compile into a valid PDF -01:29 +392: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside admonitions compile into a valid PDF -01:29 +393: loading /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart -01:31 +393: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: data tables remain tables, including borderless and single-column data -01:31 +394: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: nested layout wrappers retain their inner data table and prose -01:31 +395: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: explicit presentation table keeps caption, cell order and direction -01:31 +396: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor preserves content inside a layout table -01:31 +397: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor plain paste ignores layout and rich content -01:31 +398: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource preserves content inside a layout table -01:31 +399: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource plain paste ignores layout and rich content -01:31 +400: loading /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart -01:34 +400: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: selects all candidates by default and disables OK for none -01:36 +401: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: successful import closes the dialog with selected list order -01:36 +402: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: failed import stays open and presents the localized error -01:36 +403: loading /home/albert/busystack/busymark/test/src/html_publication_test.dart -01:38 +403: /home/albert/busystack/busymark/test/src/html_publication_test.dart: single-file local video has a downloadable fallback -01:41 +404: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list starts and same-type boundaries survive HTML export -01:41 +405: /home/albert/busystack/busymark/test/src/html_publication_test.dart: repeated list includes export as separate HTML containers -01:41 +406: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list styles stay distinct across consecutive lists -01:42 +407: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside shares HTML appearance without changing TOC status or source -01:42 +408: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside module origins preserve includes, variables, file identity and nullable links -01:42 +409: /home/albert/busystack/busymark/test/src/html_publication_test.dart: definition lists preserve individual disclosure states and IDs -01:42 +410: /home/albert/busystack/busymark/test/src/html_publication_test.dart: web filename and index collisions identify both topics before publication -01:42 +411: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside publication uses canonical effective web filenames -01:42 +412: /home/albert/busystack/busymark/test/src/html_publication_test.dart: source and media are captured before progress or later editor changes -01:42 +413: /home/albert/busystack/busymark/test/src/html_publication_test.dart: publication failure retains previous HTML and referenced immutable assets -01:43 +414: /home/albert/busystack/busymark/test/src/html_publication_test.dart: duplicate explicit IDs warn, non-Latin footnotes and document IDs resolve -01:43 +415: loading /home/albert/busystack/busymark/test/src/spelling_service_test.dart -01:44 +415: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document kinds expose one authoritative spelling capability -01:44 +416: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: effective spelling language preserves document and project order -01:44 +417: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: session identity changes when a stable buffer is saved to a path -01:44 +418: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: downloaded dictionaries use revision-shared Snap storage -01:44 +419: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: first save and Save As republish source routing immediately -01:46 +420: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rereads and merges independent external changes -01:46 +421: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words coordinates writers in independent application processes -01:48 +422: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external edit injected after staging -01:48 +423: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external replacement after the atomic exchange -01:49 +424: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves a newer destination and the rejected displaced version -01:49 +425: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves case while merging canonical Unicode equivalents -01:49 +426: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rebuilds untrusted stored keys from validated display values -01:49 +427: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words case-distinct words survive restart into the native worker -01:49 +428: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words malformed storage is reported instead of overwritten -01:49 +429: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: staging validation accepts numeric header revisions and count drift -01:49 +430: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: dictionary import publishes a complete pair only after validation -01:49 +431: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation installs only one shared resource and reuses it by locale -01:49 +432: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation and checksum failure leave no installation -01:49 +433: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation observes the atomic publication commit point -01:49 +434: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale invalid record cannot remove a repaired installation -01:49 +435: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale valid descriptor cannot remove a replacement in another process -01:50 +436: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation catalog waits through a replacement publication gap -01:50 +437: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a late no-replace publisher cannot replace a completed installation -01:50 +438: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation independent process observes the published no-replace destination -01:51 +439: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation stalled response times out, cancels, and permits retry -01:51 +440: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation asynchronous output sink errors fail the receiver without zone leaks -01:51 +441: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed replacement cannot damage a working installation -01:51 +442: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed controller download exposes a working retry -01:51 +443: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller reserves an installation before coordinator startup -01:51 +444: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller releases installation ownership after setup failure -01:51 +445: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller cancellation remains with the reserved startup operation -01:51 +446: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: aliased imports remain selectable across collision, restart, and removal -01:52 +447: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: same-resource import collision is rejected before publication -01:52 +448: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an import does not impersonate the downloadable resource row -01:52 +449: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid imported installation is removable by exact record -01:52 +450: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid downloaded installation repairs through settings API -01:52 +451: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once keeps its authored anchor across editor modes -01:52 +452: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: source hit testing excludes formatting and link destination gaps -01:52 +453: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once follows one transaction across edit, undo, redo, and tabs -01:52 +454: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document ignores survive tab changes but not an actual close -01:52 +455: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed suggestion cannot revive after language changes -01:52 +456: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a manual request waits for its own result while a check runs -01:52 +457: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: checks in bounded batches and reuses unchanged run results -01:52 +458: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: cached runs cover the complete checked text across edits -01:52 +459: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a NUL suffix cannot complete checking and recovers after correction -01:52 +460: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project initialization publishes only the latest owner -01:53 +461: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older same-project Settings read cannot undo a newer snapshot -01:53 +462: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older project watcher read cannot undo Settings publication -01:53 +463: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project read begun during a mutation cannot undo its result -01:53 +464: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project conflict read preserves newer state and error -01:53 +465: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project watcher error cannot replace valid state -01:54 +466: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project watcher recovers after identical dictionary repair -01:54 +467: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project repair recovers a later failed preparation at latest revision -01:55 +468: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project reread does not clear an unrelated personal read failure -01:56 +469: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: failed personal initialization retries after repair and shares first load -01:56 +470: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: explicit checks and Settings refresh external personal words -01:56 +471: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: late personal refresh cannot undo a newer local mutation -01:56 +472: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: refresh begun during a personal mutation cannot undo its result -01:56 +473: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an older personal refresh cannot replace a newer publication -01:56 +474: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a superseded conflict read cannot replace a newer personal refresh -01:56 +475: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Settings holds a failed preparation until deliberate retry -01:58 +476: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm no-workspace Settings refreshes personal words once -01:59 +477: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm Settings observes an external dictionary removal once -01:59 +478: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: leaving Settings during preparation ignores its late completion -02:00 +479: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent first requests start exactly one worker -02:00 +480: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a project-word mutation cannot publish into a later project -02:01 +481: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: new input hides old results before preparation can fail -02:01 +482: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: external project-word edits refresh an open document -02:03 +483: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review dialog keeps one traversal through skip, back, correction, and persistence -02:06 +484: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review word-store conflict stays current and exposes preserved recovery path -02:07 +485: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: equivalent rebuild does not cancel session initialization -02:07 +486: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic session checks after an unresolved language is selected -02:07 +487: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an available but absent dictionary is not downloaded implicitly -02:07 +488: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: removing a downloaded pair keeps words and reports not installed -02:08 +489: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance refreshes external installation at explicit boundaries -02:08 +490: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance replaces an active imported dictionary fingerprint -02:08 +491: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent warm catalog preparations share one owned read -02:08 +492: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed catalog read cannot undo a local installation -02:08 +493: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a failed warm catalog refresh remains retryable -02:08 +494: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic checking rereads inventory after dictionary load fails -02:08 +495: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker catalog validation requires its resource-specific probe -02:08 +496: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projects source and rich snapshots through reusable messages -02:08 +497: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incrementally reuses unaffected plain Markdown runs -02:08 +498: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incremental Markdown projection agrees with a fresh structural parse -02:08 +499: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projection cache rebinds source targets after Save As -02:08 +500: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker project custom words do not leak between contexts -02:08 +501: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quoted corrections retain straight and curly punctuation -02:08 +502: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives projection and worker barriers -02:08 +503: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives a bounded worker chunk -02:09 +504: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker removing a custom exception does not forbid a base word -02:09 +505: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker prose around 64 KiB is checked across bounded chunks -02:09 +506: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker isolates encoding and oversized-token failures -02:09 +507: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker normal, large, and superseded checks stay bounded -spelling benchmark: normal=4ms large/latest=136ms suggestion=0ms -02:09 +508: loading /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart -02:11 +508: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: rapid navigation applies only monotonic complete configurations -02:11 +509: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: a new Dart session can restart native revisions from one -02:11 +510: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal depth is an atomic overlay on the latest page state -02:11 +511: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal barrier is retained before the first page publishes -02:11 +512: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: older runners fall back once to the ordered legacy protocol -02:11 +513: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: failed atomic apply keeps the last success and retries the same desired state -02:11 +514: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: theme map contains the native semantic visual roles -02:11 +515: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: native header labels expose only application-menu commands -02:11 +516: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart -02:11 +516: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces -02:13 +517: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark -02:13 +518: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync -02:13 +519: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces -02:13 +520: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog -02:14 +521: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present -02:14 +522: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging -02:14 +523: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface -02:14 +524: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body -02:14 +525: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters -02:14 +526: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components -02:14 +527: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers -02:14 +528: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface -02:14 +529: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry -02:14 +530: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary -02:14 +531: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer -02:14 +532: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting -02:14 +533: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI -02:14 +534: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text -02:14 +535: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration -02:14 +536: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR -02:14 +537: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface -02:14 +538: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography -02:14 +539: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style -02:14 +540: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives -02:14 +541: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries -02:14 +542: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind -02:14 +543: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces -02:14 +544: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu -02:14 +545: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback -02:14 +546: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup -02:15 +547: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel -02:15 +548: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter -02:15 +549: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu -02:15 +550: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor -02:15 +551: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors -02:15 +552: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation -02:15 +553: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row -02:15 +554: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model -02:15 +555: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row -02:15 +556: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation -02:15 +557: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span -02:15 +558: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout -02:15 +559: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts -02:15 +560: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls -02:15 +561: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds -02:15 +562: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog -02:15 +563: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release -02:15 +564: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome -02:15 +565: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart -02:16 +565: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings -02:16 +566: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded -02:16 +567: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales -02:16 +568: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale -02:16 +569: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes -02:16 +570: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs -02:16 +571: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders -02:17 +572: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct -02:17 +573: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed -02:17 +574: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys -02:17 +575: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale -02:17 +576: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose -02:17 +577: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches -02:17 +578: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form -02:17 +579: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural -02:17 +580: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology -02:17 +581: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations -02:17 +582: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits -02:17 +583: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English -02:17 +584: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog -02:17 +585: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args -02:17 +586: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart -02:22 +586: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks pasted rich content completely in both editors -02:25 +587: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: packaged catalog opens real regional and non-Latin dictionaries -Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff -02:32 +588: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks the general Markdown fixture completely -02:35 +589: loading /home/albert/busystack/busymark/test/src/command_registry_test.dart -02:36 +589: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog includes every editor command with an executable callback -02:36 +590: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog exposes stable unique IDs for all migrated shortcuts -02:36 +591: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects duplicate command IDs -02:36 +592: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects shortcut conflicts in the same command scope -02:36 +593: /home/albert/busystack/busymark/test/src/command_registry_test.dart: allows the same shortcut in distinct focus scopes -02:36 +594: /home/albert/busystack/busymark/test/src/command_registry_test.dart: executes only visible enabled bound commands -02:36 +595: /home/albert/busystack/busymark/test/src/command_registry_test.dart: contextual commands execute against the captured editor -02:36 +596: loading /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart -02:37 +596: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: Linux packages secure AI credential storage consistently -02:38 +597: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: real local AI qualification covers every shipped action -02:38 +598: loading /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart -02:39 +598: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: source line bounds treat offsets as insertion positions -02:39 +599: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: table cell spans respect meaningful outer pipes and escaping -02:39 +600: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: escaped terminal pipes remain in the final cell source span -02:39 +601: loading /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart -02:40 +601: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide preview fits identically through D2 and WebKit renderers -02:40 +602: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide PDF fits identically through D2 and WebKit renderers -02:40 +603: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: area-constrained PDF fits identically through D2 and WebKit renderers -02:40 +604: loading /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart -02:44 +604: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: real installed catalog has six default families and 22 bundled TGDP topics -02:45 +605: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: literal substitution is simultaneous, case-sensitive, XML-only escaped -02:45 +606: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save source matches installed first-match substring behavior -02:45 +607: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: TGDP brace escaping preserves attribute blocks and rewrites relative links -02:45 +608: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save, unique naming, restart, cancellation snapshot and stale edit rejection -02:45 +609: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: concurrent saves serialize without losing templates -02:45 +610: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: true) -02:45 +611: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: false) -02:45 +612: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: corrupt and symbolic-link stores are never replaced -02:45 +613: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: builtin overrides persist independently and reset reveals original source -02:45 +614: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: template bytes are published in the guarded creation transaction and rolled back on conflict -02:45 +615: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: invalid XML templates and colliding root IDs never publish a topic or TOC edit -02:45 +616: loading /home/albert/busystack/busymark/test/src/writerside_test.dart -02:46 +616: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses writerside.cfg directories and registered instances -02:46 +617: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented full writerside.cfg metadata -02:46 +618: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented config defaults -02:46 +619: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses attribute defaults for present config elements -02:46 +620: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented topic title overrides and web file names -02:46 +621: /home/albert/busystack/busymark/test/src/writerside_test.dart: Markdown web filename metadata ignores literal examples -02:46 +622: /home/albert/busystack/busymark/test/src/writerside_test.dart: XML topic metadata is scoped to direct topic children -02:46 +623: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses .tree metadata and TOC hierarchy -02:46 +624: /home/albert/busystack/busymark/test/src/writerside_test.dart: Writerside topic XML exposes semantic math to the shared preview -02:46 +625: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads basic Writerside project with topics and no missing topic diagnostics -02:46 +626: /home/albert/busystack/busymark/test/src/writerside_test.dart: does not parse a Writerside config above the byte limit -02:46 +627: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects configured paths outside the module root -02:46 +628: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a configured topic root reached through a symlink -02:46 +629: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a Writerside config file reached through a symlink -02:46 +630: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads project.ihp as an equivalent Writerside config file -02:46 +631: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads topics from multiple configured topic roots -02:46 +632: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves exact topic reference before basename fallback -02:46 +633: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports duplicate topic IDs in a help module -02:46 +634: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename fallback after exact matching misses -02:46 +635: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves Markdown links across configured topic roots -02:46 +636: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename topic references deterministically -02:46 +637: /home/albert/busystack/busymark/test/src/writerside_test.dart: broken Writerside project produces deterministic diagnostics -02:47 +638: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves basename images in nested Writerside image directories -02:47 +639: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves local images from secondary configured image roots -02:47 +640: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses the documented instance tree elements and attributes -02:47 +641: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects redirect-source attributes on empty TOC groups -02:47 +642: /home/albert/busystack/busymark/test/src/writerside_test.dart: module service retains empty-group redirect-source diagnostics -02:47 +643: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves registered TOC libraries, filters, groups, and cross-instance refs -02:47 +644: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports circular reusable tree includes without recursing -02:47 +645: /home/albert/busystack/busymark/test/src/writerside_test.dart: included content still requires a regular instance home page -02:47 +646: /home/albert/busystack/busymark/test/src/writerside_test.dart: ignores status-specific values for general instance settings -02:47 +647: /home/albert/busystack/busymark/test/src/writerside_test.dart: conformance fixture is a valid openable Writerside module -02:47 +648: loading /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart -02:48 +648: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: narrow title stays centered between the controls when resized -02:49 +649: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.rtl -02:50 +650: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.ltr -02:50 +651: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.rtl -02:50 +652: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.ltr -02:50 +653: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.dark seam paints the same subtle color across header and body -02:50 +654: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.light seam paints the same subtle color across header and body -02:50 +655: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: one viewport owns the full-height sidebar edge at every frame -02:50 +656: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: unrelated rebuild preserves partial progress and body state -02:50 +657: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: breakpoint settlement is immediate and retained state survives -02:50 +658: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: RTL and fractional device pixels share one snapped edge -02:50 +659: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: divider follows the snapped physical viewport while opening and closing -02:50 +660: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: animation setting settles a running reveal to its logical target -02:50 +661: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header receives only the presented system-control obstruction -02:50 +662: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: frame is the single owner of the full-height sidebar seam -02:50 +663: loading /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart -02:51 +663: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: tree-to-editor sync opens selected topic even with a .tree editor active -02:55 +664: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: editor-to-TOC sync resolves qualified identities and chooses breadth-first occurrence -02:58 +665: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: live removal dialog uses documented confirmation, redirect label and usage count -03:01 +666: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: New Topic surfaces expose local Markdown import only at root/sibling -03:02 +667: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty MD Topic creates an editable document when Reading mode is active, preserving other tabs -03:05 +668: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty XML Topic creates an editable document when Reading mode is active, preserving other tabs -03:08 +669: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Topic from Template... creates an editable document when Reading mode is active, preserving other tabs -03:11 +670: loading /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart -03:11 +670: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: header Escape preserves the query for the next search -03:12 +671: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: search fallback uses the normal Yaru-themed entry geometry -03:12 +672: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: focus request targets the themed text entry -03:12 +673: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: Escape clears the query and closes the owner -03:12 +674: loading /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart -03:14 +674: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: row titles, markers and included source identity use selected context -03:15 +675: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking retains source bytes and rejects a now-present candidate -03:15 +676: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: home reassignment preserves other instances and unrelated attributes -03:15 +677: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty instance -03:15 +678: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: groups only -03:15 +679: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing home -03:15 +680: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: library -03:15 +681: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty group insertion -03:16 +682: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing nested topic -03:16 +683: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: first linked topic and home assignment share the same publication guard -03:16 +684: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: title transaction rolls back both files on a concurrent dirty-buffer guard -03:16 +685: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: XML duplicate copies source, changes only root ID, adds basic sibling -03:16 +686: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: sort revalidates title dependencies before publishing the tree -03:16 +687: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: safe deletion rechecks dirty-buffer guard and rolls back earlier edits -03:16 +688: loading /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart -03:17 +688: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: repeated list includes restart numbering in the final PDF -03:19 +689: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF keeps alphabetic starts, separate decimal lists and procedure numbering -03:19 +690: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (unknown) -03:19 +691: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (shared-pdf) -03:19 +692: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=false -03:19 +693: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=true -03:19 +694: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=true) -03:19 +695: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=false) -03:20 +696: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: bundled Typst compiles semantic tables, anchors and glossary footnotes -03:20 +697: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF retains nested chapter bodies and resolves unique internal destinations -03:20 +698: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic links retain their PDF destinations -03:20 +699: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic blank lines remain explicit in Writerside PDF -03:20 +700: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native export composes the selected instance without a container runtime -03:20 +701: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: hidden topics remain content and toc-title stays navigation-only -03:20 +702: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: referenced diagrams keep resolved source and all tab panels reach PDF -03:20 +703: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: pre-cancelled native export never starts PDF compilation -03:20 +704: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unknown Writerside instance is rejected before compilation -03:20 +705: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: resolution errors prevent PDF compilation -03:20 +706: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation errors prevent PDF compilation -03:20 +707: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation warnings are returned to the caller -03:20 +708: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: nonfatal resolution diagnostics are returned as PDF warnings -03:20 +709: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native exporter failures use Writerside failure codes -03:20 +710: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native Writerside fixture compiles end to end with bundled Typst -03:20 +711: loading /home/albert/busystack/busymark/test/src/clipboard_history_test.dart -03:21 +711: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains newest first, deduplicates, removes, clears, and evicts by count -03:21 +712: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: accounts byte budget and rejects an oversized item without truncation -03:21 +713: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: collection off leaves existing entries and blocks new retention -03:21 +714: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external clipboard remains transient until explicitly retained -03:21 +715: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external HTML keeps its rich and interoperable text representations -03:21 +716: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current HTML-only clipboard is eligible without internal ownership -03:21 +717: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current source-only clipboard does not invent plain text -03:21 +718: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal visible text with different structure stays distinct -03:21 +719: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal relative markup from different origins stays distinct -03:21 +720: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains whitespace-only text and owns image bytes immutably -03:21 +721: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: a new provider session starts with no retained history -03:21 +722: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: insertion registry follows latest target and never retains disposed targets -03:21 +723: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: unknown token cannot recover rich data through equal plain text -03:21 +724: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: rich ownership is byte bounded and shares equivalent media -03:21 +725: loading /home/albert/busystack/busymark/test/src/ai_reliability_test.dart -03:24 +725: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator honors Retry-After and caps retry attempts -03:24 +726: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator never retries after partial output -03:24 +727: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator bounds all retries by one total deadline -03:24 +728: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: global permit pool limits requests across different targets -03:24 +729: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: request-id cancellation cannot cancel a newer request for the target -03:24 +730: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: model fallback stays inside the explicitly selected provider -03:24 +731: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Ollama uses an absolute deadline even while bytes keep arriving -03:24 +732: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: cancellation interrupts the preliminary Ollama model request -03:24 +733: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Retry-After supports seconds and HTTP dates without negatives -03:24 +734: loading /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart -03:27 +734: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: partially formatted URL source offsets and text atoms survive save and edit -03:28 +735: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: URL punctuation beside surrounding formatting retains literal and style boundaries -03:29 +736: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: surrounding formatting commits the same URL editing semantics as reopening -03:29 +737: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL trailing literal punctuation survives serialization and reparse -03:29 +738: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: © -03:29 +739: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: & -03:29 +740: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: &* -03:29 +741: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: © -03:29 +742: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: & -03:29 +743: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: &* -03:29 +744: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.commonMark -03:29 +745: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.writersideMarkdown -03:29 +746: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: descendant whitespace preservation prevents ancestor trimming -03:29 +747: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: ordinary and metadata inline emission are byte-identical -03:29 +748: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL offsets and text atoms stay exact through Enter, edit and save/reparse -03:29 +749: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare leaf links use raw URL positions and explicit equal-label links retain delimiters -03:29 +750: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: grouped breaks retain distinct source provenance in one traversal -03:29 +751: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: text-leaf atoms use interior spans and exclude delimiters -03:29 +752: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: table escaping translates leaf spans without changing source -03:29 +753: loading /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart -03:30 +753: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: semantic catalog uses the exact native GTK icon names -03:30 +754: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: initial load batches direction variants and preserves candidate order -03:30 +755: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: explicit Back role survives atomic theme and scale catalog replacement -03:30 +756: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart -03:32 +756: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -03:33 +757: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback -03:33 +758: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -03:33 +759: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error -03:33 +760: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token -03:33 +761: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails -03:33 +762: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache -03:34 +763: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox -03:34 +764: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret -03:34 +765: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry -03:34 +766: loading /home/albert/busystack/busymark/test/src/feedback_service_test.dart -03:35 +766: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: posts the serialized request and returns the server reference -03:35 +767: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps connection failures -03:35 +768: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps response timeouts -03:35 +769: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 429 and preserves Retry-After -03:35 +770: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 400 and 422 to rejected request failures -03:35 +771: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps server and malformed-response failures to server errors -03:35 +772: loading /home/albert/busystack/busymark/test/src/app_settings_test.dart -03:37 +772: /home/albert/busystack/busymark/test/src/app_settings_test.dart: hydration and redundant sidebar requests do not count as user transitions -03:37 +773: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior defaults protect unsaved changes -03:37 +774: /home/albert/busystack/busymark/test/src/app_settings_test.dart: reopen workspace setting is migration-safe -03:37 +775: /home/albert/busystack/busymark/test/src/app_settings_test.dart: document view mode defaults to editor -03:37 +776: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save defaults to enabled -03:37 +777: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings have bounded privacy-preserving defaults -03:37 +778: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings validate persisted ranges and absolute exclusions -03:37 +779: /home/albert/busystack/busymark/test/src/app_settings_test.dart: AI defaults disabled and provider settings never persist secrets -03:37 +780: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction defaults to horizontal -03:37 +781: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction round-trips through settings JSON -03:37 +782: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote images default to blocked -03:37 +783: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspaces default to untrusted -03:37 +784: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy preview visibility migrates to source mode when hidden -03:37 +785: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language defaults to system locale -03:37 +786: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language override persists as locale tag -03:37 +787: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy Norwegian locale tag migrates to Bokmal -03:37 +788: /home/albert/busystack/busymark/test/src/app_settings_test.dart: supported script variants canonicalize to the available catalog -03:37 +789: /home/albert/busystack/busymark/test/src/app_settings_test.dart: regional variants canonicalize and unsupported tags are discarded -03:37 +790: /home/albert/busystack/busymark/test/src/app_settings_test.dart: unused product settings are not persisted -03:37 +791: /home/albert/busystack/busymark/test/src/app_settings_test.dart: file settings store keeps the live JSON intact until publication -03:39 +792: /home/albert/busystack/busymark/test/src/app_settings_test.dart: failed settings publication preserves the previous valid JSON -03:39 +793: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior settings persist -03:39 +794: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save setting persists -03:39 +795: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction setting persists -03:39 +796: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Writerside instance selection and icon color persist across renames -03:39 +797: /home/albert/busystack/busymark/test/src/app_settings_test.dart: initial load preserves user actions made before it completes -03:39 +798: /home/albert/busystack/busymark/test/src/app_settings_test.dart: removing a recent workspace persists without affecting files -03:39 +799: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote image permissions persist globally and per workspace -03:39 +800: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust persists, normalizes, and can be cleared -03:39 +801: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust follows the canonical workspace identity -03:39 +802: /home/albert/busystack/busymark/test/src/app_settings_test.dart: stored Git trust does not follow a replaced canonical path -03:39 +803: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git trust preserves leading and trailing path whitespace -03:39 +804: loading /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart -03:40 +804: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: different live prose still reports incomplete instead of guessed mapping -03:40 +805: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: general Markdown fixture has complete Source and rich spelling mappings -03:41 +806: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: live HTML paste preserves prose and maps spelling before a reload -03:41 +807: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: pasted job maps tables, trailing HTML breaks and address barriers -03:41 +808: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: closing hashes are heading syntax only in an ATX heading -03:41 +809: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal unresolved and invalid apparent links checkable -03:41 +810: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection resolves only parser-recognized links and images across revisions -03:41 +811: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal trailing braces in paragraph and heading prose -03:41 +812: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection binds recognized images to their exact source occurrence -03:41 +813: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection orders formatting from image labels and surrounding body -03:41 +814: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognizes nested syntax inside exact image descriptions -03:41 +815: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes only trailing attributes recognized by the current mode -03:41 +816: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata does not split a surrounding Markdown word -03:41 +817: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection corrects a Markdown body word across independent metadata -03:41 +818: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps repeated and formatted prose without searching globally -03:41 +819: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps entities, escapes, links, and table cells source exact -03:41 +820: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps CRLF and repeated occurrence targets exact -03:41 +821: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses barriers around excluded authored syntax -03:41 +822: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes a fenced code block nested in a block quote -03:41 +823: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps quoted list fences across blank continuations -03:41 +824: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection counts tab columns in list fence continuations -03:41 +825: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps unmatched delimiters and removes only parsed formatting -03:41 +826: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps quoted HTML attribute values from quote boundaries -03:41 +827: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection preserves semantic HTML boundaries and multiline exclusions -03:41 +828: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps comparison prose and scans multiline HTML tags exactly -03:41 +829: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps escaped multiline tag-like prose checkable -03:41 +830: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection removes delimiters when a correction empties formatting -03:41 +831: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses parser-compatible percentages escapes and code spans -03:41 +832: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection retains complete formatting ancestors across opaque children -03:41 +833: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection validates formatting gaps in regional coordinates -03:41 +834: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection accepts canonically equivalent mapped replacement text -03:41 +835: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link titles use exact quote boundaries before trailing whitespace -03:41 +836: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized link and image titles use their authored boundaries -03:41 +837: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection destination-only links and images do not expose a false title -03:41 +838: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized multiline links consume one mapped occurrence -03:41 +839: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline link labels keep container prefixes out of prose -03:41 +840: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline mapped labels agree with rich prose and corrections -03:41 +841: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection inline HTML breaks in link labels agree with rich prose -03:41 +842: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection code-styled image alternative text agrees with rich image field -03:41 +843: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code and Markdown hard breaks retain image alt semantics -03:41 +844: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code hard-break corrections retain authored source -03:41 +845: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: list -03:41 +846: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: quote -03:41 +847: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: crlf-after-content -03:41 +848: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: combined-quote-list -03:41 +849: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: nested-image -03:42 +850: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-inner-spaces -03:42 +851: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-continuation-space -03:42 +852: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: literal-code-syntax -03:42 +853: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested image code inherits the enclosing container mapping -03:42 +854: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link title keeps literal inline-break markup as scalar text -03:42 +855: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline code inside a link label stays opaque -03:42 +856: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline nested-image destination stays outside outer prose -03:42 +857: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested label syntax owns its breaks before outer prose resumes -03:42 +858: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata scalar tag-like text remains checkable -03:42 +859: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection parenthesized title replacement escapes its own delimiter -03:42 +860: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection semantic leaf blocks define independent complete prose runs -03:42 +861: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection projects semantic HTML prose and trusts parser math nodes -03:42 +862: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection large formatting-heavy projection and correction stay bounded -03:42 +863: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps inline body words intact across readable attributes -03:42 +864: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection corrects XML body and encoded metadata independently -03:42 +865: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes visible addresses in encoded text and CDATA -03:42 +866: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps text, entities, CDATA, and positive attributes -03:42 +867: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection reports malformed XML as incomplete without guessed targets -03:42 +868: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection clips CDATA occurrences while preserving repeated surrounding text -03:42 +869: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps line breaks, excludes variables, and includes controls -03:42 +870: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes entity-encoded variables after XML decoding -03:42 +871: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps decomposed Unicode in XML and CDATA corrections -03:42 +872: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction nested image descriptions retain recursive spelling policy -03:42 +873: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed rich correction preserves images beside math -03:42 +874: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed table image and math correction preserves cell source -03:42 +875: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction neighboring prose in a math image field keeps exact source -03:42 +876: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image ownership continues across ordinary and math fields -03:42 +877: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image description spelling agrees across source and rich fields -03:42 +878: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich image spelling changes only the mapped source word -03:42 +879: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction container image code corrects after continuation in rich editor -03:42 +880: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction code-styled image alternative corrects through rich controller -03:42 +881: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image code punctuation correction retains literal code meaning -03:42 +882: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction multiline link label correction uses rich controller mapping -03:42 +883: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: # Introduction - -- [Overview](#overview) - - [Motivation](#motivation) -- [Discussion](#discussion) - - -## Overview - -helo **world** - -helo world - -03:42 +884: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - helo - - helo - -helo - -03:42 +885: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - -helo - -03:42 +886: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction escaped comment prose is still an editable rich spelling field -03:42 +887: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps hard breaks by structural field identity -03:42 +888: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction removes a rich formatting container emptied by deletion -03:42 +889: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction retains current source anchors and source-only title targets -03:42 +890: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich links keep all title delimiters source-only -03:42 +891: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves formatting ownership across leaves -03:42 +892: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction keeps trailing formatting on its original leaf -03:42 +893: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves link destination and table structure -03:42 +894: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps and corrects a table-cell field containing inline math -03:42 +895: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects transformed prose in table math source fields -03:42 +896: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects formatted and encoded prose in math source fields -03:42 +897: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction owns every nested wrapper in paragraph math-source fields -03:42 +898: loading /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart -03:44 +898: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: validates availability, finite normalized RGB and payload shape -03:44 +899: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: attaches before snapshot and rejects a superseded snapshot -03:44 +900: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: replays current value, deduplicates and safely resubscribes -03:44 +901: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: missing channels are unavailable and cancellable -03:44 +902: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while snapshot is pending discards its result -03:44 +903: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: silent channels expire locally and unsuperseded late snapshot recovers -03:44 +904: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: new unavailable event invalidates older read and deadline -03:44 +905: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while both native calls pending rejects late errors -03:44 +906: loading /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart -03:45 +906: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project scaffold and loads without diagnostics -03:47 +907: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: derives the starter topic filename from its title -03:47 +908: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project with Unicode directory and instance ID -03:47 +909: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: escapes XML-sensitive project names in writerside.cfg -03:47 +910: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: sanitizes start topic title as plain Markdown heading text -03:47 +911: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects existing non-empty target directory and does not overwrite files -03:47 +912: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects an existing project target symlink without writing through it -03:47 +913: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: canonicalizes a project parent selected through a symlink -03:47 +914: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects unsafe create request names before writing files -03:47 +915: loading /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart -03:48 +915: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: cover edits survive toggling and format changes, validate, reset, and do not leak through preferences -03:51 +916: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: instance changes refresh automatic fields without replacing edited or cleared text -03:52 +917: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: settings without a document show only the reusable cover preference -03:52 +918: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Markdown forwards current defaults and export-owned text -03:53 +919: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Writerside forwards current defaults and export-owned text -03:54 +920: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Markdown forwards current defaults and export-owned text -03:54 +921: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Writerside forwards current defaults and export-owned text -03:55 +922: loading /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart -03:55 +922: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: README screenshot references resolve to checked-in images -03:56 +923: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: release metadata is consistent and production-grade -03:56 +924: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: web engines are exact, checksummed, licensed, and installed offline -03:56 +925: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: D2 is checksum pinned for amd64 and installed with notices -03:56 +926: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: Linux CI builds and exercises the bundled visualization stack -03:56 +927: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: only offscreen WebKit views disable hardware compositing -03:56 +928: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: WebKit host and harness disable persistence and external resources -03:56 +929: loading /home/albert/busystack/busymark/test/src/workspace_safety_test.dart -03:59 +929: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes dialog aborts destructive navigation on cancel -04:00 +930: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discarding unsaved changes prevents repeated prompts -04:00 +931: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: destructive dialog buttons stay readable on dark controls -04:00 +932: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes Discard action renders white in the dark dialog -04:00 +933: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overwrite confirmation stays pinned to the document being saved -04:00 +934: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overlapping manual saves write the newer requested revision -04:00 +935: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: save completes for its buffer when the active document changes -04:00 +936: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As stays pinned while the file picker is open -04:00 +937: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancel does not overwrite an existing normalized markdown path -04:00 +938: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As overwrites an existing normalized markdown path only after confirmation -04:00 +939: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancels when the document changes during path lookup -04:00 +940: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discard confirmation cannot discard a newly active document -04:00 +941: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: workspace continuation resolves inactive dirty documents too -04:00 +942: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can save it while another stays dirty -04:00 +943: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can discard it while another stays dirty -04:01 +944: loading /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart -04:01 +944: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar update retries native channel initialization after early miss -04:01 +945: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar forwards text direction updates -04:01 +946: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar action events preserve repeated identical clicks -04:01 +947: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: native search events and focus request keep semantic meaning -04:01 +948: loading /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart -04:06 +948: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source pastes a web layout table as a complete document -04:07 +949: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (current) -04:09 +950: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (find next) -04:10 +951: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (current) -04:10 +952: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (find next) -04:10 +953: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3 matches -04:11 +954: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3000 matches -04:12 +955: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search navigation retains a later window when unfolding -04:12 +956: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling review caret uses full offsets after an earlier fold -04:12 +957: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling reveal unfolds and retains the word selection -04:12 +958: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Markdown spelling painter ignores selection and tracks composition -04:12 +959: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Writerside Markdown spelling painter ignores selection and tracks composition -04:12 +960: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source XML spelling painter ignores selection and tracks composition -04:13 +961: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI action applies a selection through the editor path -04:13 +962: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu targets the pointer occurrence exactly -04:13 +963: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling language uses a checked native submenu without a dialog -04:13 +964: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu converts folded offsets to full source -04:13 +965: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI applies a user-selected insertion target -04:13 +966: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor remains LTR inside an Arabic interface -04:13 +967: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor shows large-file fallback status -04:34 +968: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor renders visible diagnostic gutter tooltip -04:34 +969: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search localizes an invalid regular expression -04:35 +970: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search reports no current match before navigation -04:35 +971: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source fold and search options use semantic icon buttons -04:35 +972: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace All is one editor operation -04:35 +973: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace and Find Next selects the logical next match -04:35 +974: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: shifted folded regions are persisted after edit debounce -04:35 +975: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source sessions ignore render notifications and coalesce scrolling -04:36 +976: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor gives glyphs, caret, and selection breathing room -04:36 +977: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading selections cover styled glyphs evenly -04:36 +978: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading caret advances after a typed space -04:36 +979: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source caret follows an immediate end-of-file contraction -04:36 +980: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Tab indents selected Source lines without replacing text -04:36 +981: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source symbol shortcuts dispatch the full source caret -04:36 +982: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Ctrl+Space opens project-aware source completion -04:36 +983: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: wordWrap false uses one horizontally scrollable layout -04:36 +984: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source input preserves an active IME composing range -04:36 +985: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Enter to the input method -04:36 +986: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Tab to the input method -04:36 +987: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers autocomplete Escape to the input method -04:36 +988: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers the autocomplete shortcut -04:37 +989: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: focused Source accepts authoritative parent text updates -04:37 +990: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source keyboard copy retains exact whitespace once -04:37 +991: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source normal HTML paste converts while plain paste uses text -04:37 +992: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source CRLF structured paste is one exact undo transaction -04:37 +993: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source plain paste keeps LF bytes in a CRLF document -04:37 +994: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste keeps surrounding text inline -04:37 +995: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured block paste adds Markdown boundaries -04:37 +996: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks keep boundaries at every position - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#f72f5(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#9a58d, undoController: UndoHistoryController#bf26d(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a0485(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#0a492]], state: _TextFieldState#bc8b8), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#e15b3 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#fe596@Offset(425.5, 300.0), RenderSemanticsAnnotations#ba7de@Offset(425.5, 300.0), RenderPointerListener#05f16@Offset(425.5, 300.0), RenderSemanticsGestureHandler#4f69a@Offset(425.5, 300.0), RenderExcludeSemantics#9e2cc@Offset(425.5, 300.0), RenderBlockSemantics#050a8@Offset(425.5, 300.0), RenderIgnorePointer#44f8a@Offset(425.5, 300.0), RenderSemanticsAnnotations#ccd13@Offset(425.5, 300.0), _RenderTheater#43232@Offset(425.5, 300.0), RenderAbsorbPointer#99813@Offset(425.5, 300.0), RenderPointerListener#3dee9@Offset(425.5, 300.0), RenderSemanticsAnnotations#56f4a@Offset(425.5, 300.0), RenderCustomPaint#39aa8@Offset(425.5, 300.0), RenderSemanticsAnnotations#10b3b@Offset(425.5, 300.0), RenderSemanticsAnnotations#161b2@Offset(425.5, 300.0), RenderSemanticsAnnotations#1d6f1@Offset(425.5, 300.0), RenderTapRegionSurface#60f36@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1790@Offset(425.5, 300.0), RenderSemanticsAnnotations#0ba03@Offset(425.5, 300.0), HitTestEntry#5a0d7(_ReusableRenderView#84f48), HitTestEntry#dcea7()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2597:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:37 +997: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete heading list and code blocks retain structure at every paragraph position - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#7f143(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#07120, undoController: UndoHistoryController#83d88(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#50440(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#6f402]], state: _TextFieldState#d438f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#6e197 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#c8e80@Offset(425.5, 300.0), RenderSemanticsAnnotations#21c40@Offset(425.5, 300.0), RenderPointerListener#17dda@Offset(425.5, 300.0), RenderSemanticsGestureHandler#fc8e1@Offset(425.5, 300.0), RenderExcludeSemantics#7e0d7@Offset(425.5, 300.0), RenderBlockSemantics#3a28a@Offset(425.5, 300.0), RenderIgnorePointer#7c9c8@Offset(425.5, 300.0), RenderSemanticsAnnotations#3ea76@Offset(425.5, 300.0), _RenderTheater#c6f28@Offset(425.5, 300.0), RenderAbsorbPointer#75d34@Offset(425.5, 300.0), RenderPointerListener#f6e8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#03ac5@Offset(425.5, 300.0), RenderCustomPaint#830f7@Offset(425.5, 300.0), RenderSemanticsAnnotations#c281d@Offset(425.5, 300.0), RenderSemanticsAnnotations#9b268@Offset(425.5, 300.0), RenderSemanticsAnnotations#eb36a@Offset(425.5, 300.0), RenderTapRegionSurface#6d18c@Offset(425.5, 300.0), RenderSemanticsAnnotations#888f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#d58f4@Offset(425.5, 300.0), HitTestEntry#457c7(_ReusableRenderView#84f48), HitTestEntry#afad0()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#7f143(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#07120, undoController: UndoHistoryController#83d88(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#50440(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#6f402]], state: _TextFieldState#d438f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#6e197 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#5ddce@Offset(425.5, 300.0), RenderSemanticsAnnotations#1e187@Offset(425.5, 300.0), RenderPointerListener#97cb2@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c220a@Offset(425.5, 300.0), RenderExcludeSemantics#e162d@Offset(425.5, 300.0), RenderBlockSemantics#074f9@Offset(425.5, 300.0), RenderIgnorePointer#ed152@Offset(425.5, 300.0), RenderSemanticsAnnotations#56fa6@Offset(425.5, 300.0), _RenderTheater#c6f28@Offset(425.5, 300.0), RenderAbsorbPointer#75d34@Offset(425.5, 300.0), RenderPointerListener#f6e8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#03ac5@Offset(425.5, 300.0), RenderCustomPaint#830f7@Offset(425.5, 300.0), RenderSemanticsAnnotations#c281d@Offset(425.5, 300.0), RenderSemanticsAnnotations#9b268@Offset(425.5, 300.0), RenderSemanticsAnnotations#eb36a@Offset(425.5, 300.0), RenderTapRegionSurface#6d18c@Offset(425.5, 300.0), RenderSemanticsAnnotations#888f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#d58f4@Offset(425.5, 300.0), HitTestEntry#7dc65(_ReusableRenderView#84f48), HitTestEntry#2a20b()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#7f143(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#07120, undoController: UndoHistoryController#83d88(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#50440(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#6f402]], state: _TextFieldState#d438f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#6e197 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#67086@Offset(425.5, 300.0), RenderSemanticsAnnotations#ac3c7@Offset(425.5, 300.0), RenderPointerListener#1e53b@Offset(425.5, 300.0), RenderSemanticsGestureHandler#9cf01@Offset(425.5, 300.0), RenderExcludeSemantics#49e0f@Offset(425.5, 300.0), RenderBlockSemantics#049b6@Offset(425.5, 300.0), RenderIgnorePointer#9b504@Offset(425.5, 300.0), RenderSemanticsAnnotations#151c1@Offset(425.5, 300.0), _RenderTheater#c6f28@Offset(425.5, 300.0), RenderAbsorbPointer#75d34@Offset(425.5, 300.0), RenderPointerListener#f6e8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#03ac5@Offset(425.5, 300.0), RenderCustomPaint#830f7@Offset(425.5, 300.0), RenderSemanticsAnnotations#c281d@Offset(425.5, 300.0), RenderSemanticsAnnotations#9b268@Offset(425.5, 300.0), RenderSemanticsAnnotations#eb36a@Offset(425.5, 300.0), RenderTapRegionSurface#6d18c@Offset(425.5, 300.0), RenderSemanticsAnnotations#888f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#d58f4@Offset(425.5, 300.0), HitTestEntry#8fc79(_ReusableRenderView#84f48), HitTestEntry#7c941()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:38 +998: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete-block split preserves styles caret and one-step Undo -04:38 +999: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source boundary-crossing replacements restore text selection and caret -04:38 +1000: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich inline paste composes with enclosing inline syntax - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#aa945(TextEditingValue(text: ┤[leftright](https://example.test)├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#c0c1c, undoController: UndoHistoryController#dba7f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#f72ca(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7aebf]], state: _TextFieldState#e279e), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#da211 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#d25e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#f6655@Offset(425.5, 300.0), RenderPointerListener#81eba@Offset(425.5, 300.0), RenderSemanticsGestureHandler#b7df0@Offset(425.5, 300.0), RenderExcludeSemantics#f14c0@Offset(425.5, 300.0), RenderBlockSemantics#93c55@Offset(425.5, 300.0), RenderIgnorePointer#3f76e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2d091@Offset(425.5, 300.0), _RenderTheater#dae4a@Offset(425.5, 300.0), RenderAbsorbPointer#6feea@Offset(425.5, 300.0), RenderPointerListener#40d8f@Offset(425.5, 300.0), RenderSemanticsAnnotations#edfda@Offset(425.5, 300.0), RenderCustomPaint#26172@Offset(425.5, 300.0), RenderSemanticsAnnotations#b5302@Offset(425.5, 300.0), RenderSemanticsAnnotations#bb8fe@Offset(425.5, 300.0), RenderSemanticsAnnotations#45995@Offset(425.5, 300.0), RenderTapRegionSurface#de342@Offset(425.5, 300.0), RenderSemanticsAnnotations#0d703@Offset(425.5, 300.0), RenderSemanticsAnnotations#1f003@Offset(425.5, 300.0), HitTestEntry#af8d2(_ReusableRenderView#84f48), HitTestEntry#72986()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2945:28) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2999:22) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:38 +1001: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline reconciliation ignores separate destination runs -04:38 +1002: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source adjacent-style reconciliation preserves literal code delimiters -04:39 +1003: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation preserves a partially consumed delimiter -04:39 +1004: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table inline reconciliation is confined to the selected cell -04:39 +1005: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table keeps multiple independent incoming style runs -04:39 +1006: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source does not treat multiple incoming bold runs as one wrapper -04:39 +1007: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences with paragraph context -04:39 +1008: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences inside table cells -04:39 +1009: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table sequence reconciliation retains authored delimiters -04:39 +1010: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation retains mixed nested styles -04:39 +1011: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves hyperlink semantics in table cells -04:39 +1012: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline mapping handles links multiline styles and literal syntax -04:40 +1013: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret mapping preserves literal bang before a following link -04:40 +1014: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits resolved reference links without changing definitions -04:40 +1015: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits multiline blockquote links without exposing prefixes -04:40 +1016: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves occurrence-specific hard-break provenance -04:40 +1017: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret remains between pasted and retained hard breaks -04:40 +1018: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste after an HTML break does not retain its layout newline -04:40 +1019: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste preserves enclosing inline HTML as one run -04:40 +1020: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source system and history rich paste map normalized HTML whitespace -04:40 +1021: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source syntax-only availability agrees with textual fallback execution -04:40 +1022: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source terminal structured failure blocks availability and text fallback -04:40 +1023: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste remaps generated grouped hard breaks -04:40 +1024: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source remaps reopened grouped breaks in a CRLF container -04:40 +1025: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps nested and reference links through container prefixes -04:41 +1026: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves autolink destination semantics -04:41 +1027: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: invalid email-like text does not invalidate another link target -04:41 +1028: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste distinguishes authored and generated URL content -04:41 +1029: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves parser-folded reference identity -04:41 +1030: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source same-destination paste preserves parser-folded reference identity -04:41 +1031: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste retains the provenance of surviving line breaks -04:41 +1032: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste keeps label break provenance independent of link titles -04:41 +1033: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: normalized code-span breaks do not shift surviving link provenance -04:41 +1034: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste combines folded references with surviving break provenance -04:41 +1035: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste tracks old and new breaks independently -04:42 +1036: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reference-link label replacement retains definitions -04:42 +1037: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps escaped brackets in collapsed and shortcut references -04:42 +1038: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links around unmatched and code-span backticks -04:42 +1039: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links with escaped and balanced label brackets -04:42 +1040: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline wrapper mapping stays bounded for paste and availability -04:43 +1041: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps all retained break offsets in one serialization traversal -04:44 +1042: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source AST boundary mapping stays linear for availability and paste -04:44 +1043: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table paste preserves multiline link titles -04:44 +1044: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table boundary paste preserves styles caret and one-step history -04:44 +1045: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste handles every line boundary -04:44 +1046: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline paste preserves unrelated syntax whitespace and caret - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#b33ca(TextEditingValue(text: ┤__leftright__├, selection: TextSelection.collapsed(offset: 10, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e621b, undoController: UndoHistoryController#943bb(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#0074e(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#06341]], state: _TextFieldState#66482), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#5b075 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#6db19@Offset(425.5, 300.0), RenderSemanticsAnnotations#d9f80@Offset(425.5, 300.0), RenderPointerListener#a870a@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c0ef0@Offset(425.5, 300.0), RenderExcludeSemantics#08ada@Offset(425.5, 300.0), RenderBlockSemantics#3e1a3@Offset(425.5, 300.0), RenderIgnorePointer#63f30@Offset(425.5, 300.0), RenderSemanticsAnnotations#71966@Offset(425.5, 300.0), _RenderTheater#a9712@Offset(425.5, 300.0), RenderAbsorbPointer#1312e@Offset(425.5, 300.0), RenderPointerListener#85c75@Offset(425.5, 300.0), RenderSemanticsAnnotations#a034c@Offset(425.5, 300.0), RenderCustomPaint#f3c29@Offset(425.5, 300.0), RenderSemanticsAnnotations#5c2f6@Offset(425.5, 300.0), RenderSemanticsAnnotations#8f76f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c2d9b@Offset(425.5, 300.0), RenderTapRegionSurface#82c80@Offset(425.5, 300.0), RenderSemanticsAnnotations#c5379@Offset(425.5, 300.0), RenderSemanticsAnnotations#20430@Offset(425.5, 300.0), HitTestEntry#0ac3c(_ReusableRenderView#84f48), HitTestEntry#69b77()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6908:28) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6936:20) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:44 +1047: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table cells reconcile surrounding inline styles -04:44 +1048: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciliation reuses table-normalized inline content -04:45 +1049: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source whole-block replacement differs from surviving table and code contexts - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#a1791(TextEditingValue(text: ┤```text - old - ``` - ├, selection: TextSelection.collapsed(offset: 16, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#7c10c, undoController: UndoHistoryController#b5f9d(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#7f06c(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#742f2]], state: _TextFieldState#d5e30), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#eafcd -The hit test result at that offset is: HitTestResult(RenderMouseRegion#ec7d2@Offset(425.5, 300.0), RenderSemanticsAnnotations#39348@Offset(425.5, 300.0), RenderPointerListener#0abfc@Offset(425.5, 300.0), RenderSemanticsGestureHandler#9d11b@Offset(425.5, 300.0), RenderExcludeSemantics#2768e@Offset(425.5, 300.0), RenderBlockSemantics#417ff@Offset(425.5, 300.0), RenderIgnorePointer#5575c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5ac6f@Offset(425.5, 300.0), _RenderTheater#47a6c@Offset(425.5, 300.0), RenderAbsorbPointer#9452e@Offset(425.5, 300.0), RenderPointerListener#11d7e@Offset(425.5, 300.0), RenderSemanticsAnnotations#6c451@Offset(425.5, 300.0), RenderCustomPaint#edde9@Offset(425.5, 300.0), RenderSemanticsAnnotations#bda68@Offset(425.5, 300.0), RenderSemanticsAnnotations#4a25c@Offset(425.5, 300.0), RenderSemanticsAnnotations#feec4@Offset(425.5, 300.0), RenderTapRegionSurface#ef43e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2dfa3@Offset(425.5, 300.0), RenderSemanticsAnnotations#b62f8@Offset(425.5, 300.0), HitTestEntry#d768a(_ReusableRenderView#84f48), HitTestEntry#ec217()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7158:25) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:45 +1050: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paragraph markers escape only at block starts - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#2ed98(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b93d1, undoController: UndoHistoryController#d0209(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#347d5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#de760]], state: _TextFieldState#197b9), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#2af69 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#54464@Offset(425.5, 300.0), RenderSemanticsAnnotations#fbf67@Offset(425.5, 300.0), RenderPointerListener#70eeb@Offset(425.5, 300.0), RenderSemanticsGestureHandler#a01de@Offset(425.5, 300.0), RenderExcludeSemantics#36714@Offset(425.5, 300.0), RenderBlockSemantics#cff25@Offset(425.5, 300.0), RenderIgnorePointer#6556f@Offset(425.5, 300.0), RenderSemanticsAnnotations#53ec2@Offset(425.5, 300.0), _RenderTheater#d478d@Offset(425.5, 300.0), RenderAbsorbPointer#6356e@Offset(425.5, 300.0), RenderPointerListener#cc65d@Offset(425.5, 300.0), RenderSemanticsAnnotations#8ffa0@Offset(425.5, 300.0), RenderCustomPaint#f372c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5975@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4b8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cf36@Offset(425.5, 300.0), RenderTapRegionSurface#18801@Offset(425.5, 300.0), RenderSemanticsAnnotations#010d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#11627@Offset(425.5, 300.0), HitTestEntry#84a39(_ReusableRenderView#84f48), HitTestEntry#1251c()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#2ed98(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b93d1, undoController: UndoHistoryController#d0209(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#347d5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#de760]], state: _TextFieldState#197b9), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#2af69 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#a6111@Offset(425.5, 300.0), RenderSemanticsAnnotations#dd0da@Offset(425.5, 300.0), RenderPointerListener#eb6ed@Offset(425.5, 300.0), RenderSemanticsGestureHandler#1cbb3@Offset(425.5, 300.0), RenderExcludeSemantics#d378a@Offset(425.5, 300.0), RenderBlockSemantics#e48bf@Offset(425.5, 300.0), RenderIgnorePointer#00e5e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ad1ec@Offset(425.5, 300.0), _RenderTheater#d478d@Offset(425.5, 300.0), RenderAbsorbPointer#6356e@Offset(425.5, 300.0), RenderPointerListener#cc65d@Offset(425.5, 300.0), RenderSemanticsAnnotations#8ffa0@Offset(425.5, 300.0), RenderCustomPaint#f372c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5975@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4b8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cf36@Offset(425.5, 300.0), RenderTapRegionSurface#18801@Offset(425.5, 300.0), RenderSemanticsAnnotations#010d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#11627@Offset(425.5, 300.0), HitTestEntry#35bd0(_ReusableRenderView#84f48), HitTestEntry#766e8()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#2ed98(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b93d1, undoController: UndoHistoryController#d0209(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#347d5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#de760]], state: _TextFieldState#197b9), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#2af69 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#5862a@Offset(425.5, 300.0), RenderSemanticsAnnotations#ac2f4@Offset(425.5, 300.0), RenderPointerListener#1f0ca@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c87bd@Offset(425.5, 300.0), RenderExcludeSemantics#8aad5@Offset(425.5, 300.0), RenderBlockSemantics#f8e70@Offset(425.5, 300.0), RenderIgnorePointer#8771b@Offset(425.5, 300.0), RenderSemanticsAnnotations#87137@Offset(425.5, 300.0), _RenderTheater#d478d@Offset(425.5, 300.0), RenderAbsorbPointer#6356e@Offset(425.5, 300.0), RenderPointerListener#cc65d@Offset(425.5, 300.0), RenderSemanticsAnnotations#8ffa0@Offset(425.5, 300.0), RenderCustomPaint#f372c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5975@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4b8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cf36@Offset(425.5, 300.0), RenderTapRegionSurface#18801@Offset(425.5, 300.0), RenderSemanticsAnnotations#010d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#11627@Offset(425.5, 300.0), HitTestEntry#b2639(_ReusableRenderView#84f48), HitTestEntry#1224d()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7247:24) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#2ed98(TextEditingValue(text: ┤- right├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b93d1, undoController: UndoHistoryController#d0209(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#347d5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#de760]], state: _TextFieldState#197b9), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#2af69 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#fc928@Offset(425.5, 300.0), RenderSemanticsAnnotations#f7aa4@Offset(425.5, 300.0), RenderPointerListener#6aa50@Offset(425.5, 300.0), RenderSemanticsGestureHandler#0f34b@Offset(425.5, 300.0), RenderExcludeSemantics#79eff@Offset(425.5, 300.0), RenderBlockSemantics#79250@Offset(425.5, 300.0), RenderIgnorePointer#1199d@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3823@Offset(425.5, 300.0), _RenderTheater#d478d@Offset(425.5, 300.0), RenderAbsorbPointer#6356e@Offset(425.5, 300.0), RenderPointerListener#cc65d@Offset(425.5, 300.0), RenderSemanticsAnnotations#8ffa0@Offset(425.5, 300.0), RenderCustomPaint#f372c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5975@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4b8c@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cf36@Offset(425.5, 300.0), RenderTapRegionSurface#18801@Offset(425.5, 300.0), RenderSemanticsAnnotations#010d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#11627@Offset(425.5, 300.0), HitTestEntry#8ac8d(_ReusableRenderView#84f48), HitTestEntry#07d1a()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7277:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:45 +1051: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native inline paste preserves edge and only whitespace - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#eae1d(TextEditingValue(text: ┤leftDELETEright├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#ab7ac, undoController: UndoHistoryController#b6409(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#62ef5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#ada55]], state: _TextFieldState#acd37), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#507e1 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#9dcf4@Offset(425.5, 300.0), RenderSemanticsAnnotations#0b822@Offset(425.5, 300.0), RenderPointerListener#93766@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bfa2f@Offset(425.5, 300.0), RenderExcludeSemantics#2785b@Offset(425.5, 300.0), RenderBlockSemantics#a0168@Offset(425.5, 300.0), RenderIgnorePointer#d6dd4@Offset(425.5, 300.0), RenderSemanticsAnnotations#0e7a0@Offset(425.5, 300.0), _RenderTheater#2e390@Offset(425.5, 300.0), RenderAbsorbPointer#4763e@Offset(425.5, 300.0), RenderPointerListener#3a832@Offset(425.5, 300.0), RenderSemanticsAnnotations#63e3a@Offset(425.5, 300.0), RenderCustomPaint#6c25c@Offset(425.5, 300.0), RenderSemanticsAnnotations#531f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#65130@Offset(425.5, 300.0), RenderSemanticsAnnotations#e6b02@Offset(425.5, 300.0), RenderTapRegionSurface#6a271@Offset(425.5, 300.0), RenderSemanticsAnnotations#780ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#92309@Offset(425.5, 300.0), HitTestEntry#7bbc5(_ReusableRenderView#84f48), HitTestEntry#99e0c()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7379:24) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:45 +1052: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native rich edge whitespace repeats and restores real Undo state -04:45 +1053: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paste respects table-cell semantics -04:45 +1054: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps a final table cell ending in an escaped pipe -04:45 +1055: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks preserve list and quote containers -04:45 +1056: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks remain in containers at every content boundary - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#d8861(TextEditingValue(text: ┤> item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#61130 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#e8e03@Offset(425.5, 300.0), RenderSemanticsAnnotations#97c26@Offset(425.5, 300.0), RenderPointerListener#442ab@Offset(425.5, 300.0), RenderSemanticsGestureHandler#19c5c@Offset(425.5, 300.0), RenderExcludeSemantics#db531@Offset(425.5, 300.0), RenderBlockSemantics#55686@Offset(425.5, 300.0), RenderIgnorePointer#fe967@Offset(425.5, 300.0), RenderSemanticsAnnotations#33c2a@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#b44ae(_ReusableRenderView#84f48), HitTestEntry#08beb()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#d8861(TextEditingValue(text: ┤> item - ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#61130 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#ae0b3@Offset(425.5, 300.0), RenderSemanticsAnnotations#a4bd5@Offset(425.5, 300.0), RenderPointerListener#5e24c@Offset(425.5, 300.0), RenderSemanticsGestureHandler#6e741@Offset(425.5, 300.0), RenderExcludeSemantics#bfbe4@Offset(425.5, 300.0), RenderBlockSemantics#05584@Offset(425.5, 300.0), RenderIgnorePointer#d34b5@Offset(425.5, 300.0), RenderSemanticsAnnotations#24c83@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#845e6(_ReusableRenderView#84f48), HitTestEntry#3f4a9()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#d8861(TextEditingValue(text: ┤- item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#61130 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#ff716@Offset(425.5, 300.0), RenderSemanticsAnnotations#e5b85@Offset(425.5, 300.0), RenderPointerListener#528ea@Offset(425.5, 300.0), RenderSemanticsGestureHandler#cb80f@Offset(425.5, 300.0), RenderExcludeSemantics#5b4ea@Offset(425.5, 300.0), RenderBlockSemantics#df741@Offset(425.5, 300.0), RenderIgnorePointer#ecb10@Offset(425.5, 300.0), RenderSemanticsAnnotations#78482@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#d7ba3(_ReusableRenderView#84f48), HitTestEntry#8441e()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#d8861(TextEditingValue(text: ┤- item - ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#61130 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#6ddde@Offset(425.5, 300.0), RenderSemanticsAnnotations#ee0a0@Offset(425.5, 300.0), RenderPointerListener#b9646@Offset(425.5, 300.0), RenderSemanticsGestureHandler#96a5d@Offset(425.5, 300.0), RenderExcludeSemantics#41e13@Offset(425.5, 300.0), RenderBlockSemantics#0e2b3@Offset(425.5, 300.0), RenderIgnorePointer#4dfcf@Offset(425.5, 300.0), RenderSemanticsAnnotations#0e49a@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#47dd2(_ReusableRenderView#84f48), HitTestEntry#d9df5()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#d8861(TextEditingValue(text: ┤> 3. item├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4db40, undoController: UndoHistoryController#b64ac(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0e53(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#819bc]], state: _TextFieldState#d747f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#61130 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#0609f@Offset(425.5, 300.0), RenderSemanticsAnnotations#41c50@Offset(425.5, 300.0), RenderPointerListener#5aa7e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#d4230@Offset(425.5, 300.0), RenderExcludeSemantics#2db0c@Offset(425.5, 300.0), RenderBlockSemantics#c0ab7@Offset(425.5, 300.0), RenderIgnorePointer#9fd6f@Offset(425.5, 300.0), RenderSemanticsAnnotations#1a098@Offset(425.5, 300.0), _RenderTheater#93eed@Offset(425.5, 300.0), RenderAbsorbPointer#d1fa0@Offset(425.5, 300.0), RenderPointerListener#23464@Offset(425.5, 300.0), RenderSemanticsAnnotations#8154c@Offset(425.5, 300.0), RenderCustomPaint#0cbfb@Offset(425.5, 300.0), RenderSemanticsAnnotations#54a4e@Offset(425.5, 300.0), RenderSemanticsAnnotations#2925f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ce8f4@Offset(425.5, 300.0), RenderTapRegionSurface#80fb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ecd0@Offset(425.5, 300.0), RenderSemanticsAnnotations#24cdf@Offset(425.5, 300.0), HitTestEntry#e4650(_ReusableRenderView#84f48), HitTestEntry#7c780()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:46 +1057: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks retain continuation-line ancestors - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#c8104(TextEditingValue(text: ┤- first - leftright - ├, selection: TextSelection.collapsed(offset: 20, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#10642, undoController: UndoHistoryController#187cb(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#8b1f6(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#60853]], state: _TextFieldState#25a5b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#08158 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#ec667@Offset(425.5, 300.0), RenderSemanticsAnnotations#dbfc5@Offset(425.5, 300.0), RenderPointerListener#06bbc@Offset(425.5, 300.0), RenderSemanticsGestureHandler#2e0a6@Offset(425.5, 300.0), RenderExcludeSemantics#2154d@Offset(425.5, 300.0), RenderBlockSemantics#24919@Offset(425.5, 300.0), RenderIgnorePointer#e1973@Offset(425.5, 300.0), RenderSemanticsAnnotations#1da1b@Offset(425.5, 300.0), _RenderTheater#135c8@Offset(425.5, 300.0), RenderAbsorbPointer#bd6f0@Offset(425.5, 300.0), RenderPointerListener#cd283@Offset(425.5, 300.0), RenderSemanticsAnnotations#9548d@Offset(425.5, 300.0), RenderCustomPaint#24917@Offset(425.5, 300.0), RenderSemanticsAnnotations#91136@Offset(425.5, 300.0), RenderSemanticsAnnotations#29b38@Offset(425.5, 300.0), RenderSemanticsAnnotations#6ba8e@Offset(425.5, 300.0), RenderTapRegionSurface#a799b@Offset(425.5, 300.0), RenderSemanticsAnnotations#9515f@Offset(425.5, 300.0), RenderSemanticsAnnotations#3560b@Offset(425.5, 300.0), HitTestEntry#36c30(_ReusableRenderView#84f48), HitTestEntry#f17fd()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#c8104(TextEditingValue(text: ┤- first - - leftright - ├, selection: TextSelection.collapsed(offset: 21, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#10642, undoController: UndoHistoryController#187cb(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#8b1f6(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#60853]], state: _TextFieldState#25a5b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#08158 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#f5ecb@Offset(425.5, 300.0), RenderSemanticsAnnotations#f1b79@Offset(425.5, 300.0), RenderPointerListener#9ffac@Offset(425.5, 300.0), RenderSemanticsGestureHandler#8de17@Offset(425.5, 300.0), RenderExcludeSemantics#54d2f@Offset(425.5, 300.0), RenderBlockSemantics#bac69@Offset(425.5, 300.0), RenderIgnorePointer#09fa8@Offset(425.5, 300.0), RenderSemanticsAnnotations#22e11@Offset(425.5, 300.0), _RenderTheater#135c8@Offset(425.5, 300.0), RenderAbsorbPointer#bd6f0@Offset(425.5, 300.0), RenderPointerListener#cd283@Offset(425.5, 300.0), RenderSemanticsAnnotations#9548d@Offset(425.5, 300.0), RenderCustomPaint#24917@Offset(425.5, 300.0), RenderSemanticsAnnotations#91136@Offset(425.5, 300.0), RenderSemanticsAnnotations#29b38@Offset(425.5, 300.0), RenderSemanticsAnnotations#6ba8e@Offset(425.5, 300.0), RenderTapRegionSurface#a799b@Offset(425.5, 300.0), RenderSemanticsAnnotations#9515f@Offset(425.5, 300.0), RenderSemanticsAnnotations#3560b@Offset(425.5, 300.0), HitTestEntry#d4756(_ReusableRenderView#84f48), HitTestEntry#0b03e()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#c8104(TextEditingValue(text: ┤> first - leftright - ├, selection: TextSelection.collapsed(offset: 18, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#10642, undoController: UndoHistoryController#187cb(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#8b1f6(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#60853]], state: _TextFieldState#25a5b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#08158 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#fc5e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#52d5d@Offset(425.5, 300.0), RenderPointerListener#585da@Offset(425.5, 300.0), RenderSemanticsGestureHandler#be035@Offset(425.5, 300.0), RenderExcludeSemantics#d92a2@Offset(425.5, 300.0), RenderBlockSemantics#b7498@Offset(425.5, 300.0), RenderIgnorePointer#506c0@Offset(425.5, 300.0), RenderSemanticsAnnotations#480a3@Offset(425.5, 300.0), _RenderTheater#135c8@Offset(425.5, 300.0), RenderAbsorbPointer#bd6f0@Offset(425.5, 300.0), RenderPointerListener#cd283@Offset(425.5, 300.0), RenderSemanticsAnnotations#9548d@Offset(425.5, 300.0), RenderCustomPaint#24917@Offset(425.5, 300.0), RenderSemanticsAnnotations#91136@Offset(425.5, 300.0), RenderSemanticsAnnotations#29b38@Offset(425.5, 300.0), RenderSemanticsAnnotations#6ba8e@Offset(425.5, 300.0), RenderTapRegionSurface#a799b@Offset(425.5, 300.0), RenderSemanticsAnnotations#9515f@Offset(425.5, 300.0), RenderSemanticsAnnotations#3560b@Offset(425.5, 300.0), HitTestEntry#4640c(_ReusableRenderView#84f48), HitTestEntry#9efde()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:46 +1058: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source container recovery is bound to the actual nested ancestors -04:46 +1059: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks use list markers rather than task prefixes -04:46 +1060: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source task items keep block kinds at every content position -04:46 +1061: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source checked ordered nested and zero lists retain inserted block kinds -04:46 +1062: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source composes mixed and continuation container ancestors -04:47 +1063: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source protected contexts use the safe source fallback -04:47 +1064: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Writerside Source preserves a structured procedure block -04:47 +1065: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source delayed paste rejects a changed selection -04:47 +1066: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves composition before and during a read -04:47 +1067: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source failed cut keeps text and does not record history -04:47 +1068: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source delayed cut revalidates selection before deletion -04:47 +1069: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: history insertion follows the latest Source selection -04:47 +1070: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history rebases retained media into Source -04:47 +1071: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history restores a local video into Source -04:47 +1072: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: standalone image history ingests and inserts one undoable Source edit -04:47 +1073: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source local image path retains imported bytes once - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#c86ee(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#3dd13, undoController: UndoHistoryController#9ffd3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#d0df7(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#83c4d]], state: _TextFieldState#9928a), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#f1600 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#0d95b@Offset(425.5, 300.0), RenderSemanticsAnnotations#c5c46@Offset(425.5, 300.0), RenderPointerListener#46a0d@Offset(425.5, 300.0), RenderSemanticsGestureHandler#e1e3b@Offset(425.5, 300.0), RenderExcludeSemantics#7dc51@Offset(425.5, 300.0), RenderBlockSemantics#7ccd5@Offset(425.5, 300.0), RenderIgnorePointer#afee7@Offset(425.5, 300.0), RenderSemanticsAnnotations#39cd6@Offset(425.5, 300.0), _RenderTheater#9581f@Offset(425.5, 300.0), RenderAbsorbPointer#0f13e@Offset(425.5, 300.0), RenderPointerListener#6ee06@Offset(425.5, 300.0), RenderSemanticsAnnotations#19710@Offset(425.5, 300.0), RenderCustomPaint#0fc34@Offset(425.5, 300.0), RenderSemanticsAnnotations#242ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#c8fe1@Offset(425.5, 300.0), RenderSemanticsAnnotations#951c9@Offset(425.5, 300.0), RenderTapRegionSurface#41ad9@Offset(425.5, 300.0), RenderSemanticsAnnotations#090c3@Offset(425.5, 300.0), RenderSemanticsAnnotations#e06d3@Offset(425.5, 300.0), HitTestEntry#d00d8(_ReusableRenderView#84f48), HitTestEntry#6c96e()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..expectNormalReplay (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8934:7) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8956:5) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:49 +1074: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: unsafe local image candidates paste their original text - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#0b2df(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#18df5, undoController: UndoHistoryController#c2f7e(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#1e715(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#ccc9d]], state: _TextFieldState#79610), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#53297 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#ecb27@Offset(425.5, 300.0), RenderSemanticsAnnotations#9ee4f@Offset(425.5, 300.0), RenderPointerListener#b5c8a@Offset(425.5, 300.0), RenderSemanticsGestureHandler#87553@Offset(425.5, 300.0), RenderExcludeSemantics#14561@Offset(425.5, 300.0), RenderBlockSemantics#9ab42@Offset(425.5, 300.0), RenderIgnorePointer#32da4@Offset(425.5, 300.0), RenderSemanticsAnnotations#bc4d5@Offset(425.5, 300.0), _RenderTheater#74a2b@Offset(425.5, 300.0), RenderAbsorbPointer#454e5@Offset(425.5, 300.0), RenderPointerListener#53ef7@Offset(425.5, 300.0), RenderSemanticsAnnotations#98e06@Offset(425.5, 300.0), RenderCustomPaint#ba139@Offset(425.5, 300.0), RenderSemanticsAnnotations#cee50@Offset(425.5, 300.0), RenderSemanticsAnnotations#f04b2@Offset(425.5, 300.0), RenderSemanticsAnnotations#629fd@Offset(425.5, 300.0), RenderTapRegionSurface#28ddd@Offset(425.5, 300.0), RenderSemanticsAnnotations#8cf8d@Offset(425.5, 300.0), RenderSemanticsAnnotations#e6cf9@Offset(425.5, 300.0), HitTestEntry#b445b(_ReusableRenderView#84f48), HitTestEntry#6ec59()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9010:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:49 +1075: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: image history asks to save an untitled Source document -04:49 +1076: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: generic XML does not invent Writerside image syntax -04:49 +1077: loading /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart -04:51 +1077: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: reads the initial GTK animation setting -04:51 +1078: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: animation stream follows GTK setting changes -04:51 +1079: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: provider exposes the preloaded value before native events -04:51 +1080: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: missing GTK integration falls back without disabling motion -04:51 +1081: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: native GTK bridge observes and tears down animation preference state -04:51 +1082: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart -04:53 +1082: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -04:54 +1083: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -04:55 +1084: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft -04:55 +1085: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -04:55 +1086: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft -04:56 +1087: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -04:56 +1088: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work -04:56 +1089: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work -04:56 +1090: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work -04:57 +1091: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work -04:57 +1092: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work -04:57 +1093: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET -04:57 +1094: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET -04:57 +1095: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET -04:57 +1096: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit -04:58 +1097: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment -04:58 +1098: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor -04:58 +1099: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity -04:58 +1100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement -04:58 +1101: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart -04:59 +1101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt -04:59 +1102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption -04:59 +1103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -05:00 +1104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary -05:00 +1105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment -05:00 +1106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title -05:00 +1107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category -05:00 +1108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment -05:00 +1109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart -05:01 +1110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment -05:01 +1111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment -05:01 +1112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -05:01 +1113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -05:01 +1114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -05:02 +1115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -05:02 +1116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit -05:02 +1117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit -05:02 +1118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -05:02 +1119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice -05:02 +1120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note -05:02 +1121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -05:02 +1122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions -05:02 +1123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -05:03 +1124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -05:03 +1125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -05:03 +1126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -05:03 +1127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -05:03 +1128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -05:03 +1129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -05:03 +1130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -05:03 +1131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -05:03 +1132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -05:03 +1133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -05:04 +1134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -05:04 +1135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -05:04 +1136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -05:04 +1137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -05:04 +1138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -05:04 +1139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -05:04 +1140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -05:05 +1141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -05:05 +1142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename -05:05 +1143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -05:05 +1144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -05:05 +1145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -05:05 +1146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -05:05 +1147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -05:05 +1148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -05:06 +1149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -05:06 +1150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -05:06 +1151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -05:06 +1152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -05:06 +1153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -05:06 +1154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -05:06 +1155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -05:07 +1156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -05:07 +1157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -05:07 +1158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -05:07 +1159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -05:07 +1160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -05:07 +1161: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart -05:08 +1161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice -05:08 +1162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes -05:08 +1163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice -05:08 +1164: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart -05:08 +1164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty -05:08 +1165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty -05:09 +1166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty -05:09 +1167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body -05:09 +1168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null -05:09 +1169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 -05:09 +1170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file -05:09 +1171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file -05:09 +1172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file -05:09 +1173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file -05:09 +1174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call -05:09 +1175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin -05:09 +1176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched -05:09 +1177: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart -05:09 +1177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations -05:09 +1178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions -05:09 +1179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations -05:10 +1180: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart -05:11 +1180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated -05:11 +1181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated -05:11 +1182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated -05:11 +1183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated -05:12 +1184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated -05:12 +1185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated -05:12 +1186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated -05:12 +1187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated -05:12 +1188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request -05:12 +1189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible -05:12 +1190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content -05:12 +1191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match -05:12 +1192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted -05:12 +1193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state -05:12 +1194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility -05:12 +1195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility -05:12 +1196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility -05:12 +1197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility -05:12 +1198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility -05:12 +1199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility -05:12 +1200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility -05:12 +1201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility -05:12 +1202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects -05:12 +1203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids -05:12 +1204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body -05:12 +1205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence -05:12 +1206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path -05:12 +1207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note -05:12 +1208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials -05:12 +1209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 -05:12 +1210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references -05:12 +1211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference -05:12 +1212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update -05:12 +1213: loading /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart -05:13 +1213: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles default-a4 and preserves document data -05:16 +1214: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles letter-landscape and preserves document data -05:16 +1215: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles legal-serif and preserves document data -05:16 +1216: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles custom-sans and preserves document data -05:17 +1217: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles no-numbers and preserves document data -05:17 +1218: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles numbered-no-outline and preserves document data -05:18 +1219: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomLeft and preserves document data -05:18 +1220: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomCenter and preserves document data -05:18 +1221: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomRight and preserves document data -05:19 +1222: loading /home/albert/busystack/busymark/test/src/app_smoke_test.dart -05:22 +1222: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor shortcuts use documented cross-editor defaults -05:22 +1223: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace resize retains the sidebar and leaves room for header controls -05:24 +1224: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: document view shortcuts are distinct from existing commands -05:24 +1225: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace routes paste shortcuts only to editable document views -05:33 +1226: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace source history restores a pasted URL suffix through undo and redo -05:34 +1227: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app wires generated localization delegates and locales -05:35 +1228: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app boots to BusyMark welcome screen without login UI -05:35 +1229: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (0) -05:35 +1230: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (1) -05:36 +1231: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: false) -05:37 +1232: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: true) -05:38 +1233: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: main menu and F11 toggle full-screen mode -05:38 +1234: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Alt+Left activates the header Back command -05:38 +1235: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: restored capture failure stays owned across Back create discard create -05:40 +1236: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Escape closes header popup menus -05:40 +1237: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: report issue is in the shared main menu, not Settings content -05:40 +1238: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: global reference and settings shortcuts open targets -05:41 +1239: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings screen opens -05:43 +1240: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings uses the regular split sidebar at desktop width -05:43 +1241: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Spelling Dictionaries page groups downloadable and custom data -05:44 +1242: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt uses native controls and submits a trimmed ID -05:50 +1243: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt cancels and saves without redesign -05:55 +1244: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a default-language install keeps the previous selection -05:56 +1245: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: default language persists only after dictionary installation succeeds -06:03 +1246: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: failed dictionary install keeps the default language -06:05 +1247: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a project-language install keeps the previous selection -06:05 +1248: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings main surface matches the headerbar in light and dark -06:05 +1249: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: stored language override localizes app text -06:06 +1250: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: European Portuguese system locale renders the completed base catalog -06:06 +1251: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: language-only Chinese system locale renders the completed base catalog -06:06 +1252: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside project dialog syncs generated fields until edited -06:06 +1253: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts dialog opens from the header -06:07 +1254: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference categories expose supported authoring forms -06:08 +1255: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+Alt+M opens and Escape closes the syntax reference -06:08 +1256: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference remains usable in constrained RTL layout -06:08 +1257: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts tabs section title is localized -06:08 +1258: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: about dialog shows the BusyMark logo -unhandled element ; Picture key: Svg loader -06:09 +1259: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N chooses between Markdown and Writerside creation -06:09 +1260: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N keeps unsaved documents in independent tabs -06:10 +1261: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N creates real CommonMark inside a Writerside workspace -06:11 +1262: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions -06:19 +1263: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions with an available native host -06:24 +1264: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside topic rename uses Preview, Do Refactor, and shared entry points -06:25 +1265: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: topic rename saves every dirty Writerside project source before planning -06:26 +1266: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: tab keyboard shortcuts move and close editor tabs -06:27 +1267: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Git diff files are shown as separate editor tabs -06:28 +1268: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: File History comparison selector shares its row with match navigation -06:28 +1269: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: file tree disables Git file actions without a repository -06:28 +1270: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: sidebar view shortcuts select workspace sidebar tabs -06:30 +1271: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: real Source edits reach the visible Local History list on the fixed deadline -06:31 +1272: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: selected WYSIWYG formatting reaches Local History through workspace callbacks -06:31 +1273: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside sidebar shortcuts survive document view changes -06:34 +1274: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view colors entries by Git status -06:34 +1275: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view shows hidden, empty, and unsupported entries -06:35 +1276: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Arabic -06:35 +1277: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Persian -06:35 +1278: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Arabic untitled workspace stays RTL and diagnostic metadata stays LTR -06:35 +1279: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: RTL topic copy keeps bidi controls out of clipboard data -06:37 +1280: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Copy uses an inactive origin topic open buffer -06:37 +1281: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Paste reviews an inactive dirty tree before moving -06:38 +1282: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source undo cannot restore saved text from previous tab -06:38 +1283: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source groups typing and deletion undo with historical carets -06:38 +1284: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source remount starts a distinct undo group -06:38 +1285: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source view supports editor formatting shortcuts -06:39 +1286: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab and Shift+Tab update indentation in source view -06:39 +1287: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editing toolbar context menu changes persisted layout without toggling -06:40 +1288: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share a frame while Split stays fluid -06:40 +1289: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: rendered views ignore redundant blanks while Source preserves them -06:40 +1290: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: standalone HTML breaks preserve one blank line in every document view -06:40 +1291: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share task-list presentation and wrapping -06:40 +1292: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same quote shell geometry -06:41 +1293: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same code block presentation -06:41 +1294: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share professional heading hierarchy -06:41 +1295: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share admonition and image presentation -06:41 +1296: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Preview renders structured formatted and nested quotes -06:41 +1297: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor undo cannot restore saved text from previous tab -06:41 +1298: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab inserts a tab character in editor view paragraphs -06:42 +1299: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close still warns when active changes are unsaved -06:42 +1300: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close flushes autosave for saved files -06:42 +1301: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: startup path opens a Markdown file workspace -06:42 +1302: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline follows unsaved source headings without live validation -06:42 +1303: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline context menu edits complete heading sections -06:43 +1304: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline highlights the heading at the document viewport -06:45 +1305: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline navigates to a renamed unsaved editor heading -06:47 +1306: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: untitled outline navigates before the first save -06:47 +1307: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview tolerates duplicate heading anchors -06:47 +1308: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading opens an unindexed sibling document link -06:47 +1309: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading linked block and inline images open their targets -06:47 +1310: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: new empty document leaves remembered preview mode for editor -06:47 +1311: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: blocked remote image prompt allows the current workspace -06:47 +1312: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+O open chooser lists recent workspaces -06:48 +1313: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recent workspace menus support pointer and keyboard actions -06:48 +1314: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local images -06:48 +1315: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer blocks remote images by default -06:48 +1316: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths with spaces -06:48 +1317: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths outside workspace -06:48 +1318: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves Snap real-home paths -06:48 +1319: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local SVG images -06:48 +1320: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer rejects oversized local SVGs -06:48 +1321: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer sanitizes embedded SVG image data -06:49 +1322: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer renders generated SVG badges -06:49 +1323: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: header Search button toggles the expanded search field -06:50 +1324: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: native header Search action toggles search and Back visibility -06:50 +1325: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search awaits non-active file reads without blocking builds -06:50 +1326: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search native submit uses exact payload and selected sidebar occurrence -06:52 +1327: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search preserves query and lands on unopened destination -06:53 +1328: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search observes edits to inactive buffers -06:54 +1329: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search reports limits and continues into later files -06:55 +1330: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search exposes skipped files and regex diagnostics -06:56 +1331: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search cancels expensive regex while UI keeps building -06:57 +1332: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search replacement review loads an asynchronous plan -06:57 +1333: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search highlights preserve Unicode offsets -06:58 +1334: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: literal workspace search bounds malformed Markdown snippets around the match -06:58 +1335: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks move preview scroll repeatedly -06:58 +1336: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview lazily builds large documents -06:59 +1337: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks scroll to code block matches -06:59 +1338: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on paragraph after lists -06:59 +1339: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share ordered list styling and geometry -06:59 +1340: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders nested list children -06:59 +1341: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders raw HTML table as table cells -07:00 +1342: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading applies Markdown table column alignment -07:00 +1343: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on code block line -07:00 +1344: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S runs Save for the active workspace -07:00 +1345: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S saves source edits from an untitled Markdown document -07:00 +1346: loading /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart -07:04 +1346: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from preview -07:07 +1347: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from editor -07:09 +1348: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: an open Problems dialog updates its count and math rows -07:10 +1349: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: manual Validate supersedes queued automatic validation and presents once -07:13 +1350: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: failed and stale validation do not show Problems; concurrent clicks publish once -07:14 +1351: loading /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart -07:16 +1351: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside math forms use semantic math nodes and round-trip -07:16 +1352: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: ordinary Markdown does not reinterpret Writerside TeX forms -07:16 +1353: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside semantic and fenced diagrams share visualizers -07:16 +1354: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: referenced diagram source is constrained to the Writerside root -07:16 +1355: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside topic XML exposes TeX and diagrams to shared preview -07:17 +1356: loading /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart -07:19 +1356: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: view changes fade one live editor while ordinary data changes do not -07:19 +1357: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained destinations settle immediately under reduced motion -07:19 +1358: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained crossfade keeps two live pages and hides outgoing UI -07:19 +1359: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: keyed crossfade retains three semantic destinations -07:20 +1360: loading /home/albert/busystack/busymark/test/src/preview_builder_test.dart -07:20 +1360: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview uses one generic label and no compatibility banner -07:20 +1361: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview ignores redundant blank lines between blocks -07:20 +1362: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves an explicit blank line encoded with HTML breaks -07:20 +1363: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview headings carry parser anchors for outline navigation -07:20 +1364: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview blocks carry source locations for search navigation -07:20 +1365: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview source locations survive adjacent list items and code fences -07:20 +1366: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview list text removes Markdown markers -07:20 +1367: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves links inside list items -07:20 +1368: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves nested list children -07:20 +1369: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps ordered list numbering independent at each depth -07:20 +1370: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves inline Markdown semantics -07:20 +1371: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: inline autolinks only support launchable URI schemes -07:20 +1372: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities -07:21 +1373: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces -07:21 +1374: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities -07:21 +1375: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces -07:21 +1376: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview treats single newlines inside paragraphs as soft breaks -07:21 +1377: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview supports common Markdown block variants -07:21 +1378: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves structured and formatted quote children -07:21 +1379: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves source order for code and images -07:21 +1380: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview parses Writerside image attributes -07:21 +1381: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: front matter is skipped only at the top of the document -07:21 +1382: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML paragraph without literal tags -07:21 +1383: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table sections and inline cell formatting -07:21 +1384: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders direct rows under raw HTML table -07:21 +1385: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table captions before the table -07:21 +1386: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders inline raw HTML safely -07:21 +1387: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not make raw HTML links active without href -07:21 +1388: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects absolute local image paths in raw HTML -07:21 +1389: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects deeply nested raw HTML before conversion -07:21 +1390: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders safe raw HTML containers as child content -07:21 +1391: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders top-level raw HTML image as image block -07:21 +1392: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves raw HTML figure caption relationship -07:21 +1393: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview allows safe remote raw HTML links images and citations -07:21 +1394: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps unsafe raw HTML literal -07:21 +1395: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not parse Markdown inside raw HTML blocks -07:21 +1396: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps paired raw HTML blocks together across blank lines -07:21 +1397: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart -07:23 +1397: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields -07:23 +1398: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 -07:23 +1399: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 -07:23 +1400: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 -07:23 +1401: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 -07:23 +1402: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null -07:23 +1403: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version -07:23 +1404: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed -07:23 +1405: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 -07:23 +1406: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately -07:23 +1407: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers -07:23 +1408: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin -07:23 +1409: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 -07:23 +1410: loading /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart -07:24 +1410: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by file-size limits -07:24 +1411: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by document limits -07:24 +1412: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects topic discovery truncated by tree limits -07:24 +1413: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic-root directory listing failure -07:24 +1414: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: topic discovery traverses excluded and hidden directories but not VCS metadata -07:24 +1415: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves a Markdown reference under build -07:26 +1416: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves an XML reference under a hidden directory -07:26 +1417: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a discovered unreadable topic source -07:26 +1418: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates topic and start-page references in every tree -07:26 +1419: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename refactors links, includes, ref entries, and leaves unrelated text -07:26 +1420: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename ignores link-shaped text in image titles and HTML attributes -07:26 +1421: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds reference links outside image titles and HTML attributes -07:26 +1422: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds exact HTML hrefs outside Markdown link and image titles -07:27 +1423: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename follows origin across modules without touching a local namesake -07:27 +1424: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: project-wide rename includes an origin reference in a build module -07:27 +1425: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: renaming a local namesake preserves origin-qualified Markdown XML links -07:27 +1426: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports unquoted origin-qualified raw HTML links -07:27 +1427: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename keeps decoded whitespace safe in unquoted HTML hrefs -07:27 +1428: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates shared Markdown reference definitions once -07:28 +1429: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves escapes required by a Markdown destination -07:28 +1430: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rewrites an XML-encoded topic destination -07:28 +1431: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename escapes decoded XML attribute replacements -07:28 +1432: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates a matching XML topic root id -07:28 +1433: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: missing or mismatched XML root IDs block rename atomically -07:28 +1434: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: prepared rename is read-only and applies its exact captured changes -07:28 +1435: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: stale prepared rename fails before any partial write -07:28 +1436: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preflights collisions only in publishing instances -07:28 +1437: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: origin topic collisions block a project-wide prepared rename -07:28 +1438: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: Unicode Markdown and XML topic filenames rename safely -07:29 +1439: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports Writerside .markdown topics -07:29 +1440: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects duplicate targets and extension changes -07:29 +1441: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves a target created concurrently before exclusive create -07:29 +1442: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete reloads newly configured instances before start-page checks -07:29 +1443: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename does not claim a new same-basename nested reference -07:29 +1444: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename aborts when a concurrent topic changes basename resolution -07:29 +1445: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete aborts when a concurrent topic changes basename resolution -07:29 +1446: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename retains target when an applied tree cannot be rolled back -07:29 +1447: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: cross-module rollback retains a target after another module changes -07:30 +1448: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: clean rollback removes the harmless newly created target -07:30 +1449: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves topic and instance tree file modes -07:30 +1450: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete removes every TOC entry and promotes children in place -07:30 +1451: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic used as any instance start page -07:30 +1452: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects unsafe path components before writing -07:30 +1453: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic replaced by a symlink without touching its target -07:30 +1454: loading /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart -07:31 +1454: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic maps to full and visible line without folds -07:31 +1455: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic inside folded region is aggregated onto its fold header -07:31 +1456: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: folded layout geometry is reused for equal collapsed sets -07:31 +1457: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: incremental gutter layout matches a full measured layout -07:31 +1458: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart -07:34 +1458: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Duplicate Topic is serialized to the native dialog host -07:34 +1459: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Edit Title returns all native field values -07:34 +1460: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: native cancellation remains distinct from an unavailable host -07:35 +1461: loading /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart -07:36 +1461: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps a nested Writerside block to its source block -07:38 +1462: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps selected text when unsourced editor blocks exist -07:38 +1463: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI applies through canonical Markdown source -07:39 +1464: loading /home/albert/busystack/busymark/test/src/document_status_bar_test.dart -07:40 +1464: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: places interactive spelling at start and format at end -07:41 +1465: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: keeps passive format when spelling is unsupported -07:41 +1466: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: truncates a long one-line language without displacing format -07:41 +1467: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: uses directional start and end placement in RTL -07:41 +1468: loading /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart -07:42 +1468: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: detects and preserves UTF-8 BOM, CRLF, and final newline -07:42 +1469: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: preserves a missing final newline when saving edited text -07:42 +1470: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: requires an explicit normalization for mixed line endings -07:42 +1471: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: rejects invalid UTF-8 instead of replacing bytes -07:42 +1472: loading /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart -07:43 +1472: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: autocomplete prioritizes Writerside Markdown authoring suggestions -07:43 +1473: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion derives XML caret context and consumes the project index -07:43 +1474: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion suggests attributes legal for the element at the caret -07:43 +1475: loading /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart -07:47 +1475: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: reads the provider key through the native credential channel -07:47 +1476: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: trims a key before securely storing it -07:47 +1477: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: deletes only the selected provider key -07:47 +1478: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: surfaces the native credential-service failure -07:47 +1479: loading /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart -07:49 +1479: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pristine empty draft discards without protective storage -07:49 +1480: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace replacement retires settled bindings and retains failed baselines -07:49 +1481: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects nonempty content when history is unavailable -07:49 +1482: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects whitespace content when history is unavailable -07:49 +1483: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects edited-empty content when history is unavailable -07:49 +1484: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects recovered content when history is unavailable -07:49 +1485: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects file content when history is unavailable -07:49 +1486: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: background protective retry cannot execute a previously rejected discard -07:49 +1487: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=false) -07:49 +1488: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=true) -07:49 +1489: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=false) -07:50 +1490: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=true) -07:50 +1491: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save cannot adopt a deleted path lineage -07:50 +1492: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: vacant first save retires a stale active history owner -07:50 +1493: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save promotes an established untitled lineage over deleted history -07:51 +1494: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison uses unsaved editor source and whole restore is one undo step -07:51 +1495: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels queued restore protection -07:51 +1496: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All cancels queued restore protection -07:52 +1497: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: region restore is exact, undoable, and rejects stale ranges -07:52 +1498: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed protective capture leaves current document unchanged -07:52 +1499: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restoration rejects a revision from another history document -07:52 +1500: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled history compares and restores through stable identity -07:52 +1501: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing during a delayed reload cancels the stale replacement -07:52 +1502: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reload reparse cannot publish after another buffer becomes active -07:52 +1503: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delete skips binary and excluded history descendants -07:52 +1504: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deleted document restores through normal create flow without overwriting -07:52 +1505: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: missing history restores over an existing file without touching disk and undoes to its real source -07:52 +1506: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing open destination protects unsaved source as the restore undo baseline -07:52 +1507: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing destination restore stops when protection fails or the target changes -07:52 +1508: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: autosaved existing-destination recovery never publishes an empty file -07:52 +1509: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delayed explicit save records exactly the source that was written -07:52 +1510: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history failure cannot turn a successful save into a failure -07:52 +1511: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move keeps edits made during history remap on the destination -07:52 +1512: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reparse cannot publish after a newer edit -07:52 +1513: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move cannot remap a replacement created while loading target -07:52 +1514: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move completion cannot publish into a replacement workspace -07:52 +1515: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: monitor event emitted after invalidation cannot enter reopened workspace -07:52 +1516: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: file monitor lifecycle recovers after a failed stop -07:52 +1517: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing while monitor start is pending still enables workspace events -07:52 +1518: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: folder refresh while monitor start is pending still enables events -07:52 +1519: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed workspace ignores a delayed monitor start completion -07:52 +1520: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed file monitor cannot resume an overtaken start -07:52 +1521: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deferred monitor move cannot enter a replacement workspace -07:52 +1522: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move retains reconciliation when another process checkpoints the old identity -07:52 +1523: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move with no bound identity cannot remap replacement history -07:52 +1524: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion with no bound identity cannot delete replacement history -07:52 +1525: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection retries into the deleted lineage -07:52 +1526: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection survives restart as detached work -07:52 +1527: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move remaps nested open history -07:53 +1528: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move publishes every buffer after one decode failure -07:53 +1529: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closing a tab during an external directory move settles its journal -07:53 +1530: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory deletion marks nested open history deleted -07:53 +1531: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed recursive-delete protection survives restart on its lineage -07:53 +1532: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reconciles closed file history -07:53 +1533: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion reconciles closed file history -07:53 +1534: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce before history reconciliation -07:53 +1535: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce across an unrelated queued event -07:53 +1536: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closed source move cannot steal an open destination lineage -07:53 +1537: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external file move includes identity established by source settlement -07:53 +1538: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move includes identity established by source settlement -07:53 +1539: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: cancelled named Save As detaches source history and reopens separately -07:53 +1540: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recording disabled after first-save publication preserves untitled lineage -07:53 +1541: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, completed pending capture -07:53 +1542: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, failed pending capture -07:53 +1543: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, completed pending capture -07:54 +1544: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, failed pending capture -07:54 +1545: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, completed pending capture -07:54 +1546: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, failed pending capture -07:54 +1547: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As keeps edits made during destination capture out of source history -07:54 +1548: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot claim a dirty open buffer at a missing destination -07:54 +1549: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=false) -07:55 +1550: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=true) -07:55 +1551: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rename remaps a failed unbound baseline to the committed destination -07:55 +1552: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed prepared rename never reaches the filesystem without an execution journal -07:55 +1553: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels a prepared rename before filesystem publication -07:55 +1554: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document retains an executing rename journal across a crash -07:55 +1555: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All retains an executing rename journal across a crash -07:55 +1556: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: targetless executing rename owner survives an ambiguous restart -07:55 +1557: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: move remaps a deferred first-save destination before baseline recovery -07:55 +1558: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive folder move remaps retained baselines for every open descendant -07:56 +1559: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=false) -07:56 +1560: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=true) -07:56 +1561: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed move retries a failed history path reconciliation -07:56 +1562: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: shutdown retries first-save promotion without requiring another edit -07:56 +1563: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: second Save As preserves a failed first-save association as the source -07:56 +1564: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As partitions a failed source checkpoint -07:56 +1565: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As source checkpoint survives process restart -07:56 +1566: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As journals its source before the filesystem commit returns -07:56 +1567: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot publish a second owner when its destination opens in flight -07:56 +1568: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As rechecks destination ownership after opening its workspace -07:56 +1569: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As waits for an unbound live destination history owner -07:56 +1570: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed Save As cannot publish after losing its prepared journal owner -07:56 +1571: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As published after disposal leaves a committed recoverable journal -07:56 +1572: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As commit write failure after disposal uses the session fallback -07:56 +1573: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As publishes destination after a post-publish callback failure -07:57 +1574: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed rename reconciliation survives shutdown and restart -07:57 +1575: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: live owner keeps committed remap journal until its recovery can follow -07:57 +1576: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared rename journal repairs a crash after filesystem commit -07:57 +1577: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed deletion detaches recovery newer than stored history -07:57 +1578: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive deletion evidence cannot consume a sibling recovery -07:57 +1579: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All durably removes a previously persisted path journal -07:57 +1580: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup applies committed destination cleanup before Save As recovery -07:57 +1581: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup keeps untitled first-save source when another tab owns destination -07:57 +1582: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed Save As recovery cannot claim another process tab with the same buffer id -07:57 +1583: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session restore selects recovery by process owner before shared buffer id -07:57 +1584: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed startup reconstruction releases adopted recovery ownership -07:58 +1585: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history retry during slow failed startup cannot erase adopted recovery -07:58 +1586: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session identity restore waits for the authoritative history snapshot -07:58 +1587: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: renamed adopted recovery still honors its original path-operation owner -07:58 +1588: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: replayed durable Clear All preserves newer history -07:59 +1589: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup aborts until replayed clear refresh is authoritative -07:59 +1590: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared deletion journal repairs a crash after filesystem commit -07:59 +1591: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed deletion reconciliation survives shutdown and restart -07:59 +1592: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reopened tab adopts its unresolved first-save history association -07:59 +1593: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: unresolved shutdown promotion survives in session and retries on startup -07:59 +1594: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace rename settles a failed first-save promotion -07:59 +1595: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace directory move settles a nested failed first-save promotion -07:59 +1596: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison renders styled intraline spans without framework errors -08:00 +1597: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison restore actions wait for the current replacement result -08:00 +1598: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace refresh invalidates a completed comparison by source content -08:00 +1599: loading /home/albert/busystack/busymark/test/src/visualization_card_test.dart -08:01 +1599: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: full-screen diagram coordinates its modal and preserves pan/zoom -08:02 +1600: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: retains the last valid diagram and navigates new diagnostics -08:02 +1601: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: fits a small Mermaid diagram to the preview width -08:02 +1602: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: keeps a wide Mermaid diagram readable until fit is requested -08:02 +1603: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: shows searchable OpenAPI operations and opens the native reference -08:02 +1604: loading /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart -08:04 +1604: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: computes the diagnostic offset within fenced source -08:04 +1605: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: WYSIWYG diagnostic selects its actual source line -08:05 +1606: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -08:06 +1606: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -08:08 +1607: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -08:12 +1608: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones -08:13 +1609: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -08:13 +1610: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -08:14 +1611: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -08:14 +1612: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -08:15 +1613: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -08:15 +1614: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -08:16 +1615: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -08:16 +1616: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -08:17 +1617: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -08:17 +1618: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -08:18 +1619: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -08:18 +1620: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -08:18 +1621: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -08:19 +1622: loading /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart -08:20 +1622: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table pipes cannot bind across subsequent cells -08:20 +1623: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: a\|b | a|b -08:20 +1624: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b\|c | a|b|c | -08:20 +1625: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\\\|b | a\\|b | -08:20 +1626: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | a|b\ -08:20 +1627: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | -08:20 +1628: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | `a\|b` | a|b | -08:20 +1629: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped pipes in the table header retain diagnostic positions -08:20 +1630: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | a\|b | a|b | -08:20 +1631: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | `` a\|b | a| | -08:20 +1632: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in block context -08:20 +1633: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in inline context -08:20 +1634: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline caption attributes are checked before tree construction -08:20 +1635: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline colgroup attributes are checked before tree construction -08:20 +1636: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline col attributes are checked before tree construction -08:20 +1637: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline thead attributes are checked before tree construction -08:20 +1638: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tbody attributes are checked before tree construction -08:20 +1639: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tfoot attributes are checked before tree construction -08:20 +1640: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline th attributes are checked before tree construction -08:20 +1641: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline td attributes are checked before tree construction -08:20 +1642: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline URL attributes use HTML entity decoding -08:20 +1643: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text `
Cell
` -08:20 +1644: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text \\\\\
Cell\
-08:20 +1645: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: ```html -08:20 +1646: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe:
Cell
-08:20 +1647: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text
Cell
-08:20 +1648: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html -08:20 +1649: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: -08:20 +1650: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
-08:20 +1651: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
-08:20 +1652: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^unused]: -08:20 +1653: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^used]: -08:20 +1654: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - ```html -08:20 +1655: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` then -08:20 +1656: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` `` -08:20 +1657: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > ```html -08:20 +1658: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - Example -08:20 +1659: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > - `` then -08:20 +1660: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: --- -08:20 +1661: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html -08:20 +1662: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | Code | HTML | -08:20 +1663: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | One | -08:20 +1664: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `a ` -08:20 +1665: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: unsafe Markdown URLs are located at the link, after literal examples -08:20 +1666: loading /home/albert/busystack/busymark/test/src/window_control_service_test.dart -08:22 +1666: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: button and native close requests share one pending confirmation -08:22 +1667: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: initializes prevent-close interception -08:22 +1668: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: toggles full screen and tracks native window-state changes -08:22 +1669: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: no dirty documents closes without dialog -08:22 +1670: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation enabled show dialog -08:22 +1671: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation disabled close directly -08:22 +1672: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: discard closes after disabling prevent-close -08:22 +1673: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save closes only when saving succeeds -08:22 +1674: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save failure keeps the app open -08:22 +1675: loading /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart -08:25 +1675: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: terminal code block gets a non-serializing trailing paragraph -08:25 +1676: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter inserts a newline within one code block -08:25 +1677: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: a code block created by editing also retains a trailing paragraph -08:25 +1678: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: third terminal Enter exits code and removes the two empty lines -08:25 +1679: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: exiting before existing content inserts a transient paragraph -08:25 +1680: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter in the trailing paragraph records an intentional blank -08:25 +1681: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: code Enter stays in the multiline code field -08:26 +1682: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Ctrl+Enter exits into the trailing paragraph -08:27 +1683: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Arrow Down exits a terminal code block -08:28 +1684: loading /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart -08:30 +1684: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: shows only a compact line-ending label -08:30 +1685: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: makes BOM visible and keeps final-newline detail compact -08:30 +1686: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: uses a compact technical label for mixed line endings -08:30 +1687: loading /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart -08:31 +1687: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: ordinary WYSIWYG selection never suppresses spelling underlines -08:31 +1688: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: source spelling correction is one exact transaction -08:32 +1689: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: formatted rich correction preserves structure and publishes once -08:34 +1690: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich image spelling preserves source and one undo step -08:35 +1691: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested code and math spelling preserves source and undo -08:36 +1692: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested address and math spelling preserves source and undo -08:36 +1693: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table image spelling preserves authored cell syntax -08:37 +1694: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed rich image preparation refuses a newer revision -08:37 +1695: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed math image preparation refuses a newer revision -08:37 +1696: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich correction preserves entities and translates later anchors -08:37 +1697: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich hard-break correction keeps later source anchor -08:37 +1698: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table correction preserves encoded cell source -08:38 +1699: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table-cell correction preserves link and publishes sessions once -08:38 +1700: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich underline painter keeps confirmed helo visible at caret -08:38 +1701: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: table cell underline uses the live cell composing range -08:39 +1702: loading /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart -08:40 +1702: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: inlines safe generated CSS into a vector-only SVG -08:40 +1703: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: keeps sanitized foreignObject only in the browser raster input -08:40 +1704: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes SVG and CSS animations -08:40 +1705: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects remote, executable, and escaped CSS URLs -08:40 +1706: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: allows embedded D2-style fonts but rejects remote image attributes -08:40 +1707: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: requires rasterization for CSS the vector inliner cannot preserve -08:40 +1708: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: preserves safe browser-only inline CSS and rasterizes it -08:40 +1709: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes unsafe URLs from inline CSS -08:40 +1710: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: does not claim a vector result when CSS cascade resolution is needed -08:40 +1711: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects declarations, excessive complexity, and invalid dimensions -08:40 +1712: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: applies the size limit to UTF-8 bytes -08:40 +1713: loading /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart -08:41 +1713: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: remote requests reject existing local references before reading dependencies -08:42 +1714: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: resolves local files, hashes them, and terminates circular schemas -08:42 +1715: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: keeps internal-only references independent of a saved path -08:42 +1716: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: rejects remote, absolute, malformed, and unsupported references -08:42 +1717: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: reports an unsaved document that contains a local reference -08:42 +1718: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: converts traversal and symlink escapes into typed diagnostics -08:42 +1719: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: enforces dependency count and byte limits -08:42 +1720: loading /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart -08:43 +1720: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: platform host sends reduced source and geometry over one channel -08:43 +1721: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: Linux player keeps interactive media in a restricted WebKit host -08:44 +1722: loading /home/albert/busystack/busymark/test/src/export_options_test.dart -08:45 +1722: /home/albert/busystack/busymark/test/src/export_options_test.dart: defaults retain PDF geometry and independent HTML reading appearance -08:45 +1723: /home/albert/busystack/busymark/test/src/export_options_test.dart: every option persists and copies without losing unrelated fields -08:45 +1724: /home/albert/busystack/busymark/test/src/export_options_test.dart: absent and malformed persisted values fall back per field -08:45 +1725: /home/albert/busystack/busymark/test/src/export_options_test.dart: geometry resolves dimensions, orientation and four independent margins -08:45 +1726: /home/albert/busystack/busymark/test/src/export_options_test.dart: payload contains resolved geometry and every renderer option as data -08:45 +1727: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -08:48 +1727: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review -08:49 +1728: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab -08:49 +1729: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes -08:49 +1730: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save -08:50 +1731: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) -08:50 +1732: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) -08:50 +1733: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) -08:50 +1734: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) -08:50 +1735: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart -08:50 +1736: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation -08:50 +1737: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox -08:51 +1738: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit -08:51 +1739: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session -08:51 +1740: loading /home/albert/busystack/busymark/test/src/source_folding_test.dart -08:51 +1740: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line starts map to the following source line -08:51 +1741: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects sections lists quotes and code blocks -08:51 +1742: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding keeps shorter fence runs inside dynamic fences -08:51 +1743: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown structures inside fences do not create fold regions -08:51 +1744: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores tags inside multiline comments and CDATA -08:51 +1745: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores greater-than signs inside quoted attributes -08:51 +1746: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding scans opening tags across source lines -08:51 +1747: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding skips processing instructions and declarations -08:51 +1748: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding does not join separate indented code blocks -08:51 +1749: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsed gutter entries preserve source line numbers -08:51 +1750: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsing one repeated markdown subsection keeps peer sections visible -08:51 +1751: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding detects simple multiline tag blocks -08:51 +1752: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects nested headings task lists and blockquotes -08:51 +1753: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding handles nested same-name tags with a stack -08:51 +1754: /home/albert/busystack/busymark/test/src/source_folding_test.dart: malformed xml does not create unsafe fold ranges -08:51 +1755: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line info supports CRLF endings -08:51 +1756: loading /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart -08:52 +1756: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: shipped spelling catalog is metadata-only and revision pinned -08:53 +1757: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: ordinary Linux release does not prepare all-language pairs -08:53 +1758: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: committed spelling checksum inventory matches exact shipped bytes -08:53 +1759: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: native spelling notices are explicit installed artifacts -08:53 +1760: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: strict Snap smoke performs and verifies a local revision transition -08:53 +1761: loading /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart -08:53 +1761: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates and registers an empty instance with build settings -08:54 +1762: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates a non-publishing TOC library instance -08:54 +1763: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: imports selected Markdown and its referenced local media -08:54 +1764: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: renames an instance and refactors documented project references -08:54 +1765: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: first topic added to an empty instance becomes its home page -08:55 +1766: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: invalid project XML blocks an instance ID refactor without changing files -08:55 +1767: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: concurrent config change prevents every instance publication -08:55 +1768: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import copies selected topics, media, and inserts root entries in order -08:55 +1769: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import inserts several siblings after the exact reference in list order -08:55 +1770: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import initializes only the first imported topic as the start page -08:55 +1771: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects batch, existing-ID, target, and invalid-name conflicts -08:55 +1772: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import accepts a Unicode topic filename -08:55 +1773: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects a stale reference identity without publishing files -08:55 +1774: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import discovered-but-unparsed topic basename blocks import -08:55 +1775: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import fails closed when semantic topic discovery is incomplete -08:55 +1776: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import revalidates IDs before publishing and leaves no partial import -08:55 +1777: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import allows an unrelated topic created before publication -08:55 +1778: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects existing and selected-batch topic IDs -08:56 +1779: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects an invalid topic filename -08:56 +1780: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import fails closed on incomplete discovery -08:56 +1781: loading /home/albert/busystack/busymark/test/src/validation_consistency_test.dart -08:56 +1781: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: module load, topic validation, and config validation agree and clear fixes -08:56 +1782: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: editing a target refreshes diagnostics in the referencing topic -08:56 +1783: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variables, comments, interpolation controls and optional includes agree -08:57 +1784: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: interpolated includes agree across load, topic and config validation -08:57 +1785: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variable scope identity includes its declaring topic -08:57 +1786: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: cross-module includes refresh when their target changes -08:57 +1787: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: malformed glossary and keymap XML report the supporting file and clear after repair -08:57 +1788: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: Markdown validation preserves other files and scan warnings while clearing active errors -08:57 +1789: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: linked anchors use dirty buffers and canonical self-links, caching targets -08:57 +1790: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: large buffered targets parse asynchronously and missing saved targets use their buffers -08:58 +1791: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: front matter requires complete delimiter lines with LF and CRLF -08:58 +1792: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: HTML diagnostics exclude prose and literal code without relaxing rendering policy -08:58 +1793: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: location maps are reused within a parse and released between parses -08:58 +1794: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart -08:58 +1794: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes -08:58 +1795: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs -08:58 +1796: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin -08:58 +1797: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success -08:58 +1798: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser -08:58 +1799: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll -08:58 +1800: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll -08:58 +1801: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password -08:58 +1802: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling -08:58 +1803: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints -08:58 +1804: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors -08:58 +1805: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account -08:58 +1806: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics -08:58 +1807: loading /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart -08:59 +1807: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside Markdown collapsible chapter owns its section -08:59 +1808: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown keeps Writerside collapse syntax literal -08:59 +1809: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown does not assign semantic Writerside collapse -08:59 +1810: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside fenced code consumes its collapsible attribute line -08:59 +1811: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: edited collapsible blocks serialize valid Writerside attributes -08:59 +1812: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary fenced code does not consume a collapse attribute line -08:59 +1813: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: semantic collapsible elements become structured preview content -08:59 +1814: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside XML topic preview keeps collapsible content nested -08:59 +1815: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: shared collapse control honors default state and toggles -09:00 +1816: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: WYSIWYG collapses only Writerside chapter content -09:01 +1817: loading /home/albert/busystack/busymark/test/src/export_review_regression_test.dart -09:01 +1817: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside PDF retains percent-encoded non-ASCII footnote labels -09:02 +1818: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: included footnotes use separate document-occurrence namespaces -09:02 +1819: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=false) -09:02 +1820: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=true) -09:02 +1821: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: repeated includes receive distinct nested occurrence IDs -09:02 +1822: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: mapper cannot substitute a diagram for a colliding paragraph -09:02 +1823: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside rejects outside file URIs and symlinks while staging shared-module images -09:02 +1824: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=false) -09:02 +1825: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=true) -09:02 +1826: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=true) -09:02 +1827: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=true) -09:02 +1828: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=false) -09:02 +1829: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=false) -09:03 +1830: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: collapsible headings keep numbering and actual outline order -09:03 +1831: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false #%FF) -09:03 +1832: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false %FF.md) -09:03 +1833: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false file%FF.txt) -09:03 +1834: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true #%FF) -09:03 +1835: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true %FF.md) -09:03 +1836: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true file%FF.txt) -09:03 +1837: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: combined Writerside PDF keeps diagrams and scoped notes without reading an outside image -09:03 +1838: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: ordinary Markdown footnotes compile with retained definitions and repeated references -09:03 +1839: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart -09:04 +1839: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only committed newline and continued typing replace a table-ended selection -09:06 +1840: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table committed newline and continued typing replace a table-ended selection -09:06 +1841: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table committed newline and continued typing replace a table-ended selection -09:07 +1842: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables committed newline and continued typing replace a table-ended selection -09:07 +1843: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=false -09:08 +1844: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Up control=false -09:08 +1845: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=false -09:08 +1846: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Down control=false -09:08 +1847: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=true -09:09 +1848: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=true -09:09 +1849: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing commit uses real input -09:09 +1850: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing cancel uses real input -09:10 +1851: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=false -09:10 +1852: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Up control=false -09:10 +1853: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=false -09:10 +1854: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Down control=false -09:10 +1855: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=true -09:11 +1856: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=true -09:11 +1857: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing commit uses real input -09:11 +1858: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing cancel uses real input -09:11 +1859: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=false -09:12 +1860: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Up control=false -09:12 +1861: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=false -09:12 +1862: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Down control=false -09:12 +1863: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=true -09:13 +1864: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=true -09:13 +1865: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=false -09:13 +1866: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Up control=false -09:13 +1867: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=false -09:13 +1868: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Down control=false -09:14 +1869: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=true -09:14 +1870: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=true -09:14 +1871: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing commit uses real input -09:14 +1872: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing cancel uses real input -09:15 +1873: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=false -09:15 +1874: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Up control=false -09:15 +1875: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=false -09:15 +1876: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Down control=false -09:15 +1877: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=true -09:16 +1878: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=true -09:16 +1879: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing commit uses real input -09:16 +1880: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing cancel uses real input -09:16 +1881: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=false -09:16 +1882: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Up control=false -09:17 +1883: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=false -09:17 +1884: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Down control=false -09:17 +1885: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=true -09:17 +1886: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=true -09:17 +1887: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=false -09:18 +1888: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Up control=false -09:18 +1889: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=false -09:18 +1890: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Down control=false -09:18 +1891: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=true -09:18 +1892: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=true -09:19 +1893: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing commit uses real input -09:19 +1894: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing cancel uses real input -09:19 +1895: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=false -09:19 +1896: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Up control=false -09:20 +1897: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=false -09:20 +1898: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Down control=false -09:20 +1899: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=true -09:21 +1900: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=true -09:21 +1901: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing commit uses real input -09:21 +1902: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing cancel uses real input -09:21 +1903: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=false -09:21 +1904: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Up control=false -09:21 +1905: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=false -09:22 +1906: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Down control=false -09:22 +1907: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=true -09:22 +1908: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=true -09:22 +1909: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=false -09:22 +1910: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Up control=false -09:22 +1911: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=false -09:22 +1912: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Down control=false -09:23 +1913: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=true -09:23 +1914: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=true -09:23 +1915: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: false) -09:23 +1916: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: true) -09:23 +1917: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#80d00(keyId: "0x100000301", keyLabel: "Arrow Down", debugName: "Arrow Down"), previous: LogicalKeyboardKey#88515(keyId: "0x100000304", keyLabel: "Arrow Up", debugName: "Arrow Up"), word: false) -09:24 +1918: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after selection -09:24 +1919: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after document -09:24 +1920: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after same document source -09:24 +1921: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after disposal -09:24 +1922: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=false -09:25 +1923: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=true -09:25 +1924: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: clipboard history replaces selected table through document range -09:25 +1925: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: partial paragraph to table to paragraph replacement preserves outside text and undo -09:25 +1926: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell-local input cut paste and Tab remain local -09:26 +1927: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by up (variant: TargetPlatform.linux) -09:27 +1928: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by cancel (variant: TargetPlatform.linux) -09:27 +1929: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by document (variant: TargetPlatform.linux) -09:28 +1930: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by disposal (variant: TargetPlatform.linux) -09:29 +1931: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=false -09:29 +1932: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=true -09:29 +1933: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=false -09:30 +1934: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=true -09:30 +1935: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=false -09:30 +1936: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=true -09:31 +1937: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=false -09:31 +1938: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=true -09:31 +1939: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=false -09:32 +1940: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=true -09:32 +1941: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=false -09:32 +1942: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=true -09:33 +1943: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=false -09:33 +1944: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=true -09:33 +1945: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=false -09:34 +1946: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=true -09:34 +1947: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=false -09:34 +1948: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=true -09:35 +1949: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=false -09:35 +1950: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=true -09:35 +1951: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=false -09:36 +1952: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=true -09:36 +1953: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=false -09:36 +1954: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=true -09:37 +1955: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=false -09:37 +1956: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=true -09:38 +1957: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=false -09:38 +1958: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=true -09:38 +1959: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=false -09:39 +1960: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=true -09:39 +1961: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=false -09:39 +1962: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=true -09:40 +1963: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=false -09:40 +1964: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=true -09:41 +1965: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=false -09:41 +1966: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=true -09:42 +1967: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=false -09:42 +1968: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=true -09:43 +1969: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=false -09:43 +1970: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=true -09:44 +1971: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local paragraph accepts immediate Unicode input -09:44 +1972: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local cell accepts immediate Unicode input -09:44 +1973: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by caret before handoff -09:44 +1974: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by range before handoff -09:44 +1975: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by document before handoff -09:44 +1976: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by tab replacement before handoff -09:45 +1977: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by disposal before handoff -09:45 +1978: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input retains a scrolled viewport -09:45 +1979: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input uses clamped session offsets -09:45 +1980: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Backspace until committed input -09:46 +1981: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Delete until committed input -09:46 +1982: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Enter until committed input -09:46 +1983: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Left until committed input -09:47 +1984: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Right until committed input -09:47 +1985: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Up until committed input -09:47 +1986: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Down until committed input -09:47 +1987: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Home until committed input -09:47 +1988: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns End until committed input -09:48 +1989: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=false -09:48 +1990: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=true -09:48 +1991: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag up retains committed text input -09:48 +1992: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag cancel retains committed text input -09:48 +1993: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during clipboard preparation -09:49 +1994: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during open menu -09:49 +1995: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=false -09:50 +1996: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=true -09:50 +1997: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false switching a reused editor captures outgoing document selection -09:50 +1998: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true switching a reused editor captures outgoing document selection -09:51 +1999: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false switching a reused editor captures outgoing document selection -09:51 +2000: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true switching a reused editor captures outgoing document selection -09:51 +2001: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false switching a reused editor captures outgoing document selection -09:51 +2002: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true switching a reused editor captures outgoing document selection -09:52 +2003: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false switching a reused editor captures outgoing document selection -09:52 +2004: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true switching a reused editor captures outgoing document selection -09:52 +2005: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=false switching a reused editor captures outgoing document selection -09:53 +2006: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=true switching a reused editor captures outgoing document selection -09:53 +2007: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Cut edits only the selected table -09:53 +2008: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste edits only the selected table -09:54 +2009: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste as Plain Text edits only the selected table -09:54 +2010: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=false -09:54 +2011: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=true -09:54 +2012: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint up restores real typing -09:55 +2013: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint cancel restores real typing -09:55 +2014: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real Select All survives workspace session JSON and editor recreation -09:55 +2015: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real reverse drag survives workspace session JSON and editor recreation -09:55 +2016: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real Select All survives workspace session JSON and editor recreation -09:56 +2017: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real reverse drag survives workspace session JSON and editor recreation -09:56 +2018: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real Select All survives workspace session JSON and editor recreation -09:56 +2019: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real reverse drag survives workspace session JSON and editor recreation -09:56 +2020: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real Select All survives workspace session JSON and editor recreation -09:57 +2021: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real reverse drag survives workspace session JSON and editor recreation -09:57 +2022: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph local reverse selection restores locally -09:58 +2023: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell local reverse selection restores locally -09:58 +2024: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target removed uses current-document fallback -09:59 +2025: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed kind uses current-document fallback -09:59 +2026: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed text uses current-document fallback -09:59 +2027: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned block drag -10:00 +2028: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned cell drag -10:01 +2029: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=false -10:01 +2030: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=true -10:01 +2031: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=false -10:01 +2032: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=true -10:01 +2033: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Delete replaces the selected structured block and undoes -10:01 +2034: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Backspace replaces the selected structured block and undoes -10:02 +2035: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Cut replaces the selected structured block and undoes -10:02 +2036: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Enter replaces the selected structured block and undoes -10:02 +2037: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: plain paste replaces the selected structured block and undoes -10:03 +2038: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: structured paste replaces the selected structured block and undoes -10:03 +2039: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Delete replaces the selected structured block and undoes -10:03 +2040: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Backspace replaces the selected structured block and undoes -10:03 +2041: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Cut replaces the selected structured block and undoes -10:04 +2042: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Enter replaces the selected structured block and undoes -10:04 +2043: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: plain paste replaces the selected structured block and undoes -10:05 +2044: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: structured paste replaces the selected structured block and undoes -10:05 +2045: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Delete replaces the selected structured block and undoes -10:05 +2046: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Backspace replaces the selected structured block and undoes -10:05 +2047: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Cut replaces the selected structured block and undoes -10:06 +2048: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Enter replaces the selected structured block and undoes -10:06 +2049: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: plain paste replaces the selected structured block and undoes -10:06 +2050: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: structured paste replaces the selected structured block and undoes -10:06 +2051: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -10:07 +2052: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -10:07 +2053: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -10:07 +2054: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -10:07 +2055: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -10:07 +2056: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -10:07 +2057: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-ended selection accepts actual committed Unicode input once -10:07 +2058: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: captured table selection restores highlighting copy and mutation -10:08 +2059: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-block drag without changing its endpoint -10:08 +2060: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-cell drag without changing its endpoint -10:08 +2061: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated pointer cannot complete an owned document drag -10:08 +2062: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Delete cannot edit a local fallback -10:08 +2063: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Enter cannot edit a local fallback -10:08 +2064: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document plain paste cannot edit a local fallback -10:08 +2065: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document structured paste cannot edit a local fallback -10:09 +2066: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document typing cannot edit a local fallback -10:09 +2067: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: failed document deletion preserves redo history -10:09 +2068: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after failure -10:10 +2069: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after selection -10:10 +2070: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after document -10:10 +2071: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after disposal -10:10 +2072: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after failure -10:10 +2073: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after selection -10:11 +2074: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after document -10:11 +2075: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after disposal -10:11 +2076: loading /home/albert/busystack/busymark/test/src/busymark_toast_test.dart -10:12 +2076: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast works when hosted above the Navigator -10:13 +2077: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast appears at the bottom center and dismisses itself -10:13 +2078: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast action runs and dismisses the toast -10:13 +2079: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toasts queue instead of covering each other -10:13 +2080: loading /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart -10:14 +2080: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames normalizes runs, edges, case, and Unicode once -10:14 +2081: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames disabled preprocessing preserves established safe characters -10:14 +2082: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames resolves exact custom values per instance for Markdown and XML -10:14 +2083: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/default collision -10:14 +2084: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/custom collision -10:14 +2085: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses custom/custom collision -10:14 +2086: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics allows the same output name in disjoint instances -10:14 +2087: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics deduplicates repeated publication of one physical topic -10:14 +2088: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses a collision with an origin module topic -10:14 +2089: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics resolves conditioned names independently in each instance -10:14 +2090: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses invalid custom filenames before export -10:14 +2091: loading /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart -10:15 +2091: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover preference defaults off, serializes and copies independently -10:15 +2092: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover title and authors use the established metadata precedence -10:15 +2093: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: snapshot metadata, display text, explicit clears and plain JSON remain independent -10:15 +2094: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: instance title uses its display name and only known project metadata -10:15 +2095: loading /home/albert/busystack/busymark/test/src/path_utils_test.dart -10:17 +2095: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries cancels a wide directory listing at the limit -10:17 +2096: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries counts directories against the scan budget -10:17 +2097: /home/albert/busystack/busymark/test/src/path_utils_test.dart: directory listing failure marks traversal incomplete -10:18 +2098: /home/albert/busystack/busymark/test/src/path_utils_test.dart: display scan includes hidden and unsupported entries but not VCS data -10:18 +2099: loading /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart -10:21 +2099: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses multiple commits -10:21 +2100: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses merge commit with multiple parents -10:21 +2101: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: preserves author punctuation and separator-like subject text -10:21 +2102: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses empty history -10:21 +2103: loading /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart -10:22 +2103: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses clean repository status -10:22 +2104: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses modified tracked file -10:22 +2105: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged modification -10:22 +2106: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses unstaged modification -10:22 +2107: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged and unstaged same file -10:22 +2108: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: keeps staged addition and working-tree deletion separate -10:22 +2109: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: tracks rename state independently in each status column -10:22 +2110: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses untracked file -10:22 +2111: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses deleted file -10:22 +2112: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses renamed file -10:22 +2113: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses copied file -10:22 +2114: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses conflicted files -10:22 +2115: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses branch header and ahead behind counts -10:22 +2116: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses detached head header -10:22 +2117: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: preserves spaces, unicode, quotes, and newlines in filenames -10:22 +2118: loading /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart -10:25 +2118: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: process-backed Git gateway requires workspace trust -10:25 +2119: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: configures a repository author identity without terminal setup -10:26 +2120: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: runs core workflow in a temporary Git repository -10:27 +2121: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status lists every non-ignored hidden untracked file -10:27 +2122: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: resets the current branch with each explicit Git reset mode -10:28 +2123: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: refuses to reset while HEAD is detached -10:29 +2124: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: keeps staged and unstaged comparisons separate -10:29 +2125: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged rename diff and unstage preserve both paths -10:29 +2126: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: rollback restores both sides of a staged rename to HEAD -10:29 +2127: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged addition deleted from the working tree keeps separate diffs -10:30 +2128: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: preserves complete deleted content and restores a deleted version -10:30 +2129: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: failed historical blob read cannot delete the working file -10:30 +2130: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: constructs complete text and binary comparisons for untracked files -10:31 +2131: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: direct working-tree operations reject intermediate symlink escapes -10:31 +2132: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: fetch updates remote-tracking status without changing files -10:31 +2133: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: follows renames, compares complete versions, and restores one file -10:32 +2134: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: compares a merge commit with its first parent -10:32 +2135: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: switch treats an option-like branch name as an operand -10:33 +2136: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff and commit details preserve C-quoted UTF-8 paths -10:33 +2137: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: pushSetUpstream does not broaden an option-like branch to --all -10:33 +2138: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: detects conflicted files in a temporary Git repository -10:34 +2139: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status does not run a repository-configured filesystem monitor -10:34 +2140: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff APIs do not run a repository-configured textconv -10:35 +2141: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: commit details do not run a repository-configured textconv -10:35 +2142: loading /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart -10:36 +2142: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner closes child stdin so commands waiting for EOF can finish -10:36 +2143: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates commands that exceed the combined output limit -10:36 +2144: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: normal gateway commands always receive a finite timeout -10:36 +2145: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: gateway classifies a missing commit author identity -10:36 +2146: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap packages the Linux process-group launcher -10:36 +2147: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap Git uses bundled helpers, templates, and SSH -10:36 +2148: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap launcher never falls back to the confined host setsid -10:36 +2149: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves process launcher failures -10:36 +2150: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves a failed version probe result -10:36 +2151: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator reports not found for a genuinely missing command -10:36 +2152: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates descendant processes when a command times out -10:37 +2153: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: timeout covers descendants that outlive the direct child and hold stdio -10:39 +2154: loading /home/albert/busystack/busymark/test/src/git/git_widget_test.dart -10:40 +2154: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: hunk range text hides raw unified diff markers -10:40 +2155: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes are grouped correctly -10:41 +2156: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file checkboxes select files for commit -10:41 +2157: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: a path with staged and unstaged changes appears in both groups -10:41 +2158: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AD path shows staged addition and unstaged deletion without open action -10:41 +2159: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: staged rename preserves both paths and workspace scope -10:41 +2160: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: rename paths follow the selected Git status column -10:41 +2161: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit panel reports staged count and unsaved editor state -10:41 +2162: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message uses the grouped multiline form surface -10:41 +2163: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft is a secondary button immediately before Commit -10:41 +2164: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft replaces text, trims it, and moves the cursor -10:42 +2165: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history requires an active Markdown file -10:42 +2166: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file action menu does not contain commit selection actions -10:42 +2167: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untracked file menu uses an explicit delete action -10:42 +2168: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: unsupported untracked files remain stageable but cannot open -10:42 +2169: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit section colors files by Git status -10:42 +2170: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes view commit panel commits staged files with message -10:42 +2171: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit remains disabled without staged files -10:42 +2172: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: multiline commit message is retained and committed verbatim -10:42 +2173: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: failed commit preserves the commit message -10:42 +2174: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: committing disables actions and retains text until success -10:42 +2175: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message clears when repository or workspace changes -10:42 +2176: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: conflict group is visible -10:42 +2177: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: Git unavailable empty state is shown -10:43 +2178: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untrusted workspace shows repository trust prompt -10:43 +2179: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view shows no repository sync strip when clean -10:43 +2180: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not show branch dropdown -10:43 +2181: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not describe branch sync state -10:43 +2182: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history keeps comparison controls out of the sidebar -10:43 +2183: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history file rows show selected file diff -10:43 +2184: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history reset requires an explicit reset mode -10:43 +2185: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: dirty editor banner appears in diff viewer -10:43 +2186: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff hides duplicate file header but keeps open action -10:43 +2187: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action requires an explicit working-tree target -10:43 +2188: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action uses the explicit current path -10:43 +2189: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff keeps rename paths visible -10:43 +2190: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer renders patch rows with shared source view -10:43 +2191: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff can hide hunk headers and file action -10:43 +2192: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source uses full file snapshot when available -10:43 +2193: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: deleted diff shows the complete removed file snapshot -10:43 +2194: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer scrolls to the first source change on open -10:44 +2195: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source rows use configured editor font size -10:44 +2196: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff context lines show old and new number columns -10:44 +2197: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff line numbers use source gutter geometry -10:44 +2198: loading /home/albert/busystack/busymark/test/src/git/git_controller_test.dart -10:44 +2198: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: diff open target follows the current working-tree context -10:44 +2199: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: refreshes after workspace attach -10:45 +2200: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: does not expose repository Git for a single Markdown file -10:45 +2201: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust-required gateway does not inspect workspace before trust -10:45 +2202: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clearing trust immediately revokes repository access -10:45 +2203: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: status failure after trust retains the detected repository -10:45 +2204: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust is scoped to the attached workspace -10:45 +2205: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: Git executes with the canonical path that was trusted -10:45 +2206: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stage and unstage update state -10:45 +2207: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: loads only the selected change comparison and reconciles after stage -10:45 +2208: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: routes untracked selections to the untracked comparison -10:45 +2209: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: staged rename comparison preserves the original path -10:45 +2210: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: rollback forwards every validated rename path -10:45 +2211: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reactivates an open change comparison tab -10:45 +2212: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks empty message -10:45 +2213: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks when no files are staged -10:45 +2214: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: configures author identity through the active repository -10:45 +2215: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: AI staged-diff fingerprint rejects obsolete commit context -10:45 +2216: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: branch switch requires clean BusyMark editor state -10:45 +2217: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the active editor has unsaved content -10:45 +2218: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the current file is staged -10:45 +2219: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore protects a repository-relative file against the repository root -10:45 +2220: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset uses the selected commit and mode -10:45 +2221: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset is blocked by unsaved editor content -10:45 +2222: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: fetch refreshes repository status -10:45 +2223: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reports Git unavailable state -10:45 +2224: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stores operation failure state -10:45 +2225: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: exposes conflict state -10:45 +2226: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clears previous workspace Git state immediately on attach -10:45 +2227: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale refresh results after workspace switch -10:45 +2228: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: cancels set-upstream push when the workspace changes during remote lookup -10:45 +2229: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale history after a workspace switch -10:45 +2230: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: history tab reloads project history after workspace switch -10:45 +2231: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: current file history scopes selected commit details to the file -10:45 +2232: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file history switches between commit and working-tree comparisons -10:45 +2233: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history loads selected commit details without a file scope -10:45 +2234: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project commit details display the first changed file by default -10:45 +2235: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: selected commit file opens a project commit diff tab -10:45 +2236: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: closing a commit diff file tab activates the neighboring tab -10:45 +2237: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: deactivating a diff file keeps open diff tabs -10:45 +2238: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file and project history paginate and retain separate selections -10:45 +2239: loading /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart -10:46 +2239: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: Enter submits Git identity and preserves global scope -10:47 +2240: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: failed commit saves identity and retries the same commit -10:47 +2241: loading /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart -10:48 +2241: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses added file -10:48 +2242: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses deleted file -10:48 +2243: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses modified file with line numbers -10:48 +2244: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses renamed file -10:48 +2245: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted UTF-8 paths emitted by Git -10:48 +2246: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted rename metadata emitted by Git -10:48 +2247: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses binary file marker -10:48 +2248: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses multiple hunks -10:48 +2249: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: keeps no newline marker as header line -10:48 +2250: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: tolerates unknown diff header lines -10:48 +2251: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart -10:50 +2251: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export failure dialog exposes actionable detail -10:51 +2252: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export eligibility is limited to active regular Markdown -10:51 +2253: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: workspace PDF export accepts a Writerside module instance -10:51 +2254: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: atomic PDF publication never replaces without confirmation -10:51 +2255: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: service rejects compiler output that is not a PDF -10:51 +2256: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler locator prefers the explicit development override -10:51 +2257: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler cancellation force-stops an unresponsive process -10:52 +2258: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: asset staging accepts passive SVG and rejects external content -10:52 +2259: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: Linux packaging pins and installs the bundled Typst compiler -10:52 +2260: loading /home/albert/busystack/busymark/test/src/source_search_test.dart -10:52 +2260: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex uses Unicode code points and diagnoses zero-length matches -10:52 +2261: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace-style bounded matching stops after the sentinel match -10:52 +2262: /home/albert/busystack/busymark/test/src/source_search_test.dart: search worker terminates a running backtracking expression -10:52 +2263: /home/albert/busystack/busymark/test/src/source_search_test.dart: plain search finds case-insensitive matches by default -10:52 +2264: /home/albert/busystack/busymark/test/src/source_search_test.dart: case-sensitive and whole-word options constrain matches -10:52 +2265: /home/albert/busystack/busymark/test/src/source_search_test.dart: whole-word boundaries recognize Unicode letters and marks -10:52 +2266: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex search and invalid regex are safe -10:52 +2267: /home/albert/busystack/busymark/test/src/source_search_test.dart: navigation tracks current index and wraps -10:52 +2268: /home/albert/busystack/busymark/test/src/source_search_test.dart: matches inside folded content are marked hidden and revealable -10:52 +2269: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace search groups authoring content by file -10:52 +2270: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker cancels stale requests -10:52 +2271: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker bounds transferred high-match results -10:52 +2272: loading /home/albert/busystack/busymark/test/src/source_commands_test.dart -10:53 +2272: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab inserts spaces -10:53 +2273: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab indents selected lines without replacing their text -10:53 +2274: /home/albert/busystack/busymark/test/src/source_commands_test.dart: indent and outdent selected lines -10:53 +2275: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter continues unordered ordered task and blockquote lines -10:53 +2276: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter exits empty list item -10:53 +2277: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts for nested source lines -10:53 +2278: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts beneath each source parent -10:53 +2279: /home/albert/busystack/busymark/test/src/source_commands_test.dart: inline commands toggle bold italic code and links -10:53 +2280: /home/albert/busystack/busymark/test/src/source_commands_test.dart: code fence and image insertion keep source-specific placeholders -10:53 +2281: /home/albert/busystack/busymark/test/src/source_commands_test.dart: block insertion accepts localized default content -10:53 +2282: loading /home/albert/busystack/busymark/test/src/source_highlighter_test.dart -10:54 +2282: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: source highlighting bounds high-match span composition -10:55 +2283: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter colors editor syntax -10:55 +2284: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter formats fenced code -10:55 +2285: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter tracks dynamic fence delimiters -10:55 +2286: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter does not open on indented code -10:55 +2287: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: xml source highlighter colors tags attributes and strings -10:55 +2288: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: plain source highlighter keeps normal editor text color -10:55 +2289: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: controller can keep editable text transparent for custom render -10:55 +2290: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: transparent editing layout matches rendered Markdown layout -10:55 +2291: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions project body lines out of editable text -10:55 +2292: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: rendered folded regions hide collapsed header text -10:55 +2293: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions collapse measured editor height -10:55 +2294: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown editor keeps syntax markers visible while styling content -10:55 +2295: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown tracks dynamic fence delimiters -10:55 +2296: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges nested emphasis inside links -10:55 +2297: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps inline code inside list items -10:55 +2298: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges bold and italic nesting -10:55 +2299: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges links inside blockquotes -10:55 +2300: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps emphasis inside table cells -10:55 +2301: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter recognizes math without damaging code -10:55 +2302: loading /home/albert/busystack/busymark/test/src/html_export_options_test.dart -10:57 +2302: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: TOC and numbering use the semantic hierarchy and preserve anchor IDs -10:57 +2303: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.light emits complete color variables, responsive width and metadata -10:57 +2304: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.dark emits complete color variables, responsive width and metadata -10:57 +2305: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.automatic emits complete color variables, responsive width and metadata -10:57 +2306: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: custom CSS follows generated rules and is captured before processing -10:58 +2307: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF CSS hashes the text seen by the HTML parser -10:58 +2308: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF custom and built-in CSS apply in Chromium -11:01 +2309: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF CSS hashes the text seen by the HTML parser -11:01 +2310: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF custom and built-in CSS apply in Chromium -11:02 +2311: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR CSS hashes the text seen by the HTML parser -11:02 +2312: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR custom and built-in CSS apply in Chromium -11:03 +2313: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: single-file attachments retain download names and reject source data URLs -11:03 +2314: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CSS rejects unsafe URLs, imports, HTML, unreadable and oversized files -11:03 +2315: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: repeated embedded assets are bounded before publication and keep old output -11:03 +2316: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.singleFile packages validated assets without source paths or fetching -11:03 +2317: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.assetsDirectory packages validated assets without source paths or fetching -11:03 +2318: loading /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart -11:04 +2318: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: navigation glyphs resolve for both reading directions -11:04 +2319: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: editing glyphs resolve for both reading directions -11:04 +2320: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git branch glyph does not mirror with reading direction -11:04 +2321: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git action glyphs have native menu equivalents -11:04 +2322: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Arabic and Persian font fallbacks are available in the snap -11:04 +2323: loading /home/albert/busystack/busymark/test/src/source_comparison_test.dart -11:05 +2323: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: keeps separated edits as exact separate changes -11:05 +2324: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: handles repeated lines without losing exact offsets -11:05 +2325: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: refines Unicode intraline ranges on UTF-16 boundaries -11:05 +2326: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: distinguishes whitespace, final newline, empty, and XML changes -11:05 +2327: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: labels an unanchored expensive comparison as simplified -11:05 +2328: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: version identity detects stale comparison inputs -11:05 +2329: loading /home/albert/busystack/busymark/test/src/writerside_project_test.dart -11:07 +2329: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers modules, indexes symbols, and resolves origin references -11:08 +2330: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under build -11:08 +2331: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under a hidden directory -11:08 +2332: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: module discovery hard-excludes VCS metadata directories -11:08 +2333: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic ownership is project-wide and prefers the nested module -11:08 +2334: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace promotes a parent directory to a multi-module project -11:08 +2335: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic symbols cannot be renamed independently of their files -11:08 +2336: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace module and instance selection changes active context -11:08 +2337: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse overlays indexed symbols and preserves unrelated diagnostics -11:08 +2338: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of variables updates completion and resolution without reopening -11:08 +2339: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of an instance tree updates active project context -11:08 +2340: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: BusyMark matches the official builder semantic snapshot for the fixture -11:08 +2341: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: conformance fixture preserves source and resolves semantic content -11:08 +2342: loading /home/albert/busystack/busymark/test/src/math_renderer_test.dart -11:09 +2342: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: renders multiple expressions in one batch and isolates failure -11:09 +2343: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: coalesces a large page, caches successes, and rebases local IDs -11:09 +2344: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: deduplicates identical formulas pending in the same batch -11:09 +2345: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: discards an obsolete block revision -11:09 +2346: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: cancels WebKit work after a sole request is superseded -11:09 +2347: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: maps timeout and unavailable hosts to local math failures -11:09 +2348: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rejects oversized input before invoking WebKit -11:09 +2349: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: extracts baseline style and preserves vector-safe MathJax SVG -11:09 +2350: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: resolves currentColor without flattening explicit SVG colors -11:09 +2351: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rebases wide MathJax coordinates before secure normalization -11:09 +2352: loading /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart -11:10 +2352: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: stages vector/raster assets, maps OpenAPI, and preserves failed source -11:13 +2353: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: enforces the export block count without failing the document -11:13 +2354: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: loads a Writerside referenced diagram before PDF rendering -11:13 +2355: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: static OpenAPI export contains selectable reference sections -11:13 +2356: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: Typst exports generated vector/raster assets and falls back on failure -11:13 +2357: loading /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart -11:14 +2357: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: parses every GTK 3 decoration token in physical order -11:14 +2358: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: ignores unknown controls and actions safely -11:14 +2359: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: loads preferences and delegates the narrowly scoped lower action -11:14 +2360: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: window preference values have stable equality -11:14 +2361: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: null decoration layout uses the documented GTK 3 default -11:14 +2362: loading /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart -11:16 +2362: /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart: release smoke report path requires an explicit nonempty argument -11:16 +2363: loading /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart -11:18 +2363: /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart: spelling release smoke requires an explicit guarded report path -11:18 +2364: loading /home/albert/busystack/busymark/test/src/system_accent_test.dart -11:19 +2364: /home/albert/busystack/busymark/test/src/system_accent_test.dart: uses the native Yaru orange accent as the offline fallback -11:19 +2365: /home/albert/busystack/busymark/test/src/system_accent_test.dart: keeps exact RGB portal accent color values authoritative -11:19 +2366: /home/albert/busystack/busymark/test/src/system_accent_test.dart: maps Ubuntu accent names when RGB portal value is unavailable -11:19 +2367: /home/albert/busystack/busymark/test/src/system_accent_test.dart: falls back to RGB when the Ubuntu accent is unavailable -11:19 +2368: /home/albert/busystack/busymark/test/src/system_accent_test.dart: Yaru accent wins over a different generic portal RGB -11:19 +2369: /home/albert/busystack/busymark/test/src/system_accent_test.dart: a Yaru accent signal remains authoritative over generic RGB -11:19 +2370: /home/albert/busystack/busymark/test/src/system_accent_test.dart: an unavailable named accent releases the current generic RGB -11:19 +2371: /home/albert/busystack/busymark/test/src/system_accent_test.dart: portal subscribes before both reads and retains changes during reads -11:19 +2372: /home/albert/busystack/busymark/test/src/system_accent_test.dart: missing portal keys, malformed signals, cancellation and resubscription -11:19 +2373: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic portal initialization cannot overwrite a newer generic change -11:19 +2374: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=true; unavailability selects current portal -11:19 +2375: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=false; unavailability selects current portal -11:19 +2376: /home/albert/busystack/busymark/test/src/system_accent_test.dart: source errors remain independent and healthy native updates continue -11:19 +2377: /home/albert/busystack/busymark/test/src/system_accent_test.dart: startup changes supersede native snapshots, including unavailable changes -11:19 +2378: /home/albert/busystack/busymark/test/src/system_accent_test.dart: disposal completes pending startup and cancels each owned source once -11:19 +2379: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid GTK releases startup while portal reads stay pending -11:19 +2380: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic signal cannot resolve startup before pending named read -11:19 +2381: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid named portal releases startup without pending RGB -11:19 +2382: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending GTK blocks ready portal until GTK arrives before deadline -11:19 +2383: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on unavailable -11:19 +2384: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on failure -11:19 +2385: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on deadline -11:19 +2386: /home/albert/busystack/busymark/test/src/system_accent_test.dart: all silent sources time out to orange and late sources recover -11:19 +2387: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending initialization disposal cancels timers and portal session once -11:19 +2388: loading /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart -11:22 +2388: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=false section order and native links -11:22 +2389: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=true section order and native links -11:22 +2390: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=false section order and native links -11:23 +2391: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=true section order and native links -11:23 +2392: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=false section order and native links -11:23 +2393: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=true section order and native links -11:23 +2394: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=false section order and native links -11:23 +2395: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=true section order and native links -11:23 +2396: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: multipage native outline ends before any body paragraphs; links and page references stay correct -11:24 +2397: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=bottomCenter -11:24 +2398: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=off -11:24 +2399: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=bottomCenter -11:24 +2400: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=off -11:24 +2401: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif portrait margins -11:25 +2402: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif landscape margins -11:25 +2403: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif portrait margins -11:25 +2404: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif landscape margins -11:26 +2405: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: request defaults come from source metadata and native outline title stays localized -11:26 +2406: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: an oversized cover fails clearly and leaves the existing PDF untouched -11:26 +2407: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in sansSerif -11:26 +2408: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in serif -11:26 +2409: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+a0 fails without replacing the PDF -11:27 +2410: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+2060 fails without replacing the PDF -11:27 +2411: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within A4 cover bounds or fails without replacing the PDF -11:27 +2412: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within A4 cover bounds or fails without replacing the PDF -11:28 +2413: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within A4 cover bounds or fails without replacing the PDF -11:28 +2414: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within A4 cover bounds or fails without replacing the PDF -11:28 +2415: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within A4 cover bounds or fails without replacing the PDF -11:28 +2416: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within A4 cover bounds or fails without replacing the PDF -11:29 +2417: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within narrow custom cover bounds or fails without replacing the PDF -11:29 +2418: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within narrow custom cover bounds or fails without replacing the PDF -11:29 +2419: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within narrow custom cover bounds or fails without replacing the PDF -11:29 +2420: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within narrow custom cover bounds or fails without replacing the PDF -11:29 +2421: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within narrow custom cover bounds or fails without replacing the PDF -11:29 +2422: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within narrow custom cover bounds or fails without replacing the PDF -11:30 +2423: loading /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart -11:30 +2423: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: workspace spelling UI has no obsolete floating or Material chooser -11:30 +2424: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Writerside nested TOC and comment retain rich spelling through correction -11:36 +2425: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich image review preserves authored source through undo and redo -11:40 +2426: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested code image beside math through undo and redo -11:43 +2427: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested address image beside math through undo and redo -11:46 +2428: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Ctrl+N typing paints live spelling targets and corrects with undo -11:49 +2429: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: confirmed spelling underline survives continued typing -11:50 +2430: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo café - -wrld - -11:52 +2431: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo -world - -wrld - -11:55 +2432: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: | helo café | -| --- | -| hello | - -wrld - -11:58 +2433: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in editor -11:58 +2434: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in split -11:59 +2435: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: language-required state uses compact document status instead of a banner -12:00 +2436: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: general Markdown fixture finishes automatic rich spelling -12:05 +2437: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in editor -12:06 +2438: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in source -12:07 +2439: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new rich document checks spelling after choosing its language -12:09 +2440: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new source document checks spelling after choosing its language -12:10 +2441: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in editor mode -12:11 +2442: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in source mode -12:11 +2443: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in preview mode -12:12 +2444: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in split mode -12:13 +2445: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: spelling-off status remains an actionable language control -12:14 +2446: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: status initializes the chooser when automatic spelling is off -12:15 +2447: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: banner installs the required dictionary and then conceals -12:17 +2448: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed banner installation keeps the unresolved state -12:18 +2449: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: routine checking does not create persistent editor chrome -12:19 +2450: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic spelling failure is visible in the compact banner -12:19 +2451: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic incomplete projection is visible in the compact banner -12:20 +2452: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: native spelling submenu applies immediate language choices -12:21 +2453: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: cancelling document dictionary install preserves override -12:22 +2454: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: document language changes only after dictionary installation -12:25 +2455: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed document dictionary install preserves override -12:27 +2456: loading /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart -12:27 +2456: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: native fragment preserves formatting and structured blocks through JSON -12:28 +2457: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: single rich paragraphs preserve list descendants through source -12:28 +2458: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: fragment rejects invalid versions, ranges, kinds, and excessive nesting -12:28 +2459: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: relative links are rebased for another document -12:28 +2460: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: inline images retain their source media path between projects -12:28 +2461: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Writerside structure survives the fragment and insertion -12:28 +2462: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: styled table-cell insertion preserves emphasis and table structure -12:28 +2463: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard service serializes writes and reads the latest result -12:28 +2464: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard HTML carries headings, emphasis, tasks, tables, and code -12:28 +2465: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: external HTML blockquotes survive Editor serialization -12:28 +2466: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard fragment serializes its selected structure as Markdown -12:28 +2467: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: HTML normalization preserves supported CSS and checkbox state safely -12:28 +2468: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=false) -12:30 +2469: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=true) -12:30 +2470: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix < survives Enter, source reload and label edit -12:31 +2471: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix *< survives Enter, source reload and label edit -12:31 +2472: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix * survives Enter, source reload and label edit -12:31 +2473: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: © -12:32 +2474: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: & -12:32 +2475: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: &* -12:32 +2476: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=false) -12:32 +2477: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=true) -12:33 +2478: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard pasted URL retains live link coverage through split, Backspace and suffix formatting -12:33 +2479: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard fresh Editor restores system clipboard formatting and undo -12:33 +2480: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor pastes a web layout table as a complete document -12:34 +2481: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete heading list and code blocks retain structure at every paragraph position -12:35 +2482: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete blocks in list items preserve descendants and undo tree -12:36 +2483: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard single rich paragraph field replacement preserves every list subtree -12:36 +2484: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste keeps the committed caret and typing position -12:36 +2485: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard rich paste in math fields uses source coordinates -12:37 +2486: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste returns the committed block caret -12:37 +2487: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste preserves list descendants through Undo and Redo -12:37 +2488: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste persists intentional whitespace through history -12:38 +2489: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document paste preserves whitespace and heading replacement scope -12:38 +2490: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste restores table-cell focus and committed caret -12:38 +2491: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history multi-paragraph paste focuses the committed last paragraph -12:39 +2492: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copy all does not duplicate nested list children -12:39 +2493: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document copy preserves a structured blockquote -12:39 +2494: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard right-click opens the menu for a whole-document selection -12:39 +2495: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image-only clipboard context menu offers only normal Paste -12:39 +2496: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Copy Plain Text strips formatting in another Editor -12:40 +2497: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard document selection menu can copy plain text -12:40 +2498: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard partial inline copy keeps formatting inside another paragraph -12:40 +2499: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut transfers formatting before deleting the selection -12:40 +2500: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard malformed native fragment falls back to HTML -12:40 +2501: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML-only clipboard imports into a fresh Editor -12:40 +2502: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML clipboard plain paste inserts only its text -12:40 +2503: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard retained external HTML preserves structure on history paste -12:41 +2504: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard current HTML-only and malformed HTML use ordinary importer fallbacks -12:41 +2505: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard external image history retains the bytes ingested before its dialog -12:45 +2506: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history panel path paste has one editor-owned retention write -12:48 +2507: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copied local video can be pasted from history in Editor -12:49 +2508: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image paste cancellation is terminal and cleans new assets -12:53 +2509: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image picker alternatives stay provisional until acceptance -13:05 +2510: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image finalization failure preserves the inserted reference and file -13:07 +2511: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard native and history image filesystem failures are handled outcomes -13:07 +2512: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain history paste replaces a document selection ending at a non-field block -13:07 +2513: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image history follows table and multi-block destinations -13:09 +2514: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Ctrl+Shift+V pastes only interoperable plain text -13:10 +2515: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste never probes or ingests an existing image path -13:10 +2516: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard failed clipboard write leaves cut selection intact -13:10 +2517: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste does not edit a destination changed during the read -13:10 +2518: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor paste preserves composition before and during reads -13:10 +2519: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard table-cell paste shortcut is consumed during composition -13:10 +2520: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard composition starting during image ingestion invalidates and cleans paste -13:11 +2521: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut does not delete a selection changed during the write -13:11 +2522: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste is cancelled when the destination Editor is replaced -13:12 +2523: loading /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart -13:13 +2523: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed light surface palette -13:14 +2524: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed dark surface palette -13:14 +2525: loading /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart -13:16 +2525: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title edit preserves the resolved topic owner across modules -13:17 +2526: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ") -13:17 +2527: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ") -13:17 +2528: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ') -13:17 +2529: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ') -13:17 +2530: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ") -13:18 +2531: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ") -13:18 +2532: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ') -13:18 +2533: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ') -13:18 +2534: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: normalized title identity still rejects changed content and raw matching stays exact -13:18 +2535: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects missing attribute ranges before publication -13:18 +2536: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects corrupt attribute ranges before publication -13:18 +2537: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title publication rejects duplicate attributes in resulting XML -13:18 +2538: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (") -13:18 +2539: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (') -13:18 +2540: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: instance title save, reopen, unchanged OK, and edit keep one escaping layer -13:20 +2541: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: single-quoted Markdown override reopens decoded and edits without touching example -13:20 +2542: loading /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart -13:21 +2542: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: production provider consumes an older GTK accent without portals -13:21 +2543: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: non-Linux never creates platform listeners -13:21 +2544: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: missing native snapshot uses portal, then native events regain priority -13:21 +2545: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: GTK with silent portals -13:22 +2546: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: named with silent RGB -13:22 +2547: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK before deadline -13:22 +2548: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK at deadline -13:22 +2549: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes valid -13:22 +2550: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes unavailable -13:22 +2551: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named at deadline -13:22 +2552: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: all silent at deadline -13:22 +2553: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: application scope teardown cancels unresolved startup deadlines -13:22 +2554: loading /home/albert/busystack/busymark/test/src/markdown_parser_test.dart -13:23 +2554: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parsed formatting boundaries -13:23 +2555: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping locates partially consumed delimiter runs -13:23 +2556: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping retains escaped collapsed references -13:23 +2557: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping keeps original autolink semantics -13:23 +2558: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping preserves supported autolink variants -13:23 +2559: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parser case folding for references -13:23 +2560: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: ordinary reference parsing retains pinned sharp-S folding behavior -13:23 +2561: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: invalid email-like text cannot orphan a later mapped link -13:23 +2562: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects logical content to container source -13:23 +2563: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: positioned block mapping accepts a trailing empty logical line -13:23 +2564: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping ignores title and code-span source breaks -13:23 +2565: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping keeps each hard-break occurrence range -13:23 +2566: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping matches standalone HTML break layout -13:23 +2567: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects HTML break layout through containers -13:23 +2568: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: HTML break layout mapping preserves soft breaks and literal code -13:23 +2569: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts title, outline, links, images, and code fences -13:24 +2570: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts front matter title -13:24 +2571: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside Markdown title comes from H1, not front matter -13:24 +2572: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside front matter title does not satisfy missing H1 -13:24 +2573: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: parseAsync handles documents above the background threshold -13:24 +2574: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates Unicode heading anchors for supported languages -13:24 +2575: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deduplicates generated heading IDs in source order -13:24 +2576: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates heading IDs from semantic inline text -13:24 +2577: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: canonicalizes valid ATX and setext heading variants -13:24 +2578: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: retains Writerside title when complex list source needs fallback -13:24 +2579: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unresolved links, missing images, and missing alt text -13:24 +2580: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not validate schemed URIs as local references -13:24 +2581: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: resolves home-relative local image references -13:24 +2582: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: derives diagnostic links and images from Markdown AST semantics -13:24 +2583: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: normal Markdown image diagnostics stay within the workspace root -13:24 +2584: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local reference diagnostics allow absolute images but reject other escapes -13:24 +2585: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: cross-linked Markdown anchor validation does not recurse forever -13:24 +2586: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation stays inside the workspace root -13:24 +2587: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read unsupported anchor targets -13:24 +2588: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read oversized Markdown targets -13:25 +2589: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unsafe raw HTML -13:25 +2590: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe raw HTML does not produce unsafe diagnostics -13:25 +2591: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Markdown headings inside paired raw HTML are not outline headings -13:25 +2592: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML tags produce unsafe diagnostics -13:25 +2593: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML attributes produce unsafe diagnostics -13:25 +2594: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML URLs produce unsafe diagnostics -13:25 +2595: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deeply nested raw HTML produces unsafe diagnostic -13:25 +2596: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe HTML tags do not become Writerside XML blocks -13:25 +2597: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts Writerside Markdown XML blocks and variables -13:25 +2598: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: emits deterministic Markdown accessibility diagnostics -13:25 +2599: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not report populated table headers as empty -13:25 +2600: loading /home/albert/busystack/busymark/test/src/feedback_submission_test.dart -13:25 +2600: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator requires category and enforces subject and message bounds -13:25 +2601: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts inclusive subject and message boundaries -13:27 +2602: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects oversized fields and invalid optional email -13:27 +2603: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator counts Unicode code points at subject and message boundaries -13:27 +2604: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts practical valid email syntax -13:27 +2605: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects malformed email syntax and length boundaries -13:27 +2606: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes required metadata and omits unapproved details -13:27 +2607: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes only explicitly approved technical details -13:27 +2608: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission uses every declared category wire value -13:27 +2609: loading /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart -13:28 +2609: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter owns application chrome; native bridge carries no split geometry -13:28 +2610: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Workspace, Welcome and Settings use the shared full-height frame -13:28 +2611: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native clipboard, menus, Writerside media and rendering hosts remain registered -13:28 +2612: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Linux desktop identity uses the standard Snap launcher mapping -13:28 +2613: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: strict Snap keeps the GTK SVG loader ABI-aligned with GNOME -13:28 +2614: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder stages bundled Git tools -13:28 +2615: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local repack replaces clean-snap font links with new bundle fonts -13:28 +2616: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: confined dependency checks reject missing and wrong resolutions -13:29 +2617: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap reuses verified platform libraries and retains private tools -13:29 +2618: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder uses the project Flutter toolchain -13:29 +2619: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snapcraft pins the same Flutter release as the project -13:29 +2620: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder keeps compiler output off the system tmpfs -13:29 +2621: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter content menus use native GTK popup menu semantics -13:29 +2622: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native content menus clean up direct GTK popup sessions -13:29 +2623: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap packaging hooks consolidate resources and keep required fixes -13:29 +2624: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native GTK theme follows brightness without replacing a valid user theme -13:29 +2625: loading /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart -13:30 +2625: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: valid native fragment wins over HTML and text -13:30 +2626: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: malformed native fragment falls through to valid HTML -13:30 +2627: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: unusable HTML falls through to source and plain text -13:30 +2628: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: HTML-only blockquotes are usable through descendant content -13:30 +2629: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: mixed external HTML preserves every block for Editor and Markdown Source -13:30 +2630: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode uses only interoperable text -13:30 +2631: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode rejects source-only and image-only payloads -13:30 +2632: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: whitespace text is valid and empty text is unavailable -13:30 +2633: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: explicit image is first in normal mode -13:30 +2634: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: Editor and Source use their required textual fallback order -13:30 +2635: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: structured source serialization accepts the destination mode -13:30 +2636: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: native inline serialization preserves whitespace without a newline -13:30 +2637: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: table-cell fragment serialization escapes pipes and flattens lines -13:30 +2638: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: local image path detection is safe and rejects altered URI meaning -13:30 +2639: loading /home/albert/busystack/busymark/test/src/uri_utils_test.dart -13:32 +2639: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: external launch policy is an explicit safe-list -13:32 +2640: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: scheme detection remains broader than launch policy -13:32 +2641: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: remote resources only allow http and https -13:32 +2642: loading /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart -13:34 +2642: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger aggregates locally by month and provider -13:36 +2643: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger starts a clean aggregate in a new month -13:36 +2644: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: malformed ledger data is treated as empty, not surfaced -13:36 +2645: loading /home/albert/busystack/busymark/test/src/busymark_design_test.dart -13:37 +2645: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch suppresses state halos and preserves focus borders -13:38 +2646: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in dark -13:38 +2647: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in dark -13:38 +2648: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in light -13:38 +2649: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in light -13:38 +2650: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: disabled switch preserves inherited disabled styling -13:38 +2651: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch row owns its control and activates exactly once -13:38 +2652: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch preserves Yaru drag activation -13:38 +2653: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: radio suppresses state halos and preserves focus borders -13:38 +2654: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in dark -13:38 +2655: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in dark -13:38 +2656: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in light -13:38 +2657: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in light -13:38 +2658: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: informational dialog keeps the close control at the right edge -13:38 +2659: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: Split Preview stays fluid without copying Source-only chrome -13:38 +2660: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: document frame centers wide content and honors physical safe edges -13:38 +2661: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: toolbar clearance is applied only to the toolbar edge -13:38 +2662: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar header and list compose the shared vertical gap -13:38 +2663: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header controls delegate geometry and elevation to Yaru -13:39 +2664: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dark header menu delegates its tooltip to IconButton -13:39 +2665: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: settings dropdowns use the framework tooltip -13:39 +2666: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: desktop tooltips use one explicit natural-width geometry -13:39 +2667: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: popup menu rows show shortcuts without redundant hover tooltips -13:39 +2668: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup sends shortcuts and separators to GTK and maps selection -13:39 +2669: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: colored popup icons stay on the native menu path -13:39 +2670: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup preserves asynchronous menu loading -13:39 +2671: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic theme retains Yaru geometry, typography, and interaction -13:39 +2672: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: accent controls use the native Yaru foreground and fill roles -13:39 +2673: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic surfaces use one modern neutral Linux role ladder -13:39 +2674: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: equal-choice segmented selection stays neutral -13:39 +2675: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped cards use native boxed-list depth and roles -13:39 +2676: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped list headings use the native semantic heading style -13:39 +2677: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner uses semantic surfaces in light and dark -13:39 +2678: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner animates its mounted layout height -13:39 +2679: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner reveal honors reduced motion -13:40 +2680: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog grouped cards resolve the contextual native layer -13:40 +2681: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native dark hover role -13:40 +2682: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native light hover role -13:40 +2683: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped row subtitles use semantic native text roles -13:40 +2684: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog roles and popup selectors use real themed buttons -13:40 +2685: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in dark -13:40 +2686: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in light -13:40 +2687: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog actions wrap at narrow localized text widths -13:40 +2688: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: action rows use semantic destructive foreground in light and dark themes -13:41 +2689: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: shared text-entry group delegates fields to the framework -13:41 +2690: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry uses the native row-owned form surface -13:41 +2691: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry forwards readOnly without disabling input -13:41 +2692: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic standard icon button delegates to FilledButton.icon -13:41 +2693: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar surface owns one directional semantic boundary -13:41 +2694: loading /home/albert/busystack/busymark/test/src/source_document_test.dart -13:42 +2694: /home/albert/busystack/busymark/test/src/source_document_test.dart: empty document mapping is stable -13:42 +2695: /home/albert/busystack/busymark/test/src/source_document_test.dart: no-fold mapping preserves offsets and ranges -13:42 +2696: /home/albert/busystack/busymark/test/src/source_document_test.dart: single fold projects visible text and maps offsets -13:42 +2697: /home/albert/busystack/busymark/test/src/source_document_test.dart: fold-boundary selection mapping preserves direction, not coverage -13:42 +2698: /home/albert/busystack/busymark/test/src/source_document_test.dart: multiple adjacent and overlapping ranges normalize safely -13:42 +2699: /home/albert/busystack/busymark/test/src/source_document_test.dart: full and visible ranges report hidden clipping -13:42 +2700: /home/albert/busystack/busymark/test/src/source_document_test.dart: CRLF line endings keep line starts and projection correct -13:42 +2701: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits before and after folds preserve unrelated folds -13:42 +2702: /home/albert/busystack/busymark/test/src/source_document_test.dart: full editing values preserve composing through folded projection -13:42 +2703: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits incrementally retain unaffected line entries -13:42 +2704: /home/albert/busystack/busymark/test/src/source_document_test.dart: incremental line indexes match full indexes across line-break edits -13:42 +2705: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edit intersecting a fold unfolds only affected region -13:42 +2706: /home/albert/busystack/busymark/test/src/source_document_test.dart: collapsed-boundary insertion preserves hidden folded content -13:42 +2707: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible insertions before and after a fold keep hidden text -13:42 +2708: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible deletions near a fold keep hidden text -13:42 +2709: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible replacement spanning a fold replaces the hidden range -13:42 +2710: loading /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart -13:44 +2710: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: uses each heading level effective text size for inline math -13:46 +2711: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: custom typography and four margins control actual math jobs -13:46 +2712: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: prepares inline and display math as deterministic vector assets -13:46 +2713: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: footnote inline and display math retain surrounding semantics -13:46 +2714: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst compiles footnote math through the math renderer -13:46 +2715: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst keeps MathJax SVG inline and exports failed math visibly -13:46 +2716: loading /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart -13:47 +2716: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: tabs synchronize and support arrow, Home and End keys -13:48 +2717: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table sorting is numeric and excludes disabled columns -13:48 +2718: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Markdown table keeps empty columns equal width -13:48 +2719: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Writerside table preserves declared column width -13:48 +2720: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table spans preserve geometry and sticky header position -13:48 +2721: loading /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart -13:50 +2721: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: records balance a two-line source preview with visible metadata -13:51 +2722: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: large records use a short preview and do not create a tooltip -13:51 +2723: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: actions menu is right of search and owns refresh and clear -13:52 +2724: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: keyboard navigation keeps the selected history entry visible -13:54 +2725: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: Delete edits the focused search without removing history -13:54 +2726: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: unsupported payload disables paste for the destination -13:54 +2727: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: double-clicking a shared history row pastes the item -13:54 +2728: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain-text paste remains enabled when rich paste is unavailable -13:54 +2729: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: source-only payload has no plain-text action -13:54 +2730: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: image exposes plain paste only with real text -13:54 +2731: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed insertion reports visible feedback -13:54 +2732: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: cancelled insertion is terminal without an error toast -13:54 +2733: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: current external HTML is transient until panel insertion and remains reusable -13:55 +2734: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed current-item paste is not retained and plain paste stays explicit -13:55 +2735: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: successful external paste retains after the panel is disposed -13:55 +2736: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain source and Editor copies stay text and de-duplicate -13:55 +2737: loading /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart -13:56 +2737: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: loads version and build number from package metadata -13:56 +2738: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: uses zero when package build metadata is absent -13:56 +2739: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: rejects missing package version metadata -13:56 +2740: loading /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart -13:59 +2740: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates XML child topic and registers it under parent TOC node -13:59 +2741: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates Unicode Markdown and XML topic filenames -14:00 +2742: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source without a root ID before publication -14:00 +2743: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source whose root ID differs from filename -14:00 +2744: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: accepts custom XML source whose root ID matches filename -14:00 +2745: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: requires a reference for every non-root placement -14:00 +2746: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a child under an exact topic-less TOC node path -14:00 +2747: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: first real topic under an empty group becomes the home page -14:00 +2748: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: exact TOC path disambiguates sibling insertion -14:00 +2749: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects an exact TOC path whose expected node has moved -14:00 +2750: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: invalid exact TOC path does not fall back to topic reference -14:00 +2751: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects duplicate topic IDs before writing -14:00 +2752: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a missing nested topics directory -14:00 +2753: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects a symlinked topics directory without writing outside -14:00 +2754: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: does not overwrite a concurrently changed tree or leave an orphan topic -14:00 +2755: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rollback preserves a created topic changed by another writer -14:00 +2756: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: atomic tree publication preserves its POSIX mode -14:00 +2757: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID with a different extension -14:00 +2758: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in a different directory -14:00 +2759: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in another configured root -14:00 +2760: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation allows an unrelated concurrent topic ID -14:00 +2761: loading /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart -14:01 +2761: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.rtl -14:04 +2762: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.ltr -14:06 +2763: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation uses native master-detail controls and filters -14:08 +2764: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation opens both template editor entry points -14:11 +2765: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: catalog failure keeps BusyMark status and retry controls -14:12 +2766: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files editor stages new content, cancels and persists on OK -14:16 +2767: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: source surface exposes its label and focus boundary -14:17 +2768: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: New toolbar command stages an editable draft and Cancel drops it -14:18 +2769: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: custom XML template cannot publish a mismatching root ID -14:20 +2770: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: save-as-template appears under Custom; edit, duplicate and delete preserve cancel -14:22 +2771: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: stale settings reject OK and retain draft for recovery -14:24 +2772: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Internal reset is staged, cancellable, and publishable -14:27 +2773: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: true) -14:28 +2774: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: false) -14:30 +2775: loading /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart -14:30 +2775: /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart: tree exact reveal unfolds and line movement is one undoable full-source edit -14:32 +2776: loading /home/albert/busystack/busymark/test/src/math_parser_test.dart -14:32 +2776: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses several dollar formulas as semantic inline math -14:32 +2777: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses the GitHub dollar-backtick form without delimiters -14:32 +2778: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses single-line and multiline display math as blocks -14:32 +2779: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math scanner stays aligned around every neighboring block kind -14:32 +2780: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math and Writerside tex fences follow document compatibility -14:32 +2781: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math is inline and remains source-preserving -14:32 +2782: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math decodes XML entities but preserves source -14:32 +2783: /home/albert/busystack/busymark/test/src/math_parser_test.dart: escaped dollars, code, currency, empty and malformed forms stay text -14:32 +2784: /home/albert/busystack/busymark/test/src/math_parser_test.dart: inline math survives list, blockquote, and table structure -14:32 +2785: /home/albert/busystack/busymark/test/src/math_parser_test.dart: CRLF math input and every original form round-trip untouched -14:32 +2786: /home/albert/busystack/busymark/test/src/math_parser_test.dart: preview builder creates first-class inline and display math nodes -14:32 +2787: loading /home/albert/busystack/busymark/test/src/busymark_document_test.dart -14:35 +2787: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hit testing includes shared document surface borders -14:35 +2788: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: document image width resolution is bounded consistently -14:35 +2789: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: package markdown AST imports into BusyDocument core blocks -14:35 +2790: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: linked remote image paragraphs import as editable image blocks -14:35 +2791: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer emits Markdown source for edited semantic blocks -14:35 +2792: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unchanged raw blocks -14:35 +2793: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves safe raw HTML source byte for byte -14:35 +2794: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unsafe raw HTML source while preview remains raw -14:35 +2795: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer patches dirty blocks without canonicalizing unchanged source -14:35 +2796: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve unrelated block instances -14:35 +2797: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve source-only reference definitions -14:35 +2798: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: source-only definitions survive scanner and AST count mismatches -14:35 +2799: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preserved reference definitions still resolve after an edit -14:35 +2800: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve GFM footnote definitions -14:35 +2801: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: containers with nested definitions are source-protected -14:35 +2802: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: scanner mismatches conservatively protect nested definitions -14:35 +2803: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: opaque source IDs cannot collide with semantic heading IDs -14:35 +2804: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full list serialization preserves reference definitions -14:35 +2805: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full serialization omits generated footnote output -14:35 +2806: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: invalid reference-like prose remains a modeled block -14:35 +2807: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large inline-link documents do not create source-only blocks -14:36 +2808: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large adjacent definition sets stay distinct and preserved -14:37 +2809: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: destructive selections reject read-only source endpoints -14:37 +2810: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: list indentation cannot attach content to a protected item -14:37 +2811: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested list text edit updates Markdown source -14:37 +2812: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered list edits preserve nested children -14:37 +2813: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered task edits preserve marker and nested children -14:37 +2814: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested blockquote edit preserves surrounding source -14:37 +2815: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cross-block deletion prunes an emptied blockquote -14:37 +2816: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested inline edit updates Markdown source -14:37 +2817: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested block removal updates Markdown source -14:37 +2818: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser includes setext headings in heading metadata -14:37 +2819: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: live document outline follows top-level generated heading order -14:37 +2820: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: duplicate anchors retain distinct editor block identities -14:37 +2821: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preview and WYSIWYG use the same semantic document -14:37 +2822: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edit updates Markdown source -14:37 +2823: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG empty documents have one editable paragraph -14:37 +2824: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor accepts typing in an empty document -14:38 +2825: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG heading navigation skips across large documents -14:42 +2826: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders a blockquote around its editable text -14:42 +2827: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG uses one quote frame for multiple quote paragraphs -14:42 +2828: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG quote frame focuses its first editable child -14:42 +2829: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inherits RTL indentation inside a blockquote -14:42 +2830: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG keeps a generated leaf blockquote editable -14:42 +2831: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hides a definition-only source and preserves it -14:42 +2832: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor undo and redo restore document edits -14:43 +2833: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor replaces document when active file changes -14:43 +2834: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor applies heading keyboard shortcuts -14:43 +2835: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Ctrl+Shift+- inserts a thematic break -14:43 +2836: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Tab nests eligible list items and Shift+Tab lifts them -14:43 +2837: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG arrow keys move focus between paragraphs -14:43 +2838: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Arrow crosses paragraph boundaries -14:43 +2839: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Shift+Arrow extends into the next paragraph -14:44 +2840: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated arrow keys keep moving between paragraphs -14:44 +2841: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down selection continues character by character in the next paragraph -14:44 +2842: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated Shift+Arrow extends one selection -14:44 +2843: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG horizontal selection continues vertically into the next paragraph -14:44 +2844: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse Shift+Up selection continues left in the previous paragraph -14:44 +2845: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ignores redundant source blank lines -14:44 +2846: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: typing replaces a WYSIWYG selection across paragraphs -14:44 +2847: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: deleting a selected paragraph boundary merges paragraphs -14:44 +2848: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down follows visual lines before paragraphs -14:45 +2849: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Arrow selects whole grapheme clusters -14:45 +2850: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection can copy multiple paragraphs -14:45 +2851: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG click elsewhere clears previous block selection -14:45 +2852: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift click selects text across paragraphs -14:45 +2853: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag extends selection across paragraphs -14:45 +2854: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag from heading end hides native selection -14:45 +2855: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag updates selection on pointer up -14:45 +2856: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag aligns wrapped trailing word highlight -14:45 +2857: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+X cuts block selection -14:46 +2858: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves inline formatting -14:46 +2859: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves whole block formatting -14:46 +2860: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection preserves partial paragraph boundaries -14:46 +2861: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar bold applies to selected paragraphs -14:46 +2862: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar toggle stays vertically aligned when collapsed -14:46 +2863: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar reserves its document edge -14:47 +2864: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: restoring the first block does not duplicate the Editor top inset -14:48 +2865: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: vertical WYSIWYG toolbar is bounded and extends from its edge -14:48 +2866: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar corners remain physical in LTR and RTL -14:49 +2867: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar context menu changes placement and direction when shown or hidden -14:50 +2868: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar list applies to selected paragraphs -14:50 +2869: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders safe HTML blocks and edits raw source -14:50 +2870: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar inserts an HTML block -14:50 +2871: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after the active file changes -14:50 +2872: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after document generation changes -14:51 +2873: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs stop app-level tab navigation shortcuts -14:51 +2874: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs activate the native headerbar barrier -14:51 +2875: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves existing inline formatting -14:51 +2876: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Backspace at block start merges with previous block -14:51 +2877: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+A twice selects all text for deletion -14:52 +2878: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG select-all deletion preserves source-protected definitions -14:52 +2879: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline ranges do not duplicate formatted text -14:52 +2880: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands serialize bold italic and links -14:52 +2881: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG serializes italic nested at the end of bold text -14:52 +2882: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve inline ranges where possible -14:52 +2883: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve empty-alt inline images -14:52 +2884: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG edits preserve escaped literal punctuation semantics -14:52 +2885: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog submits with Enter -14:52 +2886: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when caret is inside it -14:52 +2887: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when its text is selected -14:52 +2888: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline command toggles selected mark without dropping links -14:52 +2889: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline code command serializes selected text -14:52 +2890: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer chooses inline code delimiters that preserve backticks -14:52 +2891: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link title backslashes use standards-safe character references -14:52 +2892: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: inline serialization distinguishes every hard-break run boundary -14:52 +2893: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link titles round-trip decoded punctuation and line endings -14:52 +2894: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table link titles retain multiline values without physical rows -14:52 +2895: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves fenced code delimiters and trailing whitespace -14:52 +2896: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser preserves meaningful trailing fenced-code whitespace -14:52 +2897: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser closes dynamic code fences only with a matching delimiter -14:52 +2898: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser does not treat indented code as a fenced block -14:52 +2899: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands preserve existing sibling formatting -14:52 +2900: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands apply to multiple selected blocks -14:52 +2901: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands apply to multiple selected blocks -14:52 +2902: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG image command serializes a real image block -14:52 +2903: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders Writerside images by basename -14:53 +2904: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders absolute local image paths -14:53 +2905: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders linked remote image blocks -14:53 +2906: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in commonMark -14:53 +2907: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in writersideMarkdown -14:53 +2908: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in gfm -14:53 +2909: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter uses parser URL boundaries without parsing other syntax -14:53 +2910: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter excludes code and keeps explicit equal-label links explicit -14:53 +2911: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: bare URL destinations follow edits and splits while explicit destinations stay authored -14:53 +2912: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: rejoining only extends existing bare URLs and preserves code and explicit links -14:53 +2913: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: structural URL slices update derived destinations and link editing authors an explicit destination -14:53 +2914: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter splits one block into separate Markdown paragraphs -14:53 +2915: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores an empty paragraph represented only by blanks -14:53 +2916: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores trailing blank lines -14:53 +2917: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG does not create blocks for redundant source whitespace -14:53 +2918: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in unordered list creates next item then exits list -14:53 +2919: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in ordered list creates next numbered item -14:53 +2920: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG thematic break inserts after current block -14:53 +2921: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter key creates a new paragraph block -14:53 +2922: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter carries active inline style to next paragraph -14:54 +2923: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter at paragraph end preserves inner bold span -14:54 +2924: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG newline text edit preserves inner bold span -14:54 +2925: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text input newlines become Markdown paragraphs -14:54 +2926: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves an existing hard break -14:54 +2927: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: hard-break toolbar command retains focus and advances caret -14:54 +2928: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: formatting toolbar command retains editor focus and selection -14:54 +2929: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Shift+Enter retains focus and advances past the hard break -14:54 +2930: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line toolbar command round-trips and remains one focused edit -14:55 +2931: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor lazily builds large documents -14:55 +2932: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG task checkbox toggles directly when clicked -14:55 +2933: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands serialize headings and lists -14:55 +2934: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG extended toolbar commands serialize Markdown -14:55 +2935: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line command keeps repeated terminal markers off the text line -14:55 +2936: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table and code language commands serialize Markdown -14:55 +2937: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cell pipes round-trip without shifting columns -14:55 +2938: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table escaping protects pipes inside formatted cell content -14:55 +2939: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table code preserves a backslash immediately before a pipe -14:55 +2940: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table row and column commands serialize Markdown -14:55 +2941: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table dialog validates and synchronizes its size grid -14:56 +2942: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table alignment survives parsing, edits, and structural changes -14:56 +2943: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table column alignment command supports all Markdown alignments -14:56 +2944: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells apply Markdown column alignment -14:56 +2945: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells are formatted and editable -14:56 +2946: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table overlay menus survive structural rebuilds -14:57 +2947: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Tab travels through WYSIWYG table cells and extends the table -14:57 +2948: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG list indent outdent and task toggle commands serialize -14:57 +2949: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation starts a nested list at one -14:57 +2950: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation preserves a top-level start value -14:57 +2951: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation numbers multiple nested siblings -14:57 +2952: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered outdent continues the parent list numbering -14:57 +2953: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts an unordered item to a valid ordered marker -14:57 +2954: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts selected nested items at each list depth -14:57 +2955: loading /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart -14:58 +2955: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: single rich paragraph repairs independently surviving endpoints -14:58 +2956: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: table cells repair independently formatted selection endpoints -14:58 +2957: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion replaces only a heading own prefix at content start -14:58 +2958: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion removes complete ATX and Setext heading syntax -14:58 +2959: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion retains literal paragraph hashes -14:58 +2960: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: whole heading replacement removes every authored marker -14:58 +2961: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: heading insertion at middle and end preserves only the leading heading -14:58 +2962: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequence removes nested heading marker at content start -14:58 +2963: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: external HTML blockquotes remain structured in Source -14:58 +2964: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: HTML break layout stays behind a caret after the semantic break -14:58 +2965: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: caret immediately before an HTML break keeps the break after paste -14:58 +2966: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection crossing an HTML break preserves both outside slices -14:58 +2967: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete inline HTML survives rich link insertion as one fragment -14:58 +2968: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native rich trailing space survives inherited HTML insertion -14:58 +2969: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native incoming edge whitespace survives inherited HTML styles -14:58 +2970: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection replacement retains native whitespace and link titles -14:58 +2971: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: multiple native inline runs retain text styles links and spaces -14:58 +2972: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: rich insertion maps collapsed HTML whitespace as content -14:58 +2973: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through supported raw HTML styles -14:58 +2974: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through a supported raw HTML link -14:58 +2975: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: supported content corpus always plans a rich insertion -14:58 +2976: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: repeated mapped siblings avoid fallback and preserve final paste -15:00 +2977: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete blocks split and preserve enclosing inline contexts -15:00 +2978: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph-only block sequences match Editor merge semantics -15:00 +2979: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block paste preserves independent formatted selection boundaries -15:00 +2980: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured paste spans partial first and last destination blocks -15:00 +2981: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequences retain destination block and container paths -15:00 +2982: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paste output is valid input for a second paste at returned caret -15:00 +2983: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: CRLF blockquote projection retains its authored prefixes -15:00 +2984: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured complete blocks generate only CRLF boundaries -15:00 +2985: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured inline hard breaks use destination CRLF -15:00 +2986: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: mapped and generated structured breaks retain CRLF and caret width -15:00 +2987: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: protected Source context explicitly permits textual fallback -15:00 +2988: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: syntax-only positions explicitly permit textual fallback -15:00 +2989: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: unmappable destination links stop rather than permit fallback -15:00 +2990: loading /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart -15:01 +2990: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: rejects a superseded render even when its engine finishes last -15:02 +2991: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: retains the last successful render after invalid source -15:02 +2992: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: limits concurrency and gives export work queue priority -15:03 +2993: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: reuses a successful content-addressed cache entry -15:03 +2994: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: validates concurrency and returns a typed unavailable result -15:03 +2995: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: bounds last-successful render retention with LRU eviction -15:03 +2996: loading /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart -15:03 +2996: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: source navigation distinguishes repeated references on one line -15:03 +2997: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: explicit synchronization follows installed breadth-first topic matching -15:03 +2998: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edits preserve other instances, content and occurrence -15:03 +2999: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edit changes H1 and preserves front matter title -15:03 +3000: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title round trip preserves ampersands and entity spellings -15:03 +3001: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: unchanged inherited values do not add overrides -15:03 +3002: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: XML title edits escape attributes and expand self-closing root -15:03 +3003: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: clearing overrides removes only the selected instance and occurrence -15:03 +3004: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: before-drop preserves complete subtrees and returns all moved paths -15:05 +3005: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: grouping uses source order and rejects cross-parent selections -15:05 +3006: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: line moves retain CRLF, caret, reversed selection and boundaries -15:05 +3007: loading /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart -15:06 +3007: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: section includes descendants and stops at the next sibling -15:06 +3008: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: move up and down swap complete sibling subtrees -15:06 +3009: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: promote and demote preserve descendant hierarchy -15:06 +3010: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: demote is unavailable when a descendant is already H6 -15:06 +3011: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: level changes preserve and convert Setext headings -15:06 +3012: loading /home/albert/busystack/busymark/test/src/visualization_models_test.dart -15:08 +3012: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization fence classification recognizes canonical names and aliases without changing spelling -15:08 +3013: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: preserves dependency diagnostic source locations -15:08 +3014: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys canonicalizes options and dependency order -15:08 +3015: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates on engine, source, theme, profile, option, and dependency -15:08 +3016: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates entries produced by the previous render pipeline -15:08 +3017: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache round-trips SVG, raster, and structured OpenAPI successes -15:09 +3018: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache does not persist failures and repairs malformed entries -15:09 +3019: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache derives the XDG cache path without changing the environment -15:09 +3020: loading /home/albert/busystack/busymark/test/src/writerside_video_test.dart -15:10 +3020: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside Markdown models video and preserves its exact source -15:10 +3021: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video remains blocked raw HTML outside Writerside Markdown -15:10 +3022: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: multiline Writerside video attributes remain one semantic block -15:10 +3023: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video markup inside an ordinary code fence is not interpreted -15:10 +3024: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside topic parser exposes video attributes -15:10 +3025: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside .topic preview creates a first-class video block -15:10 +3026: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: safe video resolver accepts documented hosts and local media -15:10 +3027: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside module reports invalid and incomplete video sources -15:10 +3028: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: local poster defaults to matching PNG and can be overridden -15:10 +3029: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: hosted video posters resolve from trusted provider sources -15:10 +3030: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Vimeo poster metadata cannot point images to another host -15:10 +3031: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: PDF export carries a first-class linked video poster -15:10 +3032: loading /home/albert/busystack/busymark/test/src/app_router_test.dart -15:12 +3032: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings return targets are explicit and validated -15:12 +3033: /home/albert/busystack/busymark/test/src/app_router_test.dart: opening Settings preserves a validated Settings origin -15:12 +3034: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings page routes are explicit and validated -15:12 +3035: /home/albert/busystack/busymark/test/src/app_router_test.dart: Settings opened from Welcome returns to Welcome with a stale workspace -15:14 +3036: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again -15:14 +3037: loading /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart -15:15 +3037: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: mixed Markdown protects fenced code and CDATA while preserving spans -15:16 +3038: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: lazy defaults respect caller arguments and percent escaping -15:16 +3039: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: empty links use the target title for the selected instance -15:16 +3040: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional chapter content and links follow the selected instance -15:16 +3041: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: malformed markup and unresolved reuse stay visible with diagnostics -15:16 +3042: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: Markdown IDs include whole chapters and retain mixed-content spans -15:16 +3043: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional globals and include arguments override snippet defaults -15:16 +3044: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: links resolve labels, separate anchors and nullable availability -15:16 +3045: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: included code uses its source topic and unsaved source overrides -15:16 +3046: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: summaries stay metadata and starting pages suppress outside content -15:16 +3047: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: configured shortcuts, glossary and binary resources have visible references -15:16 +3048: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: line and symbol selectors reject invalid selections -15:16 +3049: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart -15:17 +3049: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace -15:17 +3050: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret -15:17 +3051: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string -15:17 +3052: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls -15:17 +3053: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback -15:17 +3054: loading /home/albert/busystack/busymark/test/src/status_semantics_test.dart -15:18 +3054: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: status colors stay semantic across accents and brightness -15:19 +3055: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: workspace messages use semantic status roles -15:19 +3056: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: Git failures use window-level toasts -15:19 +3057: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: successful Git operations use window-level toasts -15:20 +3058: loading /home/albert/busystack/busymark/test/src/workspace_service_test.dart -15:20 +3058: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a single Markdown file workspace -15:20 +3059: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: resolves an unindexed sibling document within the workspace -15:20 +3060: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Markdown file from a file URI path -15:21 +3061: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a generic Markdown folder workspace -15:21 +3062: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: canonicalizes a workspace opened through a directory symlink -15:21 +3063: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects a workspace root replaced by a symlink after opening -15:21 +3064: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Writerside module workspace -15:21 +3065: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: untitled Markdown in Writerside reparses, previews, and outlines as CommonMark -15:21 +3066: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: genuine Writerside Markdown topic keeps Writerside semantics -15:21 +3067: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates and opens a Writerside starter project -15:21 +3068: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: reparses and previews Writerside Markdown without generic link validation -15:21 +3069: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a Writerside Markdown topic and registers it in the TOC -15:21 +3070: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: imports Markdown topics into the selected instance and opens the first -15:21 +3071: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Markdown import reloads stale UI inventory before planning -15:21 +3072: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation revalidates module IDs after its candidate is written -15:21 +3073: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a topic in the explicitly selected instance and TOC node -15:21 +3074: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: unparsed topic basename reserves its module-wide topic ID for creation -15:22 +3075: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under build reserves its module-wide ID for creation -15:22 +3076: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under a hidden directory reserves its module-wide ID for creation -15:22 +3077: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: duplicate topic cannot reuse an unparsed topic basename -15:22 +3078: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: template source cannot reuse an unparsed topic basename -15:22 +3079: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation refuses incomplete topic discovery -15:22 +3080: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects topic creation when the configured instance tree is outside the module -15:22 +3081: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename is stale when a new module is discovered -15:22 +3082: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic rename planning rejects incomplete project module discovery -15:22 +3083: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename rejects incomplete module discovery on apply -15:22 +3084: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: project module discovery reports directory listing failure -15:22 +3085: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: ordinary directory creation does not stale a prepared rename -15:22 +3086: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: normalizes portal-style document paths as filesystem paths -15:22 +3087: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText writes content and returns the saved file snapshot -15:22 +3088: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: file change detection ignores timestamp-only changes -15:22 +3089: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText writes a missing file and returns its snapshot -15:22 +3090: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText refuses an existing file without changing it -15:22 +3091: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not replace a file arriving before publication -15:22 +3092: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not write inside a directory arriving before publication -15:22 +3093: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveTextReplacingPath replaces a final symlink without following it -15:22 +3094: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement cannot overwrite a post-validation writer -15:22 +3095: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement validates a displaced relative symlink -15:22 +3096: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement detects a changed relative symlink target -15:22 +3097: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation directory -15:22 +3098: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation FIFO without reading -15:22 +3099: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText follows file symlinks and preserves target permissions -15:22 +3100: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: createFile rejects a directory reached through an intermediate symlink -15:22 +3101: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: renameEntity rejects a source reached through an intermediate symlink -15:22 +3102: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: moveEntity rejects a target reached through an intermediate symlink -15:22 +3103: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity rejects a directory reached through an intermediate symlink -15:22 +3104: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity removes a final symlink without deleting its target -15:22 +3105: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: generic deletion rejects topics and containing folders in a non-active module -15:22 +3106: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: an unparsed topic cannot bypass generic deletion -15:22 +3107: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: missing nested mutation paths keep domain-specific errors -15:22 +3108: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince treats deleted files as changed -15:22 +3109: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince detects content changes with unchanged modified time -15:22 +3110: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists all content except version-control metadata -15:22 +3111: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists unsupported legacy Markdown extensions -15:22 +3112: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: limited folder scan prefers shallow siblings before deep subtree -15:22 +3113: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: invalid UTF-8 Markdown does not fail the whole workspace -15:22 +3114: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Markdown files are listed but not parsed automatically -15:22 +3115: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Writerside topics are listed but not parsed automatically -15:22 +3116: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Writerside topic loading honors the document limit -15:22 +3117: loading /home/albert/busystack/busymark/test/src/ai_policy_test.dart -15:23 +3117: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: AI editing is enabled only for Markdown document kinds -15:23 +3118: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation accepts a prose-only replacement in the complete document -15:23 +3119: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation rejects swapped URL associations even when the URL set is equal -15:23 +3120: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation full-document validation catches edits made inside protected syntax -15:23 +3121: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects front matter, references, footnotes, tables, HTML and IDs -15:23 +3122: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects list and heading structure -15:23 +3123: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects implicit heading identifiers from prose rewrites -15:23 +3124: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: the prompt contains only the context explicitly selected by the user -15:23 +3125: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: instructions and direct prompts have explicit token budgets -15:23 +3126: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: token estimates are independent from UTF-8 transport bytes -15:23 +3127: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: generated-output byte limits are independent from provider tokens -15:23 +3128: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context selection target and block context remain independent -15:23 +3129: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context insert-after-block target can send no document context -15:23 +3130: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current block can use complete-document context -15:23 +3131: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current section includes descendants but not its sibling -15:23 +3132: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context complete-document target is explicit -15:23 +3133: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context partial protected selections are rejected instead of expanded -15:23 +3134: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context validation and application use the exact block insertion -15:23 +3135: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: commit proposals require a bounded subject and blank separator -15:23 +3136: loading /home/albert/busystack/busymark/test/src/linux_window_host_test.dart -15:24 +3136: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: dialogs cover application header actions while system Close uses the guarded service -15:25 +3137: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: icon uses its physical GTK side and contributes to the inset -unhandled element ; Picture key: Svg loader -15:26 +3138: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fallback application menu is absent while titlebar menu still works -15:26 +3139: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: window-state stream survives unrelated host rebuilds -15:26 +3140: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: normal maximize decoration has matching behavior -15:26 +3141: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: maximized maximize decoration has matching behavior -15:26 +3142: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen maximize decoration has matching behavior -15:26 +3143: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen titlebar double-click still restores -15:26 +3144: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: the document title itself handles titlebar double-click -15:26 +3145: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: live GTK layout removal retains each decoration identity -15:26 +3146: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=false) -15:26 +3147: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=true) -15:26 +3148: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK reduced motion settles window-control hover immediately -15:26 +3149: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion settles an in-flight window icon morph -15:26 +3150: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabled motion retains the normal active-window fade -15:26 +3151: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: Flutter reduced motion settles the host fade immediately -15:26 +3152: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK animation policy reaches the actual host overlay -15:26 +3153: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion stops a fade and later fades can run -15:26 +3154: loading /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart -15:27 +3154: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: source editor overlays use shared semantic surfaces -15:27 +3155: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: WYSIWYG content actions and table menus use shared controls -15:27 +3156: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: problems dialog delegates its list surface to shared grouping -15:27 +3157: loading /home/albert/busystack/busymark/test/src/writerside_document_test.dart -15:29 +3157: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=false) -15:29 +3158: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=true) -15:30 +3159: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside heading aliases prefer exact IDs and reject ambiguity -15:30 +3160: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: malformed semantic XML is still reported after a scanner mismatch -15:30 +3161: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: lossless XML nodes preserve exact duplicate ranges and generic markup -15:30 +3162: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside Markdown round-trips native and generic markup -15:30 +3163: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified semantic XML reconstructs equivalent escaped markup -15:30 +3164: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified conformance topic retains qualified namespace names -15:30 +3165: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver applies includes, filters, groups, variables, and cycles -15:30 +3166: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver negates the complete instance list -15:30 +3167: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML list type is inherited by every list item -15:30 +3168: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML lists retain numeric ordinals and their container identity -15:30 +3169: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: repeated list includes have distinct occurrence IDs and original source spans -15:30 +3170: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: workspace exposes resolver errors with exact source spans -15:30 +3171: loading /home/albert/busystack/busymark/test/src/writerside_api_test.dart -15:30 +3171: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: platform-backed API model remains on the host path and transfers complete semantics -15:31 +3172: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API tags select operations through the existing OpenAPI parser -15:31 +3173: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API child selectors inherit the specification and preserve sample overrides -15:31 +3174: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API schemas resolve references and honor nesting depth -15:31 +3175: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: schema and webhook elements are visible -15:31 +3176: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: invalid API selection has a visible fallback and source diagnostic -15:31 +3177: loading /home/albert/busystack/busymark/test/src/local_history_store_test.dart -15:32 +3177: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=false) -15:32 +3178: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=true) -15:32 +3179: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: real process contention waits and captures without a warning -15:39 +3180: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: lock timeout closes acquisition and queues recover without late capture -15:43 +3181: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: non-contention acquisition failure is prompt and closes the handle -15:43 +3182: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: body contention-shaped error never replays the transaction -15:43 +3183: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: independent production writers preserve both identities and revisions -15:49 +3184: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation cannot mutate process replacements -15:53 +3185: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation rejects an intervening process checkpoint -15:57 +3186: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=false) -15:57 +3187: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=true) -15:57 +3188: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists full revisions and stable document identity across restart -15:57 +3189: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists untitled first-save promotion without a new revision -15:57 +3190: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: untitled promotion refuses an already-owned destination path -15:57 +3191: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deleted paths never own promotion, lookup, or remap -15:57 +3192: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deduplicates only adjacent ordinary captures and preserves A-B-A -15:57 +3193: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: forced protective capture preserves an identical revision -15:57 +3194: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture identity makes a protective retry idempotent -15:57 +3195: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: idempotent capture stays complete after its lineage advances -15:58 +3196: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion retry accepts the same lineage after a later move -15:58 +3197: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: atomic path preflight accepts the same target already reconciled elsewhere -15:58 +3198: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clearing one identity does not poison another identity capture -15:58 +3199: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repairs a damaged index from intact independently checksummed records -15:58 +3200: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repair rejects a record associated with a different document -15:58 +3201: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: does not resurrect explicitly cleared revisions during repair -15:58 +3202: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rejects an unknown future index format without rewriting it -15:58 +3203: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention uses the injected capture time deterministically -15:58 +3204: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention is enforced when an idle store is reopened -15:58 +3205: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rename, directory move, delete, and per-document clearing retain lineage -15:58 +3206: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: ID-bound captures cannot implicitly move document paths -15:58 +3207: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: serializes concurrent captures without losing index entries -15:59 +3208: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: oversized capture cannot evict the previous revision -15:59 +3209: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: different paths with the same basename keep separate identities -15:59 +3210: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: an intentional empty revision after content is retained -15:59 +3211: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: missing and corrupt revision records do not damage intact entries -15:59 +3212: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: incomplete staging artifacts are never discovered as revisions -15:59 +3213: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: global clear tombstones prevent repair resurrection -15:59 +3214: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear All replay cannot erase post-clear history -16:00 +3215: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear Document replay cannot erase replacement history -16:00 +3216: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=false) -16:00 +3217: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=false) -16:00 +3218: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=true) -16:00 +3219: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=true) -16:00 +3220: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=false) -16:00 +3221: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=true) -16:00 +3222: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file capture rolls back cancellation during revision publication -16:00 +3223: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file dedup capture rolls back cancellation during index publication -16:00 +3224: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: multiple store instances coordinate concurrent index publication -16:00 +3225: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: storage permission failures surface without touching document data -16:00 +3226: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: path exclusions use injected Windows path semantics -16:00 +3227: loading /home/albert/busystack/busymark/test/src/web_render_host_test.dart -16:01 +3227: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends explicit request IDs and decodes a typed map response -16:01 +3228: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends a MathJax batch in one cancellable host request -16:01 +3229: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: scales the MathJax timeout for sequential batch conversion -16:01 +3230: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: applies the scaled timeout to a maximum accepted batch -16:01 +3231: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: cancels the matching native request and rejects a late success -16:01 +3232: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: times out and requests native cancellation -16:01 +3233: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: rejects an invalid native response shape -16:01 +3234: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: decodes OpenAPI references with source locations -16:01 +3235: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends PNG bytes to the native image clipboard -16:01 +3236: loading /home/albert/busystack/busymark/test/src/document_persistence_test.dart -16:03 +3236: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: file-backed edits update final-newline metadata -16:03 +3237: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session store keeps tab state and pending history identity without text -16:03 +3238: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session merge keys first-save promotions by durable operation owner -16:03 +3239: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery store distinguishes clean and unclean runs -16:03 +3240: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery keeps valid entries when another record is malformed -16:03 +3241: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery ownership keeps same buffer IDs isolated by process -16:04 +3242: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: restored dead-owner recovery is adopted and can be retired -16:04 +3243: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery state is written with private POSIX permissions -16:04 +3244: loading /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart -16:05 +3244: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: intrinsic width remeasures only edited source lines -16:05 +3245: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: large source width uses a bounded estimate -16:05 +3246: loading /home/albert/busystack/busymark/test/src/search_replace_service_test.dart -16:06 +3246: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: Unicode regex replacement preserves complete characters -16:06 +3247: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: zero-length replacement limitation survives worker transfer -16:06 +3248: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 4999 actual matches -16:06 +3249: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5000 actual matches -16:06 +3250: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5001 actual matches -16:06 +3251: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement cancels a running expensive regex -16:06 +3252: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace scope includes closed Writerside documents and ignores unrelated open files -16:08 +3253: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: previews and applies plain whole-word replacements -16:08 +3254: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: text replacement previews enforce their match limit -16:08 +3255: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker expands one accepted regex match -16:08 +3256: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker cancels stale plans -16:08 +3257: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: expands numbered and named regex capture groups -16:08 +3258: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: applies only selected preview matches -16:08 +3259: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace preview uses dirty buffers and writes closed files -16:08 +3260: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply skips stale dirty buffers -16:08 +3261: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: truncated workspace previews cannot be applied -16:08 +3262: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: stale later files abort before earlier files are changed -16:08 +3263: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: rollback preserves a concurrent edit and reports displaced content -16:08 +3264: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply revalidates open buffers after disk writes -16:08 +3265: loading /home/albert/busystack/busymark/test/src/export_options_editor_test.dart -16:09 +3265: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Escape closes Export before a control receives focus -16:10 +3266: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Export keeps breathing room below its final option -16:10 +3267: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown PDF loads confirmed settings and shares controls -16:11 +3268: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside PDF loads confirmed settings and shares controls -16:11 +3269: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown HTML loads confirmed settings and shares controls -16:12 +3270: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside HTML loads confirmed settings and shares controls -16:12 +3271: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: one Export modal switches between PDF and HTML -16:12 +3272: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: custom geometry controls, TOC enablement and invalid input at minimum size -16:13 +3273: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: cancelling settings does not confirm or persist edits -16:13 +3274: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: JSON settings store retains both format settings across controllers -16:13 +3275: loading /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart -16:14 +3275: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: existing-topic picker filters names and selects by keyboard -16:15 +3276: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: picker returns the supplied topic identity for duplicate names -16:15 +3277: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: Group keeps raw input and Enter-only acceptance -16:15 +3278: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: rename preserves validation and Preview/Refactor results -16:15 +3279: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.rtl -16:16 +3280: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.rtl -16:16 +3281: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.ltr -16:16 +3282: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.ltr -16:17 +3283: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart -16:17 +3283: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: Linux Writerside title and duplicate dialogs are GTK-owned -16:17 +3284: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: GTK Writerside contents follow application direction, filenames stay LTR -16:19 +3285: loading /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart -16:19 +3285: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw HTML preserves inherited and overridden block directions -16:19 +3286: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: preview model retains HTML direction for code and quotes -16:19 +3287: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML honors rtl, ltr, and auto directions -16:20 +3288: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: nested WYSIWYG blocks indent from the RTL start edge -16:20 +3289: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: English prose stays LTR in a Persian RTL UI and navigates LTR -16:21 +3290: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: Arabic prose stays RTL in an English UI and navigates RTL -16:21 +3291: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw Writerside technical blocks stay LTR with Arabic content -16:21 +3292: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered Arabic HTML without dir follows its content -16:21 +3293: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: WYSIWYG technical dialog inputs stay LTR in an RTL UI -16:22 +3294: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL horizontal arrows cross paragraph boundaries visually -16:22 +3295: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL Ctrl+Shift+Arrow extends word selection across paragraphs -16:22 +3296: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: code blocks stay LTR and use LTR boundary arrows in RTL UI -16:22 +3297: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML pre is LTR unless dir overrides it -16:22 +3298: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL prefix hit testing maps the text start at the right edge -16:22 +3299: loading /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart -16:23 +3299: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote source AI proposal applies with logical identity -16:28 +3300: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote WYSIWYG AI proposal applies with logical identity -16:29 +3301: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: document-only AI snapshot opens a usable configuration -16:29 +3302: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI configuration uses native rows without duplicate choices -16:29 +3303: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: Refine with AI sends the explicitly selected model -16:29 +3304: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI proposal uses an explicitly selected provider -16:29 +3305: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: provider chooser exposes only configured providers -16:29 +3306: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: configured local provider remains available when Gemini is default -16:29 +3307: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: fixed AI target cannot widen a sidebar selection -16:29 +3308: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: proposal Apply refuses stale external source content -16:30 +3309: loading /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart -16:30 +3309: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial prefix grows compatibly -16:30 +3310: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial becomes complete and clears marker -16:30 +3311: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations identical complete listings remain consistent -16:30 +3312: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations incompatible repeated listing rejects -16:30 +3313: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations known failed prefix recovers completely -16:30 +3314: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations failure without a known prefix cannot prove recovery -16:30 +3315: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations successful listing followed by failure rejects -16:30 +3316: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry replacement between complete reads rejects -16:30 +3317: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry removal between complete reads rejects -16:30 +3318: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter compatible scan keeps stronger proof -16:30 +3319: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete proof survives compatible limited rescan -16:30 +3320: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial rescan cannot erase a previous failure -16:30 +3321: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete recovery must retain failed-prefix entries -16:30 +3322: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter failed retry retains its consumed prefix -16:30 +3323: loading /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart -16:32 +3323: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: ingests workspace images with safe names and portable paths -16:33 +3324: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: reuses identical assets and resolves name collisions -16:33 +3325: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping identical publications keep the committed owner -16:33 +3326: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping different publications keep the committed owner -16:33 +3327: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect identical pending publications with equal filenames -16:36 +3328: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect different pending publications with equal filenames -16:39 +3329: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: failed publication releases only its own filesystem reservation -16:42 +3330: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: terminated provisional owner remains reserved across processes -16:45 +3331: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: rollback cannot delete an asset after its publication is committed -16:45 +3332: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: uses the configured Writerside images directory -16:45 +3333: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: restores retained Writerside video bytes without widening image paste -16:45 +3334: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: requires saving untitled documents and rejects non-images -16:45 +3335: loading /home/albert/busystack/busymark/test/src/ai_test.dart -16:46 +3335: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy allows literal loopback and localhost origins -16:46 +3336: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy rejects remote, credential-bearing, and path endpoints -16:46 +3337: /home/albert/busystack/busymark/test/src/ai_test.dart: prompt serializes untrusted document data as a JSON field -16:46 +3338: /home/albert/busystack/busymark/test/src/ai_test.dart: plain-text edit prompts never request Markdown -16:46 +3339: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard accepts prose edits that retain protected Markdown -16:46 +3340: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard rejects changed links and fenced code -16:46 +3341: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard protects fences with longer valid closing markers -16:46 +3342: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder handles UTF-8 and JSON split across arbitrary byte chunks -16:46 +3343: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder rejects malformed records and oversized responses -16:46 +3344: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider lists models and streams chat content and usage -16:46 +3345: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider stops at completion and ignores trailing stream records -16:46 +3346: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider uses the documented low thinking level for GPT-OSS -16:46 +3347: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider bounds the model-list response while reading it -16:46 +3348: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider rejects redirects without following them -16:46 +3349: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider does not list or run Ollama cloud models -16:46 +3350: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider cancellation interrupts a silent response stream -16:46 +3351: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator cancels the older request for the same target -16:46 +3352: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator rejects a provider stream without completion -16:46 +3353: loading /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart -16:49 +3353: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: formatting a URL suffix retains the complete live link and round trips -16:49 +3354: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter URL recognition preserves formatting, literal syntax, anchors, breaks and descendants -16:49 +3355: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter recognition preserves formatting within a URL and does not enter math fields -16:49 +3356: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: text whitespace preservation metadata follows pasted whitespace -16:49 +3357: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: paste-only whitespace keeps list descendants exactly once -16:49 +3358: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: plain whitespace paste keeps list descendants through Undo and Redo -16:52 +3359: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: replacement scope distinguishes a heading field from its document block -16:52 +3360: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete blocks inserted in list content retain every descendant -16:52 +3361: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: generic block commands cannot convert tables or preserved raw blocks -16:52 +3362: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: nested list-to-blockquote conversion preserves parent text -16:52 +3363: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: every admonition style preserves nested list parent text -16:52 +3364: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves the current list item descendants -16:52 +3365: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves descendants of an empty list item -16:52 +3366: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace rejects a merge that cannot represent descendants -16:52 +3367: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete clipboard snapshots reconstruct a table transactionally -16:52 +3368: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: same-editor cut and paste preserves complete tables -16:52 +3369: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits normalize every newline form before updating -16:52 +3370: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits preserve block-marker prefixes as literal text -16:52 +3371: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary table cell edits preserve formatting and links -16:52 +3372: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary cell edits retain toolbar-applied formatting -16:52 +3373: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve empty-alt inline images -16:52 +3374: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve existing hard line breaks -16:52 +3375: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing preserves a literal bang before an inline link -16:52 +3376: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing escapes block syntax at the start of a list item -16:52 +3377: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table field edits preserve rendered formatting and links -16:53 +3378: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields reject multiline input and reconcile the model -16:53 +3379: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields preserve block-marker-prefixed cell values -16:53 +3380: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source ranges select repeated text and table cells -16:54 +3381: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source navigation rebases spans after earlier edits -16:54 +3382: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: source navigation expands collapsed Writerside ancestors -16:54 +3383: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: outline navigation expands a collapsed heading ancestor -16:54 +3384: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cells own shortcuts, formatting, and restored selection -16:54 +3385: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external undo groups continuous typing but not transactions -16:54 +3386: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external history coalesces editor typing without local copies -16:54 +3387: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: undo controllers are disposed when blocks disappear -16:55 +3388: loading /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart -16:55 +3388: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: SSE decoder handles split UTF-8 frames and multiline data -16:55 +3389: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: OpenAI Responses adapter is stateless and maps text and usage -16:55 +3390: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini Interactions adapter uses stable v1 and text deltas only -16:55 +3391: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider never includes a secret in surfaced failures -16:55 +3392: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects malformed usage records -16:55 +3393: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini rejects an incomplete status update -16:55 +3394: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects EOF without a typed completion event -16:55 +3395: loading /home/albert/busystack/busymark/test/src/modal_barrier_test.dart -16:57 +3395: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.light modal barriers use the semantic shade role -16:58 +3396: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.dark modal barriers use the semantic shade role -16:58 +3397: loading /home/albert/busystack/busymark/test/src/native_menu_service_test.dart -17:00 +3397: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: show serializes native menu presentation and returns its selection -17:00 +3398: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: dismiss is scoped to the native menu session -17:00 +3399: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: missing native host reports unavailable for a themed fallback -17:00 +3400: loading /home/albert/busystack/busymark/test/src/workspace_controller_test.dart -17:01 +3400: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside tab preparation loads once and current activation loads zero -17:01 +3401: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: configuration preview does not reparse in a derived loop and closing all buffers relinquishes overlays -17:01 +3402: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all Writerside tabs completes override relinquishment -17:01 +3403: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closed-tab reconciliation rejects obsolete disk models and keeps tabs closed -17:02 +3404: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: active -17:02 +3405: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: inactive -17:02 +3406: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: closure -17:02 +3407: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: workspace -17:02 +3408: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: external -17:03 +3409: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: disposal -17:03 +3410: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: rapid Writerside activation keeps derived work bounded and publishes the latest request -17:03 +3411: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered creation notifications are acknowledged, external same-size writes remain visible -17:04 +3412: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: a failed mutation cannot acknowledge its write notifications -17:05 +3413: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: quarantine and duplicate delayed deletion events acknowledge incorporated absence -17:06 +3414: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: an external same-size write during acknowledgement invalidates the consumed fingerprint -17:06 +3415: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: anchor -17:07 +3416: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: disk -17:07 +3417: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered TOC removal notifications require no subsequent module processing -17:08 +3418: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=false -17:08 +3419: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=true -17:08 +3420: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=false -17:08 +3421: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=true -17:08 +3422: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=false -17:08 +3423: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=true -17:09 +3424: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects inactive edit after clean navigation -17:09 +3425: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects reopen after clean navigation -17:09 +3426: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects close all after clean navigation -17:09 +3427: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects dispose after clean navigation -17:10 +3428: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects disk input after clean navigation -17:10 +3429: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects inactive edit after clean navigation -17:10 +3430: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects reopen after clean navigation -17:10 +3431: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects close all after clean navigation -17:10 +3432: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects dispose after clean navigation -17:10 +3433: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects disk input after clean navigation -17:10 +3434: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects inactive edit after clean navigation -17:10 +3435: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects reopen after clean navigation -17:11 +3436: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects close all after clean navigation -17:11 +3437: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects dispose after clean navigation -17:11 +3438: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects disk input after clean navigation -17:11 +3439: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining resource discovery presents stable limited inputs -17:11 +3440: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects edit during verification -17:11 +3441: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects inactive edit during verification -17:11 +3442: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects workspace replacement during verification -17:12 +3443: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects same-project reopening during verification -17:12 +3444: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects edit during verification -17:12 +3445: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects inactive edit during verification -17:12 +3446: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects workspace replacement during verification -17:12 +3447: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects same-project reopening during verification -17:12 +3448: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects edit during verification -17:12 +3449: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects inactive edit during verification -17:12 +3450: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects workspace replacement during verification -17:12 +3451: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects same-project reopening during verification -17:12 +3452: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=false -17:13 +3453: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=true -17:13 +3454: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=false -17:13 +3455: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=true -17:13 +3456: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=false -17:13 +3457: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=true -17:13 +3458: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=false -17:13 +3459: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=true -17:13 +3460: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded inactive edit -17:13 +3461: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded configuration write -17:13 +3462: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction discovery refresh keeps the live selected instance through reconciliation -17:13 +3463: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=4 -17:14 +3464: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=2 -17:15 +3465: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome creation cannot overwrite an edit made during history flush -17:15 +3466: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: starting a Welcome workspace cannot discard a dirty buffer -17:15 +3467: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome replaces clean buffers but workspace New remains additive -17:15 +3468: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete closes the topic buffer, selects a survivor, and records history -17:15 +3469: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete journal removes the deleted tab after refresh failure restart -17:16 +3470: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC writes reject an inactive dirty tree without discarding either buffer -17:16 +3471: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC creation defers its monitor events until the new document is open -17:16 +3472: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown topic import opens its first topic in an editable buffer -17:17 +3473: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed Markdown import preserves the active document and workspace -17:17 +3474: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Validate publishes a valid table containing an escaped pipe -17:17 +3475: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation reports stale, busy and failed outcomes without publishing old results -17:17 +3476: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=false -17:17 +3477: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=true -17:17 +3478: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math callbacks from an older editor revision cannot republish errors -17:17 +3479: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown validation uses the unsaved linked tab snapshot -17:17 +3480: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=true -17:17 +3481: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=false -17:17 +3482: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside rename stages verified edits across unsaved tabs with undo -17:17 +3483: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened Markdown files by file path in recent workspaces -17:17 +3484: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened folders by folder path in recent workspaces -17:17 +3485: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace file operations refresh and preserve active moved files -17:17 +3486: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates an unsaved Markdown file without adding it to recent -17:17 +3487: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates CommonMark inside Writerside without replacing project or dirty topic -17:17 +3488: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: identical untitled buffers remain distinct by buffer id -17:17 +3489: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: delayed untitled preview cannot publish into another untitled tab -17:17 +3490: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files leave preview mode for editor mode -17:17 +3491: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files preserve non-preview view modes -17:17 +3492: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an untitled Markdown file clears the workspace -17:17 +3493: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding a saved file reloads disk text and clears dirty state -17:18 +3494: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside project and records it as recent -17:18 +3495: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside topic and opens it without changing recents -17:18 +3496: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: topic TOC actions refresh the workspace and preserve file state -17:18 +3497: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: reviewed topic rename is rejected after a project buffer becomes dirty -17:18 +3498: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as writes a new Markdown file and records it as recent -17:18 +3499: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown in Writerside keeps ordinary files CommonMark -17:18 +3500: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside refresh preserves saved Markdown outside the workspace root -17:18 +3501: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown into discovered topics reclassifies it -17:19 +3502: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving multiple untitled documents creates normal file buffers -17:19 +3503: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as refuses an existing file unless overwrite is explicit -17:19 +3504: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as explicit overwrite replaces the final symlink only -17:19 +3505: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves source edits for an untitled Markdown file -17:19 +3506: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while writing the file -17:19 +3507: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as completes against its buffer after switching tabs -17:19 +3508: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while reopening the file -17:19 +3509: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: switching active files reparses outline for the new file -17:19 +3510: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale validation after save and tab switch does not restore previous file -17:19 +3511: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation completing after save preserves the saved snapshot -17:19 +3512: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source defers preview work until a preview mode is visible -17:19 +3513: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source-only validation still runs when validate-on-edit is enabled -17:19 +3514: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale text update from previous file cannot dirty active tab -17:19 +3515: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: folder workspaces track open file tabs without duplicates -17:19 +3516: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All writes every dirty file-backed buffer -17:19 +3517: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All can be scoped without saving unrelated dirty buffers -17:19 +3518: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: selected dirty buffers can be discarded without changing tabs -17:19 +3519: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing active file tabs selects a neighboring tab -17:19 +3520: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: activating sibling file tabs wraps around the open tabs -17:19 +3521: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all file tabs clears the active editor state -17:20 +3522: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs aborts when a document changes during history flush -17:20 +3523: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs cannot clear workspace state replaced during flush -17:20 +3524: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed open clears stale workspace state -17:20 +3525: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math renderer failures become source-linked runtime diagnostics -17:20 +3526: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validate on edit setting controls live diagnostics only -17:20 +3527: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save waits for an idle delay before writing -17:21 +3528: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Undo and Redo reschedule autosave after the prior save settled -17:26 +3529: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: inactive document updates schedule autosave without changing tabs -17:28 +3530: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed workspace refresh restores eligible autosave scheduling -17:29 +3531: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disabled autosave stays disabled after a failed refresh -17:31 +3532: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save remains scheduled independently for inactive tabs -17:32 +3533: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save preserves dirty state when edits happen during save -17:32 +3534: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: overlapping manual save writes the newer requested revision -17:32 +3535: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save completes against its buffer after switching tabs -17:32 +3536: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing a buffer waits for its in-flight autosave -17:32 +3537: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard aborts when the document changes during protective history capture -17:32 +3538: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard waits for its buffer in-flight autosave -17:32 +3539: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save waits for an in-flight autosave of the same buffer -17:32 +3540: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All waits for an in-flight autosave of the same buffer -17:32 +3541: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save As waits for an in-flight autosave of the same buffer -17:32 +3542: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean shutdown waits for in-flight document writes -17:32 +3543: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: pending history from a closed clean tab prevents a clean shutdown marker -17:32 +3544: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save refuses to overwrite external file changes without force -17:32 +3545: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save treats a deleted active file as an external conflict -17:32 +3546: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save detects external rewrites with unchanged modified time -17:32 +3547: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving preserves a manually removed final newline -17:32 +3548: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: WYSIWYG list edits preserve a missing final newline -17:32 +3549: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: spelling correction undo and redo restore source and rich selections -17:33 +3550: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Keep Mine retains the conflict snapshot until explicit overwrite -17:33 +3551: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitor refresh waits for an active foreground refresh -17:33 +3552: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves an active edit and editor history made during reparse -17:33 +3553: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation reconciles edits accepted while its reparse is pending -17:33 +3554: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: opening a new tab preserves live edits and editor history in the visible document -17:33 +3555: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing the active tab aborts if it changes during next-tab activation -17:33 +3556: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: aborted discard close preserves dirty state after an editor-only change -17:33 +3557: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: aborted -17:33 +3558: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: closed -17:33 +3559: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: disabled -17:33 +3560: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: shutdown -17:33 +3561: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: replaced -17:33 +3562: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation does not resurrect another tab closed while waiting -17:33 +3563: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves inactive edits and does not resurrect a closed tab -17:33 +3564: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh rejects a disk load superseded by typing -17:33 +3565: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: external file moves remap the open document buffer -17:33 +3566: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitors saved standalone tabs outside the workspace root -17:33 +3567: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: standalone refresh preserves saved tabs in different directories -17:33 +3568: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup leaves a clean session closed unless reopening is enabled -17:33 +3569: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup restores an interrupted session without an opt-in -17:33 +3570: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored sessions retain tabs whose files are missing -17:33 +3571: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored standalone sessions retain a missing document -17:33 +3572: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: mixed untitled and saved session restores as a standalone workspace -17:33 +3573: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark active -17:34 +3574: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark inactive -17:34 +3575: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean marker cannot hide remaining recovery entries -17:34 +3576: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: recovery text remains restorable when the later session save fails -17:34 +3577: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: single-document session uses no workspace path after saved tabs close -17:34 +3578: loading /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart -17:34 +3578: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped image-description text follows Markdown image alt semantics -17:34 +3579: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: annotated parsing has ordinary semantics across supported corpus -17:34 +3580: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: image ranges identify only resolved source occurrences -17:34 +3581: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: positioned label breaks retain raw endings and container prefixes -17:34 +3582: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped link and image titles retain exact raw boundaries -17:34 +3583: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: destination-only links and images have no mapped title -17:34 +3584: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: position records do not change HTML or link semantics -17:34 +3585: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: selection endpoints crossing HTML retain one semantic fragment -17:34 +3586: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: supported HTML whitespace positions have complete position records -17:34 +3587: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: only operation-local markers are ignored -17:34 +3588: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: delimiter-only positions are explicitly incomplete -17:34 +3589: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: syntax-boundary probes retain the ordinary semantic oracle -17:34 +3590: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: deterministic inline combinations preserve annotated semantics -17:34 +3591: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: standalone HTML break ownership uses one indexed lookup per break -17:34 +3592: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: AST source boundary lookahead is linear and maps the final link -17:35 +3593: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: fallback mapping is bounded for entities repetitions and code spans -17:35 +3594: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: tag-looking attribute text does not claim break layout -17:35 +3595: loading /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart -17:36 +3595: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: restores WYSIWYG selection from document session state -17:37 +3596: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: reports the old document session before switching tabs -17:37 +3597: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: defers session provider updates until document rebuild ends -17:38 +3598: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: workspace mode delegates WYSIWYG undo to buffer history -17:38 +3599: loading /home/albert/busystack/busymark/test/src/writerside_identity_test.dart -17:38 +3599: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: anchor identity includes topic and all instances participate in usages -17:39 +3600: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: conditional globals and snippet variables have distinct scopes -17:39 +3601: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: completion filters context and target identity before limiting -17:39 +3602: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: validation uses relationships, typed values and current configuration syntax -17:39 +3603: loading /home/albert/busystack/busymark/test/src/html_export_ui_test.dart -17:40 +3603: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: one Export command retains Ctrl+Shift+E -17:40 +3604: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Flutter Main menu exposes document export -17:41 +3605: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: untitled active text stays captured while destination picker is open -17:43 +3606: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Cancel handling before instance selection -17:43 +3607: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Discard handling before instance selection -17:44 +3608: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Save handling before instance selection -17:45 +3609: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart -17:46 +3609: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication -17:46 +3610: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path -17:46 +3611: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content -17:46 +3612: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document -17:46 +3613: loading /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart -17:48 +3613: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Writerside numeric list starts and container boundaries reach PDF -17:48 +3614: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: list items and visualization replacements retain source anchors -17:48 +3615: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: maps Markdown semantics into renderer-neutral export blocks -17:48 +3616: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: omits reference definitions while preserving their resolved links -17:48 +3617: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Typst payload contains data but never raw local image paths -17:48 +3618: loading /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart -17:50 +3618: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: basic fixture uses a renderable OpenAPI fence -17:50 +3619: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: visualizer fences remain generic code and round-trip byte-for-byte -17:50 +3620: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: dedicated visualizer rules highlight comments, keys, and keywords -17:51 +3621: loading /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart -17:53 +3621: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-topic-create-10-100-0 -17:53 +3622: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-topic-create-10-100-0 -17:53 +3623: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-safe-delete-10-100-0 -17:53 +3624: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-safe-delete-10-100-0 -17:53 +3625: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 -17:53 +3626: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 -17:53 +3627: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: external moves, missing destinations and authored hidden names stay visible -17:53 +3628: loading /home/albert/busystack/busymark/test/src/html_rich_export_test.dart -17:55 +3628: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered mermaid retains a linked Writerside block ID -17:57 +3629: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered openapi retains a linked Writerside block ID -17:57 +3630: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: HTML uses unique occurrence jobs, standalone math and diagram/static API engines -17:57 +3631: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: custom HTML metrics and embedded rich assets stay self-contained -17:57 +3632: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: all diagram dependencies are captured before rendering begins -17:57 +3633: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: cancelling an active render retains existing output and removes staging -17:57 +3634: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: render timeout is bounded and cancellation interrupts a pending job -17:57 +3635: loading /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart -17:58 +3635: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: finds exact href and body spans for every supported quote form -17:58 +3636: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: ignores comments, fenced code, and inline code but keeps containers -17:58 +3637: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: multiline anchors are exact and malformed anchors remain manual -17:58 +3638: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/full-flutter-final.log b/delivery/nextcloud-explicit-adoption/evidence/full-flutter-final.log deleted file mode 100644 index 2fec0896..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/full-flutter-final.log +++ /dev/null @@ -1,4412 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver -00:01 +1: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider -00:01 +2: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider -00:01 +3: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files -00:01 +4: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text -00:01 +5: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations -00:01 +6: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads -00:01 +7: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy -00:01 +8: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy -00:01 +9: loading /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart -00:02 +9: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a complete subtree as the last child of an exact node -00:04 +10: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry after a root sibling -00:04 +11: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry to the end of the TOC root -00:04 +12: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry relative to itself without writing -00:04 +13: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry into its descendant without writing -00:04 +14: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: requires a destination for child and sibling placement -00:04 +15: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects invalid structural paths without writing -00:04 +16: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects stale paths whose expected TOC identities moved -00:04 +17: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a root entry and promotes its children in place -00:04 +18: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a nested entry and promotes its child before its sibling -00:04 +19: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes multiple entries atomically against one tree snapshot -00:04 +20: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: batch removal handles a selected descendant and ancestor -00:04 +21: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves multiple subtrees as an ordered group -00:04 +22: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a tree outside the guarded module root -00:04 +23: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a symlinked tree without mutating its target -00:04 +24: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: does not overwrite a tree changed before atomic publication -00:04 +25: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: atomic replacement preserves the tree POSIX mode -00:04 +26: loading /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart -00:05 +26: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal dialogs stop app and editor shortcuts -00:05 +27: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: Escape closes a modal without an initially focused control -00:05 +28: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal fallback does not steal a child autofocus request -00:06 +29: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: overlapping dialogs synchronize native modal depth -00:06 +30: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: serializes rapid manual native barrier transitions -00:06 +31: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: failed native barrier acquisition rolls back and can retry -00:06 +32: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal coordinator resolves the service from ProviderScope -00:06 +33: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: open modal barrier follows live theme changes -00:06 +34: loading /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart -00:11 +34: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: analysis finds every tree, topic link, include, and start page -00:11 +35: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove promotes children, updates usages, adds redirect, and keeps file -00:12 +36: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates all usages and removes every TOC occurrence -00:12 +37: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect to a promoted child is written to the promoted copy -00:12 +38: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed XML topics make usage analysis fail closed -00:12 +39: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: file-size-skipped topics make removal fail closed -00:12 +40: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: document-count-skipped topics make removal fail closed -00:12 +41: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: unreadable topic contents make removal fail closed -00:12 +42: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: topic-root traversal truncation makes removal fail closed -00:12 +43: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: incomplete project-module discovery makes removal fail closed -00:12 +44: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: tree directory enumeration failure makes removal fail closed -00:12 +45: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: single-quoted includes without element-id are found and removed -00:13 +46: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: variable-expanded links are analyzed and the variables file is stale-checked -00:13 +47: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: Safe Delete finds and unlinks authored HTML anchors without literal false positives -00:13 +48: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed authored HTML anchors are manual Safe Delete blockers -00:13 +49: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML variable hrefs are expanded and ambiguity blocks -00:13 +50: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML relevance follows its conditioned Markdown chapter -00:13 +51: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: automatic HTML unlinking permits project-wide orphan status -00:13 +52: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a surviving authored HTML link suppresses orphan status -00:13 +53: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: ambiguous references block deletion without changing any file -00:13 +54: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: old web file names follow Writerside normalization and exact overrides -00:14 +55: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: existing redirect rules block conflicting redirects -00:14 +56: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect preserves direct and rule-based accepted aliases -00:14 +57: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a transferred redirect alias collision fails before writes -00:14 +58: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect sources use each host instance web filename -00:14 +59: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remaining start-page and cross-instance usages prevent orphan status -00:14 +60: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove-from-instance relevance respects document conditions -00:14 +61: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: start-page and stale analyses fail closed without deleting the topic -00:14 +62: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: generic Files deletion cannot bypass Writerside Safe Delete -00:14 +63: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: project analysis finds origin links, includes, cards, and ref TOC nodes -00:14 +64: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored Markdown HTML anchors resolve origin project-wide -00:14 +65: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates automatic cross-module origin usages -00:15 +66: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: selected ref node uses removal workflow and promotes its children -00:15 +67: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: semantic tree scan includes hidden/build trees and excludes VCS metadata -00:15 +68: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a new module after analysis makes the reviewed plan stale -00:15 +69: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: cross-module failure rolls back BusyMark edits without overwriting a concurrent edit -00:15 +70: loading /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart -00:16 +70: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source paste preserves incoming nested blocks and returns its caret -00:16 +71: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves structural block kinds -00:16 +72: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: removing final formula leaves normal editing mode -00:16 +73: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits preserve nested list children -00:16 +74: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: descendant math does not put a plain list parent in source mode -00:16 +75: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first inline math insertion preserves unaffected inline AST -00:16 +76: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math edits retain explicit heading IDs -00:16 +77: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first math insertion recalculates a generated heading ID -00:16 +78: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion always emits reparsable source -00:16 +79: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: additional inline math uses the same reparsable insertion policy -00:16 +80: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion rejects multiline selections without mutation -00:16 +81: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves zero-width semantic inlines -00:16 +82: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table-cell source editing retains and removes semantic math -00:16 +83: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits cannot discard additional Markdown blocks -00:16 +84: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source editing preserves escaped literal dollars -00:16 +85: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves the intended inline position -00:16 +86: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math field source boundaries map to semantic text boundaries -00:16 +87: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: source-mode math insertion preserves the intended inline position -00:16 +88: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG renders math, edits exact source, and reparses without corruption -00:17 +89: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG toolbar inserts inline and display math source -00:18 +90: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math toolbar preserves existing inline structure -00:18 +91: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: rendered and focused math list items keep one marker -00:18 +92: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table math renders unfocused and edits delimiter source -00:19 +93: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: plain table cell treats typed Markdown as rich text -00:19 +94: loading /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart -00:20 +94: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery refresh preserves a valid second instance -00:21 +95: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: selected instance removed -00:21 +96: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: intentional selection -00:22 +97: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: another module -00:22 +98: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction incomplete observations are presentation only and reject changed reads -00:22 +99: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction limited inventory retains raw counts for excluded Git entries -00:22 +100: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: rejected source size remains an input to freshness checking -00:22 +101: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: bounded topic rejection detects recovery on the real worker -00:22 +102: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: oversized buffer overrides retain their consumed-input hash -00:22 +103: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: unreadable sources keep error diagnostics and invalidate on recovery -00:22 +104: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: real execution transfers results and propagates worker failures -00:22 +105: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: basic_project -00:22 +106: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: conformance_project -00:22 +107: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: markdown_export_compatibility -00:23 +108: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: malformed XML -00:23 +109: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: missing configured root -00:23 +110: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: unsafe include -00:23 +111: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: scan limit -00:23 +112: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: preparation consumes complete overlays once, then selects with zero loads -00:23 +113: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: reuse checks equal-size disk dependencies and added inputs -00:23 +114: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: planned path exclusions cannot hide a new colon-named dependency -00:23 +115: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: configuration overlay rediscovery retains symbols and diagnostics -00:23 +116: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: creation returns its typed publication result without reopening -00:23 +117: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal application shares one ownership-checked fresh project -00:23 +118: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects changed input before fingerprint collection -00:23 +119: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects added input before fingerprint collection -00:23 +120: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects removed input before fingerprint collection -00:23 +121: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects tree input before fingerprint collection -00:23 +122: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects configuration input before fingerprint collection -00:23 +123: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects disk dependency after fingerprint verification and before commit -00:23 +124: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects dirty affected buffer after fingerprint verification and before commit -00:23 +125: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: analysis is never reused across confirmation -00:24 +126: loading /home/albert/busystack/busymark/test/src/local_history_controller_test.dart -00:25 +126: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed opened baseline retries its original source without an edit -00:25 +127: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: baseline before edit preserves original and coalesces latest edit -00:25 +128: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: closed failures keep ownership and stale settlement cannot drop newer work -00:25 +129: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed protective capture survives refresh failure without recapture -00:25 +130: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: protective authorization is invalidated while committed refresh awaits -00:25 +131: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: disable cancels an in-flight baseline at the store boundary -00:25 +132: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: exclude cancels an in-flight baseline at the store boundary -00:25 +133: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed promotion stays associated when refresh fails -00:25 +134: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As binds destination even when list refresh fails -00:25 +135: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: settling one buffer resumes retries accepted by another buffer -00:25 +136: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear document cancels its failed unbound baseline -00:25 +137: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=true) -00:25 +138: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=false) -00:25 +139: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=false) -00:25 +140: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=true) -00:25 +141: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains a source identity established before later settlement fails -00:25 +142: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As refreshes a staged destination after its concurrent checkpoint -00:25 +143: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: abandoned and superseded moves retain the newest committed association -00:25 +144: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued edits share one retained baseline retry owner -00:25 +145: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: independent failures, permanent baselines and policy cancellation remain isolated -00:25 +146: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: cancelled failed baselines cannot be restored by delayed callbacks -00:25 +147: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: continuous typing captures latest text at fixed checkpoint interval -00:25 +148: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: inactive buffers receive independent checkpoint timers -00:25 +149: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first checkpoint attaches an empty untitled browsing scope and publishes it -00:25 +150: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file store checkpoint persists across reopen and clear stays authoritative -00:30 +151: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: active revision search follows matching and nonmatching captures -00:30 +152: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed automatic capture keeps pending source and retries without another edit -00:30 +153: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a newer edit accepted during a failed write wins the retry -00:30 +154: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: automatic checkpoint retries a transient first-save promotion failure -00:30 +155: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush waits behind queued observation and captures its latest source -00:30 +156: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear wins over an in-flight capture and later edits record normally -00:30 +157: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear Document records in the replacement lineage -00:30 +158: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document blocks replacement capture while its journal is pending -00:30 +159: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear All records in the replacement lineage -00:30 +160: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All blocks replacement capture while its journal is pending -00:30 +161: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an automatic checkpoint queued for an untitled draft -00:30 +162: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear Document -00:30 +163: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear All -00:30 +164: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clearing the displayed comparison closes it without a missing warning -00:30 +165: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an in-flight path capture for the same document -00:30 +166: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first edit after another controller clears a stale binding starts a new lineage -00:30 +167: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight buffer replacement protection -00:30 +168: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued buffer replacement protection -00:30 +169: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight path replacement protection -00:30 +170: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued path replacement protection -00:30 +171: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight buffer replacement protection -00:30 +172: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued buffer replacement protection -00:30 +173: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight path replacement protection -00:30 +174: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued path replacement protection -00:30 +175: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording off prevents baseline and checkpoints without deleting history -00:30 +176: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: store-wide find locates closed and deleted documents by path or content -00:30 +177: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: retained-document lookup is temporary and normal document selection resumes following -00:30 +178: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: panel construction preserves an explicit retained-document inspection -00:31 +179: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: delayed revision search cannot repopulate a newly selected document scope -00:31 +180: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision search failure finishes searching and remains in scope -00:31 +181: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Local History follows active tabs and clears the visible query without a document dropdown -00:32 +182: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision rows use local second-precision time, date groups, event metadata, and RTL -00:32 +183: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a delayed revision read cannot cross the selected document or leave loading stuck -00:32 +184: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As settles pending named and untitled checkpoints safely -00:32 +185: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: untitled overwrite Save As retains a failed source checkpoint -00:32 +186: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As source capture is idempotent after a lost result -00:32 +187: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As recovery never adopts unrelated same-content destination history -00:32 +188: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording-disabled first save promotes untitled history identity -00:32 +189: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: excluding a recovered first-save destination preserves its untitled source baseline -00:32 +190: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued committed Save As cannot recreate a newly excluded destination side -00:32 +191: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed first-save promotion is retried before a later capture -00:32 +192: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush retries a failed first-save promotion without another edit -00:32 +193: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush reports a content failure after successfully retrying promotion -00:32 +194: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: remap settles pending first-save promotions for files and directories -00:32 +195: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file and directory moves settle pending checkpoints before remap -00:32 +196: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed path reconciliation blocks affected captures but not unrelated documents -00:32 +197: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: successful path queue prefix is published before a later failure -00:32 +198: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path deletion warnings remain scoped to affected owners -00:32 +199: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed path operation is not replayed after refresh failure -00:32 +200: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: restored targetless executing reconciliation preserves its owner -00:32 +201: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) -00:32 +202: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/B.md) -00:32 +203: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/A.md, recursive: false, source: /workspace/C.md) -00:32 +204: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/B.md, recursive: false, source: /workspace/C.md) -00:32 +205: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirA/nested/C.md) -00:32 +206: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirB/nested/C.md) -00:32 +207: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: false, source: /workspace/C.md) -00:32 +208: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirB/nested/C.md, recursive: false, source: /workspace/C.md) -00:32 +209: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /other, recursive: false, source: /workspace) -00:32 +210: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace, recursive: false, source: /other) -00:32 +211: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/dirB-sibling/C.md, recursive: false, source: /workspace/dirA-sibling/C.md) -00:32 +212: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) -00:32 +213: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: true, source: /workspace/dirA/nested/C.md) -00:32 +214: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: true, source: /workspace/C.md) -00:32 +215: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /other, recursive: true, source: /workspace) -00:32 +216: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: true, source: /workspace/C.md) -00:32 +217: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) -00:32 +218: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) -00:32 +219: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses prepared target with different paths -00:32 +220: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses bound identity with different paths -00:32 +221: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses destination identity with different paths -00:32 +222: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency checks promotion destination identity at a different path -00:32 +223: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency settles only conflicting entries behind an unresolved head -00:32 +224: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=false) -00:32 +225: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=true) -00:32 +226: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency preserves transitive queue ordering -00:32 +227: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=false) -00:32 +228: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=true) -00:32 +229: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: staged path commit survives refresh failure until workspace acknowledgement -00:32 +230: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: external staged remap refreshes its bound target after checkpoint settlement -00:32 +231: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: definitive false staged result retires its executing journal -00:32 +232: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred deletion cannot delete replacement path history -00:32 +233: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document removes only its recursive reconciliation target -00:32 +234: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document preserves timer retry for remaining recursive target -00:32 +235: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: prepared remap rejects a checkpoint that changed its frozen target -00:32 +236: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: ownerless path failure is visible only in history presentation -00:32 +237: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: detached promotion capture is included in durable retained work -00:32 +238: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: live external retained owner is not replayed and Clear All retires it -00:32 +239: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a clear conflict cancels the old baseline retry owner -00:32 +240: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit after failed Clear waits and persists in the replacement lineage -00:32 +241: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: post-Clear edit uses committed epoch when reconciliation refresh fails -00:32 +242: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred remap cannot mutate replacement path history -00:32 +243: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed remap reserves source and destination paths until reconciliation -00:32 +244: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deletion remains ordered behind a retained path remap -00:32 +245: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first save waits for a reserved source path before promoting its history -00:32 +246: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path target discovery observes history written after cached load -00:32 +247: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear document -00:32 +248: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear all -00:32 +249: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after disposal -00:32 +250: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As transfers retained remap ownership with source work -00:32 +251: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flushBuffer reports retained remap work and retires closed owner -00:32 +252: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All cannot be undone by an in-flight path remap -00:32 +253: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path reconciliation resumes a newly opened destination owner -00:32 +254: loading /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart -00:33 +254: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: HTML retains complex Markdown and resolves both heading ID spellings -00:35 +255: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: PDF retains complex Markdown and resolved heading links -00:36 +256: loading /home/albert/busystack/busymark/test/src/math_widget_test.dart -00:36 +256: /home/albert/busystack/busymark/test/src/math_widget_test.dart: inline math applies MathJax baseline and surrounding text metrics -00:37 +257: /home/albert/busystack/busymark/test/src/math_widget_test.dart: wide display math scrolls horizontally without clipping -00:38 +258: /home/albert/busystack/busymark/test/src/math_widget_test.dart: failed formulas retain source and a localized explanation -00:38 +259: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart -00:39 +259: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: reduced fixture uses rendered offsets without Markdown delimiters or block separators -00:39 +260: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All: logical range and copy include styled suffixes and table -00:41 +261: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b0 BusyBlockKind.paragraph -00:41 +262: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b1 BusyBlockKind.paragraph -00:42 +263: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b2 BusyBlockKind.paragraph -00:42 +264: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b3 BusyBlockKind.unorderedListItem -00:42 +265: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b4 BusyBlockKind.unorderedListItem -00:43 +266: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b5 BusyBlockKind.unorderedListItem -00:43 +267: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b6 BusyBlockKind.paragraph -00:43 +268: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b17 BusyBlockKind.paragraph -00:44 +269: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table cells paint the same selected text as document copy -00:44 +270: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: repeated Select All keeps the entire document selected -00:44 +271: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: Before. - -| H | -| --- | -| Body! | - -00:44 +272: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: | H | -| --- | -| Body! | - -After. - -00:45 +273: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag endpoints use the styled rendered coordinate system -00:45 +274: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag from a paragraph into a table copies and selects its cells -00:45 +275: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across table cells selects the existing complete-table document block -00:46 +276: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 460.0 -00:46 +277: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 460.0 -00:46 +278: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 460.0 -00:46 +279: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 460.0 -00:47 +280: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 460.0 -00:47 +281: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 460.0 -00:47 +282: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 1000.0 -00:47 +283: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 1000.0 -00:48 +284: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 1000.0 -00:48 +285: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 1000.0 -00:48 +286: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 1000.0 -00:48 +287: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 1000.0 -00:48 +288: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=2 -00:48 +289: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=10 -00:49 +290: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=11 -00:49 +291: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=2 -00:49 +292: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=10 -00:49 +293: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=11 -00:49 +294: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=2 -00:49 +295: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=10 -00:49 +296: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=11 -00:49 +297: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=2 -00:49 +298: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=10 -00:49 +299: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=11 -00:49 +300: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=2 -00:50 +301: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=10 -00:50 +302: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=11 -00:50 +303: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=2 -00:50 +304: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=14 -00:50 +305: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=15 -00:50 +306: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 3, 29) includes the final rendered character -00:50 +307: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (4, 0, 4, 36) includes the final rendered character -00:50 +308: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 4, 36) includes the final rendered character -00:50 +309: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 4, 4, 36) includes the final rendered character -00:51 +310: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 6, 9) includes the final rendered character -00:51 +311: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 0, 6, 93) includes the final rendered character -00:51 +312: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (5, 0, 5, 29) includes the final rendered character -00:51 +313: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: mouse range across paragraph, list, table and paragraph equals Select All -00:51 +314: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All, mouse and keyboard ranges produce equivalent local selection geometry -00:52 +315: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: local table cell selection stays local; subsequent Select All expands to document -00:53 +316: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table to following paragraph retains complete selected rows -00:53 +317: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: document selection survives viewport scrolling and block recreation -00:53 +318: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: selected table text follows horizontal cell scrolling -00:53 +319: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across a viewport jump resolves the visible extent block (variant: TargetPlatform.linux) -00:54 +320: loading /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart -00:55 +320: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video card embeds a supported YouTube source in place -00:55 +321: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: mini-player embeds Vimeo with the reduced video ID -00:56 +322: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: local video player receives only a canonical media path -00:56 +323: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video dimensions preserve ratio and scale to available width -00:56 +324: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: failed native player leaves a usable poster fallback -00:56 +325: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: WYSIWYG renders a Writerside video without rewriting source -00:56 +326: loading /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart -00:57 +326: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: uses the native grouped modal-editor structure -00:58 +327: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shared report form remains directional in an Arabic UI -00:58 +328: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: dark route uses the shared dialog surface -00:59 +329: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows required-field validation without sending -00:59 +330: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: rejects an invalid optional reply email -00:59 +331: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: category can return to the unselected placeholder -00:59 +332: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: disables submit while a request is active -00:59 +333: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: clears the form and shows the server reference on success -01:00 +334: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows a distinct message when the server rejects the form -01:00 +335: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: keeps retry UUID until submitted content changes -01:00 +336: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: cannot dismiss the dialog while submission is active -01:00 +337: loading /home/albert/busystack/busymark/test/src/headless_chrome_test.dart -01:01 +337: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: evaluates the requested document after it becomes ready -01:01 +338: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: does not evaluate the initial about:blank target -01:01 +339: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: retries when navigation destroys the execution context -01:01 +340: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a silent open DevTools socket respects the readiness bound -01:01 +341: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: socket closure before a response fails deterministically -01:01 +342: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a DevTools error is not mistaken for navigation -01:01 +343: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a page that never becomes ready reports its last state -01:01 +344: loading /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart -01:02 +344: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in untitledMarkdown -01:02 +345: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in singleMarkdown -01:02 +346: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in markdownFolder -01:02 +347: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in writersideModule -01:02 +348: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in nextcloudNotes -01:02 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (setUpAll) -01:03 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered Markdown topic wins over generic file inventory -01:03 +350: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered XML topic resolves as a Writerside XML topic -01:03 +351: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution ordinary Markdown under the project is still CommonMark -01:03 +352: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution path fallback does not depend on workspace file inventory -01:03 +353: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (tearDownAll) -01:03 +353: loading /home/albert/busystack/busymark/test/src/html_export_test.dart -01:04 +353: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsaved Markdown is a complete styled document with stable semantic anchors -01:06 +354: /home/albert/busystack/busymark/test/src/html_export_test.dart: raw disclosures, definitions and spans survive with structural sanitization -01:06 +355: /home/albert/busystack/busymark/test/src/html_export_test.dart: explicit blank lines export as consecutive HTML breaks -01:06 +356: /home/albert/busystack/busymark/test/src/html_export_test.dart: content-addressed assets relocate, deduplicate and reject symlink escapes -01:06 +357: /home/albert/busystack/busymark/test/src/html_export_test.dart: home-relative images use the shared local-media path rules -01:06 +358: /home/albert/busystack/busymark/test/src/html_export_test.dart: untrusted metadata and data URLs cannot create active HTML -01:06 +359: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsafe SVG and CSS never reach exported assets -01:06 +360: /home/albert/busystack/busymark/test/src/html_export_test.dart: overwrite refusal, cancellation and rendering failure preserve previous HTML -01:06 +361: /home/albert/busystack/busymark/test/src/html_export_test.dart: metadata title remains separate from a formatted Markdown title heading -01:06 +362: /home/albert/busystack/busymark/test/src/html_export_test.dart: UTF-8 byte limits are enforced -01:06 +363: /home/albert/busystack/busymark/test/src/html_export_test.dart: Writerside produces linked pages, hidden topics, WIP and start copy -01:07 +364: /home/albert/busystack/busymark/test/src/html_export_test.dart: official conformance fixture exports as individual pages -01:07 +365: loading /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart -01:08 +365: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside blockquotes become typed admonitions and round-trip -01:08 +366: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown blockquotes do not acquire Writerside semantics -01:08 +367: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: semantic admonition elements include quote and preserve attributes -01:08 +368: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: admonition editing emits source that reparses semantically -01:08 +369: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: editing inside an existing admonition changes its outer type -01:08 +370: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: WYSIWYG Admonition menu applies the selected type -01:09 +371: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown does not show the Writerside editing menu -01:09 +372: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside .topic preview keeps content inside its admonition -01:10 +373: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: PDF export keeps admonitions semantic and quotes neutral -01:10 +374: loading /home/albert/busystack/busymark/test/src/d2_renderer_test.dart -01:11 +374: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy rejects imports and icon assets with source locations -01:11 +375: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy does not treat comments, quoted labels, or block strings as imports -01:11 +376: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: returns normalized vector SVG for browser-independent output -01:11 +377: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes foreignObject output at PDF resolution -01:11 +378: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes browser CSS that cannot be preserved in vector form -01:11 +379: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: maps D2 diagnostics and renderer limits to typed results -01:11 +380: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: locates only executable files at deterministic bundle paths -01:11 +381: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: bundled D2 CLI renders stdin to stdout without a shell -01:11 +382: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart -01:12 +382: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -01:13 +383: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions -01:14 +384: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart -01:17 +384: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: display images do not reserve a fixed-height letterbox -01:17 +385: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: quotes and admonitions use the existing callout presentation -01:17 +386: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF export ignores redundant blank lines between blocks -01:18 +387: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF payload preserves an explicit blank line as two breaks -01:18 +388: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders two explicit breaks as one blank PDF line -01:18 +389: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders redundant blank lines identically -01:18 +390: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template exports representative Markdown to a valid PDF -01:18 +391: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside video poster and link compile into a valid PDF -01:18 +392: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside admonitions compile into a valid PDF -01:19 +393: loading /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart -01:20 +393: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: data tables remain tables, including borderless and single-column data -01:20 +394: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: nested layout wrappers retain their inner data table and prose -01:20 +395: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: explicit presentation table keeps caption, cell order and direction -01:20 +396: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor preserves content inside a layout table -01:20 +397: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor plain paste ignores layout and rich content -01:20 +398: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource preserves content inside a layout table -01:20 +399: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource plain paste ignores layout and rich content -01:20 +400: loading /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart -01:22 +400: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: selects all candidates by default and disables OK for none -01:23 +401: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: successful import closes the dialog with selected list order -01:23 +402: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: failed import stays open and presents the localized error -01:23 +403: loading /home/albert/busystack/busymark/test/src/html_publication_test.dart -01:27 +403: /home/albert/busystack/busymark/test/src/html_publication_test.dart: single-file local video has a downloadable fallback -01:27 +404: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list starts and same-type boundaries survive HTML export -01:27 +405: /home/albert/busystack/busymark/test/src/html_publication_test.dart: repeated list includes export as separate HTML containers -01:27 +406: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list styles stay distinct across consecutive lists -01:27 +407: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside shares HTML appearance without changing TOC status or source -01:27 +408: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside module origins preserve includes, variables, file identity and nullable links -01:28 +409: /home/albert/busystack/busymark/test/src/html_publication_test.dart: definition lists preserve individual disclosure states and IDs -01:28 +410: /home/albert/busystack/busymark/test/src/html_publication_test.dart: web filename and index collisions identify both topics before publication -01:28 +411: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside publication uses canonical effective web filenames -01:28 +412: /home/albert/busystack/busymark/test/src/html_publication_test.dart: source and media are captured before progress or later editor changes -01:28 +413: /home/albert/busystack/busymark/test/src/html_publication_test.dart: publication failure retains previous HTML and referenced immutable assets -01:28 +414: /home/albert/busystack/busymark/test/src/html_publication_test.dart: duplicate explicit IDs warn, non-Latin footnotes and document IDs resolve -01:28 +415: loading /home/albert/busystack/busymark/test/src/spelling_service_test.dart -01:29 +415: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document kinds expose one authoritative spelling capability -01:29 +416: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: effective spelling language preserves document and project order -01:29 +417: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: session identity changes when a stable buffer is saved to a path -01:29 +418: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: downloaded dictionaries use revision-shared Snap storage -01:29 +419: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: first save and Save As republish source routing immediately -01:30 +420: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rereads and merges independent external changes -01:31 +421: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words coordinates writers in independent application processes -01:33 +422: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external edit injected after staging -01:34 +423: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external replacement after the atomic exchange -01:34 +424: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves a newer destination and the rejected displaced version -01:34 +425: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves case while merging canonical Unicode equivalents -01:34 +426: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rebuilds untrusted stored keys from validated display values -01:34 +427: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words case-distinct words survive restart into the native worker -01:34 +428: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words malformed storage is reported instead of overwritten -01:34 +429: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: staging validation accepts numeric header revisions and count drift -01:34 +430: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: dictionary import publishes a complete pair only after validation -01:34 +431: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation installs only one shared resource and reuses it by locale -01:34 +432: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation and checksum failure leave no installation -01:34 +433: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation observes the atomic publication commit point -01:34 +434: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale invalid record cannot remove a repaired installation -01:34 +435: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale valid descriptor cannot remove a replacement in another process -01:35 +436: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation catalog waits through a replacement publication gap -01:35 +437: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a late no-replace publisher cannot replace a completed installation -01:35 +438: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation independent process observes the published no-replace destination -01:36 +439: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation stalled response times out, cancels, and permits retry -01:36 +440: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation asynchronous output sink errors fail the receiver without zone leaks -01:36 +441: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed replacement cannot damage a working installation -01:36 +442: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed controller download exposes a working retry -01:36 +443: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller reserves an installation before coordinator startup -01:36 +444: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller releases installation ownership after setup failure -01:36 +445: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller cancellation remains with the reserved startup operation -01:36 +446: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: aliased imports remain selectable across collision, restart, and removal -01:37 +447: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: same-resource import collision is rejected before publication -01:37 +448: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an import does not impersonate the downloadable resource row -01:37 +449: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid imported installation is removable by exact record -01:37 +450: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid downloaded installation repairs through settings API -01:37 +451: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once keeps its authored anchor across editor modes -01:37 +452: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: source hit testing excludes formatting and link destination gaps -01:37 +453: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once follows one transaction across edit, undo, redo, and tabs -01:37 +454: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document ignores survive tab changes but not an actual close -01:37 +455: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed suggestion cannot revive after language changes -01:37 +456: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a manual request waits for its own result while a check runs -01:37 +457: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: checks in bounded batches and reuses unchanged run results -01:37 +458: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: cached runs cover the complete checked text across edits -01:37 +459: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a NUL suffix cannot complete checking and recovers after correction -01:37 +460: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project initialization publishes only the latest owner -01:38 +461: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older same-project Settings read cannot undo a newer snapshot -01:38 +462: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older project watcher read cannot undo Settings publication -01:38 +463: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project read begun during a mutation cannot undo its result -01:38 +464: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project conflict read preserves newer state and error -01:38 +465: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project watcher error cannot replace valid state -01:39 +466: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project watcher recovers after identical dictionary repair -01:39 +467: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project repair recovers a later failed preparation at latest revision -01:40 +468: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project reread does not clear an unrelated personal read failure -01:40 +469: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: failed personal initialization retries after repair and shares first load -01:41 +470: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: explicit checks and Settings refresh external personal words -01:41 +471: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: late personal refresh cannot undo a newer local mutation -01:41 +472: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: refresh begun during a personal mutation cannot undo its result -01:41 +473: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an older personal refresh cannot replace a newer publication -01:41 +474: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a superseded conflict read cannot replace a newer personal refresh -01:41 +475: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Settings holds a failed preparation until deliberate retry -01:43 +476: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm no-workspace Settings refreshes personal words once -01:44 +477: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm Settings observes an external dictionary removal once -01:44 +478: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: leaving Settings during preparation ignores its late completion -01:44 +479: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent first requests start exactly one worker -01:45 +480: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a project-word mutation cannot publish into a later project -01:45 +481: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: new input hides old results before preparation can fail -01:46 +482: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: external project-word edits refresh an open document -01:48 +483: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review dialog keeps one traversal through skip, back, correction, and persistence -01:50 +484: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review word-store conflict stays current and exposes preserved recovery path -01:51 +485: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: equivalent rebuild does not cancel session initialization -01:52 +486: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic session checks after an unresolved language is selected -01:52 +487: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an available but absent dictionary is not downloaded implicitly -01:52 +488: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: removing a downloaded pair keeps words and reports not installed -01:52 +489: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance refreshes external installation at explicit boundaries -01:52 +490: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance replaces an active imported dictionary fingerprint -01:52 +491: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent warm catalog preparations share one owned read -01:52 +492: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed catalog read cannot undo a local installation -01:52 +493: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a failed warm catalog refresh remains retryable -01:52 +494: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic checking rereads inventory after dictionary load fails -01:53 +495: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker catalog validation requires its resource-specific probe -01:53 +496: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projects source and rich snapshots through reusable messages -01:53 +497: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incrementally reuses unaffected plain Markdown runs -01:53 +498: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incremental Markdown projection agrees with a fresh structural parse -01:53 +499: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projection cache rebinds source targets after Save As -01:53 +500: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker project custom words do not leak between contexts -01:53 +501: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quoted corrections retain straight and curly punctuation -01:53 +502: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives projection and worker barriers -01:53 +503: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives a bounded worker chunk -01:53 +504: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker removing a custom exception does not forbid a base word -01:53 +505: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker prose around 64 KiB is checked across bounded chunks -01:53 +506: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker isolates encoding and oversized-token failures -01:53 +507: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker normal, large, and superseded checks stay bounded -spelling benchmark: normal=4ms large/latest=155ms suggestion=0ms -01:53 +508: loading /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart -01:54 +508: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: rapid navigation applies only monotonic complete configurations -01:54 +509: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: a new Dart session can restart native revisions from one -01:54 +510: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal depth is an atomic overlay on the latest page state -01:54 +511: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal barrier is retained before the first page publishes -01:54 +512: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: older runners fall back once to the ordered legacy protocol -01:54 +513: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: failed atomic apply keeps the last success and retries the same desired state -01:54 +514: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: theme map contains the native semantic visual roles -01:54 +515: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: native header labels expose only application-menu commands -01:54 +516: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart -01:56 +516: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces -01:58 +517: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark -01:58 +518: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync -01:58 +519: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces -01:58 +520: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog -01:58 +521: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present -01:58 +522: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging -01:59 +523: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface -01:59 +524: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body -01:59 +525: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters -01:59 +526: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components -01:59 +527: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers -01:59 +528: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface -01:59 +529: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry -01:59 +530: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary -01:59 +531: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer -01:59 +532: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting -01:59 +533: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI -01:59 +534: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text -01:59 +535: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration -01:59 +536: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR -01:59 +537: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface -01:59 +538: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography -01:59 +539: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style -01:59 +540: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives -01:59 +541: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries -01:59 +542: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind -01:59 +543: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces -01:59 +544: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu -01:59 +545: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback -01:59 +546: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup -01:59 +547: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel -01:59 +548: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter -01:59 +549: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu -01:59 +550: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor -01:59 +551: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors -01:59 +552: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation -01:59 +553: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row -01:59 +554: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model -01:59 +555: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row -01:59 +556: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation -01:59 +557: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span -01:59 +558: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout -01:59 +559: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts -01:59 +560: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls -01:59 +561: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds -01:59 +562: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog -01:59 +563: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release -01:59 +564: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome -01:59 +565: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart -02:00 +565: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings -02:00 +566: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded -02:00 +567: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales -02:00 +568: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale -02:00 +569: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes -02:00 +570: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs -02:00 +571: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders -02:01 +572: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct -02:01 +573: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed -02:01 +574: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys -02:01 +575: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale -02:01 +576: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose -02:01 +577: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches -02:01 +578: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form -02:01 +579: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural -02:01 +580: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology -02:01 +581: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations -02:01 +582: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits -02:01 +583: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English -02:01 +584: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog -02:01 +585: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args -02:01 +586: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart -02:03 +586: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks pasted rich content completely in both editors -02:06 +587: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: packaged catalog opens real regional and non-Latin dictionaries -Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff -02:13 +588: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks the general Markdown fixture completely -02:17 +589: loading /home/albert/busystack/busymark/test/src/command_registry_test.dart -02:18 +589: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog includes every editor command with an executable callback -02:18 +590: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog exposes stable unique IDs for all migrated shortcuts -02:18 +591: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects duplicate command IDs -02:18 +592: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects shortcut conflicts in the same command scope -02:18 +593: /home/albert/busystack/busymark/test/src/command_registry_test.dart: allows the same shortcut in distinct focus scopes -02:18 +594: /home/albert/busystack/busymark/test/src/command_registry_test.dart: executes only visible enabled bound commands -02:18 +595: /home/albert/busystack/busymark/test/src/command_registry_test.dart: contextual commands execute against the captured editor -02:18 +596: loading /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart -02:19 +596: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: Linux packages secure AI credential storage consistently -02:19 +597: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: real local AI qualification covers every shipped action -02:19 +598: loading /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart -02:20 +598: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: source line bounds treat offsets as insertion positions -02:20 +599: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: table cell spans respect meaningful outer pipes and escaping -02:20 +600: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: escaped terminal pipes remain in the final cell source span -02:20 +601: loading /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart -02:21 +601: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide preview fits identically through D2 and WebKit renderers -02:21 +602: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide PDF fits identically through D2 and WebKit renderers -02:21 +603: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: area-constrained PDF fits identically through D2 and WebKit renderers -02:21 +604: loading /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart -02:25 +604: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: real installed catalog has six default families and 22 bundled TGDP topics -02:26 +605: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: literal substitution is simultaneous, case-sensitive, XML-only escaped -02:26 +606: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save source matches installed first-match substring behavior -02:26 +607: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: TGDP brace escaping preserves attribute blocks and rewrites relative links -02:26 +608: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save, unique naming, restart, cancellation snapshot and stale edit rejection -02:26 +609: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: concurrent saves serialize without losing templates -02:26 +610: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: true) -02:26 +611: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: false) -02:26 +612: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: corrupt and symbolic-link stores are never replaced -02:26 +613: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: builtin overrides persist independently and reset reveals original source -02:26 +614: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: template bytes are published in the guarded creation transaction and rolled back on conflict -02:26 +615: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: invalid XML templates and colliding root IDs never publish a topic or TOC edit -02:26 +616: loading /home/albert/busystack/busymark/test/src/writerside_test.dart -02:27 +616: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses writerside.cfg directories and registered instances -02:27 +617: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented full writerside.cfg metadata -02:27 +618: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented config defaults -02:27 +619: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses attribute defaults for present config elements -02:27 +620: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented topic title overrides and web file names -02:27 +621: /home/albert/busystack/busymark/test/src/writerside_test.dart: Markdown web filename metadata ignores literal examples -02:27 +622: /home/albert/busystack/busymark/test/src/writerside_test.dart: XML topic metadata is scoped to direct topic children -02:27 +623: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses .tree metadata and TOC hierarchy -02:27 +624: /home/albert/busystack/busymark/test/src/writerside_test.dart: Writerside topic XML exposes semantic math to the shared preview -02:27 +625: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads basic Writerside project with topics and no missing topic diagnostics -02:27 +626: /home/albert/busystack/busymark/test/src/writerside_test.dart: does not parse a Writerside config above the byte limit -02:27 +627: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects configured paths outside the module root -02:27 +628: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a configured topic root reached through a symlink -02:27 +629: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a Writerside config file reached through a symlink -02:27 +630: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads project.ihp as an equivalent Writerside config file -02:27 +631: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads topics from multiple configured topic roots -02:27 +632: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves exact topic reference before basename fallback -02:27 +633: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports duplicate topic IDs in a help module -02:27 +634: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename fallback after exact matching misses -02:27 +635: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves Markdown links across configured topic roots -02:27 +636: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename topic references deterministically -02:27 +637: /home/albert/busystack/busymark/test/src/writerside_test.dart: broken Writerside project produces deterministic diagnostics -02:28 +638: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves basename images in nested Writerside image directories -02:28 +639: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves local images from secondary configured image roots -02:28 +640: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses the documented instance tree elements and attributes -02:28 +641: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects redirect-source attributes on empty TOC groups -02:28 +642: /home/albert/busystack/busymark/test/src/writerside_test.dart: module service retains empty-group redirect-source diagnostics -02:28 +643: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves registered TOC libraries, filters, groups, and cross-instance refs -02:28 +644: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports circular reusable tree includes without recursing -02:28 +645: /home/albert/busystack/busymark/test/src/writerside_test.dart: included content still requires a regular instance home page -02:28 +646: /home/albert/busystack/busymark/test/src/writerside_test.dart: ignores status-specific values for general instance settings -02:28 +647: /home/albert/busystack/busymark/test/src/writerside_test.dart: conformance fixture is a valid openable Writerside module -02:28 +648: loading /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart -02:29 +648: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: narrow title stays centered between the controls when resized -02:29 +649: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.rtl -02:29 +650: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.ltr -02:29 +651: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.rtl -02:29 +652: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.ltr -02:29 +653: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.dark seam paints the same subtle color across header and body -02:30 +654: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.light seam paints the same subtle color across header and body -02:30 +655: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: one viewport owns the full-height sidebar edge at every frame -02:30 +656: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: unrelated rebuild preserves partial progress and body state -02:30 +657: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: breakpoint settlement is immediate and retained state survives -02:30 +658: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: RTL and fractional device pixels share one snapped edge -02:30 +659: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: divider follows the snapped physical viewport while opening and closing -02:30 +660: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: animation setting settles a running reveal to its logical target -02:30 +661: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header receives only the presented system-control obstruction -02:30 +662: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: frame is the single owner of the full-height sidebar seam -02:30 +663: loading /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart -02:32 +663: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: tree-to-editor sync opens selected topic even with a .tree editor active -02:37 +664: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: editor-to-TOC sync resolves qualified identities and chooses breadth-first occurrence -02:40 +665: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: live removal dialog uses documented confirmation, redirect label and usage count -02:43 +666: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: New Topic surfaces expose local Markdown import only at root/sibling -02:44 +667: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty MD Topic creates an editable document when Reading mode is active, preserving other tabs -02:47 +668: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty XML Topic creates an editable document when Reading mode is active, preserving other tabs -02:50 +669: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Topic from Template... creates an editable document when Reading mode is active, preserving other tabs -02:53 +670: loading /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart -02:54 +670: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: header Escape preserves the query for the next search -02:55 +671: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: search fallback uses the normal Yaru-themed entry geometry -02:55 +672: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: focus request targets the themed text entry -02:56 +673: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: Escape clears the query and closes the owner -02:56 +674: loading /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart -02:56 +674: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: row titles, markers and included source identity use selected context -02:57 +675: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking retains source bytes and rejects a now-present candidate -02:57 +676: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: home reassignment preserves other instances and unrelated attributes -02:57 +677: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty instance -02:57 +678: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: groups only -02:57 +679: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing home -02:57 +680: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: library -02:58 +681: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty group insertion -02:58 +682: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing nested topic -02:58 +683: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: first linked topic and home assignment share the same publication guard -02:58 +684: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: title transaction rolls back both files on a concurrent dirty-buffer guard -02:58 +685: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: XML duplicate copies source, changes only root ID, adds basic sibling -02:58 +686: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: sort revalidates title dependencies before publishing the tree -02:58 +687: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: safe deletion rechecks dirty-buffer guard and rolls back earlier edits -02:59 +688: loading /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart -03:00 +688: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: repeated list includes restart numbering in the final PDF -03:01 +689: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF keeps alphabetic starts, separate decimal lists and procedure numbering -03:01 +690: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (unknown) -03:01 +691: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (shared-pdf) -03:01 +692: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=false -03:01 +693: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=true -03:01 +694: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=true) -03:02 +695: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=false) -03:02 +696: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: bundled Typst compiles semantic tables, anchors and glossary footnotes -03:02 +697: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF retains nested chapter bodies and resolves unique internal destinations -03:02 +698: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic links retain their PDF destinations -03:02 +699: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic blank lines remain explicit in Writerside PDF -03:02 +700: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native export composes the selected instance without a container runtime -03:02 +701: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: hidden topics remain content and toc-title stays navigation-only -03:02 +702: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: referenced diagrams keep resolved source and all tab panels reach PDF -03:02 +703: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: pre-cancelled native export never starts PDF compilation -03:02 +704: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unknown Writerside instance is rejected before compilation -03:02 +705: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: resolution errors prevent PDF compilation -03:02 +706: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation errors prevent PDF compilation -03:02 +707: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation warnings are returned to the caller -03:02 +708: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: nonfatal resolution diagnostics are returned as PDF warnings -03:03 +709: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native exporter failures use Writerside failure codes -03:03 +710: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native Writerside fixture compiles end to end with bundled Typst -03:03 +711: loading /home/albert/busystack/busymark/test/src/clipboard_history_test.dart -03:04 +711: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains newest first, deduplicates, removes, clears, and evicts by count -03:04 +712: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: accounts byte budget and rejects an oversized item without truncation -03:04 +713: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: collection off leaves existing entries and blocks new retention -03:04 +714: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external clipboard remains transient until explicitly retained -03:04 +715: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external HTML keeps its rich and interoperable text representations -03:04 +716: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current HTML-only clipboard is eligible without internal ownership -03:04 +717: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current source-only clipboard does not invent plain text -03:04 +718: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal visible text with different structure stays distinct -03:04 +719: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal relative markup from different origins stays distinct -03:04 +720: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains whitespace-only text and owns image bytes immutably -03:04 +721: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: a new provider session starts with no retained history -03:04 +722: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: insertion registry follows latest target and never retains disposed targets -03:04 +723: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: unknown token cannot recover rich data through equal plain text -03:04 +724: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: rich ownership is byte bounded and shares equivalent media -03:04 +725: loading /home/albert/busystack/busymark/test/src/ai_reliability_test.dart -03:06 +725: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator honors Retry-After and caps retry attempts -03:06 +726: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator never retries after partial output -03:06 +727: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator bounds all retries by one total deadline -03:06 +728: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: global permit pool limits requests across different targets -03:06 +729: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: request-id cancellation cannot cancel a newer request for the target -03:06 +730: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: model fallback stays inside the explicitly selected provider -03:06 +731: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Ollama uses an absolute deadline even while bytes keep arriving -03:06 +732: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: cancellation interrupts the preliminary Ollama model request -03:06 +733: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Retry-After supports seconds and HTTP dates without negatives -03:06 +734: loading /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart -03:07 +734: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: partially formatted URL source offsets and text atoms survive save and edit -03:08 +735: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: URL punctuation beside surrounding formatting retains literal and style boundaries -03:08 +736: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: surrounding formatting commits the same URL editing semantics as reopening -03:09 +737: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL trailing literal punctuation survives serialization and reparse -03:09 +738: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: © -03:09 +739: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: & -03:09 +740: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: &* -03:09 +741: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: © -03:09 +742: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: & -03:09 +743: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: &* -03:09 +744: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.commonMark -03:09 +745: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.writersideMarkdown -03:09 +746: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: descendant whitespace preservation prevents ancestor trimming -03:09 +747: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: ordinary and metadata inline emission are byte-identical -03:09 +748: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL offsets and text atoms stay exact through Enter, edit and save/reparse -03:09 +749: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare leaf links use raw URL positions and explicit equal-label links retain delimiters -03:09 +750: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: grouped breaks retain distinct source provenance in one traversal -03:09 +751: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: text-leaf atoms use interior spans and exclude delimiters -03:09 +752: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: table escaping translates leaf spans without changing source -03:10 +753: loading /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart -03:10 +753: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: semantic catalog uses the exact native GTK icon names -03:10 +754: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: initial load batches direction variants and preserves candidate order -03:10 +755: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: explicit Back role survives atomic theme and scale catalog replacement -03:11 +756: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart -03:12 +756: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -03:12 +757: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback -03:13 +758: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -03:13 +759: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error -03:13 +760: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token -03:13 +761: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails -03:13 +762: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache -03:13 +763: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox -03:13 +764: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret -03:13 +765: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry -03:13 +766: loading /home/albert/busystack/busymark/test/src/feedback_service_test.dart -03:14 +766: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: posts the serialized request and returns the server reference -03:16 +767: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps connection failures -03:16 +768: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps response timeouts -03:16 +769: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 429 and preserves Retry-After -03:16 +770: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 400 and 422 to rejected request failures -03:16 +771: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps server and malformed-response failures to server errors -03:16 +772: loading /home/albert/busystack/busymark/test/src/app_settings_test.dart -03:16 +772: /home/albert/busystack/busymark/test/src/app_settings_test.dart: hydration and redundant sidebar requests do not count as user transitions -03:16 +773: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior defaults protect unsaved changes -03:16 +774: /home/albert/busystack/busymark/test/src/app_settings_test.dart: reopen workspace setting is migration-safe -03:16 +775: /home/albert/busystack/busymark/test/src/app_settings_test.dart: document view mode defaults to editor -03:16 +776: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save defaults to enabled -03:16 +777: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings have bounded privacy-preserving defaults -03:16 +778: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings validate persisted ranges and absolute exclusions -03:16 +779: /home/albert/busystack/busymark/test/src/app_settings_test.dart: AI defaults disabled and provider settings never persist secrets -03:16 +780: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction defaults to horizontal -03:16 +781: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction round-trips through settings JSON -03:16 +782: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote images default to blocked -03:16 +783: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspaces default to untrusted -03:16 +784: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy preview visibility migrates to source mode when hidden -03:16 +785: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language defaults to system locale -03:16 +786: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language override persists as locale tag -03:16 +787: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy Norwegian locale tag migrates to Bokmal -03:16 +788: /home/albert/busystack/busymark/test/src/app_settings_test.dart: supported script variants canonicalize to the available catalog -03:16 +789: /home/albert/busystack/busymark/test/src/app_settings_test.dart: regional variants canonicalize and unsupported tags are discarded -03:16 +790: /home/albert/busystack/busymark/test/src/app_settings_test.dart: unused product settings are not persisted -03:16 +791: /home/albert/busystack/busymark/test/src/app_settings_test.dart: file settings store keeps the live JSON intact until publication -03:18 +792: /home/albert/busystack/busymark/test/src/app_settings_test.dart: failed settings publication preserves the previous valid JSON -03:18 +793: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior settings persist -03:18 +794: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save setting persists -03:18 +795: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction setting persists -03:18 +796: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Writerside instance selection and icon color persist across renames -03:18 +797: /home/albert/busystack/busymark/test/src/app_settings_test.dart: initial load preserves user actions made before it completes -03:18 +798: /home/albert/busystack/busymark/test/src/app_settings_test.dart: removing a recent workspace persists without affecting files -03:18 +799: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote image permissions persist globally and per workspace -03:18 +800: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust persists, normalizes, and can be cleared -03:18 +801: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust follows the canonical workspace identity -03:18 +802: /home/albert/busystack/busymark/test/src/app_settings_test.dart: stored Git trust does not follow a replaced canonical path -03:18 +803: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git trust preserves leading and trailing path whitespace -03:18 +804: loading /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart -03:19 +804: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: different live prose still reports incomplete instead of guessed mapping -03:19 +805: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: general Markdown fixture has complete Source and rich spelling mappings -03:20 +806: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: live HTML paste preserves prose and maps spelling before a reload -03:20 +807: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: pasted job maps tables, trailing HTML breaks and address barriers -03:20 +808: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: closing hashes are heading syntax only in an ATX heading -03:20 +809: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal unresolved and invalid apparent links checkable -03:20 +810: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection resolves only parser-recognized links and images across revisions -03:20 +811: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal trailing braces in paragraph and heading prose -03:20 +812: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection binds recognized images to their exact source occurrence -03:20 +813: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection orders formatting from image labels and surrounding body -03:20 +814: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognizes nested syntax inside exact image descriptions -03:20 +815: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes only trailing attributes recognized by the current mode -03:20 +816: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata does not split a surrounding Markdown word -03:20 +817: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection corrects a Markdown body word across independent metadata -03:20 +818: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps repeated and formatted prose without searching globally -03:20 +819: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps entities, escapes, links, and table cells source exact -03:20 +820: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps CRLF and repeated occurrence targets exact -03:20 +821: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses barriers around excluded authored syntax -03:20 +822: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes a fenced code block nested in a block quote -03:20 +823: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps quoted list fences across blank continuations -03:20 +824: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection counts tab columns in list fence continuations -03:20 +825: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps unmatched delimiters and removes only parsed formatting -03:20 +826: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps quoted HTML attribute values from quote boundaries -03:20 +827: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection preserves semantic HTML boundaries and multiline exclusions -03:20 +828: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps comparison prose and scans multiline HTML tags exactly -03:20 +829: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps escaped multiline tag-like prose checkable -03:20 +830: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection removes delimiters when a correction empties formatting -03:20 +831: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses parser-compatible percentages escapes and code spans -03:20 +832: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection retains complete formatting ancestors across opaque children -03:20 +833: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection validates formatting gaps in regional coordinates -03:20 +834: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection accepts canonically equivalent mapped replacement text -03:20 +835: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link titles use exact quote boundaries before trailing whitespace -03:20 +836: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized link and image titles use their authored boundaries -03:20 +837: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection destination-only links and images do not expose a false title -03:20 +838: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized multiline links consume one mapped occurrence -03:20 +839: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline link labels keep container prefixes out of prose -03:20 +840: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline mapped labels agree with rich prose and corrections -03:20 +841: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection inline HTML breaks in link labels agree with rich prose -03:20 +842: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection code-styled image alternative text agrees with rich image field -03:20 +843: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code and Markdown hard breaks retain image alt semantics -03:20 +844: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code hard-break corrections retain authored source -03:21 +845: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: list -03:21 +846: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: quote -03:21 +847: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: crlf-after-content -03:21 +848: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: combined-quote-list -03:21 +849: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: nested-image -03:21 +850: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-inner-spaces -03:21 +851: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-continuation-space -03:21 +852: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: literal-code-syntax -03:21 +853: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested image code inherits the enclosing container mapping -03:21 +854: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link title keeps literal inline-break markup as scalar text -03:21 +855: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline code inside a link label stays opaque -03:21 +856: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline nested-image destination stays outside outer prose -03:21 +857: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested label syntax owns its breaks before outer prose resumes -03:21 +858: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata scalar tag-like text remains checkable -03:21 +859: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection parenthesized title replacement escapes its own delimiter -03:21 +860: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection semantic leaf blocks define independent complete prose runs -03:21 +861: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection projects semantic HTML prose and trusts parser math nodes -03:21 +862: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection large formatting-heavy projection and correction stay bounded -03:22 +863: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps inline body words intact across readable attributes -03:22 +864: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection corrects XML body and encoded metadata independently -03:22 +865: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes visible addresses in encoded text and CDATA -03:22 +866: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps text, entities, CDATA, and positive attributes -03:22 +867: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection reports malformed XML as incomplete without guessed targets -03:22 +868: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection clips CDATA occurrences while preserving repeated surrounding text -03:22 +869: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps line breaks, excludes variables, and includes controls -03:22 +870: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes entity-encoded variables after XML decoding -03:22 +871: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps decomposed Unicode in XML and CDATA corrections -03:22 +872: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction nested image descriptions retain recursive spelling policy -03:22 +873: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed rich correction preserves images beside math -03:22 +874: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed table image and math correction preserves cell source -03:22 +875: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction neighboring prose in a math image field keeps exact source -03:22 +876: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image ownership continues across ordinary and math fields -03:22 +877: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image description spelling agrees across source and rich fields -03:22 +878: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich image spelling changes only the mapped source word -03:22 +879: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction container image code corrects after continuation in rich editor -03:22 +880: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction code-styled image alternative corrects through rich controller -03:22 +881: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image code punctuation correction retains literal code meaning -03:22 +882: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction multiline link label correction uses rich controller mapping -03:22 +883: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: # Introduction - -- [Overview](#overview) - - [Motivation](#motivation) -- [Discussion](#discussion) - - -## Overview - -helo **world** - -helo world - -03:22 +884: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - helo - - helo - -helo - -03:22 +885: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - -helo - -03:22 +886: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction escaped comment prose is still an editable rich spelling field -03:22 +887: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps hard breaks by structural field identity -03:22 +888: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction removes a rich formatting container emptied by deletion -03:22 +889: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction retains current source anchors and source-only title targets -03:22 +890: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich links keep all title delimiters source-only -03:22 +891: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves formatting ownership across leaves -03:22 +892: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction keeps trailing formatting on its original leaf -03:22 +893: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves link destination and table structure -03:22 +894: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps and corrects a table-cell field containing inline math -03:22 +895: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects transformed prose in table math source fields -03:22 +896: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects formatted and encoded prose in math source fields -03:22 +897: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction owns every nested wrapper in paragraph math-source fields -03:22 +898: loading /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart -03:23 +898: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: validates availability, finite normalized RGB and payload shape -03:25 +899: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: attaches before snapshot and rejects a superseded snapshot -03:25 +900: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: replays current value, deduplicates and safely resubscribes -03:25 +901: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: missing channels are unavailable and cancellable -03:25 +902: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while snapshot is pending discards its result -03:25 +903: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: silent channels expire locally and unsuperseded late snapshot recovers -03:25 +904: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: new unavailable event invalidates older read and deadline -03:25 +905: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while both native calls pending rejects late errors -03:26 +906: loading /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart -03:26 +906: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project scaffold and loads without diagnostics -03:27 +907: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: derives the starter topic filename from its title -03:27 +908: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project with Unicode directory and instance ID -03:27 +909: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: escapes XML-sensitive project names in writerside.cfg -03:27 +910: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: sanitizes start topic title as plain Markdown heading text -03:27 +911: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects existing non-empty target directory and does not overwrite files -03:27 +912: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects an existing project target symlink without writing through it -03:27 +913: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: canonicalizes a project parent selected through a symlink -03:27 +914: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects unsafe create request names before writing files -03:27 +915: loading /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart -03:28 +915: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: cover edits survive toggling and format changes, validate, reset, and do not leak through preferences -03:32 +916: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: instance changes refresh automatic fields without replacing edited or cleared text -03:33 +917: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: settings without a document show only the reusable cover preference -03:34 +918: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Markdown forwards current defaults and export-owned text -03:35 +919: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Writerside forwards current defaults and export-owned text -03:37 +920: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Markdown forwards current defaults and export-owned text -03:37 +921: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Writerside forwards current defaults and export-owned text -03:39 +922: loading /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart -03:39 +922: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: README screenshot references resolve to checked-in images -03:39 +923: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: release metadata is consistent and production-grade -03:39 +924: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: web engines are exact, checksummed, licensed, and installed offline -03:39 +925: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: D2 is checksum pinned for amd64 and installed with notices -03:39 +926: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: Linux CI builds and exercises the bundled visualization stack -03:39 +927: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: only offscreen WebKit views disable hardware compositing -03:39 +928: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: WebKit host and harness disable persistence and external resources -03:39 +929: loading /home/albert/busystack/busymark/test/src/workspace_safety_test.dart -03:40 +929: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes dialog aborts destructive navigation on cancel -03:42 +930: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discarding unsaved changes prevents repeated prompts -03:42 +931: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: destructive dialog buttons stay readable on dark controls -03:42 +932: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes Discard action renders white in the dark dialog -03:42 +933: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overwrite confirmation stays pinned to the document being saved -03:43 +934: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overlapping manual saves write the newer requested revision -03:43 +935: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: save completes for its buffer when the active document changes -03:43 +936: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As stays pinned while the file picker is open -03:43 +937: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancel does not overwrite an existing normalized markdown path -03:43 +938: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As overwrites an existing normalized markdown path only after confirmation -03:43 +939: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancels when the document changes during path lookup -03:43 +940: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discard confirmation cannot discard a newly active document -03:43 +941: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: workspace continuation resolves inactive dirty documents too -03:43 +942: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can save it while another stays dirty -03:43 +943: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can discard it while another stays dirty -03:43 +944: loading /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart -03:44 +944: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar update retries native channel initialization after early miss -03:44 +945: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar forwards text direction updates -03:44 +946: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar action events preserve repeated identical clicks -03:44 +947: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: native search events and focus request keep semantic meaning -03:44 +948: loading /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart -03:45 +948: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source pastes a web layout table as a complete document -03:47 +949: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (current) -03:47 +950: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (find next) -03:47 +951: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (current) -03:48 +952: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (find next) -03:48 +953: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3 matches -03:49 +954: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3000 matches -03:50 +955: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search navigation retains a later window when unfolding -03:50 +956: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling review caret uses full offsets after an earlier fold -03:50 +957: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling reveal unfolds and retains the word selection -03:51 +958: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Markdown spelling painter ignores selection and tracks composition -03:51 +959: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Writerside Markdown spelling painter ignores selection and tracks composition -03:51 +960: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source XML spelling painter ignores selection and tracks composition -03:51 +961: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI action applies a selection through the editor path -03:51 +962: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu targets the pointer occurrence exactly -03:51 +963: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling language uses a checked native submenu without a dialog -03:51 +964: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu converts folded offsets to full source -03:51 +965: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI applies a user-selected insertion target -03:51 +966: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor remains LTR inside an Arabic interface -03:51 +967: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor shows large-file fallback status -04:07 +968: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor renders visible diagnostic gutter tooltip -04:07 +969: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search localizes an invalid regular expression -04:08 +970: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search reports no current match before navigation -04:08 +971: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source fold and search options use semantic icon buttons -04:08 +972: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace All is one editor operation -04:08 +973: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace and Find Next selects the logical next match -04:08 +974: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: shifted folded regions are persisted after edit debounce -04:08 +975: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source sessions ignore render notifications and coalesce scrolling -04:08 +976: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor gives glyphs, caret, and selection breathing room -04:08 +977: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading selections cover styled glyphs evenly -04:09 +978: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading caret advances after a typed space -04:09 +979: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source caret follows an immediate end-of-file contraction -04:09 +980: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Tab indents selected Source lines without replacing text -04:09 +981: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source symbol shortcuts dispatch the full source caret -04:09 +982: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Ctrl+Space opens project-aware source completion -04:09 +983: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: wordWrap false uses one horizontally scrollable layout -04:09 +984: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source input preserves an active IME composing range -04:09 +985: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Enter to the input method -04:09 +986: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Tab to the input method -04:09 +987: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers autocomplete Escape to the input method -04:09 +988: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers the autocomplete shortcut -04:09 +989: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: focused Source accepts authoritative parent text updates -04:09 +990: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source keyboard copy retains exact whitespace once -04:09 +991: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source normal HTML paste converts while plain paste uses text -04:09 +992: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source CRLF structured paste is one exact undo transaction -04:09 +993: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source plain paste keeps LF bytes in a CRLF document -04:09 +994: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste keeps surrounding text inline -04:09 +995: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured block paste adds Markdown boundaries -04:09 +996: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks keep boundaries at every position - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#ecc71(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#abb10, undoController: UndoHistoryController#78a1a(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a23ca(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#4ddc7]], state: _TextFieldState#f0b97), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#e0026 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#51762@Offset(425.5, 300.0), RenderSemanticsAnnotations#b82bc@Offset(425.5, 300.0), RenderPointerListener#078c2@Offset(425.5, 300.0), RenderSemanticsGestureHandler#aa13f@Offset(425.5, 300.0), RenderExcludeSemantics#8bfb0@Offset(425.5, 300.0), RenderBlockSemantics#e325c@Offset(425.5, 300.0), RenderIgnorePointer#15441@Offset(425.5, 300.0), RenderSemanticsAnnotations#ef159@Offset(425.5, 300.0), _RenderTheater#85fc6@Offset(425.5, 300.0), RenderAbsorbPointer#b4571@Offset(425.5, 300.0), RenderPointerListener#41c2f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c8d1b@Offset(425.5, 300.0), RenderCustomPaint#61594@Offset(425.5, 300.0), RenderSemanticsAnnotations#c795f@Offset(425.5, 300.0), RenderSemanticsAnnotations#5f3c9@Offset(425.5, 300.0), RenderSemanticsAnnotations#cff8e@Offset(425.5, 300.0), RenderTapRegionSurface#73ec5@Offset(425.5, 300.0), RenderSemanticsAnnotations#98c6c@Offset(425.5, 300.0), RenderSemanticsAnnotations#20ce6@Offset(425.5, 300.0), HitTestEntry#50e60(_ReusableRenderView#fce4f), HitTestEntry#72f05()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2597:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:10 +997: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete heading list and code blocks retain structure at every paragraph position - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#8f82b(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#18722, undoController: UndoHistoryController#d171f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ffbff(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#1bd9d]], state: _TextFieldState#3b105), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#2554a -The hit test result at that offset is: HitTestResult(RenderMouseRegion#873cf@Offset(425.5, 300.0), RenderSemanticsAnnotations#ed441@Offset(425.5, 300.0), RenderPointerListener#bcafe@Offset(425.5, 300.0), RenderSemanticsGestureHandler#8af76@Offset(425.5, 300.0), RenderExcludeSemantics#cdba6@Offset(425.5, 300.0), RenderBlockSemantics#41b8f@Offset(425.5, 300.0), RenderIgnorePointer#5a6cd@Offset(425.5, 300.0), RenderSemanticsAnnotations#25a56@Offset(425.5, 300.0), _RenderTheater#532c1@Offset(425.5, 300.0), RenderAbsorbPointer#c8b26@Offset(425.5, 300.0), RenderPointerListener#a25b7@Offset(425.5, 300.0), RenderSemanticsAnnotations#a6a8e@Offset(425.5, 300.0), RenderCustomPaint#51ffb@Offset(425.5, 300.0), RenderSemanticsAnnotations#aff38@Offset(425.5, 300.0), RenderSemanticsAnnotations#4b3e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#ad9a1@Offset(425.5, 300.0), RenderTapRegionSurface#332d4@Offset(425.5, 300.0), RenderSemanticsAnnotations#38b37@Offset(425.5, 300.0), RenderSemanticsAnnotations#40c4e@Offset(425.5, 300.0), HitTestEntry#f2d24(_ReusableRenderView#fce4f), HitTestEntry#052b0()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#8f82b(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#18722, undoController: UndoHistoryController#d171f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ffbff(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#1bd9d]], state: _TextFieldState#3b105), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#2554a -The hit test result at that offset is: HitTestResult(RenderMouseRegion#dcb33@Offset(425.5, 300.0), RenderSemanticsAnnotations#f0648@Offset(425.5, 300.0), RenderPointerListener#b22c0@Offset(425.5, 300.0), RenderSemanticsGestureHandler#f7dae@Offset(425.5, 300.0), RenderExcludeSemantics#4656d@Offset(425.5, 300.0), RenderBlockSemantics#35d97@Offset(425.5, 300.0), RenderIgnorePointer#27c31@Offset(425.5, 300.0), RenderSemanticsAnnotations#19699@Offset(425.5, 300.0), _RenderTheater#532c1@Offset(425.5, 300.0), RenderAbsorbPointer#c8b26@Offset(425.5, 300.0), RenderPointerListener#a25b7@Offset(425.5, 300.0), RenderSemanticsAnnotations#a6a8e@Offset(425.5, 300.0), RenderCustomPaint#51ffb@Offset(425.5, 300.0), RenderSemanticsAnnotations#aff38@Offset(425.5, 300.0), RenderSemanticsAnnotations#4b3e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#ad9a1@Offset(425.5, 300.0), RenderTapRegionSurface#332d4@Offset(425.5, 300.0), RenderSemanticsAnnotations#38b37@Offset(425.5, 300.0), RenderSemanticsAnnotations#40c4e@Offset(425.5, 300.0), HitTestEntry#81a3d(_ReusableRenderView#fce4f), HitTestEntry#943c7()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#8f82b(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#18722, undoController: UndoHistoryController#d171f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ffbff(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#1bd9d]], state: _TextFieldState#3b105), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#2554a -The hit test result at that offset is: HitTestResult(RenderMouseRegion#5800e@Offset(425.5, 300.0), RenderSemanticsAnnotations#634b5@Offset(425.5, 300.0), RenderPointerListener#e87ad@Offset(425.5, 300.0), RenderSemanticsGestureHandler#89e28@Offset(425.5, 300.0), RenderExcludeSemantics#4afda@Offset(425.5, 300.0), RenderBlockSemantics#c67bd@Offset(425.5, 300.0), RenderIgnorePointer#77682@Offset(425.5, 300.0), RenderSemanticsAnnotations#fdb44@Offset(425.5, 300.0), _RenderTheater#532c1@Offset(425.5, 300.0), RenderAbsorbPointer#c8b26@Offset(425.5, 300.0), RenderPointerListener#a25b7@Offset(425.5, 300.0), RenderSemanticsAnnotations#a6a8e@Offset(425.5, 300.0), RenderCustomPaint#51ffb@Offset(425.5, 300.0), RenderSemanticsAnnotations#aff38@Offset(425.5, 300.0), RenderSemanticsAnnotations#4b3e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#ad9a1@Offset(425.5, 300.0), RenderTapRegionSurface#332d4@Offset(425.5, 300.0), RenderSemanticsAnnotations#38b37@Offset(425.5, 300.0), RenderSemanticsAnnotations#40c4e@Offset(425.5, 300.0), HitTestEntry#0ff55(_ReusableRenderView#fce4f), HitTestEntry#9c248()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:10 +998: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete-block split preserves styles caret and one-step Undo -04:10 +999: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source boundary-crossing replacements restore text selection and caret -04:10 +1000: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich inline paste composes with enclosing inline syntax - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#b1048(TextEditingValue(text: ┤[leftright](https://example.test)├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b44f3, undoController: UndoHistoryController#cbb9d(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#4b8eb(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#74d0e]], state: _TextFieldState#3d1b0), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#6b743 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#5a213@Offset(425.5, 300.0), RenderSemanticsAnnotations#e1f55@Offset(425.5, 300.0), RenderPointerListener#26151@Offset(425.5, 300.0), RenderSemanticsGestureHandler#96233@Offset(425.5, 300.0), RenderExcludeSemantics#7d610@Offset(425.5, 300.0), RenderBlockSemantics#7b3dd@Offset(425.5, 300.0), RenderIgnorePointer#f9574@Offset(425.5, 300.0), RenderSemanticsAnnotations#f5313@Offset(425.5, 300.0), _RenderTheater#51bde@Offset(425.5, 300.0), RenderAbsorbPointer#31b0a@Offset(425.5, 300.0), RenderPointerListener#6cf1f@Offset(425.5, 300.0), RenderSemanticsAnnotations#59393@Offset(425.5, 300.0), RenderCustomPaint#9ca19@Offset(425.5, 300.0), RenderSemanticsAnnotations#27f92@Offset(425.5, 300.0), RenderSemanticsAnnotations#cfe81@Offset(425.5, 300.0), RenderSemanticsAnnotations#c7980@Offset(425.5, 300.0), RenderTapRegionSurface#65e68@Offset(425.5, 300.0), RenderSemanticsAnnotations#75d9c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a812f@Offset(425.5, 300.0), HitTestEntry#70924(_ReusableRenderView#fce4f), HitTestEntry#2dca9()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2945:28) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2999:22) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:10 +1001: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline reconciliation ignores separate destination runs -04:10 +1002: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source adjacent-style reconciliation preserves literal code delimiters -04:11 +1003: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation preserves a partially consumed delimiter -04:11 +1004: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table inline reconciliation is confined to the selected cell -04:11 +1005: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table keeps multiple independent incoming style runs -04:11 +1006: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source does not treat multiple incoming bold runs as one wrapper -04:11 +1007: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences with paragraph context -04:11 +1008: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences inside table cells -04:11 +1009: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table sequence reconciliation retains authored delimiters -04:11 +1010: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation retains mixed nested styles -04:11 +1011: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves hyperlink semantics in table cells -04:11 +1012: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline mapping handles links multiline styles and literal syntax -04:11 +1013: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret mapping preserves literal bang before a following link -04:12 +1014: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits resolved reference links without changing definitions -04:12 +1015: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits multiline blockquote links without exposing prefixes -04:12 +1016: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves occurrence-specific hard-break provenance -04:12 +1017: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret remains between pasted and retained hard breaks -04:12 +1018: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste after an HTML break does not retain its layout newline -04:12 +1019: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste preserves enclosing inline HTML as one run -04:12 +1020: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source system and history rich paste map normalized HTML whitespace -04:12 +1021: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source syntax-only availability agrees with textual fallback execution -04:12 +1022: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source terminal structured failure blocks availability and text fallback -04:12 +1023: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste remaps generated grouped hard breaks -04:12 +1024: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source remaps reopened grouped breaks in a CRLF container -04:12 +1025: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps nested and reference links through container prefixes -04:12 +1026: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves autolink destination semantics -04:13 +1027: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: invalid email-like text does not invalidate another link target -04:13 +1028: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste distinguishes authored and generated URL content -04:13 +1029: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves parser-folded reference identity -04:13 +1030: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source same-destination paste preserves parser-folded reference identity -04:13 +1031: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste retains the provenance of surviving line breaks -04:13 +1032: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste keeps label break provenance independent of link titles -04:13 +1033: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: normalized code-span breaks do not shift surviving link provenance -04:13 +1034: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste combines folded references with surviving break provenance -04:13 +1035: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste tracks old and new breaks independently -04:13 +1036: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reference-link label replacement retains definitions -04:14 +1037: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps escaped brackets in collapsed and shortcut references -04:14 +1038: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links around unmatched and code-span backticks -04:14 +1039: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links with escaped and balanced label brackets -04:14 +1040: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline wrapper mapping stays bounded for paste and availability -04:15 +1041: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps all retained break offsets in one serialization traversal -04:15 +1042: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source AST boundary mapping stays linear for availability and paste -04:15 +1043: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table paste preserves multiline link titles -04:15 +1044: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table boundary paste preserves styles caret and one-step history -04:16 +1045: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste handles every line boundary -04:16 +1046: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline paste preserves unrelated syntax whitespace and caret - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#923ff(TextEditingValue(text: ┤__leftright__├, selection: TextSelection.collapsed(offset: 10, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#95de4, undoController: UndoHistoryController#eef17(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#440f7(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#35f0d]], state: _TextFieldState#6de20), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#d667a -The hit test result at that offset is: HitTestResult(RenderMouseRegion#6afce@Offset(425.5, 300.0), RenderSemanticsAnnotations#37d37@Offset(425.5, 300.0), RenderPointerListener#a7c26@Offset(425.5, 300.0), RenderSemanticsGestureHandler#828ad@Offset(425.5, 300.0), RenderExcludeSemantics#cdae0@Offset(425.5, 300.0), RenderBlockSemantics#67edb@Offset(425.5, 300.0), RenderIgnorePointer#b6cee@Offset(425.5, 300.0), RenderSemanticsAnnotations#d927b@Offset(425.5, 300.0), _RenderTheater#47b14@Offset(425.5, 300.0), RenderAbsorbPointer#54d0d@Offset(425.5, 300.0), RenderPointerListener#03a45@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f829@Offset(425.5, 300.0), RenderCustomPaint#4a600@Offset(425.5, 300.0), RenderSemanticsAnnotations#fce25@Offset(425.5, 300.0), RenderSemanticsAnnotations#54d2a@Offset(425.5, 300.0), RenderSemanticsAnnotations#81ddb@Offset(425.5, 300.0), RenderTapRegionSurface#eb5f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#dac49@Offset(425.5, 300.0), RenderSemanticsAnnotations#9ee6e@Offset(425.5, 300.0), HitTestEntry#59dff(_ReusableRenderView#fce4f), HitTestEntry#3c11e()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6908:28) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6936:20) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:16 +1047: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table cells reconcile surrounding inline styles -04:16 +1048: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciliation reuses table-normalized inline content -04:16 +1049: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source whole-block replacement differs from surviving table and code contexts - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#38430(TextEditingValue(text: ┤```text - old - ``` - ├, selection: TextSelection.collapsed(offset: 16, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#95e73, undoController: UndoHistoryController#ccfa5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ba8f1(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#e9c7f]], state: _TextFieldState#40b67), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#8c38d -The hit test result at that offset is: HitTestResult(RenderMouseRegion#6e861@Offset(425.5, 300.0), RenderSemanticsAnnotations#c58d8@Offset(425.5, 300.0), RenderPointerListener#9628e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#f29bb@Offset(425.5, 300.0), RenderExcludeSemantics#c77aa@Offset(425.5, 300.0), RenderBlockSemantics#92120@Offset(425.5, 300.0), RenderIgnorePointer#1ba54@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1881@Offset(425.5, 300.0), _RenderTheater#9a391@Offset(425.5, 300.0), RenderAbsorbPointer#f8991@Offset(425.5, 300.0), RenderPointerListener#a6178@Offset(425.5, 300.0), RenderSemanticsAnnotations#e173c@Offset(425.5, 300.0), RenderCustomPaint#ec33c@Offset(425.5, 300.0), RenderSemanticsAnnotations#9d296@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc126@Offset(425.5, 300.0), RenderSemanticsAnnotations#ff194@Offset(425.5, 300.0), RenderTapRegionSurface#01e77@Offset(425.5, 300.0), RenderSemanticsAnnotations#15792@Offset(425.5, 300.0), RenderSemanticsAnnotations#57212@Offset(425.5, 300.0), HitTestEntry#2afd0(_ReusableRenderView#fce4f), HitTestEntry#fb9ac()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7158:25) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:16 +1050: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paragraph markers escape only at block starts - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#029ae(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e235f, undoController: UndoHistoryController#af272(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9144a(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#cf158]], state: _TextFieldState#88dc3), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#3d32a -The hit test result at that offset is: HitTestResult(RenderMouseRegion#5e0b8@Offset(425.5, 300.0), RenderSemanticsAnnotations#54bd3@Offset(425.5, 300.0), RenderPointerListener#592e6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#6c7c4@Offset(425.5, 300.0), RenderExcludeSemantics#b0024@Offset(425.5, 300.0), RenderBlockSemantics#12061@Offset(425.5, 300.0), RenderIgnorePointer#c3762@Offset(425.5, 300.0), RenderSemanticsAnnotations#8b8ea@Offset(425.5, 300.0), _RenderTheater#3b228@Offset(425.5, 300.0), RenderAbsorbPointer#ed6d9@Offset(425.5, 300.0), RenderPointerListener#8796b@Offset(425.5, 300.0), RenderSemanticsAnnotations#67d08@Offset(425.5, 300.0), RenderCustomPaint#91f05@Offset(425.5, 300.0), RenderSemanticsAnnotations#94f20@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc384@Offset(425.5, 300.0), RenderSemanticsAnnotations#982af@Offset(425.5, 300.0), RenderTapRegionSurface#8834b@Offset(425.5, 300.0), RenderSemanticsAnnotations#49865@Offset(425.5, 300.0), RenderSemanticsAnnotations#71561@Offset(425.5, 300.0), HitTestEntry#bd2d5(_ReusableRenderView#fce4f), HitTestEntry#7b01c()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#029ae(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e235f, undoController: UndoHistoryController#af272(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9144a(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#cf158]], state: _TextFieldState#88dc3), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#3d32a -The hit test result at that offset is: HitTestResult(RenderMouseRegion#e2dfc@Offset(425.5, 300.0), RenderSemanticsAnnotations#cc9af@Offset(425.5, 300.0), RenderPointerListener#5dd15@Offset(425.5, 300.0), RenderSemanticsGestureHandler#54542@Offset(425.5, 300.0), RenderExcludeSemantics#e742b@Offset(425.5, 300.0), RenderBlockSemantics#9b59d@Offset(425.5, 300.0), RenderIgnorePointer#61176@Offset(425.5, 300.0), RenderSemanticsAnnotations#4bf9c@Offset(425.5, 300.0), _RenderTheater#3b228@Offset(425.5, 300.0), RenderAbsorbPointer#ed6d9@Offset(425.5, 300.0), RenderPointerListener#8796b@Offset(425.5, 300.0), RenderSemanticsAnnotations#67d08@Offset(425.5, 300.0), RenderCustomPaint#91f05@Offset(425.5, 300.0), RenderSemanticsAnnotations#94f20@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc384@Offset(425.5, 300.0), RenderSemanticsAnnotations#982af@Offset(425.5, 300.0), RenderTapRegionSurface#8834b@Offset(425.5, 300.0), RenderSemanticsAnnotations#49865@Offset(425.5, 300.0), RenderSemanticsAnnotations#71561@Offset(425.5, 300.0), HitTestEntry#3e0e5(_ReusableRenderView#fce4f), HitTestEntry#52f24()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#029ae(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e235f, undoController: UndoHistoryController#af272(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9144a(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#cf158]], state: _TextFieldState#88dc3), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#3d32a -The hit test result at that offset is: HitTestResult(RenderMouseRegion#a1d75@Offset(425.5, 300.0), RenderSemanticsAnnotations#b551d@Offset(425.5, 300.0), RenderPointerListener#1465d@Offset(425.5, 300.0), RenderSemanticsGestureHandler#19826@Offset(425.5, 300.0), RenderExcludeSemantics#c659e@Offset(425.5, 300.0), RenderBlockSemantics#49e4f@Offset(425.5, 300.0), RenderIgnorePointer#c2975@Offset(425.5, 300.0), RenderSemanticsAnnotations#0699f@Offset(425.5, 300.0), _RenderTheater#3b228@Offset(425.5, 300.0), RenderAbsorbPointer#ed6d9@Offset(425.5, 300.0), RenderPointerListener#8796b@Offset(425.5, 300.0), RenderSemanticsAnnotations#67d08@Offset(425.5, 300.0), RenderCustomPaint#91f05@Offset(425.5, 300.0), RenderSemanticsAnnotations#94f20@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc384@Offset(425.5, 300.0), RenderSemanticsAnnotations#982af@Offset(425.5, 300.0), RenderTapRegionSurface#8834b@Offset(425.5, 300.0), RenderSemanticsAnnotations#49865@Offset(425.5, 300.0), RenderSemanticsAnnotations#71561@Offset(425.5, 300.0), HitTestEntry#d6454(_ReusableRenderView#fce4f), HitTestEntry#f2878()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7247:24) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#029ae(TextEditingValue(text: ┤- right├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e235f, undoController: UndoHistoryController#af272(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9144a(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#cf158]], state: _TextFieldState#88dc3), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#3d32a -The hit test result at that offset is: HitTestResult(RenderMouseRegion#3687a@Offset(425.5, 300.0), RenderSemanticsAnnotations#fc8cc@Offset(425.5, 300.0), RenderPointerListener#6bb78@Offset(425.5, 300.0), RenderSemanticsGestureHandler#6a621@Offset(425.5, 300.0), RenderExcludeSemantics#ac24c@Offset(425.5, 300.0), RenderBlockSemantics#a5be9@Offset(425.5, 300.0), RenderIgnorePointer#2aa4b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f12db@Offset(425.5, 300.0), _RenderTheater#3b228@Offset(425.5, 300.0), RenderAbsorbPointer#ed6d9@Offset(425.5, 300.0), RenderPointerListener#8796b@Offset(425.5, 300.0), RenderSemanticsAnnotations#67d08@Offset(425.5, 300.0), RenderCustomPaint#91f05@Offset(425.5, 300.0), RenderSemanticsAnnotations#94f20@Offset(425.5, 300.0), RenderSemanticsAnnotations#dc384@Offset(425.5, 300.0), RenderSemanticsAnnotations#982af@Offset(425.5, 300.0), RenderTapRegionSurface#8834b@Offset(425.5, 300.0), RenderSemanticsAnnotations#49865@Offset(425.5, 300.0), RenderSemanticsAnnotations#71561@Offset(425.5, 300.0), HitTestEntry#ba023(_ReusableRenderView#fce4f), HitTestEntry#5bf4a()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7277:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:17 +1051: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native inline paste preserves edge and only whitespace - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#fdbd6(TextEditingValue(text: ┤leftDELETEright├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#c24c2, undoController: UndoHistoryController#26de9(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#ad844(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#0a218]], state: _TextFieldState#4368b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#c5200 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#60c72@Offset(425.5, 300.0), RenderSemanticsAnnotations#ed589@Offset(425.5, 300.0), RenderPointerListener#98ee3@Offset(425.5, 300.0), RenderSemanticsGestureHandler#57fc0@Offset(425.5, 300.0), RenderExcludeSemantics#acbe4@Offset(425.5, 300.0), RenderBlockSemantics#23a8b@Offset(425.5, 300.0), RenderIgnorePointer#344c6@Offset(425.5, 300.0), RenderSemanticsAnnotations#aa789@Offset(425.5, 300.0), _RenderTheater#5c484@Offset(425.5, 300.0), RenderAbsorbPointer#39618@Offset(425.5, 300.0), RenderPointerListener#5ee36@Offset(425.5, 300.0), RenderSemanticsAnnotations#b079f@Offset(425.5, 300.0), RenderCustomPaint#03ae0@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5b18@Offset(425.5, 300.0), RenderSemanticsAnnotations#122fc@Offset(425.5, 300.0), RenderSemanticsAnnotations#8fb8e@Offset(425.5, 300.0), RenderTapRegionSurface#06562@Offset(425.5, 300.0), RenderSemanticsAnnotations#75f30@Offset(425.5, 300.0), RenderSemanticsAnnotations#94539@Offset(425.5, 300.0), HitTestEntry#abdbd(_ReusableRenderView#fce4f), HitTestEntry#be901()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7379:24) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:17 +1052: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native rich edge whitespace repeats and restores real Undo state -04:17 +1053: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paste respects table-cell semantics -04:17 +1054: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps a final table cell ending in an escaped pipe -04:17 +1055: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks preserve list and quote containers -04:17 +1056: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks remain in containers at every content boundary - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#eed69(TextEditingValue(text: ┤> item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#8a07d -The hit test result at that offset is: HitTestResult(RenderMouseRegion#4a7a6@Offset(425.5, 300.0), RenderSemanticsAnnotations#6b0ae@Offset(425.5, 300.0), RenderPointerListener#5a1a2@Offset(425.5, 300.0), RenderSemanticsGestureHandler#2882c@Offset(425.5, 300.0), RenderExcludeSemantics#6aa5a@Offset(425.5, 300.0), RenderBlockSemantics#562d4@Offset(425.5, 300.0), RenderIgnorePointer#7d063@Offset(425.5, 300.0), RenderSemanticsAnnotations#e242b@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#262ff(_ReusableRenderView#fce4f), HitTestEntry#e0bd8()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#eed69(TextEditingValue(text: ┤> item - ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#8a07d -The hit test result at that offset is: HitTestResult(RenderMouseRegion#4d1da@Offset(425.5, 300.0), RenderSemanticsAnnotations#a0c71@Offset(425.5, 300.0), RenderPointerListener#f0313@Offset(425.5, 300.0), RenderSemanticsGestureHandler#ec430@Offset(425.5, 300.0), RenderExcludeSemantics#5e3eb@Offset(425.5, 300.0), RenderBlockSemantics#84bd2@Offset(425.5, 300.0), RenderIgnorePointer#2725d@Offset(425.5, 300.0), RenderSemanticsAnnotations#4ccd1@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#a9fe2(_ReusableRenderView#fce4f), HitTestEntry#30177()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#eed69(TextEditingValue(text: ┤- item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#8a07d -The hit test result at that offset is: HitTestResult(RenderMouseRegion#5f3cf@Offset(425.5, 300.0), RenderSemanticsAnnotations#40240@Offset(425.5, 300.0), RenderPointerListener#6a9d9@Offset(425.5, 300.0), RenderSemanticsGestureHandler#3eb5e@Offset(425.5, 300.0), RenderExcludeSemantics#a7eea@Offset(425.5, 300.0), RenderBlockSemantics#0a82e@Offset(425.5, 300.0), RenderIgnorePointer#1abaa@Offset(425.5, 300.0), RenderSemanticsAnnotations#9dd9a@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#cca6e(_ReusableRenderView#fce4f), HitTestEntry#dad1d()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#eed69(TextEditingValue(text: ┤- item - ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#8a07d -The hit test result at that offset is: HitTestResult(RenderMouseRegion#e1330@Offset(425.5, 300.0), RenderSemanticsAnnotations#8561e@Offset(425.5, 300.0), RenderPointerListener#deab9@Offset(425.5, 300.0), RenderSemanticsGestureHandler#9f5fb@Offset(425.5, 300.0), RenderExcludeSemantics#b086a@Offset(425.5, 300.0), RenderBlockSemantics#b8a62@Offset(425.5, 300.0), RenderIgnorePointer#639c4@Offset(425.5, 300.0), RenderSemanticsAnnotations#2d509@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#3fcb3(_ReusableRenderView#fce4f), HitTestEntry#5f602()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#eed69(TextEditingValue(text: ┤> 3. item├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#4dc05, undoController: UndoHistoryController#5d336(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9f075(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#8e83c]], state: _TextFieldState#87ddf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#8a07d -The hit test result at that offset is: HitTestResult(RenderMouseRegion#42007@Offset(425.5, 300.0), RenderSemanticsAnnotations#9e1e5@Offset(425.5, 300.0), RenderPointerListener#d9610@Offset(425.5, 300.0), RenderSemanticsGestureHandler#a72c5@Offset(425.5, 300.0), RenderExcludeSemantics#16e6f@Offset(425.5, 300.0), RenderBlockSemantics#438c1@Offset(425.5, 300.0), RenderIgnorePointer#4b19c@Offset(425.5, 300.0), RenderSemanticsAnnotations#a2cfe@Offset(425.5, 300.0), _RenderTheater#a9f14@Offset(425.5, 300.0), RenderAbsorbPointer#47e2b@Offset(425.5, 300.0), RenderPointerListener#0a93f@Offset(425.5, 300.0), RenderSemanticsAnnotations#f4398@Offset(425.5, 300.0), RenderCustomPaint#a6bf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#60bb1@Offset(425.5, 300.0), RenderSemanticsAnnotations#a3946@Offset(425.5, 300.0), RenderSemanticsAnnotations#0c7eb@Offset(425.5, 300.0), RenderTapRegionSurface#a2f31@Offset(425.5, 300.0), RenderSemanticsAnnotations#e810a@Offset(425.5, 300.0), RenderSemanticsAnnotations#5e79b@Offset(425.5, 300.0), HitTestEntry#7c159(_ReusableRenderView#fce4f), HitTestEntry#c472f()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:18 +1057: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks retain continuation-line ancestors - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#c685b(TextEditingValue(text: ┤- first - leftright - ├, selection: TextSelection.collapsed(offset: 20, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#3e6ea, undoController: UndoHistoryController#5e8d3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a3827(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b02a7]], state: _TextFieldState#f472b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#50086 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#d17d8@Offset(425.5, 300.0), RenderSemanticsAnnotations#b989b@Offset(425.5, 300.0), RenderPointerListener#f517e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#67ea4@Offset(425.5, 300.0), RenderExcludeSemantics#5b994@Offset(425.5, 300.0), RenderBlockSemantics#7491f@Offset(425.5, 300.0), RenderIgnorePointer#dabf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#fefb6@Offset(425.5, 300.0), _RenderTheater#b5ba0@Offset(425.5, 300.0), RenderAbsorbPointer#e1ca1@Offset(425.5, 300.0), RenderPointerListener#b7527@Offset(425.5, 300.0), RenderSemanticsAnnotations#bd2d9@Offset(425.5, 300.0), RenderCustomPaint#ad13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#d29dc@Offset(425.5, 300.0), RenderSemanticsAnnotations#f35f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#05abe@Offset(425.5, 300.0), RenderTapRegionSurface#0dce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#1213f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c0848@Offset(425.5, 300.0), HitTestEntry#3af40(_ReusableRenderView#fce4f), HitTestEntry#11ab8()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#c685b(TextEditingValue(text: ┤- first - - leftright - ├, selection: TextSelection.collapsed(offset: 21, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#3e6ea, undoController: UndoHistoryController#5e8d3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a3827(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b02a7]], state: _TextFieldState#f472b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#50086 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#b8d77@Offset(425.5, 300.0), RenderSemanticsAnnotations#762eb@Offset(425.5, 300.0), RenderPointerListener#dff5e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#1ae88@Offset(425.5, 300.0), RenderExcludeSemantics#32fd3@Offset(425.5, 300.0), RenderBlockSemantics#5e339@Offset(425.5, 300.0), RenderIgnorePointer#298a2@Offset(425.5, 300.0), RenderSemanticsAnnotations#23686@Offset(425.5, 300.0), _RenderTheater#b5ba0@Offset(425.5, 300.0), RenderAbsorbPointer#e1ca1@Offset(425.5, 300.0), RenderPointerListener#b7527@Offset(425.5, 300.0), RenderSemanticsAnnotations#bd2d9@Offset(425.5, 300.0), RenderCustomPaint#ad13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#d29dc@Offset(425.5, 300.0), RenderSemanticsAnnotations#f35f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#05abe@Offset(425.5, 300.0), RenderTapRegionSurface#0dce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#1213f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c0848@Offset(425.5, 300.0), HitTestEntry#dd596(_ReusableRenderView#fce4f), HitTestEntry#4d8b0()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#c685b(TextEditingValue(text: ┤> first - leftright - ├, selection: TextSelection.collapsed(offset: 18, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#3e6ea, undoController: UndoHistoryController#5e8d3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a3827(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b02a7]], state: _TextFieldState#f472b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#50086 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#f6ef5@Offset(425.5, 300.0), RenderSemanticsAnnotations#024dc@Offset(425.5, 300.0), RenderPointerListener#a3854@Offset(425.5, 300.0), RenderSemanticsGestureHandler#d68e8@Offset(425.5, 300.0), RenderExcludeSemantics#7fc39@Offset(425.5, 300.0), RenderBlockSemantics#75584@Offset(425.5, 300.0), RenderIgnorePointer#239ac@Offset(425.5, 300.0), RenderSemanticsAnnotations#f0e09@Offset(425.5, 300.0), _RenderTheater#b5ba0@Offset(425.5, 300.0), RenderAbsorbPointer#e1ca1@Offset(425.5, 300.0), RenderPointerListener#b7527@Offset(425.5, 300.0), RenderSemanticsAnnotations#bd2d9@Offset(425.5, 300.0), RenderCustomPaint#ad13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#d29dc@Offset(425.5, 300.0), RenderSemanticsAnnotations#f35f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#05abe@Offset(425.5, 300.0), RenderTapRegionSurface#0dce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#1213f@Offset(425.5, 300.0), RenderSemanticsAnnotations#c0848@Offset(425.5, 300.0), HitTestEntry#08411(_ReusableRenderView#fce4f), HitTestEntry#1b3ca()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:18 +1058: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source container recovery is bound to the actual nested ancestors -04:18 +1059: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks use list markers rather than task prefixes -04:18 +1060: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source task items keep block kinds at every content position -04:19 +1061: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source checked ordered nested and zero lists retain inserted block kinds -04:19 +1062: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source composes mixed and continuation container ancestors -04:19 +1063: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source protected contexts use the safe source fallback -04:19 +1064: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Writerside Source preserves a structured procedure block -04:19 +1065: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source delayed paste rejects a changed selection -04:19 +1066: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves composition before and during a read -04:19 +1067: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source failed cut keeps text and does not record history -04:19 +1068: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source delayed cut revalidates selection before deletion -04:19 +1069: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: history insertion follows the latest Source selection -04:19 +1070: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history rebases retained media into Source -04:19 +1071: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history restores a local video into Source -04:19 +1072: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: standalone image history ingests and inserts one undoable Source edit -04:20 +1073: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source local image path retains imported bytes once - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#90609(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#62223, undoController: UndoHistoryController#1f465(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#f994a(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#77e0b]], state: _TextFieldState#a01ec), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#80609 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#8c8d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#2a53d@Offset(425.5, 300.0), RenderPointerListener#f4e53@Offset(425.5, 300.0), RenderSemanticsGestureHandler#65744@Offset(425.5, 300.0), RenderExcludeSemantics#c750b@Offset(425.5, 300.0), RenderBlockSemantics#da601@Offset(425.5, 300.0), RenderIgnorePointer#4c34c@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0148@Offset(425.5, 300.0), _RenderTheater#a3fae@Offset(425.5, 300.0), RenderAbsorbPointer#b2760@Offset(425.5, 300.0), RenderPointerListener#14db5@Offset(425.5, 300.0), RenderSemanticsAnnotations#db9d8@Offset(425.5, 300.0), RenderCustomPaint#e5c89@Offset(425.5, 300.0), RenderSemanticsAnnotations#e7176@Offset(425.5, 300.0), RenderSemanticsAnnotations#2ce8b@Offset(425.5, 300.0), RenderSemanticsAnnotations#b5d59@Offset(425.5, 300.0), RenderTapRegionSurface#478b9@Offset(425.5, 300.0), RenderSemanticsAnnotations#46626@Offset(425.5, 300.0), RenderSemanticsAnnotations#2f912@Offset(425.5, 300.0), HitTestEntry#12f7a(_ReusableRenderView#fce4f), HitTestEntry#0d3a4()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..expectNormalReplay (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8934:7) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8956:5) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:21 +1074: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: unsafe local image candidates paste their original text - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#cae1c(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#d5390, undoController: UndoHistoryController#ca014(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#24f57(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#12455]], state: _TextFieldState#5a3dc), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#995d0 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#82178@Offset(425.5, 300.0), RenderSemanticsAnnotations#3377b@Offset(425.5, 300.0), RenderPointerListener#c73e3@Offset(425.5, 300.0), RenderSemanticsGestureHandler#f01d2@Offset(425.5, 300.0), RenderExcludeSemantics#1f273@Offset(425.5, 300.0), RenderBlockSemantics#f3ad1@Offset(425.5, 300.0), RenderIgnorePointer#7d21e@Offset(425.5, 300.0), RenderSemanticsAnnotations#9252b@Offset(425.5, 300.0), _RenderTheater#f9bbe@Offset(425.5, 300.0), RenderAbsorbPointer#d849a@Offset(425.5, 300.0), RenderPointerListener#a63a8@Offset(425.5, 300.0), RenderSemanticsAnnotations#9dff5@Offset(425.5, 300.0), RenderCustomPaint#6b37d@Offset(425.5, 300.0), RenderSemanticsAnnotations#eca88@Offset(425.5, 300.0), RenderSemanticsAnnotations#2d4d2@Offset(425.5, 300.0), RenderSemanticsAnnotations#c4f1c@Offset(425.5, 300.0), RenderTapRegionSurface#572e7@Offset(425.5, 300.0), RenderSemanticsAnnotations#d940f@Offset(425.5, 300.0), RenderSemanticsAnnotations#582d8@Offset(425.5, 300.0), HitTestEntry#2b388(_ReusableRenderView#fce4f), HitTestEntry#56192()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9010:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:22 +1075: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: image history asks to save an untitled Source document -04:22 +1076: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: generic XML does not invent Writerside image syntax -04:22 +1077: loading /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart -04:22 +1077: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: reads the initial GTK animation setting -04:22 +1078: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: animation stream follows GTK setting changes -04:22 +1079: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: provider exposes the preloaded value before native events -04:22 +1080: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: missing GTK integration falls back without disabling motion -04:22 +1081: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: native GTK bridge observes and tears down animation preference state -04:22 +1082: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart -04:26 +1082: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -04:26 +1083: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -04:27 +1084: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft -04:27 +1085: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -04:27 +1086: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft -04:28 +1087: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -04:28 +1088: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work -04:28 +1089: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work -04:28 +1090: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work -04:28 +1091: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work -04:28 +1092: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work -04:28 +1093: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET -04:29 +1094: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET -04:29 +1095: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET -04:29 +1096: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit -04:29 +1097: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment -04:29 +1098: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor -04:29 +1099: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity -04:29 +1100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement -04:29 +1101: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart -04:30 +1101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt -04:31 +1102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption -04:31 +1103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -04:31 +1104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary -04:31 +1105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment -04:31 +1106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title -04:32 +1107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category -04:32 +1108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment -04:32 +1109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart -04:32 +1110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment -04:32 +1111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment -04:33 +1112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -04:33 +1113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -04:33 +1114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -04:33 +1115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -04:33 +1116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit -04:33 +1117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit -04:33 +1118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -04:33 +1119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice -04:33 +1120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note -04:34 +1121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -04:34 +1122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions -04:34 +1123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -04:34 +1124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -04:34 +1125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -04:34 +1126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -04:34 +1127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -04:34 +1128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -04:34 +1129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -04:35 +1130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -04:35 +1131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -04:35 +1132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -04:35 +1133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -04:35 +1134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -04:35 +1135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -04:35 +1136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -04:35 +1137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -04:35 +1138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -04:36 +1139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -04:36 +1140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -04:36 +1141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -04:36 +1142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename -04:36 +1143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -04:37 +1144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -04:37 +1145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -04:37 +1146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -04:37 +1147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -04:37 +1148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -04:37 +1149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -04:37 +1150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -04:38 +1151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -04:38 +1152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -04:38 +1153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -04:38 +1154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -04:38 +1155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -04:38 +1156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -04:39 +1157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -04:39 +1158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -04:39 +1159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -04:39 +1160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -04:39 +1161: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart -04:40 +1161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice -04:40 +1162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes -04:40 +1163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice -04:40 +1164: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart -04:41 +1164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty -04:42 +1165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty -04:42 +1166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty -04:42 +1167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body -04:42 +1168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null -04:42 +1169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 -04:43 +1170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file -04:43 +1171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file -04:43 +1172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file -04:43 +1173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file -04:43 +1174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call -04:43 +1175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin -04:43 +1176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched -04:43 +1177: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart -04:43 +1177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations -04:44 +1178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions -04:44 +1179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations -04:44 +1180: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart -04:45 +1180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated -04:46 +1181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated -04:46 +1182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated -04:46 +1183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated -04:46 +1184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated -04:46 +1185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated -04:46 +1186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated -04:46 +1187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated -04:46 +1188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request -04:46 +1189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible -04:46 +1190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content -04:46 +1191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match -04:46 +1192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted -04:46 +1193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state -04:46 +1194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility -04:46 +1195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility -04:46 +1196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility -04:46 +1197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility -04:46 +1198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility -04:46 +1199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility -04:46 +1200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility -04:46 +1201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility -04:46 +1202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects -04:46 +1203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids -04:46 +1204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body -04:46 +1205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence -04:46 +1206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path -04:46 +1207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note -04:46 +1208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials -04:46 +1209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 -04:46 +1210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references -04:46 +1211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference -04:46 +1212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update -04:46 +1213: loading /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart -04:47 +1213: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles default-a4 and preserves document data -04:48 +1214: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles letter-landscape and preserves document data -04:48 +1215: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles legal-serif and preserves document data -04:48 +1216: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles custom-sans and preserves document data -04:48 +1217: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles no-numbers and preserves document data -04:49 +1218: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles numbered-no-outline and preserves document data -04:49 +1219: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomLeft and preserves document data -04:49 +1220: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomCenter and preserves document data -04:49 +1221: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomRight and preserves document data -04:50 +1222: loading /home/albert/busystack/busymark/test/src/app_smoke_test.dart -04:51 +1222: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor shortcuts use documented cross-editor defaults -04:51 +1223: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace resize retains the sidebar and leaves room for header controls -04:53 +1224: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: document view shortcuts are distinct from existing commands -04:53 +1225: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace routes paste shortcuts only to editable document views -04:56 +1226: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace source history restores a pasted URL suffix through undo and redo -04:57 +1227: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app wires generated localization delegates and locales -04:57 +1228: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app boots to BusyMark welcome screen without login UI -04:57 +1229: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (0) -04:57 +1230: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (1) -04:58 +1231: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: false) -04:58 +1232: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: true) -04:59 +1233: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: main menu and F11 toggle full-screen mode -04:59 +1234: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Alt+Left activates the header Back command -05:00 +1235: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: restored capture failure stays owned across Back create discard create -05:01 +1236: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Escape closes header popup menus -05:01 +1237: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: report issue is in the shared main menu, not Settings content -05:01 +1238: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: global reference and settings shortcuts open targets -05:02 +1239: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings screen opens -05:04 +1240: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings uses the regular split sidebar at desktop width -05:04 +1241: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Spelling Dictionaries page groups downloadable and custom data -05:04 +1242: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt uses native controls and submits a trimmed ID -05:10 +1243: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt cancels and saves without redesign -05:16 +1244: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a default-language install keeps the previous selection -05:16 +1245: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: default language persists only after dictionary installation succeeds -05:23 +1246: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: failed dictionary install keeps the default language -05:25 +1247: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a project-language install keeps the previous selection -05:27 +1248: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings main surface matches the headerbar in light and dark -05:28 +1249: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: stored language override localizes app text -05:28 +1250: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: European Portuguese system locale renders the completed base catalog -05:28 +1251: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: language-only Chinese system locale renders the completed base catalog -05:28 +1252: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside project dialog syncs generated fields until edited -05:29 +1253: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts dialog opens from the header -05:30 +1254: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference categories expose supported authoring forms -05:31 +1255: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+Alt+M opens and Escape closes the syntax reference -05:31 +1256: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference remains usable in constrained RTL layout -05:31 +1257: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts tabs section title is localized -05:32 +1258: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: about dialog shows the BusyMark logo -unhandled element ; Picture key: Svg loader -05:32 +1259: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N chooses between Markdown and Writerside creation -05:32 +1260: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N keeps unsaved documents in independent tabs -05:33 +1261: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N creates real CommonMark inside a Writerside workspace -05:35 +1262: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions -05:43 +1263: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions with an available native host -05:48 +1264: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside topic rename uses Preview, Do Refactor, and shared entry points -05:49 +1265: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: topic rename saves every dirty Writerside project source before planning -05:50 +1266: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: tab keyboard shortcuts move and close editor tabs -05:51 +1267: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Git diff files are shown as separate editor tabs -05:52 +1268: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: File History comparison selector shares its row with match navigation -05:52 +1269: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: file tree disables Git file actions without a repository -05:52 +1270: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: sidebar view shortcuts select workspace sidebar tabs -05:55 +1271: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: real Source edits reach the visible Local History list on the fixed deadline -05:55 +1272: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: selected WYSIWYG formatting reaches Local History through workspace callbacks -05:55 +1273: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside sidebar shortcuts survive document view changes -05:58 +1274: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view colors entries by Git status -05:58 +1275: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view shows hidden, empty, and unsupported entries -05:58 +1276: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Arabic -05:58 +1277: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Persian -05:59 +1278: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Arabic untitled workspace stays RTL and diagnostic metadata stays LTR -05:59 +1279: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: RTL topic copy keeps bidi controls out of clipboard data -05:59 +1280: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Copy uses an inactive origin topic open buffer -06:00 +1281: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Paste reviews an inactive dirty tree before moving -06:01 +1282: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source undo cannot restore saved text from previous tab -06:01 +1283: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source groups typing and deletion undo with historical carets -06:01 +1284: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source remount starts a distinct undo group -06:01 +1285: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source view supports editor formatting shortcuts -06:01 +1286: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab and Shift+Tab update indentation in source view -06:02 +1287: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editing toolbar context menu changes persisted layout without toggling -06:02 +1288: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share a frame while Split stays fluid -06:02 +1289: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: rendered views ignore redundant blanks while Source preserves them -06:03 +1290: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: standalone HTML breaks preserve one blank line in every document view -06:03 +1291: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share task-list presentation and wrapping -06:03 +1292: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same quote shell geometry -06:03 +1293: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same code block presentation -06:04 +1294: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share professional heading hierarchy -06:04 +1295: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share admonition and image presentation -06:04 +1296: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Preview renders structured formatted and nested quotes -06:04 +1297: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor undo cannot restore saved text from previous tab -06:05 +1298: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab inserts a tab character in editor view paragraphs -06:05 +1299: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close still warns when active changes are unsaved -06:05 +1300: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close flushes autosave for saved files -06:05 +1301: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: startup path opens a Markdown file workspace -06:05 +1302: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline follows unsaved source headings without live validation -06:06 +1303: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline context menu edits complete heading sections -06:06 +1304: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline highlights the heading at the document viewport -06:09 +1305: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline navigates to a renamed unsaved editor heading -06:11 +1306: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: untitled outline navigates before the first save -06:11 +1307: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview tolerates duplicate heading anchors -06:11 +1308: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading opens an unindexed sibling document link -06:11 +1309: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading linked block and inline images open their targets -06:11 +1310: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: new empty document leaves remembered preview mode for editor -06:11 +1311: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: blocked remote image prompt allows the current workspace -06:12 +1312: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+O open chooser lists recent workspaces -06:12 +1313: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recent workspace menus support pointer and keyboard actions -06:12 +1314: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local images -06:12 +1315: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer blocks remote images by default -06:12 +1316: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths with spaces -06:12 +1317: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths outside workspace -06:12 +1318: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves Snap real-home paths -06:12 +1319: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local SVG images -06:13 +1320: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer rejects oversized local SVGs -06:13 +1321: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer sanitizes embedded SVG image data -06:13 +1322: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer renders generated SVG badges -06:13 +1323: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: header Search button toggles the expanded search field -06:14 +1324: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: native header Search action toggles search and Back visibility -06:14 +1325: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search awaits non-active file reads without blocking builds -06:15 +1326: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search native submit uses exact payload and selected sidebar occurrence -06:16 +1327: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search preserves query and lands on unopened destination -06:16 +1328: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search observes edits to inactive buffers -06:17 +1329: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search reports limits and continues into later files -06:18 +1330: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search exposes skipped files and regex diagnostics -06:19 +1331: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search cancels expensive regex while UI keeps building -06:20 +1332: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search replacement review loads an asynchronous plan -06:21 +1333: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search highlights preserve Unicode offsets -06:21 +1334: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: literal workspace search bounds malformed Markdown snippets around the match -06:22 +1335: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks move preview scroll repeatedly -06:22 +1336: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview lazily builds large documents -06:23 +1337: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks scroll to code block matches -06:23 +1338: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on paragraph after lists -06:24 +1339: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share ordered list styling and geometry -06:24 +1340: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders nested list children -06:24 +1341: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders raw HTML table as table cells -06:24 +1342: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading applies Markdown table column alignment -06:24 +1343: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on code block line -06:25 +1344: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S runs Save for the active workspace -06:25 +1345: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S saves source edits from an untitled Markdown document -06:26 +1346: loading /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart -06:27 +1346: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from preview -06:31 +1347: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from editor -06:33 +1348: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: an open Problems dialog updates its count and math rows -06:34 +1349: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: manual Validate supersedes queued automatic validation and presents once -06:36 +1350: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: failed and stale validation do not show Problems; concurrent clicks publish once -06:39 +1351: loading /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart -06:39 +1351: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside math forms use semantic math nodes and round-trip -06:40 +1352: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: ordinary Markdown does not reinterpret Writerside TeX forms -06:40 +1353: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside semantic and fenced diagrams share visualizers -06:40 +1354: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: referenced diagram source is constrained to the Writerside root -06:40 +1355: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside topic XML exposes TeX and diagrams to shared preview -06:40 +1356: loading /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart -06:42 +1356: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: view changes fade one live editor while ordinary data changes do not -06:44 +1357: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained destinations settle immediately under reduced motion -06:44 +1358: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained crossfade keeps two live pages and hides outgoing UI -06:44 +1359: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: keyed crossfade retains three semantic destinations -06:44 +1360: loading /home/albert/busystack/busymark/test/src/preview_builder_test.dart -06:45 +1360: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview uses one generic label and no compatibility banner -06:45 +1361: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview ignores redundant blank lines between blocks -06:45 +1362: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves an explicit blank line encoded with HTML breaks -06:45 +1363: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview headings carry parser anchors for outline navigation -06:45 +1364: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview blocks carry source locations for search navigation -06:45 +1365: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview source locations survive adjacent list items and code fences -06:46 +1366: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview list text removes Markdown markers -06:46 +1367: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves links inside list items -06:46 +1368: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves nested list children -06:46 +1369: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps ordered list numbering independent at each depth -06:46 +1370: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves inline Markdown semantics -06:46 +1371: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: inline autolinks only support launchable URI schemes -06:46 +1372: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities -06:46 +1373: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces -06:46 +1374: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities -06:46 +1375: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces -06:46 +1376: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview treats single newlines inside paragraphs as soft breaks -06:46 +1377: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview supports common Markdown block variants -06:46 +1378: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves structured and formatted quote children -06:46 +1379: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves source order for code and images -06:46 +1380: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview parses Writerside image attributes -06:46 +1381: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: front matter is skipped only at the top of the document -06:46 +1382: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML paragraph without literal tags -06:46 +1383: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table sections and inline cell formatting -06:46 +1384: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders direct rows under raw HTML table -06:46 +1385: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table captions before the table -06:46 +1386: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders inline raw HTML safely -06:46 +1387: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not make raw HTML links active without href -06:46 +1388: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects absolute local image paths in raw HTML -06:46 +1389: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects deeply nested raw HTML before conversion -06:46 +1390: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders safe raw HTML containers as child content -06:46 +1391: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders top-level raw HTML image as image block -06:46 +1392: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves raw HTML figure caption relationship -06:46 +1393: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview allows safe remote raw HTML links images and citations -06:46 +1394: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps unsafe raw HTML literal -06:46 +1395: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not parse Markdown inside raw HTML blocks -06:46 +1396: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps paired raw HTML blocks together across blank lines -06:46 +1397: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart -06:47 +1397: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields -06:47 +1398: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 -06:47 +1399: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 -06:47 +1400: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 -06:47 +1401: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 -06:47 +1402: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null -06:47 +1403: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version -06:47 +1404: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed -06:47 +1405: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 -06:47 +1406: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately -06:47 +1407: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers -06:47 +1408: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin -06:47 +1409: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 -06:47 +1410: loading /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart -06:49 +1410: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by file-size limits -06:49 +1411: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by document limits -06:49 +1412: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects topic discovery truncated by tree limits -06:49 +1413: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic-root directory listing failure -06:49 +1414: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: topic discovery traverses excluded and hidden directories but not VCS metadata -06:49 +1415: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves a Markdown reference under build -06:50 +1416: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves an XML reference under a hidden directory -06:50 +1417: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a discovered unreadable topic source -06:50 +1418: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates topic and start-page references in every tree -06:51 +1419: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename refactors links, includes, ref entries, and leaves unrelated text -06:51 +1420: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename ignores link-shaped text in image titles and HTML attributes -06:51 +1421: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds reference links outside image titles and HTML attributes -06:51 +1422: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds exact HTML hrefs outside Markdown link and image titles -06:51 +1423: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename follows origin across modules without touching a local namesake -06:52 +1424: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: project-wide rename includes an origin reference in a build module -06:52 +1425: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: renaming a local namesake preserves origin-qualified Markdown XML links -06:52 +1426: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports unquoted origin-qualified raw HTML links -06:52 +1427: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename keeps decoded whitespace safe in unquoted HTML hrefs -06:52 +1428: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates shared Markdown reference definitions once -06:53 +1429: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves escapes required by a Markdown destination -06:53 +1430: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rewrites an XML-encoded topic destination -06:53 +1431: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename escapes decoded XML attribute replacements -06:53 +1432: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates a matching XML topic root id -06:53 +1433: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: missing or mismatched XML root IDs block rename atomically -06:53 +1434: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: prepared rename is read-only and applies its exact captured changes -06:53 +1435: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: stale prepared rename fails before any partial write -06:53 +1436: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preflights collisions only in publishing instances -06:53 +1437: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: origin topic collisions block a project-wide prepared rename -06:54 +1438: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: Unicode Markdown and XML topic filenames rename safely -06:54 +1439: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports Writerside .markdown topics -06:54 +1440: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects duplicate targets and extension changes -06:54 +1441: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves a target created concurrently before exclusive create -06:54 +1442: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete reloads newly configured instances before start-page checks -06:54 +1443: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename does not claim a new same-basename nested reference -06:54 +1444: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename aborts when a concurrent topic changes basename resolution -06:54 +1445: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete aborts when a concurrent topic changes basename resolution -06:54 +1446: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename retains target when an applied tree cannot be rolled back -06:54 +1447: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: cross-module rollback retains a target after another module changes -06:55 +1448: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: clean rollback removes the harmless newly created target -06:55 +1449: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves topic and instance tree file modes -06:55 +1450: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete removes every TOC entry and promotes children in place -06:55 +1451: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic used as any instance start page -06:55 +1452: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects unsafe path components before writing -06:55 +1453: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic replaced by a symlink without touching its target -06:55 +1454: loading /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart -06:56 +1454: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic maps to full and visible line without folds -06:56 +1455: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic inside folded region is aggregated onto its fold header -06:56 +1456: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: folded layout geometry is reused for equal collapsed sets -06:56 +1457: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: incremental gutter layout matches a full measured layout -06:56 +1458: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart -07:00 +1458: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Duplicate Topic is serialized to the native dialog host -07:00 +1459: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Edit Title returns all native field values -07:00 +1460: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: native cancellation remains distinct from an unavailable host -07:00 +1461: loading /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart -07:00 +1461: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps a nested Writerside block to its source block -07:02 +1462: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps selected text when unsourced editor blocks exist -07:02 +1463: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI applies through canonical Markdown source -07:02 +1464: loading /home/albert/busystack/busymark/test/src/document_status_bar_test.dart -07:04 +1464: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: places interactive spelling at start and format at end -07:05 +1465: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: keeps passive format when spelling is unsupported -07:05 +1466: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: truncates a long one-line language without displacing format -07:05 +1467: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: uses directional start and end placement in RTL -07:05 +1468: loading /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart -07:06 +1468: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: detects and preserves UTF-8 BOM, CRLF, and final newline -07:06 +1469: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: preserves a missing final newline when saving edited text -07:06 +1470: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: requires an explicit normalization for mixed line endings -07:06 +1471: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: rejects invalid UTF-8 instead of replacing bytes -07:06 +1472: loading /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart -07:08 +1472: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: autocomplete prioritizes Writerside Markdown authoring suggestions -07:08 +1473: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion derives XML caret context and consumes the project index -07:08 +1474: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion suggests attributes legal for the element at the caret -07:08 +1475: loading /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart -07:12 +1475: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: reads the provider key through the native credential channel -07:12 +1476: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: trims a key before securely storing it -07:12 +1477: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: deletes only the selected provider key -07:12 +1478: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: surfaces the native credential-service failure -07:12 +1479: loading /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart -07:14 +1479: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pristine empty draft discards without protective storage -07:14 +1480: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace replacement retires settled bindings and retains failed baselines -07:14 +1481: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects nonempty content when history is unavailable -07:14 +1482: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects whitespace content when history is unavailable -07:14 +1483: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects edited-empty content when history is unavailable -07:14 +1484: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects recovered content when history is unavailable -07:14 +1485: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects file content when history is unavailable -07:14 +1486: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: background protective retry cannot execute a previously rejected discard -07:14 +1487: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=false) -07:14 +1488: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=true) -07:14 +1489: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=false) -07:14 +1490: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=true) -07:15 +1491: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save cannot adopt a deleted path lineage -07:15 +1492: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: vacant first save retires a stale active history owner -07:15 +1493: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save promotes an established untitled lineage over deleted history -07:15 +1494: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison uses unsaved editor source and whole restore is one undo step -07:15 +1495: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels queued restore protection -07:15 +1496: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All cancels queued restore protection -07:15 +1497: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: region restore is exact, undoable, and rejects stale ranges -07:15 +1498: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed protective capture leaves current document unchanged -07:15 +1499: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restoration rejects a revision from another history document -07:15 +1500: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled history compares and restores through stable identity -07:15 +1501: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing during a delayed reload cancels the stale replacement -07:15 +1502: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reload reparse cannot publish after another buffer becomes active -07:15 +1503: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delete skips binary and excluded history descendants -07:15 +1504: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deleted document restores through normal create flow without overwriting -07:15 +1505: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: missing history restores over an existing file without touching disk and undoes to its real source -07:15 +1506: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing open destination protects unsaved source as the restore undo baseline -07:15 +1507: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing destination restore stops when protection fails or the target changes -07:15 +1508: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: autosaved existing-destination recovery never publishes an empty file -07:15 +1509: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delayed explicit save records exactly the source that was written -07:15 +1510: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history failure cannot turn a successful save into a failure -07:15 +1511: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move keeps edits made during history remap on the destination -07:15 +1512: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reparse cannot publish after a newer edit -07:15 +1513: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move cannot remap a replacement created while loading target -07:15 +1514: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move completion cannot publish into a replacement workspace -07:15 +1515: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: monitor event emitted after invalidation cannot enter reopened workspace -07:15 +1516: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: file monitor lifecycle recovers after a failed stop -07:15 +1517: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing while monitor start is pending still enables workspace events -07:15 +1518: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: folder refresh while monitor start is pending still enables events -07:15 +1519: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed workspace ignores a delayed monitor start completion -07:15 +1520: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed file monitor cannot resume an overtaken start -07:15 +1521: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deferred monitor move cannot enter a replacement workspace -07:16 +1522: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move retains reconciliation when another process checkpoints the old identity -07:16 +1523: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move with no bound identity cannot remap replacement history -07:16 +1524: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion with no bound identity cannot delete replacement history -07:16 +1525: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection retries into the deleted lineage -07:16 +1526: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection survives restart as detached work -07:16 +1527: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move remaps nested open history -07:16 +1528: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move publishes every buffer after one decode failure -07:16 +1529: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closing a tab during an external directory move settles its journal -07:16 +1530: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory deletion marks nested open history deleted -07:16 +1531: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed recursive-delete protection survives restart on its lineage -07:16 +1532: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reconciles closed file history -07:16 +1533: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion reconciles closed file history -07:16 +1534: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce before history reconciliation -07:16 +1535: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce across an unrelated queued event -07:16 +1536: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closed source move cannot steal an open destination lineage -07:16 +1537: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external file move includes identity established by source settlement -07:16 +1538: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move includes identity established by source settlement -07:16 +1539: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: cancelled named Save As detaches source history and reopens separately -07:16 +1540: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recording disabled after first-save publication preserves untitled lineage -07:17 +1541: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, completed pending capture -07:17 +1542: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, failed pending capture -07:17 +1543: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, completed pending capture -07:17 +1544: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, failed pending capture -07:17 +1545: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, completed pending capture -07:18 +1546: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, failed pending capture -07:18 +1547: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As keeps edits made during destination capture out of source history -07:18 +1548: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot claim a dirty open buffer at a missing destination -07:18 +1549: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=false) -07:18 +1550: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=true) -07:18 +1551: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rename remaps a failed unbound baseline to the committed destination -07:19 +1552: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed prepared rename never reaches the filesystem without an execution journal -07:19 +1553: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels a prepared rename before filesystem publication -07:19 +1554: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document retains an executing rename journal across a crash -07:19 +1555: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All retains an executing rename journal across a crash -07:19 +1556: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: targetless executing rename owner survives an ambiguous restart -07:19 +1557: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: move remaps a deferred first-save destination before baseline recovery -07:19 +1558: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive folder move remaps retained baselines for every open descendant -07:19 +1559: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=false) -07:19 +1560: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=true) -07:19 +1561: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed move retries a failed history path reconciliation -07:20 +1562: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: shutdown retries first-save promotion without requiring another edit -07:20 +1563: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: second Save As preserves a failed first-save association as the source -07:20 +1564: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As partitions a failed source checkpoint -07:20 +1565: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As source checkpoint survives process restart -07:20 +1566: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As journals its source before the filesystem commit returns -07:20 +1567: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot publish a second owner when its destination opens in flight -07:20 +1568: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As rechecks destination ownership after opening its workspace -07:20 +1569: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As waits for an unbound live destination history owner -07:20 +1570: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed Save As cannot publish after losing its prepared journal owner -07:20 +1571: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As published after disposal leaves a committed recoverable journal -07:20 +1572: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As commit write failure after disposal uses the session fallback -07:20 +1573: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As publishes destination after a post-publish callback failure -07:20 +1574: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed rename reconciliation survives shutdown and restart -07:20 +1575: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: live owner keeps committed remap journal until its recovery can follow -07:21 +1576: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared rename journal repairs a crash after filesystem commit -07:21 +1577: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed deletion detaches recovery newer than stored history -07:21 +1578: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive deletion evidence cannot consume a sibling recovery -07:21 +1579: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All durably removes a previously persisted path journal -07:21 +1580: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup applies committed destination cleanup before Save As recovery -07:21 +1581: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup keeps untitled first-save source when another tab owns destination -07:21 +1582: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed Save As recovery cannot claim another process tab with the same buffer id -07:21 +1583: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session restore selects recovery by process owner before shared buffer id -07:21 +1584: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed startup reconstruction releases adopted recovery ownership -07:21 +1585: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history retry during slow failed startup cannot erase adopted recovery -07:22 +1586: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session identity restore waits for the authoritative history snapshot -07:22 +1587: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: renamed adopted recovery still honors its original path-operation owner -07:22 +1588: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: replayed durable Clear All preserves newer history -07:22 +1589: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup aborts until replayed clear refresh is authoritative -07:22 +1590: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared deletion journal repairs a crash after filesystem commit -07:22 +1591: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed deletion reconciliation survives shutdown and restart -07:22 +1592: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reopened tab adopts its unresolved first-save history association -07:22 +1593: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: unresolved shutdown promotion survives in session and retries on startup -07:22 +1594: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace rename settles a failed first-save promotion -07:22 +1595: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace directory move settles a nested failed first-save promotion -07:22 +1596: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison renders styled intraline spans without framework errors -07:23 +1597: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison restore actions wait for the current replacement result -07:23 +1598: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace refresh invalidates a completed comparison by source content -07:23 +1599: loading /home/albert/busystack/busymark/test/src/visualization_card_test.dart -07:24 +1599: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: full-screen diagram coordinates its modal and preserves pan/zoom -07:25 +1600: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: retains the last valid diagram and navigates new diagnostics -07:26 +1601: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: fits a small Mermaid diagram to the preview width -07:26 +1602: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: keeps a wide Mermaid diagram readable until fit is requested -07:26 +1603: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: shows searchable OpenAPI operations and opens the native reference -07:26 +1604: loading /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart -07:27 +1604: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: computes the diagnostic offset within fenced source -07:27 +1605: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: WYSIWYG diagnostic selects its actual source line -07:28 +1606: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -07:30 +1606: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -07:32 +1607: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -07:35 +1608: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones -07:36 +1609: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -07:37 +1610: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -07:37 +1611: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -07:38 +1612: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -07:38 +1613: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -07:38 +1614: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -07:39 +1615: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -07:39 +1616: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -07:40 +1617: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -07:40 +1618: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -07:40 +1619: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -07:41 +1620: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -07:41 +1621: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -07:41 +1622: loading /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart -07:42 +1622: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table pipes cannot bind across subsequent cells -07:42 +1623: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: a\|b | a|b -07:42 +1624: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b\|c | a|b|c | -07:42 +1625: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\\\|b | a\\|b | -07:42 +1626: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | a|b\ -07:42 +1627: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | -07:42 +1628: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | `a\|b` | a|b | -07:42 +1629: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped pipes in the table header retain diagnostic positions -07:42 +1630: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | a\|b | a|b | -07:42 +1631: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | `` a\|b | a| | -07:42 +1632: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in block context -07:42 +1633: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in inline context -07:42 +1634: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline caption attributes are checked before tree construction -07:42 +1635: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline colgroup attributes are checked before tree construction -07:42 +1636: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline col attributes are checked before tree construction -07:42 +1637: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline thead attributes are checked before tree construction -07:42 +1638: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tbody attributes are checked before tree construction -07:42 +1639: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tfoot attributes are checked before tree construction -07:42 +1640: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline th attributes are checked before tree construction -07:42 +1641: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline td attributes are checked before tree construction -07:42 +1642: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline URL attributes use HTML entity decoding -07:42 +1643: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text `
Cell
` -07:42 +1644: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text \\\\\
Cell\
-07:42 +1645: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: ```html -07:42 +1646: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe:
Cell
-07:42 +1647: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text
Cell
-07:42 +1648: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html -07:42 +1649: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: -07:42 +1650: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
-07:42 +1651: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
-07:42 +1652: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^unused]: -07:42 +1653: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^used]: -07:42 +1654: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - ```html -07:42 +1655: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` then -07:42 +1656: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` `` -07:42 +1657: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > ```html -07:42 +1658: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - Example -07:42 +1659: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > - `` then -07:42 +1660: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: --- -07:42 +1661: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html -07:42 +1662: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | Code | HTML | -07:42 +1663: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | One | -07:42 +1664: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `a ` -07:42 +1665: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: unsafe Markdown URLs are located at the link, after literal examples -07:42 +1666: loading /home/albert/busystack/busymark/test/src/window_control_service_test.dart -07:44 +1666: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: button and native close requests share one pending confirmation -07:44 +1667: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: initializes prevent-close interception -07:44 +1668: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: toggles full screen and tracks native window-state changes -07:44 +1669: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: no dirty documents closes without dialog -07:44 +1670: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation enabled show dialog -07:44 +1671: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation disabled close directly -07:44 +1672: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: discard closes after disabling prevent-close -07:44 +1673: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save closes only when saving succeeds -07:44 +1674: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save failure keeps the app open -07:44 +1675: loading /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart -07:48 +1675: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: terminal code block gets a non-serializing trailing paragraph -07:48 +1676: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter inserts a newline within one code block -07:48 +1677: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: a code block created by editing also retains a trailing paragraph -07:48 +1678: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: third terminal Enter exits code and removes the two empty lines -07:48 +1679: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: exiting before existing content inserts a transient paragraph -07:48 +1680: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter in the trailing paragraph records an intentional blank -07:48 +1681: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: code Enter stays in the multiline code field -07:49 +1682: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Ctrl+Enter exits into the trailing paragraph -07:50 +1683: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Arrow Down exits a terminal code block -07:50 +1684: loading /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart -07:52 +1684: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: shows only a compact line-ending label -07:53 +1685: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: makes BOM visible and keeps final-newline detail compact -07:53 +1686: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: uses a compact technical label for mixed line endings -07:53 +1687: loading /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart -07:54 +1687: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: ordinary WYSIWYG selection never suppresses spelling underlines -07:54 +1688: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: source spelling correction is one exact transaction -07:55 +1689: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: formatted rich correction preserves structure and publishes once -07:56 +1690: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich image spelling preserves source and one undo step -07:57 +1691: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested code and math spelling preserves source and undo -07:57 +1692: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested address and math spelling preserves source and undo -07:58 +1693: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table image spelling preserves authored cell syntax -07:58 +1694: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed rich image preparation refuses a newer revision -07:58 +1695: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed math image preparation refuses a newer revision -07:58 +1696: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich correction preserves entities and translates later anchors -07:59 +1697: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich hard-break correction keeps later source anchor -07:59 +1698: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table correction preserves encoded cell source -07:59 +1699: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table-cell correction preserves link and publishes sessions once -07:59 +1700: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich underline painter keeps confirmed helo visible at caret -07:59 +1701: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: table cell underline uses the live cell composing range -07:59 +1702: loading /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart -08:00 +1702: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: inlines safe generated CSS into a vector-only SVG -08:00 +1703: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: keeps sanitized foreignObject only in the browser raster input -08:00 +1704: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes SVG and CSS animations -08:00 +1705: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects remote, executable, and escaped CSS URLs -08:00 +1706: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: allows embedded D2-style fonts but rejects remote image attributes -08:00 +1707: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: requires rasterization for CSS the vector inliner cannot preserve -08:00 +1708: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: preserves safe browser-only inline CSS and rasterizes it -08:00 +1709: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes unsafe URLs from inline CSS -08:00 +1710: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: does not claim a vector result when CSS cascade resolution is needed -08:00 +1711: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects declarations, excessive complexity, and invalid dimensions -08:00 +1712: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: applies the size limit to UTF-8 bytes -08:00 +1713: loading /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart -08:02 +1713: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: remote requests reject existing local references before reading dependencies -08:03 +1714: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: resolves local files, hashes them, and terminates circular schemas -08:03 +1715: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: keeps internal-only references independent of a saved path -08:03 +1716: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: rejects remote, absolute, malformed, and unsupported references -08:03 +1717: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: reports an unsaved document that contains a local reference -08:03 +1718: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: converts traversal and symlink escapes into typed diagnostics -08:03 +1719: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: enforces dependency count and byte limits -08:03 +1720: loading /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart -08:04 +1720: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: platform host sends reduced source and geometry over one channel -08:04 +1721: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: Linux player keeps interactive media in a restricted WebKit host -08:05 +1722: loading /home/albert/busystack/busymark/test/src/export_options_test.dart -08:09 +1722: /home/albert/busystack/busymark/test/src/export_options_test.dart: defaults retain PDF geometry and independent HTML reading appearance -08:09 +1723: /home/albert/busystack/busymark/test/src/export_options_test.dart: every option persists and copies without losing unrelated fields -08:09 +1724: /home/albert/busystack/busymark/test/src/export_options_test.dart: absent and malformed persisted values fall back per field -08:09 +1725: /home/albert/busystack/busymark/test/src/export_options_test.dart: geometry resolves dimensions, orientation and four independent margins -08:09 +1726: /home/albert/busystack/busymark/test/src/export_options_test.dart: payload contains resolved geometry and every renderer option as data -08:09 +1727: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -08:10 +1727: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review -08:11 +1728: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab -08:11 +1729: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes -08:11 +1730: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save -08:11 +1731: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) -08:11 +1732: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) -08:11 +1733: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) -08:11 +1734: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) -08:12 +1735: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart -08:12 +1736: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation -08:12 +1737: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox -08:12 +1738: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit -08:12 +1739: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session -08:12 +1740: loading /home/albert/busystack/busymark/test/src/source_folding_test.dart -08:13 +1740: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line starts map to the following source line -08:13 +1741: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects sections lists quotes and code blocks -08:13 +1742: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding keeps shorter fence runs inside dynamic fences -08:13 +1743: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown structures inside fences do not create fold regions -08:13 +1744: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores tags inside multiline comments and CDATA -08:13 +1745: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores greater-than signs inside quoted attributes -08:13 +1746: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding scans opening tags across source lines -08:13 +1747: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding skips processing instructions and declarations -08:13 +1748: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding does not join separate indented code blocks -08:13 +1749: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsed gutter entries preserve source line numbers -08:13 +1750: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsing one repeated markdown subsection keeps peer sections visible -08:13 +1751: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding detects simple multiline tag blocks -08:13 +1752: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects nested headings task lists and blockquotes -08:13 +1753: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding handles nested same-name tags with a stack -08:13 +1754: /home/albert/busystack/busymark/test/src/source_folding_test.dart: malformed xml does not create unsafe fold ranges -08:13 +1755: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line info supports CRLF endings -08:13 +1756: loading /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart -08:16 +1756: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: shipped spelling catalog is metadata-only and revision pinned -08:16 +1757: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: ordinary Linux release does not prepare all-language pairs -08:16 +1758: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: committed spelling checksum inventory matches exact shipped bytes -08:16 +1759: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: native spelling notices are explicit installed artifacts -08:16 +1760: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: strict Snap smoke performs and verifies a local revision transition -08:16 +1761: loading /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart -08:16 +1761: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates and registers an empty instance with build settings -08:17 +1762: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates a non-publishing TOC library instance -08:17 +1763: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: imports selected Markdown and its referenced local media -08:17 +1764: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: renames an instance and refactors documented project references -08:17 +1765: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: first topic added to an empty instance becomes its home page -08:17 +1766: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: invalid project XML blocks an instance ID refactor without changing files -08:17 +1767: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: concurrent config change prevents every instance publication -08:18 +1768: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import copies selected topics, media, and inserts root entries in order -08:18 +1769: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import inserts several siblings after the exact reference in list order -08:18 +1770: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import initializes only the first imported topic as the start page -08:18 +1771: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects batch, existing-ID, target, and invalid-name conflicts -08:18 +1772: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import accepts a Unicode topic filename -08:18 +1773: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects a stale reference identity without publishing files -08:18 +1774: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import discovered-but-unparsed topic basename blocks import -08:18 +1775: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import fails closed when semantic topic discovery is incomplete -08:18 +1776: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import revalidates IDs before publishing and leaves no partial import -08:18 +1777: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import allows an unrelated topic created before publication -08:18 +1778: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects existing and selected-batch topic IDs -08:18 +1779: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects an invalid topic filename -08:18 +1780: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import fails closed on incomplete discovery -08:18 +1781: loading /home/albert/busystack/busymark/test/src/validation_consistency_test.dart -08:19 +1781: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: module load, topic validation, and config validation agree and clear fixes -08:20 +1782: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: editing a target refreshes diagnostics in the referencing topic -08:20 +1783: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variables, comments, interpolation controls and optional includes agree -08:20 +1784: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: interpolated includes agree across load, topic and config validation -08:20 +1785: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variable scope identity includes its declaring topic -08:20 +1786: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: cross-module includes refresh when their target changes -08:20 +1787: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: malformed glossary and keymap XML report the supporting file and clear after repair -08:20 +1788: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: Markdown validation preserves other files and scan warnings while clearing active errors -08:20 +1789: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: linked anchors use dirty buffers and canonical self-links, caching targets -08:20 +1790: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: large buffered targets parse asynchronously and missing saved targets use their buffers -08:20 +1791: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: front matter requires complete delimiter lines with LF and CRLF -08:20 +1792: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: HTML diagnostics exclude prose and literal code without relaxing rendering policy -08:20 +1793: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: location maps are reused within a parse and released between parses -08:20 +1794: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart -08:21 +1794: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes -08:21 +1795: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs -08:21 +1796: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin -08:21 +1797: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success -08:21 +1798: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser -08:21 +1799: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll -08:21 +1800: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll -08:21 +1801: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password -08:21 +1802: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling -08:21 +1803: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints -08:21 +1804: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors -08:21 +1805: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account -08:21 +1806: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics -08:21 +1807: loading /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart -08:23 +1807: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside Markdown collapsible chapter owns its section -08:23 +1808: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown keeps Writerside collapse syntax literal -08:23 +1809: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown does not assign semantic Writerside collapse -08:23 +1810: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside fenced code consumes its collapsible attribute line -08:23 +1811: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: edited collapsible blocks serialize valid Writerside attributes -08:23 +1812: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary fenced code does not consume a collapse attribute line -08:23 +1813: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: semantic collapsible elements become structured preview content -08:23 +1814: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside XML topic preview keeps collapsible content nested -08:23 +1815: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: shared collapse control honors default state and toggles -08:24 +1816: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: WYSIWYG collapses only Writerside chapter content -08:25 +1817: loading /home/albert/busystack/busymark/test/src/export_review_regression_test.dart -08:25 +1817: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside PDF retains percent-encoded non-ASCII footnote labels -08:26 +1818: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: included footnotes use separate document-occurrence namespaces -08:26 +1819: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=false) -08:26 +1820: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=true) -08:26 +1821: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: repeated includes receive distinct nested occurrence IDs -08:26 +1822: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: mapper cannot substitute a diagram for a colliding paragraph -08:26 +1823: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside rejects outside file URIs and symlinks while staging shared-module images -08:26 +1824: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=false) -08:26 +1825: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=true) -08:26 +1826: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=true) -08:26 +1827: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=true) -08:26 +1828: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=false) -08:26 +1829: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=false) -08:26 +1830: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: collapsible headings keep numbering and actual outline order -08:27 +1831: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false #%FF) -08:27 +1832: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false %FF.md) -08:27 +1833: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false file%FF.txt) -08:27 +1834: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true #%FF) -08:27 +1835: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true %FF.md) -08:27 +1836: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true file%FF.txt) -08:27 +1837: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: combined Writerside PDF keeps diagrams and scoped notes without reading an outside image -08:27 +1838: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: ordinary Markdown footnotes compile with retained definitions and repeated references -08:27 +1839: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart -08:28 +1839: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only committed newline and continued typing replace a table-ended selection -08:29 +1840: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table committed newline and continued typing replace a table-ended selection -08:30 +1841: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table committed newline and continued typing replace a table-ended selection -08:30 +1842: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables committed newline and continued typing replace a table-ended selection -08:31 +1843: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=false -08:31 +1844: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Up control=false -08:31 +1845: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=false -08:32 +1846: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Down control=false -08:32 +1847: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=true -08:32 +1848: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=true -08:33 +1849: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing commit uses real input -08:33 +1850: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing cancel uses real input -08:33 +1851: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=false -08:33 +1852: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Up control=false -08:34 +1853: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=false -08:34 +1854: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Down control=false -08:34 +1855: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=true -08:34 +1856: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=true -08:35 +1857: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing commit uses real input -08:35 +1858: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing cancel uses real input -08:35 +1859: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=false -08:35 +1860: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Up control=false -08:36 +1861: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=false -08:36 +1862: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Down control=false -08:36 +1863: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=true -08:37 +1864: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=true -08:37 +1865: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=false -08:37 +1866: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Up control=false -08:37 +1867: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=false -08:37 +1868: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Down control=false -08:38 +1869: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=true -08:38 +1870: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=true -08:38 +1871: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing commit uses real input -08:39 +1872: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing cancel uses real input -08:39 +1873: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=false -08:39 +1874: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Up control=false -08:39 +1875: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=false -08:39 +1876: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Down control=false -08:40 +1877: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=true -08:40 +1878: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=true -08:40 +1879: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing commit uses real input -08:40 +1880: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing cancel uses real input -08:40 +1881: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=false -08:41 +1882: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Up control=false -08:41 +1883: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=false -08:41 +1884: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Down control=false -08:41 +1885: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=true -08:41 +1886: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=true -08:42 +1887: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=false -08:42 +1888: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Up control=false -08:42 +1889: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=false -08:42 +1890: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Down control=false -08:43 +1891: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=true -08:43 +1892: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=true -08:43 +1893: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing commit uses real input -08:43 +1894: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing cancel uses real input -08:44 +1895: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=false -08:44 +1896: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Up control=false -08:44 +1897: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=false -08:44 +1898: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Down control=false -08:45 +1899: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=true -08:45 +1900: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=true -08:45 +1901: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing commit uses real input -08:46 +1902: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing cancel uses real input -08:46 +1903: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=false -08:46 +1904: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Up control=false -08:46 +1905: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=false -08:46 +1906: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Down control=false -08:46 +1907: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=true -08:46 +1908: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=true -08:47 +1909: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=false -08:47 +1910: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Up control=false -08:47 +1911: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=false -08:47 +1912: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Down control=false -08:47 +1913: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=true -08:47 +1914: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=true -08:47 +1915: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: false) -08:48 +1916: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: true) -08:48 +1917: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#80d00(keyId: "0x100000301", keyLabel: "Arrow Down", debugName: "Arrow Down"), previous: LogicalKeyboardKey#88515(keyId: "0x100000304", keyLabel: "Arrow Up", debugName: "Arrow Up"), word: false) -08:49 +1918: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after selection -08:49 +1919: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after document -08:49 +1920: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after same document source -08:49 +1921: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after disposal -08:50 +1922: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=false -08:50 +1923: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=true -08:50 +1924: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: clipboard history replaces selected table through document range -08:51 +1925: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: partial paragraph to table to paragraph replacement preserves outside text and undo -08:51 +1926: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell-local input cut paste and Tab remain local -08:51 +1927: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by up (variant: TargetPlatform.linux) -08:52 +1928: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by cancel (variant: TargetPlatform.linux) -08:53 +1929: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by document (variant: TargetPlatform.linux) -08:54 +1930: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by disposal (variant: TargetPlatform.linux) -08:54 +1931: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=false -08:55 +1932: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=true -08:55 +1933: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=false -08:55 +1934: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=true -08:56 +1935: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=false -08:56 +1936: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=true -08:56 +1937: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=false -08:57 +1938: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=true -08:57 +1939: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=false -08:57 +1940: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=true -08:58 +1941: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=false -08:58 +1942: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=true -08:58 +1943: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=false -08:59 +1944: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=true -08:59 +1945: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=false -09:00 +1946: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=true -09:00 +1947: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=false -09:00 +1948: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=true -09:01 +1949: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=false -09:01 +1950: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=true -09:01 +1951: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=false -09:02 +1952: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=true -09:02 +1953: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=false -09:02 +1954: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=true -09:03 +1955: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=false -09:03 +1956: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=true -09:03 +1957: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=false -09:04 +1958: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=true -09:04 +1959: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=false -09:04 +1960: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=true -09:05 +1961: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=false -09:05 +1962: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=true -09:06 +1963: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=false -09:06 +1964: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=true -09:07 +1965: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=false -09:07 +1966: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=true -09:08 +1967: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=false -09:09 +1968: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=true -09:10 +1969: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=false -09:10 +1970: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=true -09:11 +1971: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local paragraph accepts immediate Unicode input -09:11 +1972: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local cell accepts immediate Unicode input -09:12 +1973: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by caret before handoff -09:12 +1974: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by range before handoff -09:12 +1975: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by document before handoff -09:12 +1976: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by tab replacement before handoff -09:12 +1977: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by disposal before handoff -09:13 +1978: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input retains a scrolled viewport -09:14 +1979: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input uses clamped session offsets -09:14 +1980: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Backspace until committed input -09:14 +1981: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Delete until committed input -09:14 +1982: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Enter until committed input -09:15 +1983: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Left until committed input -09:15 +1984: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Right until committed input -09:15 +1985: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Up until committed input -09:16 +1986: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Down until committed input -09:16 +1987: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Home until committed input -09:16 +1988: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns End until committed input -09:16 +1989: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=false -09:16 +1990: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=true -09:17 +1991: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag up retains committed text input -09:17 +1992: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag cancel retains committed text input -09:17 +1993: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during clipboard preparation -09:17 +1994: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during open menu -09:18 +1995: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=false -09:18 +1996: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=true -09:19 +1997: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false switching a reused editor captures outgoing document selection -09:19 +1998: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true switching a reused editor captures outgoing document selection -09:19 +1999: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false switching a reused editor captures outgoing document selection -09:20 +2000: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true switching a reused editor captures outgoing document selection -09:20 +2001: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false switching a reused editor captures outgoing document selection -09:20 +2002: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true switching a reused editor captures outgoing document selection -09:21 +2003: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false switching a reused editor captures outgoing document selection -09:21 +2004: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true switching a reused editor captures outgoing document selection -09:21 +2005: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=false switching a reused editor captures outgoing document selection -09:21 +2006: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=true switching a reused editor captures outgoing document selection -09:22 +2007: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Cut edits only the selected table -09:23 +2008: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste edits only the selected table -09:23 +2009: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste as Plain Text edits only the selected table -09:24 +2010: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=false -09:24 +2011: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=true -09:25 +2012: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint up restores real typing -09:25 +2013: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint cancel restores real typing -09:25 +2014: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real Select All survives workspace session JSON and editor recreation -09:26 +2015: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real reverse drag survives workspace session JSON and editor recreation -09:26 +2016: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real Select All survives workspace session JSON and editor recreation -09:27 +2017: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real reverse drag survives workspace session JSON and editor recreation -09:27 +2018: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real Select All survives workspace session JSON and editor recreation -09:27 +2019: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real reverse drag survives workspace session JSON and editor recreation -09:28 +2020: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real Select All survives workspace session JSON and editor recreation -09:28 +2021: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real reverse drag survives workspace session JSON and editor recreation -09:29 +2022: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph local reverse selection restores locally -09:29 +2023: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell local reverse selection restores locally -09:29 +2024: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target removed uses current-document fallback -09:29 +2025: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed kind uses current-document fallback -09:30 +2026: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed text uses current-document fallback -09:30 +2027: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned block drag -09:31 +2028: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned cell drag -09:31 +2029: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=false -09:31 +2030: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=true -09:31 +2031: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=false -09:31 +2032: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=true -09:31 +2033: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Delete replaces the selected structured block and undoes -09:32 +2034: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Backspace replaces the selected structured block and undoes -09:32 +2035: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Cut replaces the selected structured block and undoes -09:33 +2036: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Enter replaces the selected structured block and undoes -09:33 +2037: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: plain paste replaces the selected structured block and undoes -09:33 +2038: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: structured paste replaces the selected structured block and undoes -09:33 +2039: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Delete replaces the selected structured block and undoes -09:34 +2040: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Backspace replaces the selected structured block and undoes -09:34 +2041: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Cut replaces the selected structured block and undoes -09:34 +2042: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Enter replaces the selected structured block and undoes -09:35 +2043: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: plain paste replaces the selected structured block and undoes -09:35 +2044: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: structured paste replaces the selected structured block and undoes -09:35 +2045: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Delete replaces the selected structured block and undoes -09:36 +2046: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Backspace replaces the selected structured block and undoes -09:36 +2047: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Cut replaces the selected structured block and undoes -09:36 +2048: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Enter replaces the selected structured block and undoes -09:37 +2049: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: plain paste replaces the selected structured block and undoes -09:37 +2050: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: structured paste replaces the selected structured block and undoes -09:37 +2051: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -09:37 +2052: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -09:37 +2053: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -09:38 +2054: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -09:38 +2055: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -09:38 +2056: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -09:38 +2057: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-ended selection accepts actual committed Unicode input once -09:38 +2058: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: captured table selection restores highlighting copy and mutation -09:39 +2059: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-block drag without changing its endpoint -09:39 +2060: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-cell drag without changing its endpoint -09:39 +2061: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated pointer cannot complete an owned document drag -09:39 +2062: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Delete cannot edit a local fallback -09:39 +2063: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Enter cannot edit a local fallback -09:39 +2064: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document plain paste cannot edit a local fallback -09:39 +2065: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document structured paste cannot edit a local fallback -09:39 +2066: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document typing cannot edit a local fallback -09:40 +2067: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: failed document deletion preserves redo history -09:40 +2068: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after failure -09:40 +2069: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after selection -09:40 +2070: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after document -09:40 +2071: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after disposal -09:40 +2072: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after failure -09:41 +2073: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after selection -09:41 +2074: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after document -09:42 +2075: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after disposal -09:42 +2076: loading /home/albert/busystack/busymark/test/src/busymark_toast_test.dart -09:42 +2076: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast works when hosted above the Navigator -09:43 +2077: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast appears at the bottom center and dismisses itself -09:43 +2078: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast action runs and dismisses the toast -09:43 +2079: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toasts queue instead of covering each other -09:43 +2080: loading /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart -09:45 +2080: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames normalizes runs, edges, case, and Unicode once -09:45 +2081: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames disabled preprocessing preserves established safe characters -09:45 +2082: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames resolves exact custom values per instance for Markdown and XML -09:45 +2083: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/default collision -09:45 +2084: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/custom collision -09:45 +2085: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses custom/custom collision -09:45 +2086: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics allows the same output name in disjoint instances -09:45 +2087: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics deduplicates repeated publication of one physical topic -09:45 +2088: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses a collision with an origin module topic -09:45 +2089: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics resolves conditioned names independently in each instance -09:45 +2090: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses invalid custom filenames before export -09:45 +2091: loading /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart -09:46 +2091: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover preference defaults off, serializes and copies independently -09:46 +2092: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover title and authors use the established metadata precedence -09:46 +2093: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: snapshot metadata, display text, explicit clears and plain JSON remain independent -09:46 +2094: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: instance title uses its display name and only known project metadata -09:46 +2095: loading /home/albert/busystack/busymark/test/src/path_utils_test.dart -09:48 +2095: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries cancels a wide directory listing at the limit -09:48 +2096: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries counts directories against the scan budget -09:48 +2097: /home/albert/busystack/busymark/test/src/path_utils_test.dart: directory listing failure marks traversal incomplete -09:48 +2098: /home/albert/busystack/busymark/test/src/path_utils_test.dart: display scan includes hidden and unsupported entries but not VCS data -09:48 +2099: loading /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart -09:50 +2099: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses multiple commits -09:50 +2100: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses merge commit with multiple parents -09:50 +2101: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: preserves author punctuation and separator-like subject text -09:50 +2102: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses empty history -09:50 +2103: loading /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart -09:52 +2103: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses clean repository status -09:52 +2104: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses modified tracked file -09:52 +2105: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged modification -09:52 +2106: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses unstaged modification -09:52 +2107: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged and unstaged same file -09:52 +2108: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: keeps staged addition and working-tree deletion separate -09:52 +2109: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: tracks rename state independently in each status column -09:52 +2110: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses untracked file -09:52 +2111: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses deleted file -09:52 +2112: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses renamed file -09:52 +2113: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses copied file -09:52 +2114: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses conflicted files -09:52 +2115: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses branch header and ahead behind counts -09:52 +2116: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses detached head header -09:52 +2117: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: preserves spaces, unicode, quotes, and newlines in filenames -09:52 +2118: loading /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart -09:55 +2118: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: process-backed Git gateway requires workspace trust -09:55 +2119: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: configures a repository author identity without terminal setup -09:58 +2120: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: runs core workflow in a temporary Git repository -09:58 +2121: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status lists every non-ignored hidden untracked file -09:58 +2122: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: resets the current branch with each explicit Git reset mode -09:59 +2123: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: refuses to reset while HEAD is detached -10:00 +2124: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: keeps staged and unstaged comparisons separate -10:00 +2125: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged rename diff and unstage preserve both paths -10:00 +2126: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: rollback restores both sides of a staged rename to HEAD -10:01 +2127: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged addition deleted from the working tree keeps separate diffs -10:01 +2128: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: preserves complete deleted content and restores a deleted version -10:02 +2129: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: failed historical blob read cannot delete the working file -10:02 +2130: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: constructs complete text and binary comparisons for untracked files -10:02 +2131: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: direct working-tree operations reject intermediate symlink escapes -10:03 +2132: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: fetch updates remote-tracking status without changing files -10:03 +2133: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: follows renames, compares complete versions, and restores one file -10:04 +2134: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: compares a merge commit with its first parent -10:04 +2135: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: switch treats an option-like branch name as an operand -10:05 +2136: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff and commit details preserve C-quoted UTF-8 paths -10:05 +2137: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: pushSetUpstream does not broaden an option-like branch to --all -10:05 +2138: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: detects conflicted files in a temporary Git repository -10:06 +2139: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status does not run a repository-configured filesystem monitor -10:06 +2140: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff APIs do not run a repository-configured textconv -10:07 +2141: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: commit details do not run a repository-configured textconv -10:07 +2142: loading /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart -10:08 +2142: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner closes child stdin so commands waiting for EOF can finish -10:08 +2143: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates commands that exceed the combined output limit -10:08 +2144: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: normal gateway commands always receive a finite timeout -10:08 +2145: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: gateway classifies a missing commit author identity -10:08 +2146: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap packages the Linux process-group launcher -10:08 +2147: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap Git uses bundled helpers, templates, and SSH -10:08 +2148: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap launcher never falls back to the confined host setsid -10:08 +2149: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves process launcher failures -10:08 +2150: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves a failed version probe result -10:08 +2151: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator reports not found for a genuinely missing command -10:08 +2152: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates descendant processes when a command times out -10:10 +2153: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: timeout covers descendants that outlive the direct child and hold stdio -10:11 +2154: loading /home/albert/busystack/busymark/test/src/git/git_widget_test.dart -10:12 +2154: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: hunk range text hides raw unified diff markers -10:12 +2155: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes are grouped correctly -10:13 +2156: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file checkboxes select files for commit -10:13 +2157: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: a path with staged and unstaged changes appears in both groups -10:14 +2158: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AD path shows staged addition and unstaged deletion without open action -10:14 +2159: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: staged rename preserves both paths and workspace scope -10:14 +2160: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: rename paths follow the selected Git status column -10:14 +2161: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit panel reports staged count and unsaved editor state -10:14 +2162: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message uses the grouped multiline form surface -10:14 +2163: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft is a secondary button immediately before Commit -10:15 +2164: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft replaces text, trims it, and moves the cursor -10:15 +2165: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history requires an active Markdown file -10:15 +2166: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file action menu does not contain commit selection actions -10:15 +2167: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untracked file menu uses an explicit delete action -10:15 +2168: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: unsupported untracked files remain stageable but cannot open -10:15 +2169: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit section colors files by Git status -10:16 +2170: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes view commit panel commits staged files with message -10:16 +2171: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit remains disabled without staged files -10:16 +2172: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: multiline commit message is retained and committed verbatim -10:16 +2173: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: failed commit preserves the commit message -10:16 +2174: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: committing disables actions and retains text until success -10:16 +2175: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message clears when repository or workspace changes -10:16 +2176: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: conflict group is visible -10:17 +2177: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: Git unavailable empty state is shown -10:17 +2178: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untrusted workspace shows repository trust prompt -10:17 +2179: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view shows no repository sync strip when clean -10:17 +2180: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not show branch dropdown -10:17 +2181: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not describe branch sync state -10:17 +2182: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history keeps comparison controls out of the sidebar -10:17 +2183: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history file rows show selected file diff -10:17 +2184: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history reset requires an explicit reset mode -10:17 +2185: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: dirty editor banner appears in diff viewer -10:17 +2186: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff hides duplicate file header but keeps open action -10:17 +2187: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action requires an explicit working-tree target -10:17 +2188: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action uses the explicit current path -10:17 +2189: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff keeps rename paths visible -10:17 +2190: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer renders patch rows with shared source view -10:18 +2191: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff can hide hunk headers and file action -10:18 +2192: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source uses full file snapshot when available -10:18 +2193: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: deleted diff shows the complete removed file snapshot -10:18 +2194: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer scrolls to the first source change on open -10:18 +2195: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source rows use configured editor font size -10:18 +2196: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff context lines show old and new number columns -10:18 +2197: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff line numbers use source gutter geometry -10:18 +2198: loading /home/albert/busystack/busymark/test/src/git/git_controller_test.dart -10:19 +2198: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: diff open target follows the current working-tree context -10:19 +2199: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: refreshes after workspace attach -10:20 +2200: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: does not expose repository Git for a single Markdown file -10:20 +2201: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust-required gateway does not inspect workspace before trust -10:20 +2202: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clearing trust immediately revokes repository access -10:20 +2203: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: status failure after trust retains the detected repository -10:20 +2204: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust is scoped to the attached workspace -10:20 +2205: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: Git executes with the canonical path that was trusted -10:20 +2206: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stage and unstage update state -10:20 +2207: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: loads only the selected change comparison and reconciles after stage -10:20 +2208: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: routes untracked selections to the untracked comparison -10:20 +2209: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: staged rename comparison preserves the original path -10:20 +2210: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: rollback forwards every validated rename path -10:20 +2211: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reactivates an open change comparison tab -10:20 +2212: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks empty message -10:20 +2213: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks when no files are staged -10:20 +2214: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: configures author identity through the active repository -10:20 +2215: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: AI staged-diff fingerprint rejects obsolete commit context -10:20 +2216: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: branch switch requires clean BusyMark editor state -10:20 +2217: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the active editor has unsaved content -10:20 +2218: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the current file is staged -10:20 +2219: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore protects a repository-relative file against the repository root -10:20 +2220: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset uses the selected commit and mode -10:20 +2221: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset is blocked by unsaved editor content -10:20 +2222: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: fetch refreshes repository status -10:20 +2223: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reports Git unavailable state -10:20 +2224: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stores operation failure state -10:20 +2225: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: exposes conflict state -10:20 +2226: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clears previous workspace Git state immediately on attach -10:20 +2227: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale refresh results after workspace switch -10:20 +2228: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: cancels set-upstream push when the workspace changes during remote lookup -10:20 +2229: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale history after a workspace switch -10:20 +2230: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: history tab reloads project history after workspace switch -10:20 +2231: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: current file history scopes selected commit details to the file -10:20 +2232: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file history switches between commit and working-tree comparisons -10:20 +2233: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history loads selected commit details without a file scope -10:20 +2234: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project commit details display the first changed file by default -10:20 +2235: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: selected commit file opens a project commit diff tab -10:20 +2236: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: closing a commit diff file tab activates the neighboring tab -10:20 +2237: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: deactivating a diff file keeps open diff tabs -10:20 +2238: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file and project history paginate and retain separate selections -10:21 +2239: loading /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart -10:21 +2239: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: Enter submits Git identity and preserves global scope -10:23 +2240: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: failed commit saves identity and retries the same commit -10:24 +2241: loading /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart -10:24 +2241: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses added file -10:24 +2242: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses deleted file -10:24 +2243: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses modified file with line numbers -10:24 +2244: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses renamed file -10:24 +2245: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted UTF-8 paths emitted by Git -10:24 +2246: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted rename metadata emitted by Git -10:24 +2247: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses binary file marker -10:24 +2248: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses multiple hunks -10:24 +2249: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: keeps no newline marker as header line -10:24 +2250: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: tolerates unknown diff header lines -10:25 +2251: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart -10:27 +2251: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export failure dialog exposes actionable detail -10:27 +2252: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export eligibility is limited to active regular Markdown -10:28 +2253: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: workspace PDF export accepts a Writerside module instance -10:28 +2254: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: atomic PDF publication never replaces without confirmation -10:28 +2255: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: service rejects compiler output that is not a PDF -10:28 +2256: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler locator prefers the explicit development override -10:28 +2257: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler cancellation force-stops an unresponsive process -10:29 +2258: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: asset staging accepts passive SVG and rejects external content -10:29 +2259: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: Linux packaging pins and installs the bundled Typst compiler -10:29 +2260: loading /home/albert/busystack/busymark/test/src/source_search_test.dart -10:29 +2260: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex uses Unicode code points and diagnoses zero-length matches -10:29 +2261: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace-style bounded matching stops after the sentinel match -10:29 +2262: /home/albert/busystack/busymark/test/src/source_search_test.dart: search worker terminates a running backtracking expression -10:29 +2263: /home/albert/busystack/busymark/test/src/source_search_test.dart: plain search finds case-insensitive matches by default -10:29 +2264: /home/albert/busystack/busymark/test/src/source_search_test.dart: case-sensitive and whole-word options constrain matches -10:29 +2265: /home/albert/busystack/busymark/test/src/source_search_test.dart: whole-word boundaries recognize Unicode letters and marks -10:29 +2266: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex search and invalid regex are safe -10:29 +2267: /home/albert/busystack/busymark/test/src/source_search_test.dart: navigation tracks current index and wraps -10:29 +2268: /home/albert/busystack/busymark/test/src/source_search_test.dart: matches inside folded content are marked hidden and revealable -10:29 +2269: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace search groups authoring content by file -10:29 +2270: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker cancels stale requests -10:29 +2271: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker bounds transferred high-match results -10:29 +2272: loading /home/albert/busystack/busymark/test/src/source_commands_test.dart -10:31 +2272: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab inserts spaces -10:31 +2273: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab indents selected lines without replacing their text -10:31 +2274: /home/albert/busystack/busymark/test/src/source_commands_test.dart: indent and outdent selected lines -10:31 +2275: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter continues unordered ordered task and blockquote lines -10:31 +2276: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter exits empty list item -10:31 +2277: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts for nested source lines -10:31 +2278: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts beneath each source parent -10:31 +2279: /home/albert/busystack/busymark/test/src/source_commands_test.dart: inline commands toggle bold italic code and links -10:31 +2280: /home/albert/busystack/busymark/test/src/source_commands_test.dart: code fence and image insertion keep source-specific placeholders -10:31 +2281: /home/albert/busystack/busymark/test/src/source_commands_test.dart: block insertion accepts localized default content -10:31 +2282: loading /home/albert/busystack/busymark/test/src/source_highlighter_test.dart -10:33 +2282: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: source highlighting bounds high-match span composition -10:34 +2283: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter colors editor syntax -10:34 +2284: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter formats fenced code -10:35 +2285: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter tracks dynamic fence delimiters -10:35 +2286: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter does not open on indented code -10:35 +2287: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: xml source highlighter colors tags attributes and strings -10:35 +2288: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: plain source highlighter keeps normal editor text color -10:35 +2289: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: controller can keep editable text transparent for custom render -10:35 +2290: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: transparent editing layout matches rendered Markdown layout -10:35 +2291: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions project body lines out of editable text -10:35 +2292: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: rendered folded regions hide collapsed header text -10:35 +2293: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions collapse measured editor height -10:35 +2294: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown editor keeps syntax markers visible while styling content -10:35 +2295: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown tracks dynamic fence delimiters -10:35 +2296: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges nested emphasis inside links -10:35 +2297: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps inline code inside list items -10:35 +2298: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges bold and italic nesting -10:35 +2299: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges links inside blockquotes -10:35 +2300: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps emphasis inside table cells -10:35 +2301: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter recognizes math without damaging code -10:36 +2302: loading /home/albert/busystack/busymark/test/src/html_export_options_test.dart -10:36 +2302: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: TOC and numbering use the semantic hierarchy and preserve anchor IDs -10:38 +2303: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.light emits complete color variables, responsive width and metadata -10:38 +2304: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.dark emits complete color variables, responsive width and metadata -10:38 +2305: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.automatic emits complete color variables, responsive width and metadata -10:38 +2306: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: custom CSS follows generated rules and is captured before processing -10:38 +2307: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF CSS hashes the text seen by the HTML parser -10:38 +2308: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF custom and built-in CSS apply in Chromium -10:45 +2309: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF CSS hashes the text seen by the HTML parser -10:45 +2310: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF custom and built-in CSS apply in Chromium -10:47 +2311: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR CSS hashes the text seen by the HTML parser -10:47 +2312: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR custom and built-in CSS apply in Chromium -10:50 +2313: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: single-file attachments retain download names and reject source data URLs -10:50 +2314: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CSS rejects unsafe URLs, imports, HTML, unreadable and oversized files -10:50 +2315: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: repeated embedded assets are bounded before publication and keep old output -10:50 +2316: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.singleFile packages validated assets without source paths or fetching -10:50 +2317: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.assetsDirectory packages validated assets without source paths or fetching -10:50 +2318: loading /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart -10:53 +2318: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: navigation glyphs resolve for both reading directions -10:53 +2319: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: editing glyphs resolve for both reading directions -10:53 +2320: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git branch glyph does not mirror with reading direction -10:53 +2321: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git action glyphs have native menu equivalents -10:53 +2322: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Arabic and Persian font fallbacks are available in the snap -10:53 +2323: loading /home/albert/busystack/busymark/test/src/source_comparison_test.dart -10:54 +2323: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: keeps separated edits as exact separate changes -10:54 +2324: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: handles repeated lines without losing exact offsets -10:54 +2325: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: refines Unicode intraline ranges on UTF-16 boundaries -10:54 +2326: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: distinguishes whitespace, final newline, empty, and XML changes -10:54 +2327: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: labels an unanchored expensive comparison as simplified -10:54 +2328: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: version identity detects stale comparison inputs -10:54 +2329: loading /home/albert/busystack/busymark/test/src/writerside_project_test.dart -10:57 +2329: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers modules, indexes symbols, and resolves origin references -10:57 +2330: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under build -10:57 +2331: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under a hidden directory -10:57 +2332: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: module discovery hard-excludes VCS metadata directories -10:57 +2333: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic ownership is project-wide and prefers the nested module -10:57 +2334: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace promotes a parent directory to a multi-module project -10:58 +2335: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic symbols cannot be renamed independently of their files -10:58 +2336: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace module and instance selection changes active context -10:58 +2337: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse overlays indexed symbols and preserves unrelated diagnostics -10:58 +2338: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of variables updates completion and resolution without reopening -10:58 +2339: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of an instance tree updates active project context -10:58 +2340: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: BusyMark matches the official builder semantic snapshot for the fixture -10:58 +2341: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: conformance fixture preserves source and resolves semantic content -10:58 +2342: loading /home/albert/busystack/busymark/test/src/math_renderer_test.dart -10:59 +2342: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: renders multiple expressions in one batch and isolates failure -11:00 +2343: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: coalesces a large page, caches successes, and rebases local IDs -11:00 +2344: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: deduplicates identical formulas pending in the same batch -11:00 +2345: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: discards an obsolete block revision -11:00 +2346: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: cancels WebKit work after a sole request is superseded -11:00 +2347: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: maps timeout and unavailable hosts to local math failures -11:00 +2348: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rejects oversized input before invoking WebKit -11:00 +2349: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: extracts baseline style and preserves vector-safe MathJax SVG -11:00 +2350: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: resolves currentColor without flattening explicit SVG colors -11:00 +2351: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rebases wide MathJax coordinates before secure normalization -11:00 +2352: loading /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart -11:04 +2352: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: stages vector/raster assets, maps OpenAPI, and preserves failed source -11:04 +2353: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: enforces the export block count without failing the document -11:04 +2354: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: loads a Writerside referenced diagram before PDF rendering -11:04 +2355: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: static OpenAPI export contains selectable reference sections -11:04 +2356: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: Typst exports generated vector/raster assets and falls back on failure -11:04 +2357: loading /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart -11:05 +2357: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: parses every GTK 3 decoration token in physical order -11:05 +2358: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: ignores unknown controls and actions safely -11:05 +2359: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: loads preferences and delegates the narrowly scoped lower action -11:05 +2360: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: window preference values have stable equality -11:05 +2361: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: null decoration layout uses the documented GTK 3 default -11:05 +2362: loading /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart -11:08 +2362: /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart: release smoke report path requires an explicit nonempty argument -11:08 +2363: loading /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart -11:12 +2363: /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart: spelling release smoke requires an explicit guarded report path -11:12 +2364: loading /home/albert/busystack/busymark/test/src/system_accent_test.dart -11:14 +2364: /home/albert/busystack/busymark/test/src/system_accent_test.dart: uses the native Yaru orange accent as the offline fallback -11:14 +2365: /home/albert/busystack/busymark/test/src/system_accent_test.dart: keeps exact RGB portal accent color values authoritative -11:14 +2366: /home/albert/busystack/busymark/test/src/system_accent_test.dart: maps Ubuntu accent names when RGB portal value is unavailable -11:14 +2367: /home/albert/busystack/busymark/test/src/system_accent_test.dart: falls back to RGB when the Ubuntu accent is unavailable -11:14 +2368: /home/albert/busystack/busymark/test/src/system_accent_test.dart: Yaru accent wins over a different generic portal RGB -11:14 +2369: /home/albert/busystack/busymark/test/src/system_accent_test.dart: a Yaru accent signal remains authoritative over generic RGB -11:14 +2370: /home/albert/busystack/busymark/test/src/system_accent_test.dart: an unavailable named accent releases the current generic RGB -11:14 +2371: /home/albert/busystack/busymark/test/src/system_accent_test.dart: portal subscribes before both reads and retains changes during reads -11:14 +2372: /home/albert/busystack/busymark/test/src/system_accent_test.dart: missing portal keys, malformed signals, cancellation and resubscription -11:14 +2373: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic portal initialization cannot overwrite a newer generic change -11:14 +2374: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=true; unavailability selects current portal -11:14 +2375: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=false; unavailability selects current portal -11:14 +2376: /home/albert/busystack/busymark/test/src/system_accent_test.dart: source errors remain independent and healthy native updates continue -11:14 +2377: /home/albert/busystack/busymark/test/src/system_accent_test.dart: startup changes supersede native snapshots, including unavailable changes -11:14 +2378: /home/albert/busystack/busymark/test/src/system_accent_test.dart: disposal completes pending startup and cancels each owned source once -11:14 +2379: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid GTK releases startup while portal reads stay pending -11:14 +2380: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic signal cannot resolve startup before pending named read -11:15 +2381: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid named portal releases startup without pending RGB -11:15 +2382: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending GTK blocks ready portal until GTK arrives before deadline -11:15 +2383: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on unavailable -11:15 +2384: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on failure -11:15 +2385: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on deadline -11:15 +2386: /home/albert/busystack/busymark/test/src/system_accent_test.dart: all silent sources time out to orange and late sources recover -11:15 +2387: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending initialization disposal cancels timers and portal session once -11:15 +2388: loading /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart -11:17 +2388: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=false section order and native links -11:18 +2389: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=true section order and native links -11:18 +2390: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=false section order and native links -11:19 +2391: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=true section order and native links -11:19 +2392: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=false section order and native links -11:19 +2393: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=true section order and native links -11:19 +2394: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=false section order and native links -11:19 +2395: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=true section order and native links -11:19 +2396: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: multipage native outline ends before any body paragraphs; links and page references stay correct -11:20 +2397: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=bottomCenter -11:20 +2398: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=off -11:20 +2399: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=bottomCenter -11:20 +2400: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=off -11:20 +2401: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif portrait margins -11:21 +2402: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif landscape margins -11:21 +2403: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif portrait margins -11:21 +2404: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif landscape margins -11:21 +2405: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: request defaults come from source metadata and native outline title stays localized -11:22 +2406: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: an oversized cover fails clearly and leaves the existing PDF untouched -11:22 +2407: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in sansSerif -11:22 +2408: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in serif -11:22 +2409: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+a0 fails without replacing the PDF -11:23 +2410: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+2060 fails without replacing the PDF -11:23 +2411: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within A4 cover bounds or fails without replacing the PDF -11:23 +2412: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within A4 cover bounds or fails without replacing the PDF -11:23 +2413: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within A4 cover bounds or fails without replacing the PDF -11:24 +2414: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within A4 cover bounds or fails without replacing the PDF -11:24 +2415: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within A4 cover bounds or fails without replacing the PDF -11:24 +2416: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within A4 cover bounds or fails without replacing the PDF -11:24 +2417: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within narrow custom cover bounds or fails without replacing the PDF -11:24 +2418: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within narrow custom cover bounds or fails without replacing the PDF -11:25 +2419: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within narrow custom cover bounds or fails without replacing the PDF -11:25 +2420: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within narrow custom cover bounds or fails without replacing the PDF -11:25 +2421: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within narrow custom cover bounds or fails without replacing the PDF -11:25 +2422: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within narrow custom cover bounds or fails without replacing the PDF -11:25 +2423: loading /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart -11:27 +2423: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: workspace spelling UI has no obsolete floating or Material chooser -11:27 +2424: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Writerside nested TOC and comment retain rich spelling through correction -11:32 +2425: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich image review preserves authored source through undo and redo -11:34 +2426: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested code image beside math through undo and redo -11:37 +2427: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested address image beside math through undo and redo -11:39 +2428: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Ctrl+N typing paints live spelling targets and corrects with undo -11:41 +2429: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: confirmed spelling underline survives continued typing -11:42 +2430: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo café - -wrld - -11:45 +2431: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo -world - -wrld - -11:47 +2432: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: | helo café | -| --- | -| hello | - -wrld - -11:50 +2433: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in editor -11:51 +2434: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in split -11:51 +2435: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: language-required state uses compact document status instead of a banner -11:53 +2436: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: general Markdown fixture finishes automatic rich spelling -11:58 +2437: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in editor -11:59 +2438: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in source -12:00 +2439: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new rich document checks spelling after choosing its language -12:01 +2440: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new source document checks spelling after choosing its language -12:02 +2441: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in editor mode -12:03 +2442: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in source mode -12:04 +2443: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in preview mode -12:04 +2444: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in split mode -12:05 +2445: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: spelling-off status remains an actionable language control -12:07 +2446: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: status initializes the chooser when automatic spelling is off -12:08 +2447: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: banner installs the required dictionary and then conceals -12:10 +2448: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed banner installation keeps the unresolved state -12:11 +2449: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: routine checking does not create persistent editor chrome -12:11 +2450: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic spelling failure is visible in the compact banner -12:12 +2451: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic incomplete projection is visible in the compact banner -12:13 +2452: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: native spelling submenu applies immediate language choices -12:14 +2453: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: cancelling document dictionary install preserves override -12:15 +2454: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: document language changes only after dictionary installation -12:17 +2455: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed document dictionary install preserves override -12:18 +2456: loading /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart -12:20 +2456: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: native fragment preserves formatting and structured blocks through JSON -12:21 +2457: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: single rich paragraphs preserve list descendants through source -12:21 +2458: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: fragment rejects invalid versions, ranges, kinds, and excessive nesting -12:21 +2459: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: relative links are rebased for another document -12:21 +2460: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: inline images retain their source media path between projects -12:21 +2461: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Writerside structure survives the fragment and insertion -12:21 +2462: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: styled table-cell insertion preserves emphasis and table structure -12:21 +2463: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard service serializes writes and reads the latest result -12:21 +2464: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard HTML carries headings, emphasis, tasks, tables, and code -12:21 +2465: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: external HTML blockquotes survive Editor serialization -12:21 +2466: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard fragment serializes its selected structure as Markdown -12:21 +2467: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: HTML normalization preserves supported CSS and checkbox state safely -12:21 +2468: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=false) -12:23 +2469: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=true) -12:23 +2470: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix < survives Enter, source reload and label edit -12:23 +2471: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix *< survives Enter, source reload and label edit -12:24 +2472: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix * survives Enter, source reload and label edit -12:24 +2473: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: © -12:24 +2474: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: & -12:24 +2475: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: &* -12:25 +2476: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=false) -12:25 +2477: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=true) -12:25 +2478: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard pasted URL retains live link coverage through split, Backspace and suffix formatting -12:25 +2479: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard fresh Editor restores system clipboard formatting and undo -12:26 +2480: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor pastes a web layout table as a complete document -12:26 +2481: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete heading list and code blocks retain structure at every paragraph position -12:27 +2482: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete blocks in list items preserve descendants and undo tree -12:29 +2483: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard single rich paragraph field replacement preserves every list subtree -12:30 +2484: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste keeps the committed caret and typing position -12:30 +2485: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard rich paste in math fields uses source coordinates -12:31 +2486: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste returns the committed block caret -12:31 +2487: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste preserves list descendants through Undo and Redo -12:31 +2488: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste persists intentional whitespace through history -12:31 +2489: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document paste preserves whitespace and heading replacement scope -12:32 +2490: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste restores table-cell focus and committed caret -12:32 +2491: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history multi-paragraph paste focuses the committed last paragraph -12:32 +2492: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copy all does not duplicate nested list children -12:33 +2493: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document copy preserves a structured blockquote -12:33 +2494: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard right-click opens the menu for a whole-document selection -12:33 +2495: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image-only clipboard context menu offers only normal Paste -12:33 +2496: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Copy Plain Text strips formatting in another Editor -12:34 +2497: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard document selection menu can copy plain text -12:34 +2498: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard partial inline copy keeps formatting inside another paragraph -12:34 +2499: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut transfers formatting before deleting the selection -12:34 +2500: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard malformed native fragment falls back to HTML -12:35 +2501: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML-only clipboard imports into a fresh Editor -12:35 +2502: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML clipboard plain paste inserts only its text -12:35 +2503: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard retained external HTML preserves structure on history paste -12:35 +2504: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard current HTML-only and malformed HTML use ordinary importer fallbacks -12:35 +2505: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard external image history retains the bytes ingested before its dialog -12:39 +2506: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history panel path paste has one editor-owned retention write -12:42 +2507: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copied local video can be pasted from history in Editor -12:43 +2508: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image paste cancellation is terminal and cleans new assets -12:47 +2509: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image picker alternatives stay provisional until acceptance -12:59 +2510: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image finalization failure preserves the inserted reference and file -13:00 +2511: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard native and history image filesystem failures are handled outcomes -13:00 +2512: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain history paste replaces a document selection ending at a non-field block -13:00 +2513: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image history follows table and multi-block destinations -13:03 +2514: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Ctrl+Shift+V pastes only interoperable plain text -13:03 +2515: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste never probes or ingests an existing image path -13:04 +2516: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard failed clipboard write leaves cut selection intact -13:04 +2517: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste does not edit a destination changed during the read -13:04 +2518: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor paste preserves composition before and during reads -13:04 +2519: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard table-cell paste shortcut is consumed during composition -13:04 +2520: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard composition starting during image ingestion invalidates and cleans paste -13:05 +2521: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut does not delete a selection changed during the write -13:05 +2522: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste is cancelled when the destination Editor is replaced -13:05 +2523: loading /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart -13:07 +2523: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed light surface palette -13:08 +2524: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed dark surface palette -13:08 +2525: loading /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart -13:11 +2525: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title edit preserves the resolved topic owner across modules -13:11 +2526: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ") -13:12 +2527: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ") -13:12 +2528: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ') -13:12 +2529: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ') -13:12 +2530: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ") -13:12 +2531: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ") -13:12 +2532: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ') -13:13 +2533: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ') -13:13 +2534: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: normalized title identity still rejects changed content and raw matching stays exact -13:13 +2535: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects missing attribute ranges before publication -13:13 +2536: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects corrupt attribute ranges before publication -13:13 +2537: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title publication rejects duplicate attributes in resulting XML -13:13 +2538: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (") -13:13 +2539: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (') -13:13 +2540: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: instance title save, reopen, unchanged OK, and edit keep one escaping layer -13:15 +2541: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: single-quoted Markdown override reopens decoded and edits without touching example -13:15 +2542: loading /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart -13:17 +2542: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: production provider consumes an older GTK accent without portals -13:17 +2543: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: non-Linux never creates platform listeners -13:17 +2544: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: missing native snapshot uses portal, then native events regain priority -13:17 +2545: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: GTK with silent portals -13:18 +2546: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: named with silent RGB -13:18 +2547: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK before deadline -13:18 +2548: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK at deadline -13:18 +2549: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes valid -13:18 +2550: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes unavailable -13:18 +2551: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named at deadline -13:18 +2552: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: all silent at deadline -13:18 +2553: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: application scope teardown cancels unresolved startup deadlines -13:18 +2554: loading /home/albert/busystack/busymark/test/src/markdown_parser_test.dart -13:19 +2554: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parsed formatting boundaries -13:19 +2555: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping locates partially consumed delimiter runs -13:19 +2556: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping retains escaped collapsed references -13:19 +2557: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping keeps original autolink semantics -13:19 +2558: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping preserves supported autolink variants -13:19 +2559: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parser case folding for references -13:19 +2560: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: ordinary reference parsing retains pinned sharp-S folding behavior -13:19 +2561: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: invalid email-like text cannot orphan a later mapped link -13:19 +2562: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects logical content to container source -13:19 +2563: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: positioned block mapping accepts a trailing empty logical line -13:19 +2564: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping ignores title and code-span source breaks -13:19 +2565: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping keeps each hard-break occurrence range -13:19 +2566: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping matches standalone HTML break layout -13:19 +2567: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects HTML break layout through containers -13:19 +2568: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: HTML break layout mapping preserves soft breaks and literal code -13:19 +2569: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts title, outline, links, images, and code fences -13:20 +2570: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts front matter title -13:20 +2571: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside Markdown title comes from H1, not front matter -13:20 +2572: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside front matter title does not satisfy missing H1 -13:20 +2573: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: parseAsync handles documents above the background threshold -13:20 +2574: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates Unicode heading anchors for supported languages -13:20 +2575: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deduplicates generated heading IDs in source order -13:20 +2576: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates heading IDs from semantic inline text -13:20 +2577: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: canonicalizes valid ATX and setext heading variants -13:20 +2578: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: retains Writerside title when complex list source needs fallback -13:20 +2579: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unresolved links, missing images, and missing alt text -13:20 +2580: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not validate schemed URIs as local references -13:20 +2581: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: resolves home-relative local image references -13:20 +2582: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: derives diagnostic links and images from Markdown AST semantics -13:20 +2583: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: normal Markdown image diagnostics stay within the workspace root -13:20 +2584: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local reference diagnostics allow absolute images but reject other escapes -13:20 +2585: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: cross-linked Markdown anchor validation does not recurse forever -13:20 +2586: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation stays inside the workspace root -13:20 +2587: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read unsupported anchor targets -13:20 +2588: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read oversized Markdown targets -13:20 +2589: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unsafe raw HTML -13:20 +2590: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe raw HTML does not produce unsafe diagnostics -13:20 +2591: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Markdown headings inside paired raw HTML are not outline headings -13:20 +2592: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML tags produce unsafe diagnostics -13:20 +2593: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML attributes produce unsafe diagnostics -13:20 +2594: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML URLs produce unsafe diagnostics -13:20 +2595: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deeply nested raw HTML produces unsafe diagnostic -13:20 +2596: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe HTML tags do not become Writerside XML blocks -13:20 +2597: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts Writerside Markdown XML blocks and variables -13:20 +2598: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: emits deterministic Markdown accessibility diagnostics -13:20 +2599: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not report populated table headers as empty -13:20 +2600: loading /home/albert/busystack/busymark/test/src/feedback_submission_test.dart -13:22 +2600: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator requires category and enforces subject and message bounds -13:22 +2601: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts inclusive subject and message boundaries -13:22 +2602: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects oversized fields and invalid optional email -13:22 +2603: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator counts Unicode code points at subject and message boundaries -13:22 +2604: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts practical valid email syntax -13:22 +2605: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects malformed email syntax and length boundaries -13:22 +2606: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes required metadata and omits unapproved details -13:22 +2607: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes only explicitly approved technical details -13:22 +2608: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission uses every declared category wire value -13:22 +2609: loading /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart -13:24 +2609: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter owns application chrome; native bridge carries no split geometry -13:24 +2610: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Workspace, Welcome and Settings use the shared full-height frame -13:24 +2611: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native clipboard, menus, Writerside media and rendering hosts remain registered -13:24 +2612: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Linux desktop identity uses the standard Snap launcher mapping -13:24 +2613: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: strict Snap keeps the GTK SVG loader ABI-aligned with GNOME -13:24 +2614: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder stages bundled Git tools -13:24 +2615: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local repack replaces clean-snap font links with new bundle fonts -13:24 +2616: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: confined dependency checks reject missing and wrong resolutions -13:25 +2617: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap reuses verified platform libraries and retains private tools -13:25 +2618: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder uses the project Flutter toolchain -13:25 +2619: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snapcraft pins the same Flutter release as the project -13:25 +2620: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder keeps compiler output off the system tmpfs -13:25 +2621: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter content menus use native GTK popup menu semantics -13:25 +2622: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native content menus clean up direct GTK popup sessions -13:25 +2623: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap packaging hooks consolidate resources and keep required fixes -13:25 +2624: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native GTK theme follows brightness without replacing a valid user theme -13:25 +2625: loading /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart -13:26 +2625: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: valid native fragment wins over HTML and text -13:26 +2626: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: malformed native fragment falls through to valid HTML -13:26 +2627: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: unusable HTML falls through to source and plain text -13:26 +2628: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: HTML-only blockquotes are usable through descendant content -13:26 +2629: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: mixed external HTML preserves every block for Editor and Markdown Source -13:26 +2630: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode uses only interoperable text -13:26 +2631: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode rejects source-only and image-only payloads -13:26 +2632: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: whitespace text is valid and empty text is unavailable -13:26 +2633: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: explicit image is first in normal mode -13:26 +2634: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: Editor and Source use their required textual fallback order -13:26 +2635: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: structured source serialization accepts the destination mode -13:26 +2636: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: native inline serialization preserves whitespace without a newline -13:26 +2637: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: table-cell fragment serialization escapes pipes and flattens lines -13:26 +2638: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: local image path detection is safe and rejects altered URI meaning -13:26 +2639: loading /home/albert/busystack/busymark/test/src/uri_utils_test.dart -13:28 +2639: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: external launch policy is an explicit safe-list -13:28 +2640: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: scheme detection remains broader than launch policy -13:28 +2641: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: remote resources only allow http and https -13:28 +2642: loading /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart -13:30 +2642: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger aggregates locally by month and provider -13:30 +2643: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger starts a clean aggregate in a new month -13:30 +2644: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: malformed ledger data is treated as empty, not surfaced -13:30 +2645: loading /home/albert/busystack/busymark/test/src/busymark_design_test.dart -13:31 +2645: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch suppresses state halos and preserves focus borders -13:32 +2646: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in dark -13:32 +2647: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in dark -13:32 +2648: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in light -13:32 +2649: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in light -13:32 +2650: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: disabled switch preserves inherited disabled styling -13:32 +2651: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch row owns its control and activates exactly once -13:32 +2652: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch preserves Yaru drag activation -13:32 +2653: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: radio suppresses state halos and preserves focus borders -13:33 +2654: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in dark -13:33 +2655: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in dark -13:33 +2656: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in light -13:33 +2657: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in light -13:33 +2658: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: informational dialog keeps the close control at the right edge -13:33 +2659: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: Split Preview stays fluid without copying Source-only chrome -13:33 +2660: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: document frame centers wide content and honors physical safe edges -13:33 +2661: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: toolbar clearance is applied only to the toolbar edge -13:33 +2662: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar header and list compose the shared vertical gap -13:33 +2663: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header controls delegate geometry and elevation to Yaru -13:33 +2664: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dark header menu delegates its tooltip to IconButton -13:33 +2665: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: settings dropdowns use the framework tooltip -13:33 +2666: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: desktop tooltips use one explicit natural-width geometry -13:34 +2667: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: popup menu rows show shortcuts without redundant hover tooltips -13:34 +2668: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup sends shortcuts and separators to GTK and maps selection -13:34 +2669: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: colored popup icons stay on the native menu path -13:34 +2670: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup preserves asynchronous menu loading -13:34 +2671: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic theme retains Yaru geometry, typography, and interaction -13:34 +2672: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: accent controls use the native Yaru foreground and fill roles -13:34 +2673: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic surfaces use one modern neutral Linux role ladder -13:34 +2674: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: equal-choice segmented selection stays neutral -13:34 +2675: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped cards use native boxed-list depth and roles -13:34 +2676: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped list headings use the native semantic heading style -13:34 +2677: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner uses semantic surfaces in light and dark -13:34 +2678: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner animates its mounted layout height -13:34 +2679: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner reveal honors reduced motion -13:34 +2680: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog grouped cards resolve the contextual native layer -13:34 +2681: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native dark hover role -13:34 +2682: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native light hover role -13:34 +2683: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped row subtitles use semantic native text roles -13:34 +2684: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog roles and popup selectors use real themed buttons -13:34 +2685: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in dark -13:35 +2686: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in light -13:36 +2687: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog actions wrap at narrow localized text widths -13:36 +2688: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: action rows use semantic destructive foreground in light and dark themes -13:36 +2689: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: shared text-entry group delegates fields to the framework -13:36 +2690: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry uses the native row-owned form surface -13:36 +2691: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry forwards readOnly without disabling input -13:36 +2692: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic standard icon button delegates to FilledButton.icon -13:36 +2693: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar surface owns one directional semantic boundary -13:36 +2694: loading /home/albert/busystack/busymark/test/src/source_document_test.dart -13:37 +2694: /home/albert/busystack/busymark/test/src/source_document_test.dart: empty document mapping is stable -13:37 +2695: /home/albert/busystack/busymark/test/src/source_document_test.dart: no-fold mapping preserves offsets and ranges -13:37 +2696: /home/albert/busystack/busymark/test/src/source_document_test.dart: single fold projects visible text and maps offsets -13:37 +2697: /home/albert/busystack/busymark/test/src/source_document_test.dart: fold-boundary selection mapping preserves direction, not coverage -13:37 +2698: /home/albert/busystack/busymark/test/src/source_document_test.dart: multiple adjacent and overlapping ranges normalize safely -13:37 +2699: /home/albert/busystack/busymark/test/src/source_document_test.dart: full and visible ranges report hidden clipping -13:37 +2700: /home/albert/busystack/busymark/test/src/source_document_test.dart: CRLF line endings keep line starts and projection correct -13:37 +2701: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits before and after folds preserve unrelated folds -13:37 +2702: /home/albert/busystack/busymark/test/src/source_document_test.dart: full editing values preserve composing through folded projection -13:37 +2703: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits incrementally retain unaffected line entries -13:37 +2704: /home/albert/busystack/busymark/test/src/source_document_test.dart: incremental line indexes match full indexes across line-break edits -13:37 +2705: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edit intersecting a fold unfolds only affected region -13:37 +2706: /home/albert/busystack/busymark/test/src/source_document_test.dart: collapsed-boundary insertion preserves hidden folded content -13:37 +2707: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible insertions before and after a fold keep hidden text -13:37 +2708: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible deletions near a fold keep hidden text -13:37 +2709: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible replacement spanning a fold replaces the hidden range -13:37 +2710: loading /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart -13:38 +2710: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: uses each heading level effective text size for inline math -13:40 +2711: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: custom typography and four margins control actual math jobs -13:40 +2712: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: prepares inline and display math as deterministic vector assets -13:40 +2713: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: footnote inline and display math retain surrounding semantics -13:40 +2714: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst compiles footnote math through the math renderer -13:40 +2715: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst keeps MathJax SVG inline and exports failed math visibly -13:40 +2716: loading /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart -13:41 +2716: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: tabs synchronize and support arrow, Home and End keys -13:42 +2717: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table sorting is numeric and excludes disabled columns -13:42 +2718: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Markdown table keeps empty columns equal width -13:42 +2719: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Writerside table preserves declared column width -13:42 +2720: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table spans preserve geometry and sticky header position -13:42 +2721: loading /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart -13:43 +2721: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: records balance a two-line source preview with visible metadata -13:44 +2722: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: large records use a short preview and do not create a tooltip -13:45 +2723: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: actions menu is right of search and owns refresh and clear -13:45 +2724: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: keyboard navigation keeps the selected history entry visible -13:46 +2725: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: Delete edits the focused search without removing history -13:46 +2726: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: unsupported payload disables paste for the destination -13:46 +2727: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: double-clicking a shared history row pastes the item -13:46 +2728: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain-text paste remains enabled when rich paste is unavailable -13:46 +2729: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: source-only payload has no plain-text action -13:46 +2730: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: image exposes plain paste only with real text -13:47 +2731: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed insertion reports visible feedback -13:47 +2732: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: cancelled insertion is terminal without an error toast -13:47 +2733: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: current external HTML is transient until panel insertion and remains reusable -13:47 +2734: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed current-item paste is not retained and plain paste stays explicit -13:47 +2735: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: successful external paste retains after the panel is disposed -13:47 +2736: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain source and Editor copies stay text and de-duplicate -13:47 +2737: loading /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart -13:49 +2737: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: loads version and build number from package metadata -13:49 +2738: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: uses zero when package build metadata is absent -13:49 +2739: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: rejects missing package version metadata -13:49 +2740: loading /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart -13:49 +2740: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates XML child topic and registers it under parent TOC node -13:50 +2741: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates Unicode Markdown and XML topic filenames -13:50 +2742: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source without a root ID before publication -13:50 +2743: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source whose root ID differs from filename -13:50 +2744: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: accepts custom XML source whose root ID matches filename -13:50 +2745: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: requires a reference for every non-root placement -13:50 +2746: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a child under an exact topic-less TOC node path -13:50 +2747: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: first real topic under an empty group becomes the home page -13:50 +2748: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: exact TOC path disambiguates sibling insertion -13:50 +2749: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects an exact TOC path whose expected node has moved -13:50 +2750: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: invalid exact TOC path does not fall back to topic reference -13:50 +2751: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects duplicate topic IDs before writing -13:50 +2752: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a missing nested topics directory -13:50 +2753: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects a symlinked topics directory without writing outside -13:50 +2754: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: does not overwrite a concurrently changed tree or leave an orphan topic -13:50 +2755: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rollback preserves a created topic changed by another writer -13:50 +2756: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: atomic tree publication preserves its POSIX mode -13:50 +2757: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID with a different extension -13:50 +2758: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in a different directory -13:51 +2759: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in another configured root -13:51 +2760: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation allows an unrelated concurrent topic ID -13:51 +2761: loading /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart -13:51 +2761: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.rtl -13:55 +2762: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.ltr -13:57 +2763: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation uses native master-detail controls and filters -13:58 +2764: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation opens both template editor entry points -14:02 +2765: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: catalog failure keeps BusyMark status and retry controls -14:03 +2766: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files editor stages new content, cancels and persists on OK -14:06 +2767: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: source surface exposes its label and focus boundary -14:07 +2768: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: New toolbar command stages an editable draft and Cancel drops it -14:09 +2769: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: custom XML template cannot publish a mismatching root ID -14:11 +2770: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: save-as-template appears under Custom; edit, duplicate and delete preserve cancel -14:13 +2771: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: stale settings reject OK and retain draft for recovery -14:14 +2772: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Internal reset is staged, cancellable, and publishable -14:17 +2773: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: true) -14:19 +2774: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: false) -14:20 +2775: loading /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart -14:21 +2775: /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart: tree exact reveal unfolds and line movement is one undoable full-source edit -14:22 +2776: loading /home/albert/busystack/busymark/test/src/math_parser_test.dart -14:23 +2776: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses several dollar formulas as semantic inline math -14:23 +2777: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses the GitHub dollar-backtick form without delimiters -14:23 +2778: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses single-line and multiline display math as blocks -14:23 +2779: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math scanner stays aligned around every neighboring block kind -14:23 +2780: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math and Writerside tex fences follow document compatibility -14:23 +2781: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math is inline and remains source-preserving -14:23 +2782: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math decodes XML entities but preserves source -14:23 +2783: /home/albert/busystack/busymark/test/src/math_parser_test.dart: escaped dollars, code, currency, empty and malformed forms stay text -14:23 +2784: /home/albert/busystack/busymark/test/src/math_parser_test.dart: inline math survives list, blockquote, and table structure -14:23 +2785: /home/albert/busystack/busymark/test/src/math_parser_test.dart: CRLF math input and every original form round-trip untouched -14:23 +2786: /home/albert/busystack/busymark/test/src/math_parser_test.dart: preview builder creates first-class inline and display math nodes -14:23 +2787: loading /home/albert/busystack/busymark/test/src/busymark_document_test.dart -14:26 +2787: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hit testing includes shared document surface borders -14:26 +2788: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: document image width resolution is bounded consistently -14:26 +2789: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: package markdown AST imports into BusyDocument core blocks -14:26 +2790: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: linked remote image paragraphs import as editable image blocks -14:26 +2791: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer emits Markdown source for edited semantic blocks -14:26 +2792: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unchanged raw blocks -14:26 +2793: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves safe raw HTML source byte for byte -14:26 +2794: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unsafe raw HTML source while preview remains raw -14:26 +2795: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer patches dirty blocks without canonicalizing unchanged source -14:26 +2796: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve unrelated block instances -14:26 +2797: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve source-only reference definitions -14:26 +2798: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: source-only definitions survive scanner and AST count mismatches -14:26 +2799: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preserved reference definitions still resolve after an edit -14:26 +2800: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve GFM footnote definitions -14:26 +2801: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: containers with nested definitions are source-protected -14:26 +2802: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: scanner mismatches conservatively protect nested definitions -14:26 +2803: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: opaque source IDs cannot collide with semantic heading IDs -14:26 +2804: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full list serialization preserves reference definitions -14:26 +2805: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full serialization omits generated footnote output -14:26 +2806: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: invalid reference-like prose remains a modeled block -14:26 +2807: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large inline-link documents do not create source-only blocks -14:26 +2808: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large adjacent definition sets stay distinct and preserved -14:27 +2809: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: destructive selections reject read-only source endpoints -14:27 +2810: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: list indentation cannot attach content to a protected item -14:27 +2811: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested list text edit updates Markdown source -14:27 +2812: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered list edits preserve nested children -14:27 +2813: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered task edits preserve marker and nested children -14:27 +2814: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested blockquote edit preserves surrounding source -14:27 +2815: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cross-block deletion prunes an emptied blockquote -14:27 +2816: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested inline edit updates Markdown source -14:27 +2817: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested block removal updates Markdown source -14:27 +2818: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser includes setext headings in heading metadata -14:27 +2819: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: live document outline follows top-level generated heading order -14:27 +2820: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: duplicate anchors retain distinct editor block identities -14:27 +2821: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preview and WYSIWYG use the same semantic document -14:27 +2822: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edit updates Markdown source -14:27 +2823: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG empty documents have one editable paragraph -14:27 +2824: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor accepts typing in an empty document -14:28 +2825: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG heading navigation skips across large documents -14:32 +2826: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders a blockquote around its editable text -14:32 +2827: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG uses one quote frame for multiple quote paragraphs -14:32 +2828: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG quote frame focuses its first editable child -14:32 +2829: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inherits RTL indentation inside a blockquote -14:32 +2830: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG keeps a generated leaf blockquote editable -14:33 +2831: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hides a definition-only source and preserves it -14:33 +2832: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor undo and redo restore document edits -14:33 +2833: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor replaces document when active file changes -14:33 +2834: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor applies heading keyboard shortcuts -14:34 +2835: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Ctrl+Shift+- inserts a thematic break -14:34 +2836: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Tab nests eligible list items and Shift+Tab lifts them -14:34 +2837: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG arrow keys move focus between paragraphs -14:34 +2838: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Arrow crosses paragraph boundaries -14:35 +2839: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Shift+Arrow extends into the next paragraph -14:35 +2840: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated arrow keys keep moving between paragraphs -14:35 +2841: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down selection continues character by character in the next paragraph -14:35 +2842: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated Shift+Arrow extends one selection -14:36 +2843: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG horizontal selection continues vertically into the next paragraph -14:36 +2844: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse Shift+Up selection continues left in the previous paragraph -14:36 +2845: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ignores redundant source blank lines -14:36 +2846: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: typing replaces a WYSIWYG selection across paragraphs -14:36 +2847: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: deleting a selected paragraph boundary merges paragraphs -14:36 +2848: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down follows visual lines before paragraphs -14:36 +2849: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Arrow selects whole grapheme clusters -14:36 +2850: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection can copy multiple paragraphs -14:36 +2851: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG click elsewhere clears previous block selection -14:37 +2852: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift click selects text across paragraphs -14:37 +2853: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag extends selection across paragraphs -14:37 +2854: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag from heading end hides native selection -14:37 +2855: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag updates selection on pointer up -14:37 +2856: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag aligns wrapped trailing word highlight -14:38 +2857: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+X cuts block selection -14:38 +2858: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves inline formatting -14:38 +2859: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves whole block formatting -14:38 +2860: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection preserves partial paragraph boundaries -14:38 +2861: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar bold applies to selected paragraphs -14:38 +2862: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar toggle stays vertically aligned when collapsed -14:39 +2863: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar reserves its document edge -14:39 +2864: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: restoring the first block does not duplicate the Editor top inset -14:40 +2865: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: vertical WYSIWYG toolbar is bounded and extends from its edge -14:40 +2866: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar corners remain physical in LTR and RTL -14:40 +2867: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar context menu changes placement and direction when shown or hidden -14:41 +2868: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar list applies to selected paragraphs -14:41 +2869: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders safe HTML blocks and edits raw source -14:41 +2870: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar inserts an HTML block -14:41 +2871: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after the active file changes -14:42 +2872: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after document generation changes -14:42 +2873: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs stop app-level tab navigation shortcuts -14:42 +2874: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs activate the native headerbar barrier -14:42 +2875: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves existing inline formatting -14:42 +2876: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Backspace at block start merges with previous block -14:42 +2877: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+A twice selects all text for deletion -14:42 +2878: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG select-all deletion preserves source-protected definitions -14:42 +2879: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline ranges do not duplicate formatted text -14:42 +2880: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands serialize bold italic and links -14:42 +2881: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG serializes italic nested at the end of bold text -14:42 +2882: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve inline ranges where possible -14:42 +2883: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve empty-alt inline images -14:42 +2884: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG edits preserve escaped literal punctuation semantics -14:42 +2885: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog submits with Enter -14:43 +2886: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when caret is inside it -14:43 +2887: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when its text is selected -14:43 +2888: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline command toggles selected mark without dropping links -14:43 +2889: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline code command serializes selected text -14:43 +2890: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer chooses inline code delimiters that preserve backticks -14:43 +2891: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link title backslashes use standards-safe character references -14:43 +2892: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: inline serialization distinguishes every hard-break run boundary -14:43 +2893: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link titles round-trip decoded punctuation and line endings -14:43 +2894: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table link titles retain multiline values without physical rows -14:43 +2895: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves fenced code delimiters and trailing whitespace -14:43 +2896: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser preserves meaningful trailing fenced-code whitespace -14:43 +2897: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser closes dynamic code fences only with a matching delimiter -14:43 +2898: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser does not treat indented code as a fenced block -14:43 +2899: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands preserve existing sibling formatting -14:43 +2900: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands apply to multiple selected blocks -14:43 +2901: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands apply to multiple selected blocks -14:43 +2902: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG image command serializes a real image block -14:43 +2903: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders Writerside images by basename -14:43 +2904: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders absolute local image paths -14:43 +2905: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders linked remote image blocks -14:43 +2906: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in commonMark -14:43 +2907: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in writersideMarkdown -14:43 +2908: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in gfm -14:43 +2909: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter uses parser URL boundaries without parsing other syntax -14:43 +2910: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter excludes code and keeps explicit equal-label links explicit -14:43 +2911: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: bare URL destinations follow edits and splits while explicit destinations stay authored -14:43 +2912: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: rejoining only extends existing bare URLs and preserves code and explicit links -14:43 +2913: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: structural URL slices update derived destinations and link editing authors an explicit destination -14:43 +2914: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter splits one block into separate Markdown paragraphs -14:43 +2915: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores an empty paragraph represented only by blanks -14:43 +2916: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores trailing blank lines -14:43 +2917: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG does not create blocks for redundant source whitespace -14:43 +2918: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in unordered list creates next item then exits list -14:43 +2919: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in ordered list creates next numbered item -14:43 +2920: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG thematic break inserts after current block -14:43 +2921: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter key creates a new paragraph block -14:44 +2922: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter carries active inline style to next paragraph -14:44 +2923: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter at paragraph end preserves inner bold span -14:44 +2924: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG newline text edit preserves inner bold span -14:44 +2925: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text input newlines become Markdown paragraphs -14:44 +2926: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves an existing hard break -14:44 +2927: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: hard-break toolbar command retains focus and advances caret -14:44 +2928: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: formatting toolbar command retains editor focus and selection -14:44 +2929: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Shift+Enter retains focus and advances past the hard break -14:44 +2930: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line toolbar command round-trips and remains one focused edit -14:44 +2931: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor lazily builds large documents -14:45 +2932: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG task checkbox toggles directly when clicked -14:45 +2933: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands serialize headings and lists -14:45 +2934: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG extended toolbar commands serialize Markdown -14:45 +2935: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line command keeps repeated terminal markers off the text line -14:45 +2936: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table and code language commands serialize Markdown -14:45 +2937: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cell pipes round-trip without shifting columns -14:45 +2938: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table escaping protects pipes inside formatted cell content -14:45 +2939: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table code preserves a backslash immediately before a pipe -14:45 +2940: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table row and column commands serialize Markdown -14:45 +2941: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table dialog validates and synchronizes its size grid -14:46 +2942: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table alignment survives parsing, edits, and structural changes -14:46 +2943: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table column alignment command supports all Markdown alignments -14:46 +2944: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells apply Markdown column alignment -14:46 +2945: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells are formatted and editable -14:46 +2946: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table overlay menus survive structural rebuilds -14:47 +2947: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Tab travels through WYSIWYG table cells and extends the table -14:47 +2948: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG list indent outdent and task toggle commands serialize -14:47 +2949: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation starts a nested list at one -14:47 +2950: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation preserves a top-level start value -14:47 +2951: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation numbers multiple nested siblings -14:47 +2952: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered outdent continues the parent list numbering -14:47 +2953: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts an unordered item to a valid ordered marker -14:47 +2954: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts selected nested items at each list depth -14:47 +2955: loading /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart -14:47 +2955: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: single rich paragraph repairs independently surviving endpoints -14:47 +2956: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: table cells repair independently formatted selection endpoints -14:48 +2957: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion replaces only a heading own prefix at content start -14:48 +2958: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion removes complete ATX and Setext heading syntax -14:48 +2959: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion retains literal paragraph hashes -14:48 +2960: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: whole heading replacement removes every authored marker -14:48 +2961: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: heading insertion at middle and end preserves only the leading heading -14:48 +2962: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequence removes nested heading marker at content start -14:48 +2963: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: external HTML blockquotes remain structured in Source -14:48 +2964: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: HTML break layout stays behind a caret after the semantic break -14:48 +2965: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: caret immediately before an HTML break keeps the break after paste -14:48 +2966: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection crossing an HTML break preserves both outside slices -14:48 +2967: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete inline HTML survives rich link insertion as one fragment -14:48 +2968: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native rich trailing space survives inherited HTML insertion -14:48 +2969: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native incoming edge whitespace survives inherited HTML styles -14:48 +2970: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection replacement retains native whitespace and link titles -14:48 +2971: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: multiple native inline runs retain text styles links and spaces -14:48 +2972: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: rich insertion maps collapsed HTML whitespace as content -14:48 +2973: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through supported raw HTML styles -14:48 +2974: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through a supported raw HTML link -14:48 +2975: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: supported content corpus always plans a rich insertion -14:48 +2976: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: repeated mapped siblings avoid fallback and preserve final paste -14:49 +2977: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete blocks split and preserve enclosing inline contexts -14:49 +2978: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph-only block sequences match Editor merge semantics -14:49 +2979: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block paste preserves independent formatted selection boundaries -14:49 +2980: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured paste spans partial first and last destination blocks -14:49 +2981: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequences retain destination block and container paths -14:49 +2982: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paste output is valid input for a second paste at returned caret -14:49 +2983: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: CRLF blockquote projection retains its authored prefixes -14:49 +2984: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured complete blocks generate only CRLF boundaries -14:49 +2985: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured inline hard breaks use destination CRLF -14:49 +2986: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: mapped and generated structured breaks retain CRLF and caret width -14:49 +2987: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: protected Source context explicitly permits textual fallback -14:49 +2988: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: syntax-only positions explicitly permit textual fallback -14:49 +2989: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: unmappable destination links stop rather than permit fallback -14:49 +2990: loading /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart -14:52 +2990: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: rejects a superseded render even when its engine finishes last -14:52 +2991: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: retains the last successful render after invalid source -14:52 +2992: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: limits concurrency and gives export work queue priority -14:52 +2993: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: reuses a successful content-addressed cache entry -14:52 +2994: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: validates concurrency and returns a typed unavailable result -14:52 +2995: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: bounds last-successful render retention with LRU eviction -14:52 +2996: loading /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart -14:52 +2996: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: source navigation distinguishes repeated references on one line -14:53 +2997: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: explicit synchronization follows installed breadth-first topic matching -14:53 +2998: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edits preserve other instances, content and occurrence -14:53 +2999: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edit changes H1 and preserves front matter title -14:53 +3000: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title round trip preserves ampersands and entity spellings -14:53 +3001: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: unchanged inherited values do not add overrides -14:53 +3002: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: XML title edits escape attributes and expand self-closing root -14:53 +3003: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: clearing overrides removes only the selected instance and occurrence -14:53 +3004: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: before-drop preserves complete subtrees and returns all moved paths -14:53 +3005: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: grouping uses source order and rejects cross-parent selections -14:53 +3006: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: line moves retain CRLF, caret, reversed selection and boundaries -14:53 +3007: loading /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart -14:55 +3007: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: section includes descendants and stops at the next sibling -14:55 +3008: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: move up and down swap complete sibling subtrees -14:55 +3009: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: promote and demote preserve descendant hierarchy -14:55 +3010: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: demote is unavailable when a descendant is already H6 -14:55 +3011: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: level changes preserve and convert Setext headings -14:55 +3012: loading /home/albert/busystack/busymark/test/src/visualization_models_test.dart -14:57 +3012: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization fence classification recognizes canonical names and aliases without changing spelling -14:57 +3013: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: preserves dependency diagnostic source locations -14:57 +3014: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys canonicalizes options and dependency order -14:57 +3015: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates on engine, source, theme, profile, option, and dependency -14:57 +3016: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates entries produced by the previous render pipeline -14:57 +3017: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache round-trips SVG, raster, and structured OpenAPI successes -14:58 +3018: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache does not persist failures and repairs malformed entries -14:58 +3019: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache derives the XDG cache path without changing the environment -14:58 +3020: loading /home/albert/busystack/busymark/test/src/writerside_video_test.dart -14:59 +3020: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside Markdown models video and preserves its exact source -14:59 +3021: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video remains blocked raw HTML outside Writerside Markdown -14:59 +3022: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: multiline Writerside video attributes remain one semantic block -14:59 +3023: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video markup inside an ordinary code fence is not interpreted -14:59 +3024: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside topic parser exposes video attributes -14:59 +3025: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside .topic preview creates a first-class video block -14:59 +3026: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: safe video resolver accepts documented hosts and local media -14:59 +3027: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside module reports invalid and incomplete video sources -14:59 +3028: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: local poster defaults to matching PNG and can be overridden -14:59 +3029: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: hosted video posters resolve from trusted provider sources -14:59 +3030: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Vimeo poster metadata cannot point images to another host -14:59 +3031: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: PDF export carries a first-class linked video poster -14:59 +3032: loading /home/albert/busystack/busymark/test/src/app_router_test.dart -15:03 +3032: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings return targets are explicit and validated -15:03 +3033: /home/albert/busystack/busymark/test/src/app_router_test.dart: opening Settings preserves a validated Settings origin -15:03 +3034: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings page routes are explicit and validated -15:03 +3035: /home/albert/busystack/busymark/test/src/app_router_test.dart: Settings opened from Welcome returns to Welcome with a stale workspace -15:06 +3036: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again -15:07 +3037: loading /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart -15:07 +3037: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: mixed Markdown protects fenced code and CDATA while preserving spans -15:08 +3038: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: lazy defaults respect caller arguments and percent escaping -15:08 +3039: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: empty links use the target title for the selected instance -15:08 +3040: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional chapter content and links follow the selected instance -15:08 +3041: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: malformed markup and unresolved reuse stay visible with diagnostics -15:08 +3042: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: Markdown IDs include whole chapters and retain mixed-content spans -15:08 +3043: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional globals and include arguments override snippet defaults -15:08 +3044: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: links resolve labels, separate anchors and nullable availability -15:08 +3045: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: included code uses its source topic and unsaved source overrides -15:08 +3046: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: summaries stay metadata and starting pages suppress outside content -15:08 +3047: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: configured shortcuts, glossary and binary resources have visible references -15:08 +3048: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: line and symbol selectors reject invalid selections -15:08 +3049: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart -15:09 +3049: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace -15:09 +3050: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret -15:09 +3051: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string -15:09 +3052: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls -15:09 +3053: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback -15:09 +3054: loading /home/albert/busystack/busymark/test/src/status_semantics_test.dart -15:12 +3054: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: status colors stay semantic across accents and brightness -15:13 +3055: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: workspace messages use semantic status roles -15:13 +3056: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: Git failures use window-level toasts -15:13 +3057: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: successful Git operations use window-level toasts -15:13 +3058: loading /home/albert/busystack/busymark/test/src/workspace_service_test.dart -15:14 +3058: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a single Markdown file workspace -15:14 +3059: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: resolves an unindexed sibling document within the workspace -15:14 +3060: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Markdown file from a file URI path -15:14 +3061: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a generic Markdown folder workspace -15:15 +3062: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: canonicalizes a workspace opened through a directory symlink -15:15 +3063: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects a workspace root replaced by a symlink after opening -15:15 +3064: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Writerside module workspace -15:15 +3065: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: untitled Markdown in Writerside reparses, previews, and outlines as CommonMark -15:15 +3066: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: genuine Writerside Markdown topic keeps Writerside semantics -15:15 +3067: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates and opens a Writerside starter project -15:15 +3068: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: reparses and previews Writerside Markdown without generic link validation -15:15 +3069: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a Writerside Markdown topic and registers it in the TOC -15:16 +3070: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: imports Markdown topics into the selected instance and opens the first -15:16 +3071: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Markdown import reloads stale UI inventory before planning -15:16 +3072: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation revalidates module IDs after its candidate is written -15:16 +3073: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a topic in the explicitly selected instance and TOC node -15:16 +3074: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: unparsed topic basename reserves its module-wide topic ID for creation -15:16 +3075: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under build reserves its module-wide ID for creation -15:16 +3076: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under a hidden directory reserves its module-wide ID for creation -15:16 +3077: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: duplicate topic cannot reuse an unparsed topic basename -15:16 +3078: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: template source cannot reuse an unparsed topic basename -15:16 +3079: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation refuses incomplete topic discovery -15:16 +3080: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects topic creation when the configured instance tree is outside the module -15:16 +3081: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename is stale when a new module is discovered -15:16 +3082: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic rename planning rejects incomplete project module discovery -15:16 +3083: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename rejects incomplete module discovery on apply -15:16 +3084: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: project module discovery reports directory listing failure -15:16 +3085: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: ordinary directory creation does not stale a prepared rename -15:16 +3086: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: normalizes portal-style document paths as filesystem paths -15:16 +3087: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText writes content and returns the saved file snapshot -15:17 +3088: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: file change detection ignores timestamp-only changes -15:17 +3089: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText writes a missing file and returns its snapshot -15:17 +3090: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText refuses an existing file without changing it -15:17 +3091: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not replace a file arriving before publication -15:17 +3092: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not write inside a directory arriving before publication -15:17 +3093: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveTextReplacingPath replaces a final symlink without following it -15:17 +3094: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement cannot overwrite a post-validation writer -15:17 +3095: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement validates a displaced relative symlink -15:17 +3096: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement detects a changed relative symlink target -15:17 +3097: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation directory -15:17 +3098: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation FIFO without reading -15:17 +3099: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText follows file symlinks and preserves target permissions -15:17 +3100: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: createFile rejects a directory reached through an intermediate symlink -15:17 +3101: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: renameEntity rejects a source reached through an intermediate symlink -15:17 +3102: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: moveEntity rejects a target reached through an intermediate symlink -15:17 +3103: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity rejects a directory reached through an intermediate symlink -15:17 +3104: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity removes a final symlink without deleting its target -15:17 +3105: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: generic deletion rejects topics and containing folders in a non-active module -15:17 +3106: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: an unparsed topic cannot bypass generic deletion -15:17 +3107: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: missing nested mutation paths keep domain-specific errors -15:17 +3108: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince treats deleted files as changed -15:17 +3109: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince detects content changes with unchanged modified time -15:17 +3110: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists all content except version-control metadata -15:17 +3111: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists unsupported legacy Markdown extensions -15:17 +3112: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: limited folder scan prefers shallow siblings before deep subtree -15:17 +3113: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: invalid UTF-8 Markdown does not fail the whole workspace -15:17 +3114: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Markdown files are listed but not parsed automatically -15:17 +3115: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Writerside topics are listed but not parsed automatically -15:17 +3116: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Writerside topic loading honors the document limit -15:17 +3117: loading /home/albert/busystack/busymark/test/src/ai_policy_test.dart -15:20 +3117: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: AI editing is enabled only for Markdown document kinds -15:20 +3118: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation accepts a prose-only replacement in the complete document -15:20 +3119: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation rejects swapped URL associations even when the URL set is equal -15:20 +3120: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation full-document validation catches edits made inside protected syntax -15:20 +3121: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects front matter, references, footnotes, tables, HTML and IDs -15:20 +3122: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects list and heading structure -15:20 +3123: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects implicit heading identifiers from prose rewrites -15:20 +3124: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: the prompt contains only the context explicitly selected by the user -15:20 +3125: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: instructions and direct prompts have explicit token budgets -15:20 +3126: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: token estimates are independent from UTF-8 transport bytes -15:20 +3127: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: generated-output byte limits are independent from provider tokens -15:20 +3128: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context selection target and block context remain independent -15:20 +3129: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context insert-after-block target can send no document context -15:20 +3130: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current block can use complete-document context -15:20 +3131: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current section includes descendants but not its sibling -15:20 +3132: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context complete-document target is explicit -15:20 +3133: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context partial protected selections are rejected instead of expanded -15:20 +3134: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context validation and application use the exact block insertion -15:20 +3135: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: commit proposals require a bounded subject and blank separator -15:20 +3136: loading /home/albert/busystack/busymark/test/src/linux_window_host_test.dart -15:22 +3136: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: dialogs cover application header actions while system Close uses the guarded service -15:23 +3137: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: icon uses its physical GTK side and contributes to the inset -unhandled element ; Picture key: Svg loader -15:23 +3138: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fallback application menu is absent while titlebar menu still works -15:23 +3139: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: window-state stream survives unrelated host rebuilds -15:23 +3140: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: normal maximize decoration has matching behavior -15:23 +3141: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: maximized maximize decoration has matching behavior -15:24 +3142: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen maximize decoration has matching behavior -15:24 +3143: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen titlebar double-click still restores -15:24 +3144: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: the document title itself handles titlebar double-click -15:24 +3145: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: live GTK layout removal retains each decoration identity -15:24 +3146: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=false) -15:24 +3147: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=true) -15:24 +3148: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK reduced motion settles window-control hover immediately -15:24 +3149: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion settles an in-flight window icon morph -15:24 +3150: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabled motion retains the normal active-window fade -15:24 +3151: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: Flutter reduced motion settles the host fade immediately -15:24 +3152: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK animation policy reaches the actual host overlay -15:24 +3153: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion stops a fade and later fades can run -15:24 +3154: loading /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart -15:25 +3154: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: source editor overlays use shared semantic surfaces -15:25 +3155: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: WYSIWYG content actions and table menus use shared controls -15:25 +3156: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: problems dialog delegates its list surface to shared grouping -15:25 +3157: loading /home/albert/busystack/busymark/test/src/writerside_document_test.dart -15:26 +3157: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=false) -15:26 +3158: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=true) -15:26 +3159: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside heading aliases prefer exact IDs and reject ambiguity -15:26 +3160: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: malformed semantic XML is still reported after a scanner mismatch -15:26 +3161: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: lossless XML nodes preserve exact duplicate ranges and generic markup -15:26 +3162: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside Markdown round-trips native and generic markup -15:26 +3163: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified semantic XML reconstructs equivalent escaped markup -15:26 +3164: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified conformance topic retains qualified namespace names -15:26 +3165: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver applies includes, filters, groups, variables, and cycles -15:27 +3166: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver negates the complete instance list -15:27 +3167: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML list type is inherited by every list item -15:27 +3168: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML lists retain numeric ordinals and their container identity -15:27 +3169: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: repeated list includes have distinct occurrence IDs and original source spans -15:27 +3170: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: workspace exposes resolver errors with exact source spans -15:28 +3171: loading /home/albert/busystack/busymark/test/src/writerside_api_test.dart -15:29 +3171: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: platform-backed API model remains on the host path and transfers complete semantics -15:29 +3172: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API tags select operations through the existing OpenAPI parser -15:29 +3173: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API child selectors inherit the specification and preserve sample overrides -15:29 +3174: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API schemas resolve references and honor nesting depth -15:29 +3175: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: schema and webhook elements are visible -15:30 +3176: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: invalid API selection has a visible fallback and source diagnostic -15:30 +3177: loading /home/albert/busystack/busymark/test/src/local_history_store_test.dart -15:30 +3177: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=false) -15:31 +3178: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=true) -15:32 +3179: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: real process contention waits and captures without a warning -15:37 +3180: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: lock timeout closes acquisition and queues recover without late capture -15:42 +3181: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: non-contention acquisition failure is prompt and closes the handle -15:42 +3182: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: body contention-shaped error never replays the transaction -15:42 +3183: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: independent production writers preserve both identities and revisions -15:49 +3184: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation cannot mutate process replacements -15:54 +3185: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation rejects an intervening process checkpoint -15:58 +3186: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=false) -15:58 +3187: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=true) -15:58 +3188: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists full revisions and stable document identity across restart -15:58 +3189: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists untitled first-save promotion without a new revision -15:58 +3190: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: untitled promotion refuses an already-owned destination path -15:58 +3191: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deleted paths never own promotion, lookup, or remap -15:58 +3192: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deduplicates only adjacent ordinary captures and preserves A-B-A -15:58 +3193: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: forced protective capture preserves an identical revision -15:58 +3194: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture identity makes a protective retry idempotent -15:58 +3195: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: idempotent capture stays complete after its lineage advances -15:58 +3196: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion retry accepts the same lineage after a later move -15:58 +3197: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: atomic path preflight accepts the same target already reconciled elsewhere -15:58 +3198: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clearing one identity does not poison another identity capture -15:59 +3199: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repairs a damaged index from intact independently checksummed records -15:59 +3200: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repair rejects a record associated with a different document -15:59 +3201: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: does not resurrect explicitly cleared revisions during repair -15:59 +3202: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rejects an unknown future index format without rewriting it -15:59 +3203: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention uses the injected capture time deterministically -15:59 +3204: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention is enforced when an idle store is reopened -15:59 +3205: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rename, directory move, delete, and per-document clearing retain lineage -15:59 +3206: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: ID-bound captures cannot implicitly move document paths -15:59 +3207: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: serializes concurrent captures without losing index entries -15:59 +3208: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: oversized capture cannot evict the previous revision -16:00 +3209: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: different paths with the same basename keep separate identities -16:00 +3210: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: an intentional empty revision after content is retained -16:00 +3211: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: missing and corrupt revision records do not damage intact entries -16:00 +3212: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: incomplete staging artifacts are never discovered as revisions -16:00 +3213: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: global clear tombstones prevent repair resurrection -16:00 +3214: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear All replay cannot erase post-clear history -16:00 +3215: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear Document replay cannot erase replacement history -16:00 +3216: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=false) -16:00 +3217: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=false) -16:01 +3218: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=true) -16:01 +3219: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=true) -16:01 +3220: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=false) -16:01 +3221: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=true) -16:01 +3222: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file capture rolls back cancellation during revision publication -16:01 +3223: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file dedup capture rolls back cancellation during index publication -16:01 +3224: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: multiple store instances coordinate concurrent index publication -16:01 +3225: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: storage permission failures surface without touching document data -16:01 +3226: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: path exclusions use injected Windows path semantics -16:01 +3227: loading /home/albert/busystack/busymark/test/src/web_render_host_test.dart -16:02 +3227: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends explicit request IDs and decodes a typed map response -16:02 +3228: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends a MathJax batch in one cancellable host request -16:02 +3229: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: scales the MathJax timeout for sequential batch conversion -16:02 +3230: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: applies the scaled timeout to a maximum accepted batch -16:02 +3231: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: cancels the matching native request and rejects a late success -16:02 +3232: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: times out and requests native cancellation -16:02 +3233: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: rejects an invalid native response shape -16:02 +3234: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: decodes OpenAPI references with source locations -16:02 +3235: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends PNG bytes to the native image clipboard -16:02 +3236: loading /home/albert/busystack/busymark/test/src/document_persistence_test.dart -16:04 +3236: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: file-backed edits update final-newline metadata -16:04 +3237: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session store keeps tab state and pending history identity without text -16:04 +3238: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session merge keys first-save promotions by durable operation owner -16:04 +3239: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery store distinguishes clean and unclean runs -16:05 +3240: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery keeps valid entries when another record is malformed -16:05 +3241: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery ownership keeps same buffer IDs isolated by process -16:05 +3242: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: restored dead-owner recovery is adopted and can be retired -16:06 +3243: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery state is written with private POSIX permissions -16:06 +3244: loading /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart -16:06 +3244: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: intrinsic width remeasures only edited source lines -16:07 +3245: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: large source width uses a bounded estimate -16:07 +3246: loading /home/albert/busystack/busymark/test/src/search_replace_service_test.dart -16:10 +3246: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: Unicode regex replacement preserves complete characters -16:10 +3247: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: zero-length replacement limitation survives worker transfer -16:11 +3248: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 4999 actual matches -16:11 +3249: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5000 actual matches -16:11 +3250: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5001 actual matches -16:11 +3251: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement cancels a running expensive regex -16:11 +3252: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace scope includes closed Writerside documents and ignores unrelated open files -16:11 +3253: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: previews and applies plain whole-word replacements -16:11 +3254: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: text replacement previews enforce their match limit -16:11 +3255: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker expands one accepted regex match -16:11 +3256: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker cancels stale plans -16:11 +3257: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: expands numbered and named regex capture groups -16:11 +3258: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: applies only selected preview matches -16:11 +3259: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace preview uses dirty buffers and writes closed files -16:11 +3260: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply skips stale dirty buffers -16:11 +3261: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: truncated workspace previews cannot be applied -16:11 +3262: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: stale later files abort before earlier files are changed -16:11 +3263: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: rollback preserves a concurrent edit and reports displaced content -16:11 +3264: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply revalidates open buffers after disk writes -16:11 +3265: loading /home/albert/busystack/busymark/test/src/export_options_editor_test.dart -16:15 +3265: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Escape closes Export before a control receives focus -16:16 +3266: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Export keeps breathing room below its final option -16:17 +3267: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown PDF loads confirmed settings and shares controls -16:18 +3268: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside PDF loads confirmed settings and shares controls -16:18 +3269: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown HTML loads confirmed settings and shares controls -16:18 +3270: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside HTML loads confirmed settings and shares controls -16:19 +3271: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: one Export modal switches between PDF and HTML -16:19 +3272: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: custom geometry controls, TOC enablement and invalid input at minimum size -16:19 +3273: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: cancelling settings does not confirm or persist edits -16:19 +3274: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: JSON settings store retains both format settings across controllers -16:20 +3275: loading /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart -16:20 +3275: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: existing-topic picker filters names and selects by keyboard -16:21 +3276: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: picker returns the supplied topic identity for duplicate names -16:22 +3277: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: Group keeps raw input and Enter-only acceptance -16:22 +3278: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: rename preserves validation and Preview/Refactor results -16:22 +3279: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.rtl -16:22 +3280: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.rtl -16:23 +3281: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.ltr -16:23 +3282: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.ltr -16:23 +3283: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart -16:24 +3283: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: Linux Writerside title and duplicate dialogs are GTK-owned -16:24 +3284: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: GTK Writerside contents follow application direction, filenames stay LTR -16:25 +3285: loading /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart -16:26 +3285: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw HTML preserves inherited and overridden block directions -16:26 +3286: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: preview model retains HTML direction for code and quotes -16:26 +3287: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML honors rtl, ltr, and auto directions -16:27 +3288: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: nested WYSIWYG blocks indent from the RTL start edge -16:28 +3289: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: English prose stays LTR in a Persian RTL UI and navigates LTR -16:28 +3290: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: Arabic prose stays RTL in an English UI and navigates RTL -16:28 +3291: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw Writerside technical blocks stay LTR with Arabic content -16:28 +3292: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered Arabic HTML without dir follows its content -16:28 +3293: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: WYSIWYG technical dialog inputs stay LTR in an RTL UI -16:30 +3294: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL horizontal arrows cross paragraph boundaries visually -16:30 +3295: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL Ctrl+Shift+Arrow extends word selection across paragraphs -16:30 +3296: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: code blocks stay LTR and use LTR boundary arrows in RTL UI -16:30 +3297: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML pre is LTR unless dir overrides it -16:31 +3298: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL prefix hit testing maps the text start at the right edge -16:31 +3299: loading /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart -16:33 +3299: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote source AI proposal applies with logical identity -16:35 +3300: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote WYSIWYG AI proposal applies with logical identity -16:36 +3301: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: document-only AI snapshot opens a usable configuration -16:36 +3302: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI configuration uses native rows without duplicate choices -16:37 +3303: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: Refine with AI sends the explicitly selected model -16:37 +3304: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI proposal uses an explicitly selected provider -16:37 +3305: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: provider chooser exposes only configured providers -16:37 +3306: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: configured local provider remains available when Gemini is default -16:37 +3307: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: fixed AI target cannot widen a sidebar selection -16:37 +3308: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: proposal Apply refuses stale external source content -16:38 +3309: loading /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart -16:38 +3309: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial prefix grows compatibly -16:38 +3310: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial becomes complete and clears marker -16:38 +3311: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations identical complete listings remain consistent -16:38 +3312: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations incompatible repeated listing rejects -16:38 +3313: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations known failed prefix recovers completely -16:38 +3314: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations failure without a known prefix cannot prove recovery -16:38 +3315: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations successful listing followed by failure rejects -16:38 +3316: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry replacement between complete reads rejects -16:38 +3317: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry removal between complete reads rejects -16:38 +3318: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter compatible scan keeps stronger proof -16:38 +3319: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete proof survives compatible limited rescan -16:38 +3320: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial rescan cannot erase a previous failure -16:38 +3321: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete recovery must retain failed-prefix entries -16:38 +3322: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter failed retry retains its consumed prefix -16:38 +3323: loading /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart -16:40 +3323: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: ingests workspace images with safe names and portable paths -16:40 +3324: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: reuses identical assets and resolves name collisions -16:40 +3325: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping identical publications keep the committed owner -16:40 +3326: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping different publications keep the committed owner -16:40 +3327: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect identical pending publications with equal filenames -16:47 +3328: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect different pending publications with equal filenames -16:53 +3329: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: failed publication releases only its own filesystem reservation -16:56 +3330: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: terminated provisional owner remains reserved across processes -16:59 +3331: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: rollback cannot delete an asset after its publication is committed -16:59 +3332: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: uses the configured Writerside images directory -16:59 +3333: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: restores retained Writerside video bytes without widening image paste -16:59 +3334: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: requires saving untitled documents and rejects non-images -16:59 +3335: loading /home/albert/busystack/busymark/test/src/ai_test.dart -17:02 +3335: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy allows literal loopback and localhost origins -17:02 +3336: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy rejects remote, credential-bearing, and path endpoints -17:02 +3337: /home/albert/busystack/busymark/test/src/ai_test.dart: prompt serializes untrusted document data as a JSON field -17:02 +3338: /home/albert/busystack/busymark/test/src/ai_test.dart: plain-text edit prompts never request Markdown -17:02 +3339: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard accepts prose edits that retain protected Markdown -17:02 +3340: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard rejects changed links and fenced code -17:02 +3341: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard protects fences with longer valid closing markers -17:02 +3342: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder handles UTF-8 and JSON split across arbitrary byte chunks -17:02 +3343: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder rejects malformed records and oversized responses -17:02 +3344: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider lists models and streams chat content and usage -17:02 +3345: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider stops at completion and ignores trailing stream records -17:02 +3346: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider uses the documented low thinking level for GPT-OSS -17:02 +3347: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider bounds the model-list response while reading it -17:02 +3348: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider rejects redirects without following them -17:02 +3349: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider does not list or run Ollama cloud models -17:02 +3350: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider cancellation interrupts a silent response stream -17:02 +3351: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator cancels the older request for the same target -17:02 +3352: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator rejects a provider stream without completion -17:02 +3353: loading /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart -17:04 +3353: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: formatting a URL suffix retains the complete live link and round trips -17:04 +3354: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter URL recognition preserves formatting, literal syntax, anchors, breaks and descendants -17:04 +3355: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter recognition preserves formatting within a URL and does not enter math fields -17:04 +3356: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: text whitespace preservation metadata follows pasted whitespace -17:04 +3357: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: paste-only whitespace keeps list descendants exactly once -17:04 +3358: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: plain whitespace paste keeps list descendants through Undo and Redo -17:07 +3359: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: replacement scope distinguishes a heading field from its document block -17:07 +3360: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete blocks inserted in list content retain every descendant -17:07 +3361: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: generic block commands cannot convert tables or preserved raw blocks -17:07 +3362: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: nested list-to-blockquote conversion preserves parent text -17:07 +3363: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: every admonition style preserves nested list parent text -17:07 +3364: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves the current list item descendants -17:07 +3365: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves descendants of an empty list item -17:07 +3366: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace rejects a merge that cannot represent descendants -17:07 +3367: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete clipboard snapshots reconstruct a table transactionally -17:07 +3368: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: same-editor cut and paste preserves complete tables -17:07 +3369: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits normalize every newline form before updating -17:07 +3370: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits preserve block-marker prefixes as literal text -17:07 +3371: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary table cell edits preserve formatting and links -17:07 +3372: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary cell edits retain toolbar-applied formatting -17:07 +3373: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve empty-alt inline images -17:07 +3374: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve existing hard line breaks -17:07 +3375: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing preserves a literal bang before an inline link -17:07 +3376: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing escapes block syntax at the start of a list item -17:07 +3377: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table field edits preserve rendered formatting and links -17:08 +3378: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields reject multiline input and reconcile the model -17:08 +3379: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields preserve block-marker-prefixed cell values -17:08 +3380: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source ranges select repeated text and table cells -17:08 +3381: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source navigation rebases spans after earlier edits -17:09 +3382: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: source navigation expands collapsed Writerside ancestors -17:09 +3383: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: outline navigation expands a collapsed heading ancestor -17:09 +3384: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cells own shortcuts, formatting, and restored selection -17:09 +3385: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external undo groups continuous typing but not transactions -17:09 +3386: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external history coalesces editor typing without local copies -17:09 +3387: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: undo controllers are disposed when blocks disappear -17:09 +3388: loading /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart -17:11 +3388: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: SSE decoder handles split UTF-8 frames and multiline data -17:11 +3389: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: OpenAI Responses adapter is stateless and maps text and usage -17:11 +3390: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini Interactions adapter uses stable v1 and text deltas only -17:11 +3391: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider never includes a secret in surfaced failures -17:11 +3392: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects malformed usage records -17:11 +3393: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini rejects an incomplete status update -17:11 +3394: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects EOF without a typed completion event -17:12 +3395: loading /home/albert/busystack/busymark/test/src/modal_barrier_test.dart -17:15 +3395: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.light modal barriers use the semantic shade role -17:16 +3396: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.dark modal barriers use the semantic shade role -17:17 +3397: loading /home/albert/busystack/busymark/test/src/native_menu_service_test.dart -17:17 +3397: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: show serializes native menu presentation and returns its selection -17:17 +3398: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: dismiss is scoped to the native menu session -17:17 +3399: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: missing native host reports unavailable for a themed fallback -17:17 +3400: loading /home/albert/busystack/busymark/test/src/workspace_controller_test.dart -17:20 +3400: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside tab preparation loads once and current activation loads zero -17:21 +3401: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: configuration preview does not reparse in a derived loop and closing all buffers relinquishes overlays -17:21 +3402: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all Writerside tabs completes override relinquishment -17:21 +3403: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closed-tab reconciliation rejects obsolete disk models and keeps tabs closed -17:21 +3404: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: active -17:21 +3405: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: inactive -17:21 +3406: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: closure -17:21 +3407: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: workspace -17:21 +3408: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: external -17:22 +3409: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: disposal -17:22 +3410: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: rapid Writerside activation keeps derived work bounded and publishes the latest request -17:23 +3411: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered creation notifications are acknowledged, external same-size writes remain visible -17:23 +3412: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: a failed mutation cannot acknowledge its write notifications -17:24 +3413: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: quarantine and duplicate delayed deletion events acknowledge incorporated absence -17:25 +3414: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: an external same-size write during acknowledgement invalidates the consumed fingerprint -17:25 +3415: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: anchor -17:26 +3416: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: disk -17:26 +3417: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered TOC removal notifications require no subsequent module processing -17:27 +3418: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=false -17:27 +3419: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=true -17:27 +3420: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=false -17:27 +3421: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=true -17:27 +3422: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=false -17:27 +3423: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=true -17:28 +3424: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects inactive edit after clean navigation -17:28 +3425: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects reopen after clean navigation -17:28 +3426: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects close all after clean navigation -17:28 +3427: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects dispose after clean navigation -17:28 +3428: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects disk input after clean navigation -17:28 +3429: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects inactive edit after clean navigation -17:29 +3430: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects reopen after clean navigation -17:29 +3431: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects close all after clean navigation -17:29 +3432: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects dispose after clean navigation -17:29 +3433: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects disk input after clean navigation -17:29 +3434: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects inactive edit after clean navigation -17:29 +3435: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects reopen after clean navigation -17:29 +3436: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects close all after clean navigation -17:30 +3437: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects dispose after clean navigation -17:30 +3438: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects disk input after clean navigation -17:30 +3439: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining resource discovery presents stable limited inputs -17:30 +3440: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects edit during verification -17:30 +3441: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects inactive edit during verification -17:30 +3442: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects workspace replacement during verification -17:31 +3443: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects same-project reopening during verification -17:31 +3444: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects edit during verification -17:31 +3445: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects inactive edit during verification -17:31 +3446: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects workspace replacement during verification -17:31 +3447: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects same-project reopening during verification -17:31 +3448: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects edit during verification -17:31 +3449: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects inactive edit during verification -17:32 +3450: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects workspace replacement during verification -17:32 +3451: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects same-project reopening during verification -17:32 +3452: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=false -17:32 +3453: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=true -17:32 +3454: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=false -17:32 +3455: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=true -17:32 +3456: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=false -17:33 +3457: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=true -17:33 +3458: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=false -17:33 +3459: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=true -17:33 +3460: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded inactive edit -17:33 +3461: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded configuration write -17:33 +3462: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction discovery refresh keeps the live selected instance through reconciliation -17:33 +3463: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=4 -17:34 +3464: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=2 -17:34 +3465: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome creation cannot overwrite an edit made during history flush -17:35 +3466: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: starting a Welcome workspace cannot discard a dirty buffer -17:35 +3467: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome replaces clean buffers but workspace New remains additive -17:35 +3468: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete closes the topic buffer, selects a survivor, and records history -17:35 +3469: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete journal removes the deleted tab after refresh failure restart -17:35 +3470: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC writes reject an inactive dirty tree without discarding either buffer -17:35 +3471: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC creation defers its monitor events until the new document is open -17:36 +3472: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown topic import opens its first topic in an editable buffer -17:36 +3473: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed Markdown import preserves the active document and workspace -17:36 +3474: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Validate publishes a valid table containing an escaped pipe -17:36 +3475: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation reports stale, busy and failed outcomes without publishing old results -17:36 +3476: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=false -17:36 +3477: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=true -17:36 +3478: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math callbacks from an older editor revision cannot republish errors -17:36 +3479: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown validation uses the unsaved linked tab snapshot -17:36 +3480: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=true -17:36 +3481: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=false -17:36 +3482: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside rename stages verified edits across unsaved tabs with undo -17:36 +3483: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened Markdown files by file path in recent workspaces -17:36 +3484: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened folders by folder path in recent workspaces -17:36 +3485: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace file operations refresh and preserve active moved files -17:36 +3486: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates an unsaved Markdown file without adding it to recent -17:36 +3487: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates CommonMark inside Writerside without replacing project or dirty topic -17:37 +3488: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: identical untitled buffers remain distinct by buffer id -17:37 +3489: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: delayed untitled preview cannot publish into another untitled tab -17:37 +3490: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files leave preview mode for editor mode -17:37 +3491: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files preserve non-preview view modes -17:37 +3492: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an untitled Markdown file clears the workspace -17:37 +3493: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding a saved file reloads disk text and clears dirty state -17:37 +3494: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside project and records it as recent -17:37 +3495: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside topic and opens it without changing recents -17:37 +3496: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: topic TOC actions refresh the workspace and preserve file state -17:37 +3497: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: reviewed topic rename is rejected after a project buffer becomes dirty -17:37 +3498: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as writes a new Markdown file and records it as recent -17:37 +3499: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown in Writerside keeps ordinary files CommonMark -17:38 +3500: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside refresh preserves saved Markdown outside the workspace root -17:38 +3501: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown into discovered topics reclassifies it -17:38 +3502: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving multiple untitled documents creates normal file buffers -17:38 +3503: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as refuses an existing file unless overwrite is explicit -17:38 +3504: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as explicit overwrite replaces the final symlink only -17:38 +3505: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves source edits for an untitled Markdown file -17:38 +3506: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while writing the file -17:38 +3507: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as completes against its buffer after switching tabs -17:38 +3508: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while reopening the file -17:38 +3509: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: switching active files reparses outline for the new file -17:38 +3510: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale validation after save and tab switch does not restore previous file -17:38 +3511: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation completing after save preserves the saved snapshot -17:38 +3512: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source defers preview work until a preview mode is visible -17:38 +3513: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source-only validation still runs when validate-on-edit is enabled -17:38 +3514: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale text update from previous file cannot dirty active tab -17:38 +3515: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: folder workspaces track open file tabs without duplicates -17:38 +3516: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All writes every dirty file-backed buffer -17:38 +3517: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All can be scoped without saving unrelated dirty buffers -17:38 +3518: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: selected dirty buffers can be discarded without changing tabs -17:38 +3519: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing active file tabs selects a neighboring tab -17:39 +3520: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: activating sibling file tabs wraps around the open tabs -17:39 +3521: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all file tabs clears the active editor state -17:39 +3522: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs aborts when a document changes during history flush -17:39 +3523: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs cannot clear workspace state replaced during flush -17:39 +3524: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed open clears stale workspace state -17:39 +3525: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math renderer failures become source-linked runtime diagnostics -17:39 +3526: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validate on edit setting controls live diagnostics only -17:39 +3527: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save waits for an idle delay before writing -17:41 +3528: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Undo and Redo reschedule autosave after the prior save settled -17:45 +3529: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: inactive document updates schedule autosave without changing tabs -17:47 +3530: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed workspace refresh restores eligible autosave scheduling -17:48 +3531: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disabled autosave stays disabled after a failed refresh -17:50 +3532: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save remains scheduled independently for inactive tabs -17:51 +3533: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save preserves dirty state when edits happen during save -17:51 +3534: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: overlapping manual save writes the newer requested revision -17:51 +3535: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save completes against its buffer after switching tabs -17:51 +3536: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing a buffer waits for its in-flight autosave -17:51 +3537: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard aborts when the document changes during protective history capture -17:51 +3538: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard waits for its buffer in-flight autosave -17:51 +3539: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save waits for an in-flight autosave of the same buffer -17:51 +3540: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All waits for an in-flight autosave of the same buffer -17:51 +3541: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save As waits for an in-flight autosave of the same buffer -17:51 +3542: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean shutdown waits for in-flight document writes -17:51 +3543: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: pending history from a closed clean tab prevents a clean shutdown marker -17:51 +3544: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save refuses to overwrite external file changes without force -17:52 +3545: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save treats a deleted active file as an external conflict -17:52 +3546: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save detects external rewrites with unchanged modified time -17:52 +3547: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving preserves a manually removed final newline -17:52 +3548: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: WYSIWYG list edits preserve a missing final newline -17:52 +3549: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: spelling correction undo and redo restore source and rich selections -17:52 +3550: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Keep Mine retains the conflict snapshot until explicit overwrite -17:52 +3551: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitor refresh waits for an active foreground refresh -17:52 +3552: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves an active edit and editor history made during reparse -17:52 +3553: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation reconciles edits accepted while its reparse is pending -17:52 +3554: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: opening a new tab preserves live edits and editor history in the visible document -17:52 +3555: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing the active tab aborts if it changes during next-tab activation -17:52 +3556: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: aborted discard close preserves dirty state after an editor-only change -17:52 +3557: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: aborted -17:52 +3558: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: closed -17:52 +3559: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: disabled -17:52 +3560: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: shutdown -17:52 +3561: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: replaced -17:52 +3562: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation does not resurrect another tab closed while waiting -17:52 +3563: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves inactive edits and does not resurrect a closed tab -17:53 +3564: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh rejects a disk load superseded by typing -17:54 +3565: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: external file moves remap the open document buffer -17:54 +3566: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitors saved standalone tabs outside the workspace root -17:54 +3567: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: standalone refresh preserves saved tabs in different directories -17:54 +3568: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup leaves a clean session closed unless reopening is enabled -17:54 +3569: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup restores an interrupted session without an opt-in -17:54 +3570: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored sessions retain tabs whose files are missing -17:54 +3571: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored standalone sessions retain a missing document -17:54 +3572: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: mixed untitled and saved session restores as a standalone workspace -17:54 +3573: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark active -17:54 +3574: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark inactive -17:54 +3575: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean marker cannot hide remaining recovery entries -17:54 +3576: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: recovery text remains restorable when the later session save fails -17:54 +3577: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: single-document session uses no workspace path after saved tabs close -17:54 +3578: loading /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart -17:55 +3578: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped image-description text follows Markdown image alt semantics -17:55 +3579: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: annotated parsing has ordinary semantics across supported corpus -17:55 +3580: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: image ranges identify only resolved source occurrences -17:55 +3581: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: positioned label breaks retain raw endings and container prefixes -17:55 +3582: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped link and image titles retain exact raw boundaries -17:55 +3583: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: destination-only links and images have no mapped title -17:55 +3584: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: position records do not change HTML or link semantics -17:55 +3585: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: selection endpoints crossing HTML retain one semantic fragment -17:55 +3586: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: supported HTML whitespace positions have complete position records -17:55 +3587: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: only operation-local markers are ignored -17:55 +3588: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: delimiter-only positions are explicitly incomplete -17:55 +3589: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: syntax-boundary probes retain the ordinary semantic oracle -17:55 +3590: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: deterministic inline combinations preserve annotated semantics -17:55 +3591: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: standalone HTML break ownership uses one indexed lookup per break -17:55 +3592: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: AST source boundary lookahead is linear and maps the final link -17:56 +3593: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: fallback mapping is bounded for entities repetitions and code spans -17:56 +3594: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: tag-looking attribute text does not claim break layout -17:56 +3595: loading /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart -17:57 +3595: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: restores WYSIWYG selection from document session state -17:58 +3596: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: reports the old document session before switching tabs -17:58 +3597: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: defers session provider updates until document rebuild ends -17:58 +3598: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: workspace mode delegates WYSIWYG undo to buffer history -17:58 +3599: loading /home/albert/busystack/busymark/test/src/writerside_identity_test.dart -17:59 +3599: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: anchor identity includes topic and all instances participate in usages -17:59 +3600: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: conditional globals and snippet variables have distinct scopes -18:00 +3601: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: completion filters context and target identity before limiting -18:00 +3602: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: validation uses relationships, typed values and current configuration syntax -18:00 +3603: loading /home/albert/busystack/busymark/test/src/html_export_ui_test.dart -18:01 +3603: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: one Export command retains Ctrl+Shift+E -18:01 +3604: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Flutter Main menu exposes document export -18:02 +3605: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: untitled active text stays captured while destination picker is open -18:04 +3606: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Cancel handling before instance selection -18:04 +3607: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Discard handling before instance selection -18:05 +3608: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Save handling before instance selection -18:06 +3609: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart -18:07 +3609: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication -18:07 +3610: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path -18:07 +3611: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content -18:07 +3612: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document -18:07 +3613: loading /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart -18:12 +3613: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Writerside numeric list starts and container boundaries reach PDF -18:12 +3614: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: list items and visualization replacements retain source anchors -18:12 +3615: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: maps Markdown semantics into renderer-neutral export blocks -18:12 +3616: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: omits reference definitions while preserving their resolved links -18:12 +3617: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Typst payload contains data but never raw local image paths -18:12 +3618: loading /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart -18:13 +3618: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: basic fixture uses a renderable OpenAPI fence -18:13 +3619: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: visualizer fences remain generic code and round-trip byte-for-byte -18:13 +3620: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: dedicated visualizer rules highlight comments, keys, and keywords -18:13 +3621: loading /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart -18:16 +3621: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-topic-create-10-100-0 -18:16 +3622: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-topic-create-10-100-0 -18:16 +3623: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-safe-delete-10-100-0 -18:16 +3624: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-safe-delete-10-100-0 -18:16 +3625: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 -18:16 +3626: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 -18:16 +3627: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: external moves, missing destinations and authored hidden names stay visible -18:16 +3628: loading /home/albert/busystack/busymark/test/src/html_rich_export_test.dart -18:18 +3628: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered mermaid retains a linked Writerside block ID -18:20 +3629: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered openapi retains a linked Writerside block ID -18:20 +3630: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: HTML uses unique occurrence jobs, standalone math and diagram/static API engines -18:20 +3631: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: custom HTML metrics and embedded rich assets stay self-contained -18:20 +3632: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: all diagram dependencies are captured before rendering begins -18:20 +3633: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: cancelling an active render retains existing output and removes staging -18:20 +3634: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: render timeout is bounded and cancellation interrupts a pending job -18:20 +3635: loading /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart -18:21 +3635: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: finds exact href and body spans for every supported quote form -18:21 +3636: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: ignores comments, fenced code, and inline code but keeps containers -18:21 +3637: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: multiline anchors are exact and malformed anchors remain manual -18:21 +3638: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/full-flutter-timing-failure.log b/delivery/nextcloud-explicit-adoption/evidence/full-flutter-timing-failure.log deleted file mode 100644 index d3c8c0d1..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/full-flutter-timing-failure.log +++ /dev/null @@ -1,4440 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver -00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider -00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider -00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files -00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text -00:02 +5: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations -00:02 +6: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads -00:02 +7: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy -00:02 +8: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy -00:02 +9: loading /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart -00:03 +9: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a complete subtree as the last child of an exact node -00:03 +10: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry after a root sibling -00:03 +11: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry to the end of the TOC root -00:03 +12: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry relative to itself without writing -00:03 +13: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry into its descendant without writing -00:03 +14: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: requires a destination for child and sibling placement -00:03 +15: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects invalid structural paths without writing -00:03 +16: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects stale paths whose expected TOC identities moved -00:03 +17: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a root entry and promotes its children in place -00:03 +18: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a nested entry and promotes its child before its sibling -00:04 +19: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes multiple entries atomically against one tree snapshot -00:04 +20: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: batch removal handles a selected descendant and ancestor -00:04 +21: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves multiple subtrees as an ordered group -00:04 +22: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a tree outside the guarded module root -00:04 +23: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a symlinked tree without mutating its target -00:04 +24: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: does not overwrite a tree changed before atomic publication -00:04 +25: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: atomic replacement preserves the tree POSIX mode -00:04 +26: loading /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart -00:06 +26: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal dialogs stop app and editor shortcuts -00:07 +27: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: Escape closes a modal without an initially focused control -00:07 +28: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal fallback does not steal a child autofocus request -00:08 +29: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: overlapping dialogs synchronize native modal depth -00:08 +30: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: serializes rapid manual native barrier transitions -00:08 +31: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: failed native barrier acquisition rolls back and can retry -00:08 +32: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal coordinator resolves the service from ProviderScope -00:08 +33: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: open modal barrier follows live theme changes -00:08 +34: loading /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart -00:13 +34: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: analysis finds every tree, topic link, include, and start page -00:16 +35: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove promotes children, updates usages, adds redirect, and keeps file -00:30 +36: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates all usages and removes every TOC occurrence -00:31 +37: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect to a promoted child is written to the promoted copy -00:31 +38: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed XML topics make usage analysis fail closed -00:31 +39: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: file-size-skipped topics make removal fail closed -00:31 +40: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: document-count-skipped topics make removal fail closed -00:31 +41: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: unreadable topic contents make removal fail closed -00:31 +42: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: topic-root traversal truncation makes removal fail closed -00:31 +43: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: incomplete project-module discovery makes removal fail closed -00:31 +44: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: tree directory enumeration failure makes removal fail closed -00:31 +45: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: single-quoted includes without element-id are found and removed -00:31 +46: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: variable-expanded links are analyzed and the variables file is stale-checked -00:31 +47: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: Safe Delete finds and unlinks authored HTML anchors without literal false positives -00:32 +48: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed authored HTML anchors are manual Safe Delete blockers -00:32 +49: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML variable hrefs are expanded and ambiguity blocks -00:32 +50: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML relevance follows its conditioned Markdown chapter -00:33 +51: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: automatic HTML unlinking permits project-wide orphan status -00:33 +52: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a surviving authored HTML link suppresses orphan status -00:33 +53: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: ambiguous references block deletion without changing any file -00:33 +54: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: old web file names follow Writerside normalization and exact overrides -00:33 +55: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: existing redirect rules block conflicting redirects -00:33 +56: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect preserves direct and rule-based accepted aliases -00:33 +57: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a transferred redirect alias collision fails before writes -00:33 +58: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect sources use each host instance web filename -00:33 +59: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remaining start-page and cross-instance usages prevent orphan status -00:34 +60: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove-from-instance relevance respects document conditions -00:34 +61: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: start-page and stale analyses fail closed without deleting the topic -00:34 +62: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: generic Files deletion cannot bypass Writerside Safe Delete -00:34 +63: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: project analysis finds origin links, includes, cards, and ref TOC nodes -00:34 +64: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored Markdown HTML anchors resolve origin project-wide -00:34 +65: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates automatic cross-module origin usages -00:34 +66: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: selected ref node uses removal workflow and promotes its children -00:34 +67: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: semantic tree scan includes hidden/build trees and excludes VCS metadata -00:34 +68: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a new module after analysis makes the reviewed plan stale -00:34 +69: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: cross-module failure rolls back BusyMark edits without overwriting a concurrent edit -00:35 +70: loading /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart -00:38 +70: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source paste preserves incoming nested blocks and returns its caret -00:38 +71: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves structural block kinds -00:38 +72: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: removing final formula leaves normal editing mode -00:38 +73: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits preserve nested list children -00:38 +74: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: descendant math does not put a plain list parent in source mode -00:38 +75: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first inline math insertion preserves unaffected inline AST -00:38 +76: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math edits retain explicit heading IDs -00:38 +77: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first math insertion recalculates a generated heading ID -00:38 +78: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion always emits reparsable source -00:38 +79: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: additional inline math uses the same reparsable insertion policy -00:38 +80: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion rejects multiline selections without mutation -00:38 +81: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves zero-width semantic inlines -00:38 +82: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table-cell source editing retains and removes semantic math -00:38 +83: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits cannot discard additional Markdown blocks -00:38 +84: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source editing preserves escaped literal dollars -00:38 +85: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves the intended inline position -00:38 +86: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math field source boundaries map to semantic text boundaries -00:38 +87: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: source-mode math insertion preserves the intended inline position -00:38 +88: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG renders math, edits exact source, and reparses without corruption -00:40 +89: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG toolbar inserts inline and display math source -00:40 +90: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math toolbar preserves existing inline structure -00:41 +91: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: rendered and focused math list items keep one marker -00:41 +92: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table math renders unfocused and edits delimiter source -00:41 +93: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: plain table cell treats typed Markdown as rich text -00:42 +94: loading /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart -00:45 +94: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery refresh preserves a valid second instance -00:45 +95: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: selected instance removed -00:45 +96: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: intentional selection -00:45 +97: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: another module -00:45 +98: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction incomplete observations are presentation only and reject changed reads -00:45 +99: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction limited inventory retains raw counts for excluded Git entries -00:45 +100: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: rejected source size remains an input to freshness checking -00:45 +101: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: bounded topic rejection detects recovery on the real worker -00:45 +102: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: oversized buffer overrides retain their consumed-input hash -00:46 +103: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: unreadable sources keep error diagnostics and invalidate on recovery -00:46 +104: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: real execution transfers results and propagates worker failures -00:46 +105: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: basic_project -00:46 +106: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: conformance_project -00:46 +107: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: markdown_export_compatibility -00:46 +108: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: malformed XML -00:46 +109: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: missing configured root -00:46 +110: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: unsafe include -00:46 +111: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: scan limit -00:46 +112: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: preparation consumes complete overlays once, then selects with zero loads -00:46 +113: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: reuse checks equal-size disk dependencies and added inputs -00:47 +114: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: planned path exclusions cannot hide a new colon-named dependency -00:47 +115: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: configuration overlay rediscovery retains symbols and diagnostics -00:47 +116: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: creation returns its typed publication result without reopening -00:47 +117: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal application shares one ownership-checked fresh project -00:47 +118: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects changed input before fingerprint collection -00:47 +119: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects added input before fingerprint collection -00:47 +120: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects removed input before fingerprint collection -00:47 +121: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects tree input before fingerprint collection -00:47 +122: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects configuration input before fingerprint collection -00:47 +123: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects disk dependency after fingerprint verification and before commit -00:47 +124: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects dirty affected buffer after fingerprint verification and before commit -00:47 +125: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: analysis is never reused across confirmation -00:47 +126: loading /home/albert/busystack/busymark/test/src/local_history_controller_test.dart -00:50 +126: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed opened baseline retries its original source without an edit -00:50 +127: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: baseline before edit preserves original and coalesces latest edit -00:50 +128: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: closed failures keep ownership and stale settlement cannot drop newer work -00:50 +129: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed protective capture survives refresh failure without recapture -00:50 +130: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: protective authorization is invalidated while committed refresh awaits -00:50 +131: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: disable cancels an in-flight baseline at the store boundary -00:50 +132: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: exclude cancels an in-flight baseline at the store boundary -00:50 +133: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed promotion stays associated when refresh fails -00:50 +134: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As binds destination even when list refresh fails -00:50 +135: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: settling one buffer resumes retries accepted by another buffer -00:51 +136: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear document cancels its failed unbound baseline -00:51 +137: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=true) -00:51 +138: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=false) -00:51 +139: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=false) -00:51 +140: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=true) -00:51 +141: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains a source identity established before later settlement fails -00:51 +142: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As refreshes a staged destination after its concurrent checkpoint -00:51 +143: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: abandoned and superseded moves retain the newest committed association -00:51 +144: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued edits share one retained baseline retry owner -00:51 +145: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: independent failures, permanent baselines and policy cancellation remain isolated -00:51 +146: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: cancelled failed baselines cannot be restored by delayed callbacks -00:51 +147: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: continuous typing captures latest text at fixed checkpoint interval -00:51 +148: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: inactive buffers receive independent checkpoint timers -00:51 +149: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first checkpoint attaches an empty untitled browsing scope and publishes it -00:51 +150: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file store checkpoint persists across reopen and clear stays authoritative -01:11 +151: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: active revision search follows matching and nonmatching captures -01:11 +152: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed automatic capture keeps pending source and retries without another edit -01:11 +153: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a newer edit accepted during a failed write wins the retry -01:11 +154: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: automatic checkpoint retries a transient first-save promotion failure -01:11 +155: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush waits behind queued observation and captures its latest source -01:11 +156: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear wins over an in-flight capture and later edits record normally -01:11 +157: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear Document records in the replacement lineage -01:11 +158: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document blocks replacement capture while its journal is pending -01:11 +159: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear All records in the replacement lineage -01:11 +160: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All blocks replacement capture while its journal is pending -01:11 +161: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an automatic checkpoint queued for an untitled draft -01:11 +162: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear Document -01:11 +163: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear All -01:11 +164: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clearing the displayed comparison closes it without a missing warning -01:11 +165: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an in-flight path capture for the same document -01:11 +166: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first edit after another controller clears a stale binding starts a new lineage -01:12 +167: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight buffer replacement protection -01:12 +168: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued buffer replacement protection -01:12 +169: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight path replacement protection -01:12 +170: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued path replacement protection -01:12 +171: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight buffer replacement protection -01:12 +172: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued buffer replacement protection -01:12 +173: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight path replacement protection -01:12 +174: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued path replacement protection -01:12 +175: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording off prevents baseline and checkpoints without deleting history -01:12 +176: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: store-wide find locates closed and deleted documents by path or content -01:12 +177: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: retained-document lookup is temporary and normal document selection resumes following -01:12 +178: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: panel construction preserves an explicit retained-document inspection -01:13 +179: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: delayed revision search cannot repopulate a newly selected document scope -01:13 +180: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision search failure finishes searching and remains in scope -01:13 +181: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Local History follows active tabs and clears the visible query without a document dropdown -01:13 +182: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision rows use local second-precision time, date groups, event metadata, and RTL -01:13 +183: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a delayed revision read cannot cross the selected document or leave loading stuck -01:14 +184: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As settles pending named and untitled checkpoints safely -01:14 +185: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: untitled overwrite Save As retains a failed source checkpoint -01:14 +186: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As source capture is idempotent after a lost result -01:14 +187: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As recovery never adopts unrelated same-content destination history -01:14 +188: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording-disabled first save promotes untitled history identity -01:14 +189: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: excluding a recovered first-save destination preserves its untitled source baseline -01:14 +190: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued committed Save As cannot recreate a newly excluded destination side -01:14 +191: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed first-save promotion is retried before a later capture -01:14 +192: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush retries a failed first-save promotion without another edit -01:14 +193: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush reports a content failure after successfully retrying promotion -01:14 +194: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: remap settles pending first-save promotions for files and directories -01:14 +195: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file and directory moves settle pending checkpoints before remap -01:14 +196: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed path reconciliation blocks affected captures but not unrelated documents -01:14 +197: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: successful path queue prefix is published before a later failure -01:14 +198: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path deletion warnings remain scoped to affected owners -01:14 +199: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed path operation is not replayed after refresh failure -01:14 +200: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: restored targetless executing reconciliation preserves its owner -01:14 +201: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) -01:14 +202: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/B.md) -01:14 +203: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/A.md, recursive: false, source: /workspace/C.md) -01:14 +204: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/B.md, recursive: false, source: /workspace/C.md) -01:14 +205: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirA/nested/C.md) -01:14 +206: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirB/nested/C.md) -01:14 +207: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: false, source: /workspace/C.md) -01:14 +208: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirB/nested/C.md, recursive: false, source: /workspace/C.md) -01:14 +209: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /other, recursive: false, source: /workspace) -01:14 +210: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace, recursive: false, source: /other) -01:14 +211: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/dirB-sibling/C.md, recursive: false, source: /workspace/dirA-sibling/C.md) -01:14 +212: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) -01:14 +213: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: true, source: /workspace/dirA/nested/C.md) -01:14 +214: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: true, source: /workspace/C.md) -01:14 +215: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /other, recursive: true, source: /workspace) -01:14 +216: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: true, source: /workspace/C.md) -01:14 +217: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) -01:14 +218: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) -01:14 +219: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses prepared target with different paths -01:14 +220: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses bound identity with different paths -01:14 +221: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses destination identity with different paths -01:14 +222: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency checks promotion destination identity at a different path -01:14 +223: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency settles only conflicting entries behind an unresolved head -01:14 +224: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=false) -01:14 +225: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=true) -01:14 +226: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency preserves transitive queue ordering -01:14 +227: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=false) -01:14 +228: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=true) -01:14 +229: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: staged path commit survives refresh failure until workspace acknowledgement -01:14 +230: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: external staged remap refreshes its bound target after checkpoint settlement -01:14 +231: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: definitive false staged result retires its executing journal -01:14 +232: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred deletion cannot delete replacement path history -01:14 +233: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document removes only its recursive reconciliation target -01:14 +234: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document preserves timer retry for remaining recursive target -01:14 +235: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: prepared remap rejects a checkpoint that changed its frozen target -01:14 +236: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: ownerless path failure is visible only in history presentation -01:14 +237: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: detached promotion capture is included in durable retained work -01:14 +238: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: live external retained owner is not replayed and Clear All retires it -01:14 +239: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a clear conflict cancels the old baseline retry owner -01:14 +240: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit after failed Clear waits and persists in the replacement lineage -01:14 +241: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: post-Clear edit uses committed epoch when reconciliation refresh fails -01:14 +242: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred remap cannot mutate replacement path history -01:14 +243: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed remap reserves source and destination paths until reconciliation -01:14 +244: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deletion remains ordered behind a retained path remap -01:14 +245: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first save waits for a reserved source path before promoting its history -01:14 +246: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path target discovery observes history written after cached load -01:14 +247: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear document -01:14 +248: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear all -01:14 +249: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after disposal -01:14 +250: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As transfers retained remap ownership with source work -01:14 +251: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flushBuffer reports retained remap work and retires closed owner -01:14 +252: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All cannot be undone by an in-flight path remap -01:14 +253: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path reconciliation resumes a newly opened destination owner -01:14 +254: loading /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart -01:18 +254: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: HTML retains complex Markdown and resolves both heading ID spellings -01:18 +255: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: PDF retains complex Markdown and resolved heading links -01:18 +256: loading /home/albert/busystack/busymark/test/src/math_widget_test.dart -01:22 +256: /home/albert/busystack/busymark/test/src/math_widget_test.dart: inline math applies MathJax baseline and surrounding text metrics -01:23 +257: /home/albert/busystack/busymark/test/src/math_widget_test.dart: wide display math scrolls horizontally without clipping -01:23 +258: /home/albert/busystack/busymark/test/src/math_widget_test.dart: failed formulas retain source and a localized explanation -01:25 +259: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart -01:26 +259: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: reduced fixture uses rendered offsets without Markdown delimiters or block separators -01:26 +260: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All: logical range and copy include styled suffixes and table -01:28 +261: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b0 BusyBlockKind.paragraph -01:29 +262: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b1 BusyBlockKind.paragraph -01:30 +263: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b2 BusyBlockKind.paragraph -01:30 +264: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b3 BusyBlockKind.unorderedListItem -01:31 +265: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b4 BusyBlockKind.unorderedListItem -01:31 +266: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b5 BusyBlockKind.unorderedListItem -01:31 +267: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b6 BusyBlockKind.paragraph -01:32 +268: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b17 BusyBlockKind.paragraph -01:32 +269: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table cells paint the same selected text as document copy -01:32 +270: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: repeated Select All keeps the entire document selected -01:33 +271: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: Before. - -| H | -| --- | -| Body! | - -01:33 +272: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: | H | -| --- | -| Body! | - -After. - -01:33 +273: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag endpoints use the styled rendered coordinate system -01:34 +274: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag from a paragraph into a table copies and selects its cells -01:34 +275: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across table cells selects the existing complete-table document block -01:35 +276: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 460.0 -01:35 +277: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 460.0 -01:36 +278: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 460.0 -01:36 +279: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 460.0 -01:36 +280: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 460.0 -01:37 +281: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 460.0 -01:37 +282: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 1000.0 -01:37 +283: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 1000.0 -01:38 +284: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 1000.0 -01:38 +285: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 1000.0 -01:38 +286: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 1000.0 -01:39 +287: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 1000.0 -01:39 +288: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=2 -01:39 +289: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=10 -01:39 +290: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=11 -01:39 +291: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=2 -01:39 +292: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=10 -01:39 +293: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=11 -01:40 +294: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=2 -01:40 +295: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=10 -01:40 +296: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=11 -01:40 +297: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=2 -01:40 +298: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=10 -01:40 +299: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=11 -01:40 +300: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=2 -01:41 +301: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=10 -01:41 +302: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=11 -01:41 +303: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=2 -01:41 +304: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=14 -01:41 +305: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=15 -01:41 +306: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 3, 29) includes the final rendered character -01:41 +307: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (4, 0, 4, 36) includes the final rendered character -01:41 +308: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 4, 36) includes the final rendered character -01:41 +309: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 4, 4, 36) includes the final rendered character -01:42 +310: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 6, 9) includes the final rendered character -01:42 +311: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 0, 6, 93) includes the final rendered character -01:48 +312: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (5, 0, 5, 29) includes the final rendered character -01:48 +313: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: mouse range across paragraph, list, table and paragraph equals Select All -01:48 +314: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All, mouse and keyboard ranges produce equivalent local selection geometry -01:51 +315: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: local table cell selection stays local; subsequent Select All expands to document -01:51 +316: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table to following paragraph retains complete selected rows -01:52 +317: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: document selection survives viewport scrolling and block recreation -01:53 +318: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: selected table text follows horizontal cell scrolling -01:53 +319: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across a viewport jump resolves the visible extent block (variant: TargetPlatform.linux) -01:55 +320: loading /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart -01:56 +320: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video card embeds a supported YouTube source in place -01:57 +321: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: mini-player embeds Vimeo with the reduced video ID -01:57 +322: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: local video player receives only a canonical media path -01:58 +323: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video dimensions preserve ratio and scale to available width -01:58 +324: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: failed native player leaves a usable poster fallback -01:58 +325: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: WYSIWYG renders a Writerside video without rewriting source -01:59 +326: loading /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart -02:00 +326: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: uses the native grouped modal-editor structure -02:02 +327: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shared report form remains directional in an Arabic UI -02:02 +328: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: dark route uses the shared dialog surface -02:02 +329: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows required-field validation without sending -02:02 +330: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: rejects an invalid optional reply email -02:02 +331: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: category can return to the unselected placeholder -02:03 +332: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: disables submit while a request is active -02:03 +333: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: clears the form and shows the server reference on success -02:03 +334: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows a distinct message when the server rejects the form -02:03 +335: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: keeps retry UUID until submitted content changes -02:04 +336: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: cannot dismiss the dialog while submission is active -02:07 +337: loading /home/albert/busystack/busymark/test/src/headless_chrome_test.dart -02:09 +337: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: evaluates the requested document after it becomes ready -02:09 +338: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: does not evaluate the initial about:blank target -02:09 +339: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: retries when navigation destroys the execution context -02:09 +340: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a silent open DevTools socket respects the readiness bound -02:09 +341: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: socket closure before a response fails deterministically -02:09 +342: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a DevTools error is not mistaken for navigation -02:09 +343: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a page that never becomes ready reports its last state -02:09 +344: loading /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart -02:12 +344: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in untitledMarkdown -02:12 +345: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in singleMarkdown -02:12 +346: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in markdownFolder -02:12 +347: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in writersideModule -02:12 +348: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in nextcloudNotes -02:12 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (setUpAll) -02:12 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered Markdown topic wins over generic file inventory -02:12 +350: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered XML topic resolves as a Writerside XML topic -02:12 +351: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution ordinary Markdown under the project is still CommonMark -02:12 +352: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution path fallback does not depend on workspace file inventory -02:12 +353: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (tearDownAll) -02:12 +353: loading /home/albert/busystack/busymark/test/src/html_export_test.dart -02:13 +353: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsaved Markdown is a complete styled document with stable semantic anchors -02:22 +354: /home/albert/busystack/busymark/test/src/html_export_test.dart: raw disclosures, definitions and spans survive with structural sanitization -02:22 +355: /home/albert/busystack/busymark/test/src/html_export_test.dart: explicit blank lines export as consecutive HTML breaks -02:22 +356: /home/albert/busystack/busymark/test/src/html_export_test.dart: content-addressed assets relocate, deduplicate and reject symlink escapes -02:22 +357: /home/albert/busystack/busymark/test/src/html_export_test.dart: home-relative images use the shared local-media path rules -02:22 +358: /home/albert/busystack/busymark/test/src/html_export_test.dart: untrusted metadata and data URLs cannot create active HTML -02:22 +359: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsafe SVG and CSS never reach exported assets -02:22 +360: /home/albert/busystack/busymark/test/src/html_export_test.dart: overwrite refusal, cancellation and rendering failure preserve previous HTML -02:22 +361: /home/albert/busystack/busymark/test/src/html_export_test.dart: metadata title remains separate from a formatted Markdown title heading -02:22 +362: /home/albert/busystack/busymark/test/src/html_export_test.dart: UTF-8 byte limits are enforced -02:22 +363: /home/albert/busystack/busymark/test/src/html_export_test.dart: Writerside produces linked pages, hidden topics, WIP and start copy -02:22 +364: /home/albert/busystack/busymark/test/src/html_export_test.dart: official conformance fixture exports as individual pages -02:23 +365: loading /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart -02:24 +365: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside blockquotes become typed admonitions and round-trip -02:24 +366: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown blockquotes do not acquire Writerside semantics -02:24 +367: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: semantic admonition elements include quote and preserve attributes -02:24 +368: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: admonition editing emits source that reparses semantically -02:24 +369: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: editing inside an existing admonition changes its outer type -02:24 +370: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: WYSIWYG Admonition menu applies the selected type -02:25 +371: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown does not show the Writerside editing menu -02:25 +372: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside .topic preview keeps content inside its admonition -02:25 +373: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: PDF export keeps admonitions semantic and quotes neutral -02:25 +374: loading /home/albert/busystack/busymark/test/src/d2_renderer_test.dart -02:27 +374: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy rejects imports and icon assets with source locations -02:27 +375: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy does not treat comments, quoted labels, or block strings as imports -02:27 +376: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: returns normalized vector SVG for browser-independent output -02:27 +377: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes foreignObject output at PDF resolution -02:27 +378: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes browser CSS that cannot be preserved in vector form -02:27 +379: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: maps D2 diagnostics and renderer limits to typed results -02:27 +380: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: locates only executable files at deterministic bundle paths -02:27 +381: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: bundled D2 CLI renders stdin to stdout without a shell -02:27 +382: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart -02:29 +382: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -02:30 +383: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions -02:31 +384: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart -02:32 +384: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: display images do not reserve a fixed-height letterbox -02:32 +385: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: quotes and admonitions use the existing callout presentation -02:32 +386: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF export ignores redundant blank lines between blocks -02:35 +387: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF payload preserves an explicit blank line as two breaks -02:35 +388: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders two explicit breaks as one blank PDF line -02:35 +389: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders redundant blank lines identically -02:35 +390: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template exports representative Markdown to a valid PDF -02:35 +391: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside video poster and link compile into a valid PDF -02:36 +392: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside admonitions compile into a valid PDF -02:36 +393: loading /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart -02:37 +393: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: data tables remain tables, including borderless and single-column data -02:37 +394: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: nested layout wrappers retain their inner data table and prose -02:37 +395: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: explicit presentation table keeps caption, cell order and direction -02:37 +396: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor preserves content inside a layout table -02:37 +397: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor plain paste ignores layout and rich content -02:37 +398: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource preserves content inside a layout table -02:37 +399: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource plain paste ignores layout and rich content -02:37 +400: loading /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart -02:39 +400: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: selects all candidates by default and disables OK for none -02:40 +401: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: successful import closes the dialog with selected list order -02:41 +402: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: failed import stays open and presents the localized error -02:41 +403: loading /home/albert/busystack/busymark/test/src/html_publication_test.dart -02:43 +403: /home/albert/busystack/busymark/test/src/html_publication_test.dart: single-file local video has a downloadable fallback -02:46 +404: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list starts and same-type boundaries survive HTML export -02:46 +405: /home/albert/busystack/busymark/test/src/html_publication_test.dart: repeated list includes export as separate HTML containers -02:46 +406: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list styles stay distinct across consecutive lists -02:46 +407: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside shares HTML appearance without changing TOC status or source -02:46 +408: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside module origins preserve includes, variables, file identity and nullable links -02:47 +409: /home/albert/busystack/busymark/test/src/html_publication_test.dart: definition lists preserve individual disclosure states and IDs -02:47 +410: /home/albert/busystack/busymark/test/src/html_publication_test.dart: web filename and index collisions identify both topics before publication -02:47 +411: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside publication uses canonical effective web filenames -02:47 +412: /home/albert/busystack/busymark/test/src/html_publication_test.dart: source and media are captured before progress or later editor changes -02:47 +413: /home/albert/busystack/busymark/test/src/html_publication_test.dart: publication failure retains previous HTML and referenced immutable assets -02:47 +414: /home/albert/busystack/busymark/test/src/html_publication_test.dart: duplicate explicit IDs warn, non-Latin footnotes and document IDs resolve -02:47 +415: loading /home/albert/busystack/busymark/test/src/spelling_service_test.dart -02:51 +415: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document kinds expose one authoritative spelling capability -02:51 +416: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: effective spelling language preserves document and project order -02:51 +417: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: session identity changes when a stable buffer is saved to a path -02:51 +418: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: downloaded dictionaries use revision-shared Snap storage -02:51 +419: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: first save and Save As republish source routing immediately -02:52 +420: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rereads and merges independent external changes -02:53 +421: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words coordinates writers in independent application processes -02:56 +422: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external edit injected after staging -02:57 +423: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external replacement after the atomic exchange -02:57 +424: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves a newer destination and the rejected displaced version -03:00 +425: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves case while merging canonical Unicode equivalents -03:00 +426: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rebuilds untrusted stored keys from validated display values -03:00 +427: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words case-distinct words survive restart into the native worker -03:00 +428: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words malformed storage is reported instead of overwritten -03:00 +429: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: staging validation accepts numeric header revisions and count drift -03:00 +430: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: dictionary import publishes a complete pair only after validation -03:00 +431: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation installs only one shared resource and reuses it by locale -03:00 +432: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation and checksum failure leave no installation -03:00 +433: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation observes the atomic publication commit point -03:00 +434: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale invalid record cannot remove a repaired installation -03:00 +435: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale valid descriptor cannot remove a replacement in another process -03:01 +436: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation catalog waits through a replacement publication gap -03:01 +437: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a late no-replace publisher cannot replace a completed installation -03:01 +438: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation independent process observes the published no-replace destination -03:02 +439: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation stalled response times out, cancels, and permits retry -03:02 +440: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation asynchronous output sink errors fail the receiver without zone leaks -03:02 +441: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed replacement cannot damage a working installation -03:03 +442: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed controller download exposes a working retry -03:03 +443: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller reserves an installation before coordinator startup -03:03 +444: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller releases installation ownership after setup failure -03:03 +445: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller cancellation remains with the reserved startup operation -03:03 +446: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: aliased imports remain selectable across collision, restart, and removal -03:03 +447: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: same-resource import collision is rejected before publication -03:03 +448: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an import does not impersonate the downloadable resource row -03:03 +449: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid imported installation is removable by exact record -03:03 +450: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid downloaded installation repairs through settings API -03:03 +451: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once keeps its authored anchor across editor modes -03:04 +452: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: source hit testing excludes formatting and link destination gaps -03:04 +453: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once follows one transaction across edit, undo, redo, and tabs -03:04 +454: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document ignores survive tab changes but not an actual close -03:04 +455: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed suggestion cannot revive after language changes -03:04 +456: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a manual request waits for its own result while a check runs -03:04 +457: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: checks in bounded batches and reuses unchanged run results -03:04 +458: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: cached runs cover the complete checked text across edits -03:04 +459: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a NUL suffix cannot complete checking and recovers after correction -03:04 +460: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project initialization publishes only the latest owner -03:04 +461: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older same-project Settings read cannot undo a newer snapshot -03:04 +462: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older project watcher read cannot undo Settings publication -03:05 +463: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project read begun during a mutation cannot undo its result -03:05 +464: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project conflict read preserves newer state and error -03:05 +465: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project watcher error cannot replace valid state -03:05 +466: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project watcher recovers after identical dictionary repair -03:06 +467: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project repair recovers a later failed preparation at latest revision -03:07 +468: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project reread does not clear an unrelated personal read failure -03:07 +469: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: failed personal initialization retries after repair and shares first load -03:07 +470: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: explicit checks and Settings refresh external personal words -03:07 +471: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: late personal refresh cannot undo a newer local mutation -03:07 +472: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: refresh begun during a personal mutation cannot undo its result -03:07 +473: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an older personal refresh cannot replace a newer publication -03:07 +474: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a superseded conflict read cannot replace a newer personal refresh -03:07 +475: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Settings holds a failed preparation until deliberate retry -03:10 +476: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm no-workspace Settings refreshes personal words once -03:11 +477: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm Settings observes an external dictionary removal once -03:11 +478: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: leaving Settings during preparation ignores its late completion -03:11 +479: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent first requests start exactly one worker -03:12 +480: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a project-word mutation cannot publish into a later project -03:13 +481: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: new input hides old results before preparation can fail -03:13 +482: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: external project-word edits refresh an open document -03:16 +483: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review dialog keeps one traversal through skip, back, correction, and persistence -03:18 +484: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review word-store conflict stays current and exposes preserved recovery path -03:19 +485: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: equivalent rebuild does not cancel session initialization -03:19 +486: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic session checks after an unresolved language is selected -03:20 +487: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an available but absent dictionary is not downloaded implicitly -03:20 +488: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: removing a downloaded pair keeps words and reports not installed -03:20 +489: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance refreshes external installation at explicit boundaries -03:20 +490: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance replaces an active imported dictionary fingerprint -03:20 +491: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent warm catalog preparations share one owned read -03:20 +492: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed catalog read cannot undo a local installation -03:20 +493: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a failed warm catalog refresh remains retryable -03:20 +494: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic checking rereads inventory after dictionary load fails -03:20 +495: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker catalog validation requires its resource-specific probe -03:20 +496: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projects source and rich snapshots through reusable messages -03:20 +497: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incrementally reuses unaffected plain Markdown runs -03:20 +498: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incremental Markdown projection agrees with a fresh structural parse -03:21 +499: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projection cache rebinds source targets after Save As -03:21 +500: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker project custom words do not leak between contexts -03:21 +501: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quoted corrections retain straight and curly punctuation -03:21 +502: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives projection and worker barriers -03:21 +503: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives a bounded worker chunk -03:21 +504: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker removing a custom exception does not forbid a base word -03:21 +505: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker prose around 64 KiB is checked across bounded chunks -03:21 +506: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker isolates encoding and oversized-token failures -03:21 +507: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker normal, large, and superseded checks stay bounded -spelling benchmark: normal=4ms large/latest=182ms suggestion=0ms -03:21 +508: loading /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart -03:22 +508: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: rapid navigation applies only monotonic complete configurations -03:22 +509: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: a new Dart session can restart native revisions from one -03:22 +510: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal depth is an atomic overlay on the latest page state -03:22 +511: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal barrier is retained before the first page publishes -03:22 +512: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: older runners fall back once to the ordered legacy protocol -03:22 +513: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: failed atomic apply keeps the last success and retries the same desired state -03:22 +514: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: theme map contains the native semantic visual roles -03:22 +515: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: native header labels expose only application-menu commands -03:22 +516: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart -03:24 +516: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces -03:27 +517: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark -03:27 +518: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync -03:27 +519: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces -03:27 +520: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog -03:27 +521: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present -03:28 +522: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging -03:28 +523: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface -03:28 +524: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body -03:28 +525: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters -03:28 +526: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components -03:28 +527: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers -03:28 +528: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface -03:28 +529: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry -03:28 +530: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary -03:28 +531: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer -03:28 +532: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting -03:28 +533: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI -03:28 +534: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text -03:28 +535: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration -03:28 +536: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR -03:28 +537: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface -03:28 +538: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography -03:28 +539: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style -03:28 +540: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives -03:28 +541: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries -03:28 +542: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind -03:28 +543: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces -03:28 +544: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu -03:28 +545: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback -03:28 +546: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup -03:29 +547: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel -03:29 +548: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter -03:29 +549: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu -03:29 +550: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor -03:29 +551: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors -03:29 +552: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation -03:29 +553: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row -03:29 +554: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model -03:29 +555: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row -03:29 +556: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation -03:29 +557: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span -03:29 +558: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout -03:29 +559: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts -03:29 +560: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls -03:29 +561: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds -03:29 +562: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog -03:29 +563: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release -03:29 +564: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome -03:29 +565: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart -03:30 +565: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings -03:31 +566: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded -03:31 +567: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales -03:31 +568: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale -03:31 +569: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes -03:31 +570: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs -03:31 +571: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders -03:34 +572: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct -03:34 +573: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed -03:34 +574: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys -03:34 +575: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale -03:34 +576: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose -03:34 +577: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches -03:34 +578: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form -03:34 +579: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural -03:34 +580: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology -03:34 +581: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations -03:34 +582: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits -03:34 +583: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English -03:34 +584: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog -03:34 +585: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args -03:34 +586: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart -03:35 +586: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks pasted rich content completely in both editors -03:44 +587: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: packaged catalog opens real regional and non-Latin dictionaries -Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff -03:52 +588: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks the general Markdown fixture completely -03:55 +589: loading /home/albert/busystack/busymark/test/src/command_registry_test.dart -03:55 +589: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog includes every editor command with an executable callback -03:55 +590: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog exposes stable unique IDs for all migrated shortcuts -03:55 +591: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects duplicate command IDs -03:55 +592: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects shortcut conflicts in the same command scope -03:55 +593: /home/albert/busystack/busymark/test/src/command_registry_test.dart: allows the same shortcut in distinct focus scopes -03:55 +594: /home/albert/busystack/busymark/test/src/command_registry_test.dart: executes only visible enabled bound commands -03:55 +595: /home/albert/busystack/busymark/test/src/command_registry_test.dart: contextual commands execute against the captured editor -03:56 +596: loading /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart -03:58 +596: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: Linux packages secure AI credential storage consistently -03:58 +597: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: real local AI qualification covers every shipped action -03:58 +598: loading /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart -04:00 +598: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: source line bounds treat offsets as insertion positions -04:00 +599: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: table cell spans respect meaningful outer pipes and escaping -04:00 +600: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: escaped terminal pipes remain in the final cell source span -04:00 +601: loading /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart -04:05 +601: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide preview fits identically through D2 and WebKit renderers -04:05 +602: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide PDF fits identically through D2 and WebKit renderers -04:05 +603: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: area-constrained PDF fits identically through D2 and WebKit renderers -04:05 +604: loading /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart -04:06 +604: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: real installed catalog has six default families and 22 bundled TGDP topics -04:07 +605: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: literal substitution is simultaneous, case-sensitive, XML-only escaped -04:07 +606: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save source matches installed first-match substring behavior -04:07 +607: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: TGDP brace escaping preserves attribute blocks and rewrites relative links -04:07 +608: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save, unique naming, restart, cancellation snapshot and stale edit rejection -04:08 +609: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: concurrent saves serialize without losing templates -04:08 +610: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: true) -04:08 +611: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: false) -04:08 +612: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: corrupt and symbolic-link stores are never replaced -04:08 +613: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: builtin overrides persist independently and reset reveals original source -04:08 +614: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: template bytes are published in the guarded creation transaction and rolled back on conflict -04:08 +615: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: invalid XML templates and colliding root IDs never publish a topic or TOC edit -04:08 +616: loading /home/albert/busystack/busymark/test/src/writerside_test.dart -04:09 +616: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses writerside.cfg directories and registered instances -04:09 +617: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented full writerside.cfg metadata -04:09 +618: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented config defaults -04:09 +619: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses attribute defaults for present config elements -04:09 +620: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented topic title overrides and web file names -04:09 +621: /home/albert/busystack/busymark/test/src/writerside_test.dart: Markdown web filename metadata ignores literal examples -04:09 +622: /home/albert/busystack/busymark/test/src/writerside_test.dart: XML topic metadata is scoped to direct topic children -04:09 +623: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses .tree metadata and TOC hierarchy -04:09 +624: /home/albert/busystack/busymark/test/src/writerside_test.dart: Writerside topic XML exposes semantic math to the shared preview -04:10 +625: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads basic Writerside project with topics and no missing topic diagnostics -04:10 +626: /home/albert/busystack/busymark/test/src/writerside_test.dart: does not parse a Writerside config above the byte limit -04:10 +627: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects configured paths outside the module root -04:10 +628: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a configured topic root reached through a symlink -04:10 +629: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a Writerside config file reached through a symlink -04:10 +630: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads project.ihp as an equivalent Writerside config file -04:10 +631: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads topics from multiple configured topic roots -04:10 +632: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves exact topic reference before basename fallback -04:10 +633: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports duplicate topic IDs in a help module -04:10 +634: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename fallback after exact matching misses -04:10 +635: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves Markdown links across configured topic roots -04:10 +636: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename topic references deterministically -04:10 +637: /home/albert/busystack/busymark/test/src/writerside_test.dart: broken Writerside project produces deterministic diagnostics -04:10 +638: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves basename images in nested Writerside image directories -04:10 +639: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves local images from secondary configured image roots -04:10 +640: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses the documented instance tree elements and attributes -04:10 +641: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects redirect-source attributes on empty TOC groups -04:10 +642: /home/albert/busystack/busymark/test/src/writerside_test.dart: module service retains empty-group redirect-source diagnostics -04:10 +643: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves registered TOC libraries, filters, groups, and cross-instance refs -04:10 +644: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports circular reusable tree includes without recursing -04:10 +645: /home/albert/busystack/busymark/test/src/writerside_test.dart: included content still requires a regular instance home page -04:10 +646: /home/albert/busystack/busymark/test/src/writerside_test.dart: ignores status-specific values for general instance settings -04:10 +647: /home/albert/busystack/busymark/test/src/writerside_test.dart: conformance fixture is a valid openable Writerside module -04:11 +648: loading /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart -04:11 +648: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: narrow title stays centered between the controls when resized -04:12 +649: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.rtl -04:12 +650: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.ltr -04:12 +651: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.rtl -04:12 +652: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.ltr -04:12 +653: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.dark seam paints the same subtle color across header and body -04:12 +654: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.light seam paints the same subtle color across header and body -04:12 +655: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: one viewport owns the full-height sidebar edge at every frame -04:12 +656: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: unrelated rebuild preserves partial progress and body state -04:12 +657: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: breakpoint settlement is immediate and retained state survives -04:12 +658: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: RTL and fractional device pixels share one snapped edge -04:12 +659: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: divider follows the snapped physical viewport while opening and closing -04:12 +660: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: animation setting settles a running reveal to its logical target -04:12 +661: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header receives only the presented system-control obstruction -04:12 +662: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: frame is the single owner of the full-height sidebar seam -04:12 +663: loading /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart -04:14 +663: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: tree-to-editor sync opens selected topic even with a .tree editor active -04:19 +664: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: editor-to-TOC sync resolves qualified identities and chooses breadth-first occurrence -04:22 +665: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: live removal dialog uses documented confirmation, redirect label and usage count -04:26 +666: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: New Topic surfaces expose local Markdown import only at root/sibling -04:28 +667: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty MD Topic creates an editable document when Reading mode is active, preserving other tabs -04:32 +668: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty XML Topic creates an editable document when Reading mode is active, preserving other tabs -04:35 +669: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Topic from Template... creates an editable document when Reading mode is active, preserving other tabs -04:38 +670: loading /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart -04:39 +670: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: header Escape preserves the query for the next search -04:40 +671: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: search fallback uses the normal Yaru-themed entry geometry -04:40 +672: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: focus request targets the themed text entry -04:40 +673: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: Escape clears the query and closes the owner -04:41 +674: loading /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart -04:41 +674: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: row titles, markers and included source identity use selected context -04:44 +675: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking retains source bytes and rejects a now-present candidate -04:44 +676: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: home reassignment preserves other instances and unrelated attributes -04:44 +677: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty instance -04:44 +678: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: groups only -04:44 +679: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing home -04:44 +680: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: library -04:45 +681: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty group insertion -04:45 +682: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing nested topic -04:45 +683: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: first linked topic and home assignment share the same publication guard -04:45 +684: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: title transaction rolls back both files on a concurrent dirty-buffer guard -04:45 +685: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: XML duplicate copies source, changes only root ID, adds basic sibling -04:45 +686: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: sort revalidates title dependencies before publishing the tree -04:46 +687: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: safe deletion rechecks dirty-buffer guard and rolls back earlier edits -04:46 +688: loading /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart -04:50 +688: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: repeated list includes restart numbering in the final PDF -04:50 +689: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF keeps alphabetic starts, separate decimal lists and procedure numbering -04:50 +690: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (unknown) -04:51 +691: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (shared-pdf) -04:51 +692: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=false -04:51 +693: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=true -04:51 +694: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=true) -04:51 +695: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=false) -04:51 +696: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: bundled Typst compiles semantic tables, anchors and glossary footnotes -04:51 +697: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF retains nested chapter bodies and resolves unique internal destinations -04:51 +698: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic links retain their PDF destinations -04:51 +699: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic blank lines remain explicit in Writerside PDF -04:51 +700: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native export composes the selected instance without a container runtime -04:52 +701: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: hidden topics remain content and toc-title stays navigation-only -04:52 +702: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: referenced diagrams keep resolved source and all tab panels reach PDF -04:54 +703: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: pre-cancelled native export never starts PDF compilation -04:54 +704: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unknown Writerside instance is rejected before compilation -04:54 +705: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: resolution errors prevent PDF compilation -04:54 +706: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation errors prevent PDF compilation -04:54 +707: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation warnings are returned to the caller -04:54 +708: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: nonfatal resolution diagnostics are returned as PDF warnings -04:54 +709: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native exporter failures use Writerside failure codes -04:55 +710: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native Writerside fixture compiles end to end with bundled Typst -04:55 +711: loading /home/albert/busystack/busymark/test/src/clipboard_history_test.dart -04:56 +711: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains newest first, deduplicates, removes, clears, and evicts by count -04:56 +712: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: accounts byte budget and rejects an oversized item without truncation -04:56 +713: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: collection off leaves existing entries and blocks new retention -04:56 +714: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external clipboard remains transient until explicitly retained -04:56 +715: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external HTML keeps its rich and interoperable text representations -04:56 +716: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current HTML-only clipboard is eligible without internal ownership -04:56 +717: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current source-only clipboard does not invent plain text -04:56 +718: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal visible text with different structure stays distinct -04:56 +719: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal relative markup from different origins stays distinct -04:56 +720: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains whitespace-only text and owns image bytes immutably -04:56 +721: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: a new provider session starts with no retained history -04:56 +722: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: insertion registry follows latest target and never retains disposed targets -04:56 +723: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: unknown token cannot recover rich data through equal plain text -04:56 +724: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: rich ownership is byte bounded and shares equivalent media -04:56 +725: loading /home/albert/busystack/busymark/test/src/ai_reliability_test.dart -05:00 +725: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator honors Retry-After and caps retry attempts -05:00 +726: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator never retries after partial output -05:00 +727: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator bounds all retries by one total deadline -05:00 +728: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: global permit pool limits requests across different targets -05:00 +729: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: request-id cancellation cannot cancel a newer request for the target -05:00 +730: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: model fallback stays inside the explicitly selected provider -05:00 +731: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Ollama uses an absolute deadline even while bytes keep arriving -05:00 +732: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: cancellation interrupts the preliminary Ollama model request -05:00 +733: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Retry-After supports seconds and HTTP dates without negatives -05:00 +734: loading /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart -05:05 +734: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: partially formatted URL source offsets and text atoms survive save and edit -05:05 +735: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: URL punctuation beside surrounding formatting retains literal and style boundaries -05:05 +736: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: surrounding formatting commits the same URL editing semantics as reopening -05:06 +737: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL trailing literal punctuation survives serialization and reparse -05:06 +738: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: © -05:06 +739: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: & -05:06 +740: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: &* -05:06 +741: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: © -05:06 +742: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: & -05:06 +743: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: &* -05:06 +744: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.commonMark -05:06 +745: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.writersideMarkdown -05:06 +746: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: descendant whitespace preservation prevents ancestor trimming -05:06 +747: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: ordinary and metadata inline emission are byte-identical -05:06 +748: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL offsets and text atoms stay exact through Enter, edit and save/reparse -05:06 +749: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare leaf links use raw URL positions and explicit equal-label links retain delimiters -05:06 +750: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: grouped breaks retain distinct source provenance in one traversal -05:06 +751: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: text-leaf atoms use interior spans and exclude delimiters -05:06 +752: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: table escaping translates leaf spans without changing source -05:06 +753: loading /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart -05:07 +753: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: semantic catalog uses the exact native GTK icon names -05:07 +754: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: initial load batches direction variants and preserves candidate order -05:07 +755: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: explicit Back role survives atomic theme and scale catalog replacement -05:09 +756: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart -05:13 +756: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -05:14 +757: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback -05:14 +758: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -05:14 +759: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error -05:14 +760: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token -05:14 +761: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails -05:15 +762: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache -05:15 +763: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox -05:15 +764: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret -05:15 +765: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry -05:15 +766: loading /home/albert/busystack/busymark/test/src/feedback_service_test.dart -05:19 +766: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: posts the serialized request and returns the server reference -05:19 +767: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps connection failures -05:19 +768: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps response timeouts -05:19 +769: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 429 and preserves Retry-After -05:19 +770: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 400 and 422 to rejected request failures -05:19 +771: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps server and malformed-response failures to server errors -05:19 +772: loading /home/albert/busystack/busymark/test/src/app_settings_test.dart -05:22 +772: /home/albert/busystack/busymark/test/src/app_settings_test.dart: hydration and redundant sidebar requests do not count as user transitions -05:22 +773: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior defaults protect unsaved changes -05:22 +774: /home/albert/busystack/busymark/test/src/app_settings_test.dart: reopen workspace setting is migration-safe -05:22 +775: /home/albert/busystack/busymark/test/src/app_settings_test.dart: document view mode defaults to editor -05:22 +776: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save defaults to enabled -05:22 +777: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings have bounded privacy-preserving defaults -05:22 +778: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings validate persisted ranges and absolute exclusions -05:22 +779: /home/albert/busystack/busymark/test/src/app_settings_test.dart: AI defaults disabled and provider settings never persist secrets -05:22 +780: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction defaults to horizontal -05:22 +781: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction round-trips through settings JSON -05:22 +782: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote images default to blocked -05:22 +783: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspaces default to untrusted -05:22 +784: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy preview visibility migrates to source mode when hidden -05:22 +785: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language defaults to system locale -05:22 +786: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language override persists as locale tag -05:22 +787: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy Norwegian locale tag migrates to Bokmal -05:22 +788: /home/albert/busystack/busymark/test/src/app_settings_test.dart: supported script variants canonicalize to the available catalog -05:22 +789: /home/albert/busystack/busymark/test/src/app_settings_test.dart: regional variants canonicalize and unsupported tags are discarded -05:22 +790: /home/albert/busystack/busymark/test/src/app_settings_test.dart: unused product settings are not persisted -05:22 +791: /home/albert/busystack/busymark/test/src/app_settings_test.dart: file settings store keeps the live JSON intact until publication -05:22 +792: /home/albert/busystack/busymark/test/src/app_settings_test.dart: failed settings publication preserves the previous valid JSON -05:22 +793: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior settings persist -05:22 +794: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save setting persists -05:22 +795: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction setting persists -05:22 +796: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Writerside instance selection and icon color persist across renames -05:22 +797: /home/albert/busystack/busymark/test/src/app_settings_test.dart: initial load preserves user actions made before it completes -05:22 +798: /home/albert/busystack/busymark/test/src/app_settings_test.dart: removing a recent workspace persists without affecting files -05:22 +799: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote image permissions persist globally and per workspace -05:22 +800: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust persists, normalizes, and can be cleared -05:22 +801: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust follows the canonical workspace identity -05:22 +802: /home/albert/busystack/busymark/test/src/app_settings_test.dart: stored Git trust does not follow a replaced canonical path -05:22 +803: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git trust preserves leading and trailing path whitespace -05:22 +804: loading /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart -05:25 +804: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: different live prose still reports incomplete instead of guessed mapping -05:25 +805: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: general Markdown fixture has complete Source and rich spelling mappings -05:26 +806: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: live HTML paste preserves prose and maps spelling before a reload -05:26 +807: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: pasted job maps tables, trailing HTML breaks and address barriers -05:26 +808: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: closing hashes are heading syntax only in an ATX heading -05:26 +809: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal unresolved and invalid apparent links checkable -05:26 +810: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection resolves only parser-recognized links and images across revisions -05:26 +811: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal trailing braces in paragraph and heading prose -05:27 +812: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection binds recognized images to their exact source occurrence -05:27 +813: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection orders formatting from image labels and surrounding body -05:27 +814: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognizes nested syntax inside exact image descriptions -05:27 +815: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes only trailing attributes recognized by the current mode -05:27 +816: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata does not split a surrounding Markdown word -05:27 +817: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection corrects a Markdown body word across independent metadata -05:27 +818: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps repeated and formatted prose without searching globally -05:27 +819: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps entities, escapes, links, and table cells source exact -05:27 +820: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps CRLF and repeated occurrence targets exact -05:27 +821: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses barriers around excluded authored syntax -05:27 +822: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes a fenced code block nested in a block quote -05:27 +823: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps quoted list fences across blank continuations -05:27 +824: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection counts tab columns in list fence continuations -05:27 +825: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps unmatched delimiters and removes only parsed formatting -05:27 +826: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps quoted HTML attribute values from quote boundaries -05:27 +827: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection preserves semantic HTML boundaries and multiline exclusions -05:27 +828: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps comparison prose and scans multiline HTML tags exactly -05:27 +829: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps escaped multiline tag-like prose checkable -05:27 +830: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection removes delimiters when a correction empties formatting -05:27 +831: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses parser-compatible percentages escapes and code spans -05:27 +832: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection retains complete formatting ancestors across opaque children -05:27 +833: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection validates formatting gaps in regional coordinates -05:27 +834: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection accepts canonically equivalent mapped replacement text -05:27 +835: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link titles use exact quote boundaries before trailing whitespace -05:27 +836: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized link and image titles use their authored boundaries -05:27 +837: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection destination-only links and images do not expose a false title -05:27 +838: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized multiline links consume one mapped occurrence -05:27 +839: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline link labels keep container prefixes out of prose -05:27 +840: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline mapped labels agree with rich prose and corrections -05:27 +841: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection inline HTML breaks in link labels agree with rich prose -05:27 +842: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection code-styled image alternative text agrees with rich image field -05:27 +843: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code and Markdown hard breaks retain image alt semantics -05:27 +844: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code hard-break corrections retain authored source -05:27 +845: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: list -05:27 +846: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: quote -05:27 +847: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: crlf-after-content -05:27 +848: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: combined-quote-list -05:27 +849: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: nested-image -05:27 +850: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-inner-spaces -05:27 +851: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-continuation-space -05:27 +852: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: literal-code-syntax -05:27 +853: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested image code inherits the enclosing container mapping -05:27 +854: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link title keeps literal inline-break markup as scalar text -05:27 +855: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline code inside a link label stays opaque -05:27 +856: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline nested-image destination stays outside outer prose -05:27 +857: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested label syntax owns its breaks before outer prose resumes -05:27 +858: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata scalar tag-like text remains checkable -05:27 +859: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection parenthesized title replacement escapes its own delimiter -05:27 +860: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection semantic leaf blocks define independent complete prose runs -05:27 +861: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection projects semantic HTML prose and trusts parser math nodes -05:27 +862: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection large formatting-heavy projection and correction stay bounded -05:28 +863: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps inline body words intact across readable attributes -05:28 +864: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection corrects XML body and encoded metadata independently -05:28 +865: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes visible addresses in encoded text and CDATA -05:28 +866: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps text, entities, CDATA, and positive attributes -05:28 +867: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection reports malformed XML as incomplete without guessed targets -05:28 +868: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection clips CDATA occurrences while preserving repeated surrounding text -05:28 +869: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps line breaks, excludes variables, and includes controls -05:28 +870: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes entity-encoded variables after XML decoding -05:28 +871: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps decomposed Unicode in XML and CDATA corrections -05:28 +872: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction nested image descriptions retain recursive spelling policy -05:28 +873: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed rich correction preserves images beside math -05:28 +874: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed table image and math correction preserves cell source -05:28 +875: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction neighboring prose in a math image field keeps exact source -05:28 +876: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image ownership continues across ordinary and math fields -05:28 +877: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image description spelling agrees across source and rich fields -05:28 +878: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich image spelling changes only the mapped source word -05:28 +879: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction container image code corrects after continuation in rich editor -05:28 +880: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction code-styled image alternative corrects through rich controller -05:28 +881: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image code punctuation correction retains literal code meaning -05:28 +882: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction multiline link label correction uses rich controller mapping -05:28 +883: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: # Introduction - -- [Overview](#overview) - - [Motivation](#motivation) -- [Discussion](#discussion) - - -## Overview - -helo **world** - -helo world - -05:28 +884: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - helo - - helo - -helo - -05:28 +885: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - -helo - -05:28 +886: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction escaped comment prose is still an editable rich spelling field -05:28 +887: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps hard breaks by structural field identity -05:28 +888: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction removes a rich formatting container emptied by deletion -05:28 +889: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction retains current source anchors and source-only title targets -05:28 +890: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich links keep all title delimiters source-only -05:28 +891: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves formatting ownership across leaves -05:28 +892: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction keeps trailing formatting on its original leaf -05:28 +893: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves link destination and table structure -05:28 +894: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps and corrects a table-cell field containing inline math -05:28 +895: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects transformed prose in table math source fields -05:28 +896: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects formatted and encoded prose in math source fields -05:28 +897: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction owns every nested wrapper in paragraph math-source fields -05:28 +898: loading /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart -05:30 +898: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: validates availability, finite normalized RGB and payload shape -05:30 +899: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: attaches before snapshot and rejects a superseded snapshot -05:30 +900: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: replays current value, deduplicates and safely resubscribes -05:30 +901: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: missing channels are unavailable and cancellable -05:30 +902: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while snapshot is pending discards its result -05:30 +903: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: silent channels expire locally and unsuperseded late snapshot recovers -05:30 +904: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: new unavailable event invalidates older read and deadline -05:30 +905: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while both native calls pending rejects late errors -05:30 +906: loading /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart -05:32 +906: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project scaffold and loads without diagnostics -05:36 +907: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: derives the starter topic filename from its title -05:36 +908: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project with Unicode directory and instance ID -05:36 +909: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: escapes XML-sensitive project names in writerside.cfg -05:36 +910: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: sanitizes start topic title as plain Markdown heading text -05:36 +911: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects existing non-empty target directory and does not overwrite files -05:36 +912: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects an existing project target symlink without writing through it -05:36 +913: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: canonicalizes a project parent selected through a symlink -05:36 +914: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects unsafe create request names before writing files -05:36 +915: loading /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart -05:38 +915: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: cover edits survive toggling and format changes, validate, reset, and do not leak through preferences -05:41 +916: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: instance changes refresh automatic fields without replacing edited or cleared text -05:42 +917: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: settings without a document show only the reusable cover preference -05:42 +918: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Markdown forwards current defaults and export-owned text -05:43 +919: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Writerside forwards current defaults and export-owned text -05:44 +920: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Markdown forwards current defaults and export-owned text -05:44 +921: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Writerside forwards current defaults and export-owned text -05:45 +922: loading /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart -05:46 +922: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: README screenshot references resolve to checked-in images -05:46 +923: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: release metadata is consistent and production-grade -05:46 +924: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: web engines are exact, checksummed, licensed, and installed offline -05:46 +925: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: D2 is checksum pinned for amd64 and installed with notices -05:46 +926: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: Linux CI builds and exercises the bundled visualization stack -05:46 +927: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: only offscreen WebKit views disable hardware compositing -05:46 +928: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: WebKit host and harness disable persistence and external resources -05:46 +929: loading /home/albert/busystack/busymark/test/src/workspace_safety_test.dart -05:47 +929: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes dialog aborts destructive navigation on cancel -05:48 +930: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discarding unsaved changes prevents repeated prompts -05:48 +931: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: destructive dialog buttons stay readable on dark controls -05:48 +932: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes Discard action renders white in the dark dialog -05:48 +933: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overwrite confirmation stays pinned to the document being saved -05:48 +934: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overlapping manual saves write the newer requested revision -05:48 +935: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: save completes for its buffer when the active document changes -05:48 +936: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As stays pinned while the file picker is open -05:48 +937: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancel does not overwrite an existing normalized markdown path -05:48 +938: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As overwrites an existing normalized markdown path only after confirmation -05:48 +939: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancels when the document changes during path lookup -05:48 +940: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discard confirmation cannot discard a newly active document -05:48 +941: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: workspace continuation resolves inactive dirty documents too -05:48 +942: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can save it while another stays dirty -05:49 +943: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can discard it while another stays dirty -05:49 +944: loading /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart -05:50 +944: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar update retries native channel initialization after early miss -05:50 +945: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar forwards text direction updates -05:50 +946: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar action events preserve repeated identical clicks -05:50 +947: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: native search events and focus request keep semantic meaning -05:50 +948: loading /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart -05:56 +948: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source pastes a web layout table as a complete document -05:57 +949: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (current) -05:58 +950: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (find next) -05:58 +951: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (current) -05:58 +952: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (find next) -05:59 +953: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3 matches -05:59 +954: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3000 matches -06:00 +955: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search navigation retains a later window when unfolding -06:01 +956: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling review caret uses full offsets after an earlier fold -06:01 +957: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling reveal unfolds and retains the word selection -06:01 +958: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Markdown spelling painter ignores selection and tracks composition -06:01 +959: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Writerside Markdown spelling painter ignores selection and tracks composition -06:01 +960: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source XML spelling painter ignores selection and tracks composition -06:01 +961: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI action applies a selection through the editor path -06:01 +962: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu targets the pointer occurrence exactly -06:01 +963: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling language uses a checked native submenu without a dialog -06:02 +964: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu converts folded offsets to full source -06:02 +965: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI applies a user-selected insertion target -06:02 +966: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor remains LTR inside an Arabic interface -06:02 +967: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor shows large-file fallback status -06:24 +968: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor renders visible diagnostic gutter tooltip -06:24 +969: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search localizes an invalid regular expression -06:24 +970: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search reports no current match before navigation -06:24 +971: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source fold and search options use semantic icon buttons -06:25 +972: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace All is one editor operation -06:25 +973: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace and Find Next selects the logical next match -06:25 +974: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: shifted folded regions are persisted after edit debounce -06:25 +975: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source sessions ignore render notifications and coalesce scrolling -06:25 +976: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor gives glyphs, caret, and selection breathing room -06:25 +977: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading selections cover styled glyphs evenly -06:25 +978: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading caret advances after a typed space -06:25 +979: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source caret follows an immediate end-of-file contraction -06:25 +980: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Tab indents selected Source lines without replacing text -06:25 +981: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source symbol shortcuts dispatch the full source caret -06:25 +982: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Ctrl+Space opens project-aware source completion -06:26 +983: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: wordWrap false uses one horizontally scrollable layout -06:26 +984: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source input preserves an active IME composing range -06:26 +985: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Enter to the input method -06:26 +986: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Tab to the input method -06:26 +987: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers autocomplete Escape to the input method -06:26 +988: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers the autocomplete shortcut -06:26 +989: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: focused Source accepts authoritative parent text updates -06:26 +990: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source keyboard copy retains exact whitespace once -06:26 +991: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source normal HTML paste converts while plain paste uses text -06:26 +992: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source CRLF structured paste is one exact undo transaction -06:26 +993: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source plain paste keeps LF bytes in a CRLF document -06:26 +994: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste keeps surrounding text inline -06:26 +995: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured block paste adds Markdown boundaries -06:26 +996: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks keep boundaries at every position - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#225bf(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#359da, undoController: UndoHistoryController#fbf6e(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#f4baa(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#24146]], state: _TextFieldState#00dda), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#76e5a -The hit test result at that offset is: HitTestResult(RenderMouseRegion#a76bc@Offset(425.5, 300.0), RenderSemanticsAnnotations#84d43@Offset(425.5, 300.0), RenderPointerListener#d2a23@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c8d47@Offset(425.5, 300.0), RenderExcludeSemantics#446e1@Offset(425.5, 300.0), RenderBlockSemantics#33b84@Offset(425.5, 300.0), RenderIgnorePointer#06b5a@Offset(425.5, 300.0), RenderSemanticsAnnotations#a0cc8@Offset(425.5, 300.0), _RenderTheater#8e663@Offset(425.5, 300.0), RenderAbsorbPointer#3d4ef@Offset(425.5, 300.0), RenderPointerListener#4c5ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#517ae@Offset(425.5, 300.0), RenderCustomPaint#87b01@Offset(425.5, 300.0), RenderSemanticsAnnotations#b3ed2@Offset(425.5, 300.0), RenderSemanticsAnnotations#d7f97@Offset(425.5, 300.0), RenderSemanticsAnnotations#cf42b@Offset(425.5, 300.0), RenderTapRegionSurface#83a9a@Offset(425.5, 300.0), RenderSemanticsAnnotations#78eaf@Offset(425.5, 300.0), RenderSemanticsAnnotations#92831@Offset(425.5, 300.0), HitTestEntry#61cb0(_ReusableRenderView#15fff), HitTestEntry#ec2a1()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2597:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:26 +997: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete heading list and code blocks retain structure at every paragraph position - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#89f57(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b81a4, undoController: UndoHistoryController#16081(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#af290(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#f4c32]], state: _TextFieldState#5e3c7), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#de15c -The hit test result at that offset is: HitTestResult(RenderMouseRegion#eb236@Offset(425.5, 300.0), RenderSemanticsAnnotations#6ad61@Offset(425.5, 300.0), RenderPointerListener#378c6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#37179@Offset(425.5, 300.0), RenderExcludeSemantics#d730d@Offset(425.5, 300.0), RenderBlockSemantics#ec7cd@Offset(425.5, 300.0), RenderIgnorePointer#c483d@Offset(425.5, 300.0), RenderSemanticsAnnotations#0843f@Offset(425.5, 300.0), _RenderTheater#ea447@Offset(425.5, 300.0), RenderAbsorbPointer#aee3c@Offset(425.5, 300.0), RenderPointerListener#3a06d@Offset(425.5, 300.0), RenderSemanticsAnnotations#3bc51@Offset(425.5, 300.0), RenderCustomPaint#52ec8@Offset(425.5, 300.0), RenderSemanticsAnnotations#89fca@Offset(425.5, 300.0), RenderSemanticsAnnotations#b0bbf@Offset(425.5, 300.0), RenderSemanticsAnnotations#8895d@Offset(425.5, 300.0), RenderTapRegionSurface#72cc6@Offset(425.5, 300.0), RenderSemanticsAnnotations#007f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#14f88@Offset(425.5, 300.0), HitTestEntry#6b471(_ReusableRenderView#15fff), HitTestEntry#77269()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#89f57(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b81a4, undoController: UndoHistoryController#16081(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#af290(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#f4c32]], state: _TextFieldState#5e3c7), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#de15c -The hit test result at that offset is: HitTestResult(RenderMouseRegion#e1cde@Offset(425.5, 300.0), RenderSemanticsAnnotations#98b76@Offset(425.5, 300.0), RenderPointerListener#3d318@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c3e98@Offset(425.5, 300.0), RenderExcludeSemantics#ab2d4@Offset(425.5, 300.0), RenderBlockSemantics#a036d@Offset(425.5, 300.0), RenderIgnorePointer#1a161@Offset(425.5, 300.0), RenderSemanticsAnnotations#048d3@Offset(425.5, 300.0), _RenderTheater#ea447@Offset(425.5, 300.0), RenderAbsorbPointer#aee3c@Offset(425.5, 300.0), RenderPointerListener#3a06d@Offset(425.5, 300.0), RenderSemanticsAnnotations#3bc51@Offset(425.5, 300.0), RenderCustomPaint#52ec8@Offset(425.5, 300.0), RenderSemanticsAnnotations#89fca@Offset(425.5, 300.0), RenderSemanticsAnnotations#b0bbf@Offset(425.5, 300.0), RenderSemanticsAnnotations#8895d@Offset(425.5, 300.0), RenderTapRegionSurface#72cc6@Offset(425.5, 300.0), RenderSemanticsAnnotations#007f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#14f88@Offset(425.5, 300.0), HitTestEntry#603e7(_ReusableRenderView#15fff), HitTestEntry#7ca25()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#89f57(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#b81a4, undoController: UndoHistoryController#16081(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#af290(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#f4c32]], state: _TextFieldState#5e3c7), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#de15c -The hit test result at that offset is: HitTestResult(RenderMouseRegion#dec27@Offset(425.5, 300.0), RenderSemanticsAnnotations#97f66@Offset(425.5, 300.0), RenderPointerListener#dda27@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bc35d@Offset(425.5, 300.0), RenderExcludeSemantics#8c12b@Offset(425.5, 300.0), RenderBlockSemantics#702f0@Offset(425.5, 300.0), RenderIgnorePointer#04f4c@Offset(425.5, 300.0), RenderSemanticsAnnotations#e5c75@Offset(425.5, 300.0), _RenderTheater#ea447@Offset(425.5, 300.0), RenderAbsorbPointer#aee3c@Offset(425.5, 300.0), RenderPointerListener#3a06d@Offset(425.5, 300.0), RenderSemanticsAnnotations#3bc51@Offset(425.5, 300.0), RenderCustomPaint#52ec8@Offset(425.5, 300.0), RenderSemanticsAnnotations#89fca@Offset(425.5, 300.0), RenderSemanticsAnnotations#b0bbf@Offset(425.5, 300.0), RenderSemanticsAnnotations#8895d@Offset(425.5, 300.0), RenderTapRegionSurface#72cc6@Offset(425.5, 300.0), RenderSemanticsAnnotations#007f1@Offset(425.5, 300.0), RenderSemanticsAnnotations#14f88@Offset(425.5, 300.0), HitTestEntry#35883(_ReusableRenderView#15fff), HitTestEntry#676f1()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:27 +998: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete-block split preserves styles caret and one-step Undo -06:27 +999: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source boundary-crossing replacements restore text selection and caret -06:27 +1000: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich inline paste composes with enclosing inline syntax - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#868fc(TextEditingValue(text: ┤[leftright](https://example.test)├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#080b0, undoController: UndoHistoryController#01f20(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#55c90(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#84844]], state: _TextFieldState#ab260), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#fd3b1 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#1e2d1@Offset(425.5, 300.0), RenderSemanticsAnnotations#94919@Offset(425.5, 300.0), RenderPointerListener#6fa4a@Offset(425.5, 300.0), RenderSemanticsGestureHandler#b81fa@Offset(425.5, 300.0), RenderExcludeSemantics#5ec9a@Offset(425.5, 300.0), RenderBlockSemantics#bbea2@Offset(425.5, 300.0), RenderIgnorePointer#ebdd5@Offset(425.5, 300.0), RenderSemanticsAnnotations#38339@Offset(425.5, 300.0), _RenderTheater#5f668@Offset(425.5, 300.0), RenderAbsorbPointer#8e8e6@Offset(425.5, 300.0), RenderPointerListener#6de6d@Offset(425.5, 300.0), RenderSemanticsAnnotations#6f1cd@Offset(425.5, 300.0), RenderCustomPaint#74c5a@Offset(425.5, 300.0), RenderSemanticsAnnotations#d6abb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4ca6c@Offset(425.5, 300.0), RenderSemanticsAnnotations#356df@Offset(425.5, 300.0), RenderTapRegionSurface#997ad@Offset(425.5, 300.0), RenderSemanticsAnnotations#f7879@Offset(425.5, 300.0), RenderSemanticsAnnotations#677d0@Offset(425.5, 300.0), HitTestEntry#88eaf(_ReusableRenderView#15fff), HitTestEntry#ab9fc()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2945:28) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2999:22) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:27 +1001: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline reconciliation ignores separate destination runs -06:27 +1002: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source adjacent-style reconciliation preserves literal code delimiters -06:27 +1003: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation preserves a partially consumed delimiter -06:27 +1004: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table inline reconciliation is confined to the selected cell -06:27 +1005: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table keeps multiple independent incoming style runs -06:27 +1006: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source does not treat multiple incoming bold runs as one wrapper -06:27 +1007: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences with paragraph context -06:27 +1008: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences inside table cells -06:27 +1009: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table sequence reconciliation retains authored delimiters -06:27 +1010: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation retains mixed nested styles -06:30 +1011: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves hyperlink semantics in table cells -06:30 +1012: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline mapping handles links multiline styles and literal syntax -06:30 +1013: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret mapping preserves literal bang before a following link -06:30 +1014: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits resolved reference links without changing definitions -06:30 +1015: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits multiline blockquote links without exposing prefixes -06:30 +1016: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves occurrence-specific hard-break provenance -06:31 +1017: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret remains between pasted and retained hard breaks -06:31 +1018: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste after an HTML break does not retain its layout newline -06:31 +1019: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste preserves enclosing inline HTML as one run -06:31 +1020: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source system and history rich paste map normalized HTML whitespace -06:31 +1021: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source syntax-only availability agrees with textual fallback execution -06:31 +1022: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source terminal structured failure blocks availability and text fallback -06:31 +1023: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste remaps generated grouped hard breaks -06:31 +1024: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source remaps reopened grouped breaks in a CRLF container -06:31 +1025: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps nested and reference links through container prefixes -06:31 +1026: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves autolink destination semantics -06:31 +1027: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: invalid email-like text does not invalidate another link target -06:31 +1028: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste distinguishes authored and generated URL content -06:32 +1029: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves parser-folded reference identity -06:32 +1030: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source same-destination paste preserves parser-folded reference identity -06:32 +1031: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste retains the provenance of surviving line breaks -06:32 +1032: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste keeps label break provenance independent of link titles -06:32 +1033: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: normalized code-span breaks do not shift surviving link provenance -06:32 +1034: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste combines folded references with surviving break provenance -06:32 +1035: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste tracks old and new breaks independently -06:32 +1036: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reference-link label replacement retains definitions -06:32 +1037: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps escaped brackets in collapsed and shortcut references -06:33 +1038: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links around unmatched and code-span backticks -06:33 +1039: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links with escaped and balanced label brackets -06:33 +1040: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline wrapper mapping stays bounded for paste and availability -06:34 +1041: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps all retained break offsets in one serialization traversal -06:35 +1042: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source AST boundary mapping stays linear for availability and paste -06:35 +1043: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table paste preserves multiline link titles -06:35 +1044: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table boundary paste preserves styles caret and one-step history -06:35 +1045: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste handles every line boundary -06:36 +1046: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline paste preserves unrelated syntax whitespace and caret - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#a508d(TextEditingValue(text: ┤__leftright__├, selection: TextSelection.collapsed(offset: 10, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#56299, undoController: UndoHistoryController#968bc(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#f110e(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#21684]], state: _TextFieldState#6bc43), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#c3fb5 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#5e618@Offset(425.5, 300.0), RenderSemanticsAnnotations#f52e2@Offset(425.5, 300.0), RenderPointerListener#52e46@Offset(425.5, 300.0), RenderSemanticsGestureHandler#74345@Offset(425.5, 300.0), RenderExcludeSemantics#10673@Offset(425.5, 300.0), RenderBlockSemantics#8fe2c@Offset(425.5, 300.0), RenderIgnorePointer#3505e@Offset(425.5, 300.0), RenderSemanticsAnnotations#597d3@Offset(425.5, 300.0), _RenderTheater#79616@Offset(425.5, 300.0), RenderAbsorbPointer#7f477@Offset(425.5, 300.0), RenderPointerListener#b237a@Offset(425.5, 300.0), RenderSemanticsAnnotations#b0575@Offset(425.5, 300.0), RenderCustomPaint#f4c8b@Offset(425.5, 300.0), RenderSemanticsAnnotations#66007@Offset(425.5, 300.0), RenderSemanticsAnnotations#1d4e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#77fa2@Offset(425.5, 300.0), RenderTapRegionSurface#ce20b@Offset(425.5, 300.0), RenderSemanticsAnnotations#6e51f@Offset(425.5, 300.0), RenderSemanticsAnnotations#a50e1@Offset(425.5, 300.0), HitTestEntry#a537a(_ReusableRenderView#15fff), HitTestEntry#c291a()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6908:28) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6936:20) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:36 +1047: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table cells reconcile surrounding inline styles -06:36 +1048: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciliation reuses table-normalized inline content -06:36 +1049: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source whole-block replacement differs from surviving table and code contexts - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#6857a(TextEditingValue(text: ┤```text - old - ``` - ├, selection: TextSelection.collapsed(offset: 16, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#34930, undoController: UndoHistoryController#9d0a7(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5aa88(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#033c3]], state: _TextFieldState#f2a36), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#1bd01 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#45276@Offset(425.5, 300.0), RenderSemanticsAnnotations#08a56@Offset(425.5, 300.0), RenderPointerListener#8c312@Offset(425.5, 300.0), RenderSemanticsGestureHandler#36656@Offset(425.5, 300.0), RenderExcludeSemantics#fd9c5@Offset(425.5, 300.0), RenderBlockSemantics#54070@Offset(425.5, 300.0), RenderIgnorePointer#325e9@Offset(425.5, 300.0), RenderSemanticsAnnotations#49904@Offset(425.5, 300.0), _RenderTheater#77670@Offset(425.5, 300.0), RenderAbsorbPointer#df8b0@Offset(425.5, 300.0), RenderPointerListener#673dd@Offset(425.5, 300.0), RenderSemanticsAnnotations#9d9ab@Offset(425.5, 300.0), RenderCustomPaint#ec7a8@Offset(425.5, 300.0), RenderSemanticsAnnotations#b1fc1@Offset(425.5, 300.0), RenderSemanticsAnnotations#66230@Offset(425.5, 300.0), RenderSemanticsAnnotations#e26a9@Offset(425.5, 300.0), RenderTapRegionSurface#0accb@Offset(425.5, 300.0), RenderSemanticsAnnotations#c5cf7@Offset(425.5, 300.0), RenderSemanticsAnnotations#77931@Offset(425.5, 300.0), HitTestEntry#08c9d(_ReusableRenderView#15fff), HitTestEntry#51871()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7158:25) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:36 +1050: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paragraph markers escape only at block starts - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#61ccf(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#fe050, undoController: UndoHistoryController#8c2c8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#e2ebd(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#a56f3]], state: _TextFieldState#854d3), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#dee79 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#cc983@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0eb4@Offset(425.5, 300.0), RenderPointerListener#8f298@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bc3b4@Offset(425.5, 300.0), RenderExcludeSemantics#08e92@Offset(425.5, 300.0), RenderBlockSemantics#f6d4b@Offset(425.5, 300.0), RenderIgnorePointer#15d01@Offset(425.5, 300.0), RenderSemanticsAnnotations#95853@Offset(425.5, 300.0), _RenderTheater#9f47e@Offset(425.5, 300.0), RenderAbsorbPointer#71867@Offset(425.5, 300.0), RenderPointerListener#0c67e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ae011@Offset(425.5, 300.0), RenderCustomPaint#761d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#719f9@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b2be@Offset(425.5, 300.0), RenderSemanticsAnnotations#3edad@Offset(425.5, 300.0), RenderTapRegionSurface#4f7e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#22521@Offset(425.5, 300.0), RenderSemanticsAnnotations#812fd@Offset(425.5, 300.0), HitTestEntry#efbb8(_ReusableRenderView#15fff), HitTestEntry#8484d()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#61ccf(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#fe050, undoController: UndoHistoryController#8c2c8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#e2ebd(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#a56f3]], state: _TextFieldState#854d3), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#dee79 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#061dd@Offset(425.5, 300.0), RenderSemanticsAnnotations#eb24d@Offset(425.5, 300.0), RenderPointerListener#6433e@Offset(425.5, 300.0), RenderSemanticsGestureHandler#a8a2e@Offset(425.5, 300.0), RenderExcludeSemantics#abea6@Offset(425.5, 300.0), RenderBlockSemantics#50791@Offset(425.5, 300.0), RenderIgnorePointer#26af4@Offset(425.5, 300.0), RenderSemanticsAnnotations#ac2c5@Offset(425.5, 300.0), _RenderTheater#9f47e@Offset(425.5, 300.0), RenderAbsorbPointer#71867@Offset(425.5, 300.0), RenderPointerListener#0c67e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ae011@Offset(425.5, 300.0), RenderCustomPaint#761d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#719f9@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b2be@Offset(425.5, 300.0), RenderSemanticsAnnotations#3edad@Offset(425.5, 300.0), RenderTapRegionSurface#4f7e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#22521@Offset(425.5, 300.0), RenderSemanticsAnnotations#812fd@Offset(425.5, 300.0), HitTestEntry#248d1(_ReusableRenderView#15fff), HitTestEntry#1cd8d()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#61ccf(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#fe050, undoController: UndoHistoryController#8c2c8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#e2ebd(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#a56f3]], state: _TextFieldState#854d3), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#dee79 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#86184@Offset(425.5, 300.0), RenderSemanticsAnnotations#e8640@Offset(425.5, 300.0), RenderPointerListener#52805@Offset(425.5, 300.0), RenderSemanticsGestureHandler#b1fa0@Offset(425.5, 300.0), RenderExcludeSemantics#00ee4@Offset(425.5, 300.0), RenderBlockSemantics#b6d96@Offset(425.5, 300.0), RenderIgnorePointer#fd3bc@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1e7d@Offset(425.5, 300.0), _RenderTheater#9f47e@Offset(425.5, 300.0), RenderAbsorbPointer#71867@Offset(425.5, 300.0), RenderPointerListener#0c67e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ae011@Offset(425.5, 300.0), RenderCustomPaint#761d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#719f9@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b2be@Offset(425.5, 300.0), RenderSemanticsAnnotations#3edad@Offset(425.5, 300.0), RenderTapRegionSurface#4f7e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#22521@Offset(425.5, 300.0), RenderSemanticsAnnotations#812fd@Offset(425.5, 300.0), HitTestEntry#3e382(_ReusableRenderView#15fff), HitTestEntry#2ca1f()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7247:24) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#61ccf(TextEditingValue(text: ┤- right├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#fe050, undoController: UndoHistoryController#8c2c8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#e2ebd(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#a56f3]], state: _TextFieldState#854d3), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#dee79 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#67e24@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f048@Offset(425.5, 300.0), RenderPointerListener#23448@Offset(425.5, 300.0), RenderSemanticsGestureHandler#1f0a5@Offset(425.5, 300.0), RenderExcludeSemantics#e8545@Offset(425.5, 300.0), RenderBlockSemantics#9b886@Offset(425.5, 300.0), RenderIgnorePointer#38fec@Offset(425.5, 300.0), RenderSemanticsAnnotations#d402a@Offset(425.5, 300.0), _RenderTheater#9f47e@Offset(425.5, 300.0), RenderAbsorbPointer#71867@Offset(425.5, 300.0), RenderPointerListener#0c67e@Offset(425.5, 300.0), RenderSemanticsAnnotations#ae011@Offset(425.5, 300.0), RenderCustomPaint#761d6@Offset(425.5, 300.0), RenderSemanticsAnnotations#719f9@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b2be@Offset(425.5, 300.0), RenderSemanticsAnnotations#3edad@Offset(425.5, 300.0), RenderTapRegionSurface#4f7e4@Offset(425.5, 300.0), RenderSemanticsAnnotations#22521@Offset(425.5, 300.0), RenderSemanticsAnnotations#812fd@Offset(425.5, 300.0), HitTestEntry#59182(_ReusableRenderView#15fff), HitTestEntry#40212()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7277:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:36 +1051: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native inline paste preserves edge and only whitespace - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#3d379(TextEditingValue(text: ┤leftDELETEright├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#46e9e, undoController: UndoHistoryController#fd9b8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#3fb2c(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#023e1]], state: _TextFieldState#97004), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#5a5c3 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#80979@Offset(425.5, 300.0), RenderSemanticsAnnotations#0defe@Offset(425.5, 300.0), RenderPointerListener#d4d35@Offset(425.5, 300.0), RenderSemanticsGestureHandler#c9b04@Offset(425.5, 300.0), RenderExcludeSemantics#94656@Offset(425.5, 300.0), RenderBlockSemantics#9da12@Offset(425.5, 300.0), RenderIgnorePointer#c6e3f@Offset(425.5, 300.0), RenderSemanticsAnnotations#1793e@Offset(425.5, 300.0), _RenderTheater#b6079@Offset(425.5, 300.0), RenderAbsorbPointer#03434@Offset(425.5, 300.0), RenderPointerListener#1b1e3@Offset(425.5, 300.0), RenderSemanticsAnnotations#61ab0@Offset(425.5, 300.0), RenderCustomPaint#a84c3@Offset(425.5, 300.0), RenderSemanticsAnnotations#cf82c@Offset(425.5, 300.0), RenderSemanticsAnnotations#01ff8@Offset(425.5, 300.0), RenderSemanticsAnnotations#50710@Offset(425.5, 300.0), RenderTapRegionSurface#4ece9@Offset(425.5, 300.0), RenderSemanticsAnnotations#f16a5@Offset(425.5, 300.0), RenderSemanticsAnnotations#763e6@Offset(425.5, 300.0), HitTestEntry#6bac4(_ReusableRenderView#15fff), HitTestEntry#d0f1d()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7379:24) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:36 +1052: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native rich edge whitespace repeats and restores real Undo state -06:37 +1053: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paste respects table-cell semantics -06:37 +1054: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps a final table cell ending in an escaped pipe -06:37 +1055: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks preserve list and quote containers -06:37 +1056: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks remain in containers at every content boundary - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤> item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#56435 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#0126f@Offset(425.5, 300.0), RenderSemanticsAnnotations#217e1@Offset(425.5, 300.0), RenderPointerListener#07bf3@Offset(425.5, 300.0), RenderSemanticsGestureHandler#951b5@Offset(425.5, 300.0), RenderExcludeSemantics#97bd5@Offset(425.5, 300.0), RenderBlockSemantics#31624@Offset(425.5, 300.0), RenderIgnorePointer#79338@Offset(425.5, 300.0), RenderSemanticsAnnotations#ea468@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#bd646(_ReusableRenderView#15fff), HitTestEntry#9d4f5()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤> item - ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#56435 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#cfe46@Offset(425.5, 300.0), RenderSemanticsAnnotations#514f6@Offset(425.5, 300.0), RenderPointerListener#cb540@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bf03a@Offset(425.5, 300.0), RenderExcludeSemantics#f4cab@Offset(425.5, 300.0), RenderBlockSemantics#15922@Offset(425.5, 300.0), RenderIgnorePointer#7b160@Offset(425.5, 300.0), RenderSemanticsAnnotations#b783d@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#498f6(_ReusableRenderView#15fff), HitTestEntry#a54f0()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤- item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#56435 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#a55d7@Offset(425.5, 300.0), RenderSemanticsAnnotations#f02b9@Offset(425.5, 300.0), RenderPointerListener#1daf0@Offset(425.5, 300.0), RenderSemanticsGestureHandler#ab9e1@Offset(425.5, 300.0), RenderExcludeSemantics#8e689@Offset(425.5, 300.0), RenderBlockSemantics#3d523@Offset(425.5, 300.0), RenderIgnorePointer#85a92@Offset(425.5, 300.0), RenderSemanticsAnnotations#b3465@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#e532a(_ReusableRenderView#15fff), HitTestEntry#2c58c()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤- item - ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#56435 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#b35f6@Offset(425.5, 300.0), RenderSemanticsAnnotations#18ae7@Offset(425.5, 300.0), RenderPointerListener#3e2cf@Offset(425.5, 300.0), RenderSemanticsGestureHandler#359df@Offset(425.5, 300.0), RenderExcludeSemantics#5f63b@Offset(425.5, 300.0), RenderBlockSemantics#de4ad@Offset(425.5, 300.0), RenderIgnorePointer#40a69@Offset(425.5, 300.0), RenderSemanticsAnnotations#1a69b@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#8f461(_ReusableRenderView#15fff), HitTestEntry#2a8f1()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#3e8ba(TextEditingValue(text: ┤> 3. item├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#93b27, undoController: UndoHistoryController#63d97(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#cc439(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#7b1ef]], state: _TextFieldState#c137b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#56435 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#9b54e@Offset(425.5, 300.0), RenderSemanticsAnnotations#3ed76@Offset(425.5, 300.0), RenderPointerListener#c50aa@Offset(425.5, 300.0), RenderSemanticsGestureHandler#2ae8d@Offset(425.5, 300.0), RenderExcludeSemantics#125ee@Offset(425.5, 300.0), RenderBlockSemantics#4bcc3@Offset(425.5, 300.0), RenderIgnorePointer#a92f6@Offset(425.5, 300.0), RenderSemanticsAnnotations#391e6@Offset(425.5, 300.0), _RenderTheater#8edaf@Offset(425.5, 300.0), RenderAbsorbPointer#94bda@Offset(425.5, 300.0), RenderPointerListener#cb2ba@Offset(425.5, 300.0), RenderSemanticsAnnotations#db0e9@Offset(425.5, 300.0), RenderCustomPaint#98e0b@Offset(425.5, 300.0), RenderSemanticsAnnotations#936de@Offset(425.5, 300.0), RenderSemanticsAnnotations#d0962@Offset(425.5, 300.0), RenderSemanticsAnnotations#d1dcf@Offset(425.5, 300.0), RenderTapRegionSurface#c45ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e43c@Offset(425.5, 300.0), RenderSemanticsAnnotations#5700a@Offset(425.5, 300.0), HitTestEntry#93c00(_ReusableRenderView#15fff), HitTestEntry#bc39e()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:37 +1057: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks retain continuation-line ancestors - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#a2b69(TextEditingValue(text: ┤- first - leftright - ├, selection: TextSelection.collapsed(offset: 20, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#f146d, undoController: UndoHistoryController#1d616(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#4f818(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#40596]], state: _TextFieldState#03d21), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#827c3 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#be33c@Offset(425.5, 300.0), RenderSemanticsAnnotations#7f2bd@Offset(425.5, 300.0), RenderPointerListener#10db6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#ad10c@Offset(425.5, 300.0), RenderExcludeSemantics#fa731@Offset(425.5, 300.0), RenderBlockSemantics#dbebf@Offset(425.5, 300.0), RenderIgnorePointer#ac782@Offset(425.5, 300.0), RenderSemanticsAnnotations#59026@Offset(425.5, 300.0), _RenderTheater#a9403@Offset(425.5, 300.0), RenderAbsorbPointer#fefb6@Offset(425.5, 300.0), RenderPointerListener#8d82b@Offset(425.5, 300.0), RenderSemanticsAnnotations#31e65@Offset(425.5, 300.0), RenderCustomPaint#05b09@Offset(425.5, 300.0), RenderSemanticsAnnotations#8e6ca@Offset(425.5, 300.0), RenderSemanticsAnnotations#6c8ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#9da0b@Offset(425.5, 300.0), RenderTapRegionSurface#61864@Offset(425.5, 300.0), RenderSemanticsAnnotations#4c5df@Offset(425.5, 300.0), RenderSemanticsAnnotations#56379@Offset(425.5, 300.0), HitTestEntry#91f5a(_ReusableRenderView#15fff), HitTestEntry#db978()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#a2b69(TextEditingValue(text: ┤- first - - leftright - ├, selection: TextSelection.collapsed(offset: 21, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#f146d, undoController: UndoHistoryController#1d616(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#4f818(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#40596]], state: _TextFieldState#03d21), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#827c3 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#6bbdf@Offset(425.5, 300.0), RenderSemanticsAnnotations#e1211@Offset(425.5, 300.0), RenderPointerListener#07f2c@Offset(425.5, 300.0), RenderSemanticsGestureHandler#e70bb@Offset(425.5, 300.0), RenderExcludeSemantics#3a6d8@Offset(425.5, 300.0), RenderBlockSemantics#06abe@Offset(425.5, 300.0), RenderIgnorePointer#3862a@Offset(425.5, 300.0), RenderSemanticsAnnotations#4e2b0@Offset(425.5, 300.0), _RenderTheater#a9403@Offset(425.5, 300.0), RenderAbsorbPointer#fefb6@Offset(425.5, 300.0), RenderPointerListener#8d82b@Offset(425.5, 300.0), RenderSemanticsAnnotations#31e65@Offset(425.5, 300.0), RenderCustomPaint#05b09@Offset(425.5, 300.0), RenderSemanticsAnnotations#8e6ca@Offset(425.5, 300.0), RenderSemanticsAnnotations#6c8ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#9da0b@Offset(425.5, 300.0), RenderTapRegionSurface#61864@Offset(425.5, 300.0), RenderSemanticsAnnotations#4c5df@Offset(425.5, 300.0), RenderSemanticsAnnotations#56379@Offset(425.5, 300.0), HitTestEntry#db1dc(_ReusableRenderView#15fff), HitTestEntry#f3a43()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#a2b69(TextEditingValue(text: ┤> first - leftright - ├, selection: TextSelection.collapsed(offset: 18, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#f146d, undoController: UndoHistoryController#1d616(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#4f818(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#40596]], state: _TextFieldState#03d21), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#827c3 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#48065@Offset(425.5, 300.0), RenderSemanticsAnnotations#0fe42@Offset(425.5, 300.0), RenderPointerListener#209c1@Offset(425.5, 300.0), RenderSemanticsGestureHandler#df265@Offset(425.5, 300.0), RenderExcludeSemantics#43f94@Offset(425.5, 300.0), RenderBlockSemantics#1d8a0@Offset(425.5, 300.0), RenderIgnorePointer#90796@Offset(425.5, 300.0), RenderSemanticsAnnotations#650a2@Offset(425.5, 300.0), _RenderTheater#a9403@Offset(425.5, 300.0), RenderAbsorbPointer#fefb6@Offset(425.5, 300.0), RenderPointerListener#8d82b@Offset(425.5, 300.0), RenderSemanticsAnnotations#31e65@Offset(425.5, 300.0), RenderCustomPaint#05b09@Offset(425.5, 300.0), RenderSemanticsAnnotations#8e6ca@Offset(425.5, 300.0), RenderSemanticsAnnotations#6c8ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#9da0b@Offset(425.5, 300.0), RenderTapRegionSurface#61864@Offset(425.5, 300.0), RenderSemanticsAnnotations#4c5df@Offset(425.5, 300.0), RenderSemanticsAnnotations#56379@Offset(425.5, 300.0), HitTestEntry#82052(_ReusableRenderView#15fff), HitTestEntry#ae6e3()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:38 +1058: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source container recovery is bound to the actual nested ancestors -06:38 +1059: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks use list markers rather than task prefixes -06:39 +1060: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source task items keep block kinds at every content position -06:39 +1061: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source checked ordered nested and zero lists retain inserted block kinds -06:39 +1062: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source composes mixed and continuation container ancestors -06:39 +1063: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source protected contexts use the safe source fallback -06:39 +1064: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Writerside Source preserves a structured procedure block -06:39 +1065: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source delayed paste rejects a changed selection -06:39 +1066: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves composition before and during a read -06:39 +1067: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source failed cut keeps text and does not record history -06:39 +1068: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source delayed cut revalidates selection before deletion -06:39 +1069: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: history insertion follows the latest Source selection -06:40 +1070: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history rebases retained media into Source -06:41 +1071: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history restores a local video into Source -06:41 +1072: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: standalone image history ingests and inserts one undoable Source edit -06:41 +1073: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source local image path retains imported bytes once - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#d2cf8(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#321c7, undoController: UndoHistoryController#e323b(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#972cd(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#807b4]], state: _TextFieldState#83335), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#0a4a2 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#959d3@Offset(425.5, 300.0), RenderSemanticsAnnotations#d405c@Offset(425.5, 300.0), RenderPointerListener#1bbf6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#bb131@Offset(425.5, 300.0), RenderExcludeSemantics#0de92@Offset(425.5, 300.0), RenderBlockSemantics#1257e@Offset(425.5, 300.0), RenderIgnorePointer#26468@Offset(425.5, 300.0), RenderSemanticsAnnotations#0a3c6@Offset(425.5, 300.0), _RenderTheater#618e6@Offset(425.5, 300.0), RenderAbsorbPointer#380a9@Offset(425.5, 300.0), RenderPointerListener#bee42@Offset(425.5, 300.0), RenderSemanticsAnnotations#2f809@Offset(425.5, 300.0), RenderCustomPaint#f5590@Offset(425.5, 300.0), RenderSemanticsAnnotations#7023c@Offset(425.5, 300.0), RenderSemanticsAnnotations#ec27f@Offset(425.5, 300.0), RenderSemanticsAnnotations#e2499@Offset(425.5, 300.0), RenderTapRegionSurface#af848@Offset(425.5, 300.0), RenderSemanticsAnnotations#67da2@Offset(425.5, 300.0), RenderSemanticsAnnotations#0d080@Offset(425.5, 300.0), HitTestEntry#ae5fb(_ReusableRenderView#15fff), HitTestEntry#6020a()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..expectNormalReplay (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8934:7) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8956:5) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:43 +1074: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: unsafe local image candidates paste their original text - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#8f3ef(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#e8f78, undoController: UndoHistoryController#b7b5e(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#2bbca(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#e5dc0]], state: _TextFieldState#49c06), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#9d620 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#236c5@Offset(425.5, 300.0), RenderSemanticsAnnotations#bce09@Offset(425.5, 300.0), RenderPointerListener#e97b6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#97713@Offset(425.5, 300.0), RenderExcludeSemantics#54e87@Offset(425.5, 300.0), RenderBlockSemantics#ee161@Offset(425.5, 300.0), RenderIgnorePointer#66baf@Offset(425.5, 300.0), RenderSemanticsAnnotations#c1e51@Offset(425.5, 300.0), _RenderTheater#6d42a@Offset(425.5, 300.0), RenderAbsorbPointer#8f319@Offset(425.5, 300.0), RenderPointerListener#9eee1@Offset(425.5, 300.0), RenderSemanticsAnnotations#b6ccb@Offset(425.5, 300.0), RenderCustomPaint#d0d5c@Offset(425.5, 300.0), RenderSemanticsAnnotations#922f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#4fb3e@Offset(425.5, 300.0), RenderSemanticsAnnotations#9a515@Offset(425.5, 300.0), RenderTapRegionSurface#7f33c@Offset(425.5, 300.0), RenderSemanticsAnnotations#3bef8@Offset(425.5, 300.0), RenderSemanticsAnnotations#c256a@Offset(425.5, 300.0), HitTestEntry#8e612(_ReusableRenderView#15fff), HitTestEntry#d13bb()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9010:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -06:44 +1075: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: image history asks to save an untitled Source document -06:44 +1076: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: generic XML does not invent Writerside image syntax -06:44 +1077: loading /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart -06:45 +1077: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: reads the initial GTK animation setting -06:45 +1078: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: animation stream follows GTK setting changes -06:45 +1079: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: provider exposes the preloaded value before native events -06:45 +1080: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: missing GTK integration falls back without disabling motion -06:45 +1081: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: native GTK bridge observes and tears down animation preference state -06:45 +1082: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart -06:49 +1082: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -06:53 +1083: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -06:55 +1084: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft -06:56 +1085: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -07:01 +1086: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft -07:04 +1087: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -07:05 +1088: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work -07:06 +1089: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work -07:06 +1090: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work -07:09 +1091: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work -07:10 +1092: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work -07:10 +1093: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET -07:10 +1094: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET -07:10 +1095: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET -07:11 +1096: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit -07:11 +1097: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment -07:11 +1098: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor -07:12 +1099: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity -07:12 +1100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement -07:12 +1101: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart -07:13 +1101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt -07:17 +1102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption -07:18 +1103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -07:18 +1104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary -07:18 +1105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment -07:19 +1106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title -07:19 +1107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category -07:19 +1108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment -07:19 +1109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart -07:20 +1110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment -07:20 +1111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment -07:21 +1112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -07:21 +1113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -07:21 +1114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -07:21 +1115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -07:22 +1116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit -07:22 +1117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit -07:22 +1118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -07:22 +1119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice -07:22 +1120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note -07:22 +1121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -07:23 +1122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions -07:23 +1123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -07:23 +1124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -07:23 +1125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -07:23 +1126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -07:23 +1127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -07:24 +1128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -07:24 +1129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -07:24 +1130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -07:24 +1131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -07:25 +1132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -07:25 +1133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -07:25 +1134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -07:25 +1135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -07:25 +1136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -07:25 +1137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -07:26 +1138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -07:26 +1139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -07:27 +1140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -07:27 +1141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -07:28 +1142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename -07:28 +1143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -07:28 +1144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -07:28 +1145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -07:29 +1146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -07:29 +1147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -07:29 +1148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -07:29 +1149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -07:29 +1150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -07:29 +1151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -07:30 +1152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -07:30 +1153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -07:30 +1154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -07:30 +1155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -07:31 +1156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -07:31 +1157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -07:31 +1158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -07:31 +1159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -07:31 +1160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -07:31 +1161: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart -07:32 +1161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice -07:32 +1162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes -07:32 +1163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice -07:32 +1164: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart -07:35 +1164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty -07:37 +1165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty -07:38 +1166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty -07:38 +1167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body -07:38 +1168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null -07:38 +1169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 -07:38 +1170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file -07:38 +1171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file -07:38 +1172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file -07:38 +1173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file -07:38 +1174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call -07:38 +1175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin -07:38 +1176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched -07:38 +1177: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart -07:39 +1177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations -07:39 +1178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions -07:39 +1179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations -07:39 +1180: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart -07:42 +1180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated -07:43 +1181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated -07:43 +1182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated -07:43 +1183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated -07:43 +1184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated -07:43 +1185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated -07:43 +1186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated -07:43 +1187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated -07:43 +1188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request -07:43 +1189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible -07:43 +1190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content -07:43 +1191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match -07:43 +1192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted -07:43 +1193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state -07:43 +1194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility -07:43 +1195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility -07:43 +1196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility -07:43 +1197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility -07:43 +1198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility -07:43 +1199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility -07:43 +1200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility -07:43 +1201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility -07:43 +1202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects -07:43 +1203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids -07:43 +1204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body -07:43 +1205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence -07:43 +1206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path -07:43 +1207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note -07:43 +1208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials -07:43 +1209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 -07:43 +1210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references -07:43 +1211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference -07:43 +1212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update -07:43 +1213: loading /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart -07:46 +1213: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles default-a4 and preserves document data -07:47 +1214: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles letter-landscape and preserves document data -07:48 +1215: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles legal-serif and preserves document data -07:48 +1216: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles custom-sans and preserves document data -07:48 +1217: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles no-numbers and preserves document data -07:48 +1218: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles numbered-no-outline and preserves document data -07:49 +1219: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomLeft and preserves document data -07:49 +1220: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomCenter and preserves document data -07:49 +1221: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomRight and preserves document data -07:50 +1222: loading /home/albert/busystack/busymark/test/src/app_smoke_test.dart -07:54 +1222: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor shortcuts use documented cross-editor defaults -07:56 +1223: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace resize retains the sidebar and leaves room for header controls -07:58 +1224: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: document view shortcuts are distinct from existing commands -07:58 +1225: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace routes paste shortcuts only to editable document views -08:02 +1226: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace source history restores a pasted URL suffix through undo and redo -08:03 +1227: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app wires generated localization delegates and locales -08:03 +1228: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app boots to BusyMark welcome screen without login UI -08:03 +1229: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (0) -08:03 +1230: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (1) -08:04 +1231: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: false) -08:05 +1232: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: true) -08:05 +1233: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: main menu and F11 toggle full-screen mode -08:06 +1234: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Alt+Left activates the header Back command -08:06 +1235: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: restored capture failure stays owned across Back create discard create -08:07 +1236: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Escape closes header popup menus -08:07 +1237: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: report issue is in the shared main menu, not Settings content -08:07 +1238: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: global reference and settings shortcuts open targets -08:08 +1239: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings screen opens -08:10 +1240: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings uses the regular split sidebar at desktop width -08:10 +1241: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Spelling Dictionaries page groups downloadable and custom data -08:11 +1242: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt uses native controls and submits a trimmed ID -08:17 +1243: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt cancels and saves without redesign -08:22 +1244: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a default-language install keeps the previous selection -08:23 +1245: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: default language persists only after dictionary installation succeeds -08:32 +1246: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: failed dictionary install keeps the default language -08:35 +1247: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a project-language install keeps the previous selection -08:35 +1248: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings main surface matches the headerbar in light and dark -08:36 +1249: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: stored language override localizes app text -08:36 +1250: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: European Portuguese system locale renders the completed base catalog -08:36 +1251: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: language-only Chinese system locale renders the completed base catalog -08:37 +1252: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside project dialog syncs generated fields until edited -08:38 +1253: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts dialog opens from the header -08:39 +1254: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference categories expose supported authoring forms -08:41 +1255: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+Alt+M opens and Escape closes the syntax reference -08:42 +1256: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference remains usable in constrained RTL layout -08:43 +1257: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts tabs section title is localized -08:43 +1258: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: about dialog shows the BusyMark logo -unhandled element ; Picture key: Svg loader -08:44 +1259: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N chooses between Markdown and Writerside creation -08:44 +1260: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N keeps unsaved documents in independent tabs -08:45 +1261: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N creates real CommonMark inside a Writerside workspace -08:49 +1262: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions -09:07 +1263: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions with an available native host -09:12 +1264: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside topic rename uses Preview, Do Refactor, and shared entry points -09:13 +1265: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: topic rename saves every dirty Writerside project source before planning -09:14 +1266: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: tab keyboard shortcuts move and close editor tabs -09:14 +1267: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Git diff files are shown as separate editor tabs -09:16 +1268: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: File History comparison selector shares its row with match navigation -09:16 +1269: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: file tree disables Git file actions without a repository -09:16 +1270: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: sidebar view shortcuts select workspace sidebar tabs -09:18 +1271: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: real Source edits reach the visible Local History list on the fixed deadline -09:19 +1272: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: selected WYSIWYG formatting reaches Local History through workspace callbacks -09:19 +1273: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside sidebar shortcuts survive document view changes -09:22 +1274: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view colors entries by Git status -09:22 +1275: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view shows hidden, empty, and unsupported entries -09:22 +1276: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Arabic -09:22 +1277: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Persian -09:22 +1278: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Arabic untitled workspace stays RTL and diagnostic metadata stays LTR -09:22 +1279: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: RTL topic copy keeps bidi controls out of clipboard data -09:23 +1280: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Copy uses an inactive origin topic open buffer -09:24 +1281: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Paste reviews an inactive dirty tree before moving -09:24 +1282: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source undo cannot restore saved text from previous tab -09:24 +1283: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source groups typing and deletion undo with historical carets -09:25 +1284: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source remount starts a distinct undo group -09:25 +1285: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source view supports editor formatting shortcuts -09:25 +1286: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab and Shift+Tab update indentation in source view -09:25 +1287: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editing toolbar context menu changes persisted layout without toggling -09:26 +1288: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share a frame while Split stays fluid -09:26 +1289: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: rendered views ignore redundant blanks while Source preserves them -09:26 +1290: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: standalone HTML breaks preserve one blank line in every document view -09:26 +1291: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share task-list presentation and wrapping -09:26 +1292: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same quote shell geometry -09:27 +1293: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same code block presentation -09:27 +1294: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share professional heading hierarchy -09:27 +1295: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share admonition and image presentation -09:27 +1296: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Preview renders structured formatted and nested quotes -09:27 +1297: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor undo cannot restore saved text from previous tab -09:28 +1298: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab inserts a tab character in editor view paragraphs -09:28 +1299: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close still warns when active changes are unsaved -09:28 +1300: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close flushes autosave for saved files -09:28 +1301: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: startup path opens a Markdown file workspace -09:28 +1302: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline follows unsaved source headings without live validation -09:28 +1303: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline context menu edits complete heading sections -09:29 +1304: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline highlights the heading at the document viewport -09:31 +1305: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline navigates to a renamed unsaved editor heading -09:33 +1306: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: untitled outline navigates before the first save -09:33 +1307: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview tolerates duplicate heading anchors -09:33 +1308: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading opens an unindexed sibling document link -09:33 +1309: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading linked block and inline images open their targets -09:34 +1310: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: new empty document leaves remembered preview mode for editor -09:34 +1311: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: blocked remote image prompt allows the current workspace -09:34 +1312: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+O open chooser lists recent workspaces -09:34 +1313: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recent workspace menus support pointer and keyboard actions -09:35 +1314: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local images -09:35 +1315: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer blocks remote images by default -09:35 +1316: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths with spaces -09:35 +1317: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths outside workspace -09:35 +1318: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves Snap real-home paths -09:35 +1319: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local SVG images -09:35 +1320: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer rejects oversized local SVGs -09:35 +1321: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer sanitizes embedded SVG image data -09:35 +1322: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer renders generated SVG badges -09:36 +1323: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: header Search button toggles the expanded search field -09:36 +1324: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: native header Search action toggles search and Back visibility -09:36 +1325: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search awaits non-active file reads without blocking builds -09:37 +1326: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search native submit uses exact payload and selected sidebar occurrence -09:38 +1327: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search preserves query and lands on unopened destination -09:38 +1328: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search observes edits to inactive buffers -09:40 +1329: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search reports limits and continues into later files -09:41 +1330: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search exposes skipped files and regex diagnostics -09:42 +1331: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search cancels expensive regex while UI keeps building -09:43 +1332: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search replacement review loads an asynchronous plan -09:44 +1333: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search highlights preserve Unicode offsets -09:44 +1334: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: literal workspace search bounds malformed Markdown snippets around the match -09:45 +1335: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks move preview scroll repeatedly -09:45 +1336: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview lazily builds large documents -09:46 +1337: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks scroll to code block matches -09:46 +1338: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on paragraph after lists -09:46 +1339: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share ordered list styling and geometry -09:46 +1340: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders nested list children -09:46 +1341: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders raw HTML table as table cells -09:46 +1342: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading applies Markdown table column alignment -09:47 +1343: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on code block line -09:47 +1344: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S runs Save for the active workspace -09:47 +1345: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S saves source edits from an untitled Markdown document -09:47 +1346: loading /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart -09:48 +1346: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from preview -09:52 +1347: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from editor -09:53 +1348: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: an open Problems dialog updates its count and math rows -09:54 +1349: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: manual Validate supersedes queued automatic validation and presents once -09:56 +1350: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: failed and stale validation do not show Problems; concurrent clicks publish once -09:58 +1351: loading /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart -09:58 +1351: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside math forms use semantic math nodes and round-trip -09:58 +1352: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: ordinary Markdown does not reinterpret Writerside TeX forms -09:58 +1353: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside semantic and fenced diagrams share visualizers -09:58 +1354: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: referenced diagram source is constrained to the Writerside root -09:58 +1355: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside topic XML exposes TeX and diagrams to shared preview -09:59 +1356: loading /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart -10:01 +1356: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: view changes fade one live editor while ordinary data changes do not -10:02 +1357: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained destinations settle immediately under reduced motion -10:02 +1358: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained crossfade keeps two live pages and hides outgoing UI -10:02 +1359: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: keyed crossfade retains three semantic destinations -10:02 +1360: loading /home/albert/busystack/busymark/test/src/preview_builder_test.dart -10:06 +1360: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview uses one generic label and no compatibility banner -10:06 +1361: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview ignores redundant blank lines between blocks -10:06 +1362: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves an explicit blank line encoded with HTML breaks -10:06 +1363: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview headings carry parser anchors for outline navigation -10:06 +1364: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview blocks carry source locations for search navigation -10:06 +1365: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview source locations survive adjacent list items and code fences -10:06 +1366: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview list text removes Markdown markers -10:06 +1367: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves links inside list items -10:06 +1368: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves nested list children -10:06 +1369: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps ordered list numbering independent at each depth -10:06 +1370: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves inline Markdown semantics -10:06 +1371: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: inline autolinks only support launchable URI schemes -10:06 +1372: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities -10:06 +1373: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces -10:06 +1374: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities -10:06 +1375: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces -10:06 +1376: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview treats single newlines inside paragraphs as soft breaks -10:06 +1377: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview supports common Markdown block variants -10:06 +1378: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves structured and formatted quote children -10:06 +1379: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves source order for code and images -10:06 +1380: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview parses Writerside image attributes -10:06 +1381: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: front matter is skipped only at the top of the document -10:06 +1382: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML paragraph without literal tags -10:06 +1383: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table sections and inline cell formatting -10:06 +1384: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders direct rows under raw HTML table -10:06 +1385: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table captions before the table -10:06 +1386: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders inline raw HTML safely -10:06 +1387: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not make raw HTML links active without href -10:06 +1388: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects absolute local image paths in raw HTML -10:06 +1389: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects deeply nested raw HTML before conversion -10:06 +1390: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders safe raw HTML containers as child content -10:06 +1391: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders top-level raw HTML image as image block -10:06 +1392: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves raw HTML figure caption relationship -10:06 +1393: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview allows safe remote raw HTML links images and citations -10:06 +1394: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps unsafe raw HTML literal -10:06 +1395: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not parse Markdown inside raw HTML blocks -10:06 +1396: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps paired raw HTML blocks together across blank lines -10:06 +1397: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart -10:07 +1397: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields -10:07 +1398: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 -10:07 +1399: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 -10:07 +1400: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 -10:07 +1401: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 -10:07 +1402: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null -10:07 +1403: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version -10:07 +1404: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed -10:07 +1405: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 -10:07 +1406: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately -10:07 +1407: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers -10:07 +1408: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin -10:07 +1409: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 -10:07 +1410: loading /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart -10:10 +1410: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by file-size limits -10:10 +1411: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by document limits -10:10 +1412: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects topic discovery truncated by tree limits -10:11 +1413: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic-root directory listing failure -10:11 +1414: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: topic discovery traverses excluded and hidden directories but not VCS metadata -10:11 +1415: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves a Markdown reference under build -10:11 +1416: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves an XML reference under a hidden directory -10:11 +1417: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a discovered unreadable topic source -10:11 +1418: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates topic and start-page references in every tree -10:11 +1419: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename refactors links, includes, ref entries, and leaves unrelated text -10:11 +1420: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename ignores link-shaped text in image titles and HTML attributes -10:12 +1421: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds reference links outside image titles and HTML attributes -10:12 +1422: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds exact HTML hrefs outside Markdown link and image titles -10:12 +1423: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename follows origin across modules without touching a local namesake -10:12 +1424: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: project-wide rename includes an origin reference in a build module -10:12 +1425: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: renaming a local namesake preserves origin-qualified Markdown XML links -10:13 +1426: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports unquoted origin-qualified raw HTML links -10:13 +1427: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename keeps decoded whitespace safe in unquoted HTML hrefs -10:13 +1428: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates shared Markdown reference definitions once -10:13 +1429: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves escapes required by a Markdown destination -10:13 +1430: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rewrites an XML-encoded topic destination -10:14 +1431: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename escapes decoded XML attribute replacements -10:14 +1432: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates a matching XML topic root id -10:14 +1433: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: missing or mismatched XML root IDs block rename atomically -10:14 +1434: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: prepared rename is read-only and applies its exact captured changes -10:14 +1435: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: stale prepared rename fails before any partial write -10:14 +1436: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preflights collisions only in publishing instances -10:14 +1437: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: origin topic collisions block a project-wide prepared rename -10:14 +1438: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: Unicode Markdown and XML topic filenames rename safely -10:14 +1439: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports Writerside .markdown topics -10:15 +1440: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects duplicate targets and extension changes -10:15 +1441: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves a target created concurrently before exclusive create -10:15 +1442: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete reloads newly configured instances before start-page checks -10:15 +1443: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename does not claim a new same-basename nested reference -10:15 +1444: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename aborts when a concurrent topic changes basename resolution -10:15 +1445: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete aborts when a concurrent topic changes basename resolution -10:15 +1446: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename retains target when an applied tree cannot be rolled back -10:15 +1447: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: cross-module rollback retains a target after another module changes -10:15 +1448: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: clean rollback removes the harmless newly created target -10:15 +1449: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves topic and instance tree file modes -10:15 +1450: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete removes every TOC entry and promotes children in place -10:16 +1451: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic used as any instance start page -10:16 +1452: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects unsafe path components before writing -10:16 +1453: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic replaced by a symlink without touching its target -10:16 +1454: loading /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart -10:17 +1454: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic maps to full and visible line without folds -10:17 +1455: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic inside folded region is aggregated onto its fold header -10:17 +1456: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: folded layout geometry is reused for equal collapsed sets -10:17 +1457: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: incremental gutter layout matches a full measured layout -10:17 +1458: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart -10:20 +1458: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Duplicate Topic is serialized to the native dialog host -10:21 +1459: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Edit Title returns all native field values -10:21 +1460: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: native cancellation remains distinct from an unavailable host -10:21 +1461: loading /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart -10:23 +1461: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps a nested Writerside block to its source block -10:25 +1462: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps selected text when unsourced editor blocks exist -10:25 +1463: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI applies through canonical Markdown source -10:26 +1464: loading /home/albert/busystack/busymark/test/src/document_status_bar_test.dart -10:27 +1464: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: places interactive spelling at start and format at end -10:29 +1465: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: keeps passive format when spelling is unsupported -10:30 +1466: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: truncates a long one-line language without displacing format -10:30 +1467: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: uses directional start and end placement in RTL -10:30 +1468: loading /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart -10:30 +1468: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: detects and preserves UTF-8 BOM, CRLF, and final newline -10:30 +1469: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: preserves a missing final newline when saving edited text -10:30 +1470: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: requires an explicit normalization for mixed line endings -10:30 +1471: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: rejects invalid UTF-8 instead of replacing bytes -10:30 +1472: loading /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart -10:34 +1472: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: autocomplete prioritizes Writerside Markdown authoring suggestions -10:34 +1473: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion derives XML caret context and consumes the project index -10:34 +1474: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion suggests attributes legal for the element at the caret -10:34 +1475: loading /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart -10:35 +1475: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: reads the provider key through the native credential channel -10:35 +1476: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: trims a key before securely storing it -10:35 +1477: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: deletes only the selected provider key -10:35 +1478: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: surfaces the native credential-service failure -10:35 +1479: loading /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart -10:38 +1479: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pristine empty draft discards without protective storage -10:38 +1480: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace replacement retires settled bindings and retains failed baselines -10:38 +1481: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects nonempty content when history is unavailable -10:38 +1482: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects whitespace content when history is unavailable -10:38 +1483: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects edited-empty content when history is unavailable -10:38 +1484: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects recovered content when history is unavailable -10:38 +1485: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects file content when history is unavailable -10:39 +1486: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: background protective retry cannot execute a previously rejected discard -10:39 +1487: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=false) -10:39 +1488: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=true) -10:39 +1489: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=false) -10:41 +1490: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=true) -10:41 +1491: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save cannot adopt a deleted path lineage -10:41 +1492: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: vacant first save retires a stale active history owner -10:41 +1493: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save promotes an established untitled lineage over deleted history -10:41 +1494: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison uses unsaved editor source and whole restore is one undo step -10:41 +1495: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels queued restore protection -10:41 +1496: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All cancels queued restore protection -10:41 +1497: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: region restore is exact, undoable, and rejects stale ranges -10:41 +1498: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed protective capture leaves current document unchanged -10:41 +1499: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restoration rejects a revision from another history document -10:41 +1500: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled history compares and restores through stable identity -10:41 +1501: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing during a delayed reload cancels the stale replacement -10:41 +1502: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reload reparse cannot publish after another buffer becomes active -10:41 +1503: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delete skips binary and excluded history descendants -10:41 +1504: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deleted document restores through normal create flow without overwriting -10:41 +1505: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: missing history restores over an existing file without touching disk and undoes to its real source -10:42 +1506: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing open destination protects unsaved source as the restore undo baseline -10:42 +1507: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing destination restore stops when protection fails or the target changes -10:42 +1508: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: autosaved existing-destination recovery never publishes an empty file -10:42 +1509: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delayed explicit save records exactly the source that was written -10:42 +1510: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history failure cannot turn a successful save into a failure -10:42 +1511: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move keeps edits made during history remap on the destination -10:42 +1512: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reparse cannot publish after a newer edit -10:42 +1513: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move cannot remap a replacement created while loading target -10:42 +1514: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move completion cannot publish into a replacement workspace -10:42 +1515: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: monitor event emitted after invalidation cannot enter reopened workspace -10:42 +1516: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: file monitor lifecycle recovers after a failed stop -10:42 +1517: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing while monitor start is pending still enables workspace events -10:42 +1518: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: folder refresh while monitor start is pending still enables events -10:42 +1519: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed workspace ignores a delayed monitor start completion -10:42 +1520: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed file monitor cannot resume an overtaken start -10:42 +1521: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deferred monitor move cannot enter a replacement workspace -10:42 +1522: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move retains reconciliation when another process checkpoints the old identity -10:42 +1523: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move with no bound identity cannot remap replacement history -10:42 +1524: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion with no bound identity cannot delete replacement history -10:42 +1525: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection retries into the deleted lineage -10:42 +1526: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection survives restart as detached work -10:42 +1527: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move remaps nested open history -10:42 +1528: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move publishes every buffer after one decode failure -10:42 +1529: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closing a tab during an external directory move settles its journal -10:42 +1530: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory deletion marks nested open history deleted -10:42 +1531: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed recursive-delete protection survives restart on its lineage -10:42 +1532: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reconciles closed file history -10:42 +1533: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion reconciles closed file history -10:42 +1534: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce before history reconciliation -10:42 +1535: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce across an unrelated queued event -10:42 +1536: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closed source move cannot steal an open destination lineage -10:42 +1537: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external file move includes identity established by source settlement -10:42 +1538: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move includes identity established by source settlement -10:42 +1539: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: cancelled named Save As detaches source history and reopens separately -10:43 +1540: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recording disabled after first-save publication preserves untitled lineage -10:43 +1541: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, completed pending capture -10:43 +1542: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, failed pending capture -10:43 +1543: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, completed pending capture -10:43 +1544: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, failed pending capture -10:43 +1545: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, completed pending capture -10:44 +1546: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, failed pending capture -10:44 +1547: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As keeps edits made during destination capture out of source history -10:44 +1548: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot claim a dirty open buffer at a missing destination -10:44 +1549: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=false) -10:44 +1550: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=true) -10:44 +1551: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rename remaps a failed unbound baseline to the committed destination -10:45 +1552: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed prepared rename never reaches the filesystem without an execution journal -10:45 +1553: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels a prepared rename before filesystem publication -10:45 +1554: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document retains an executing rename journal across a crash -10:45 +1555: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All retains an executing rename journal across a crash -10:45 +1556: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: targetless executing rename owner survives an ambiguous restart -10:45 +1557: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: move remaps a deferred first-save destination before baseline recovery -10:45 +1558: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive folder move remaps retained baselines for every open descendant -10:45 +1559: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=false) -10:45 +1560: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=true) -10:45 +1561: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed move retries a failed history path reconciliation -10:45 +1562: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: shutdown retries first-save promotion without requiring another edit -10:45 +1563: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: second Save As preserves a failed first-save association as the source -10:46 +1564: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As partitions a failed source checkpoint -10:46 +1565: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As source checkpoint survives process restart -10:46 +1566: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As journals its source before the filesystem commit returns -10:46 +1567: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot publish a second owner when its destination opens in flight -10:46 +1568: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As rechecks destination ownership after opening its workspace -10:46 +1569: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As waits for an unbound live destination history owner -10:46 +1570: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed Save As cannot publish after losing its prepared journal owner -10:46 +1571: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As published after disposal leaves a committed recoverable journal -10:46 +1572: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As commit write failure after disposal uses the session fallback -10:46 +1573: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As publishes destination after a post-publish callback failure -10:46 +1574: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed rename reconciliation survives shutdown and restart -10:46 +1575: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: live owner keeps committed remap journal until its recovery can follow -10:47 +1576: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared rename journal repairs a crash after filesystem commit -10:47 +1577: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed deletion detaches recovery newer than stored history -10:47 +1578: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive deletion evidence cannot consume a sibling recovery -10:47 +1579: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All durably removes a previously persisted path journal -10:47 +1580: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup applies committed destination cleanup before Save As recovery -10:47 +1581: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup keeps untitled first-save source when another tab owns destination -10:47 +1582: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed Save As recovery cannot claim another process tab with the same buffer id -10:47 +1583: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session restore selects recovery by process owner before shared buffer id -10:47 +1584: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed startup reconstruction releases adopted recovery ownership -10:48 +1585: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history retry during slow failed startup cannot erase adopted recovery -10:48 +1586: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session identity restore waits for the authoritative history snapshot -10:48 +1587: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: renamed adopted recovery still honors its original path-operation owner -10:48 +1588: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: replayed durable Clear All preserves newer history -10:48 +1589: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup aborts until replayed clear refresh is authoritative -10:48 +1590: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared deletion journal repairs a crash after filesystem commit -10:49 +1591: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed deletion reconciliation survives shutdown and restart -10:49 +1592: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reopened tab adopts its unresolved first-save history association -10:49 +1593: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: unresolved shutdown promotion survives in session and retries on startup -10:49 +1594: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace rename settles a failed first-save promotion -10:49 +1595: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace directory move settles a nested failed first-save promotion -10:49 +1596: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison renders styled intraline spans without framework errors -10:50 +1597: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison restore actions wait for the current replacement result -10:50 +1598: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace refresh invalidates a completed comparison by source content -10:50 +1599: loading /home/albert/busystack/busymark/test/src/visualization_card_test.dart -10:51 +1599: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: full-screen diagram coordinates its modal and preserves pan/zoom -10:52 +1600: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: retains the last valid diagram and navigates new diagnostics -10:52 +1601: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: fits a small Mermaid diagram to the preview width -10:53 +1602: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: keeps a wide Mermaid diagram readable until fit is requested -10:53 +1603: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: shows searchable OpenAPI operations and opens the native reference -10:53 +1604: loading /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart -10:54 +1604: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: computes the diagnostic offset within fenced source -10:58 +1605: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: WYSIWYG diagnostic selects its actual source line -11:01 +1606: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -11:03 +1606: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -11:04 +1607: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -11:07 +1608: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones -11:07 +1609: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -11:08 +1610: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -11:09 +1611: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -11:10 +1612: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -11:10 +1613: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -11:11 +1614: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -11:12 +1615: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -11:12 +1616: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -11:13 +1617: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -11:13 +1618: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -11:13 +1619: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ -The following TestFailure was thrown running a test: -Expected: <10> - Actual: -null - -When the exception was thrown, this was the stack: -#4 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:836:7) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - - -(elided one frame from package:stack_trace) - -This was caught by the test expectation on the following line: - file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart line 836 -The test description was: - selecting and confirming candidate binds draft and retains newer edits -════════════════════════════════════════════════════════════════════════════════════════════════════ -11:15 +1619 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits [E] - Test failed. See exception logs above. - The test description was: selecting and confirming candidate binds draft and retains newer edits - -11:16 +1619 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -11:16 +1620 -1: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -11:16 +1621 -1: loading /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart -11:18 +1621 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table pipes cannot bind across subsequent cells -11:18 +1622 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: a\|b | a|b -11:18 +1623 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b\|c | a|b|c | -11:18 +1624 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\\\|b | a\\|b | -11:18 +1625 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | a|b\ -11:18 +1626 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | -11:18 +1627 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | `a\|b` | a|b | -11:18 +1628 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped pipes in the table header retain diagnostic positions -11:18 +1629 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | a\|b | a|b | -11:18 +1630 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | `` a\|b | a| | -11:18 +1631 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in block context -11:18 +1632 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in inline context -11:18 +1633 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline caption attributes are checked before tree construction -11:18 +1634 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline colgroup attributes are checked before tree construction -11:18 +1635 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline col attributes are checked before tree construction -11:18 +1636 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline thead attributes are checked before tree construction -11:18 +1637 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tbody attributes are checked before tree construction -11:18 +1638 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tfoot attributes are checked before tree construction -11:18 +1639 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline th attributes are checked before tree construction -11:18 +1640 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline td attributes are checked before tree construction -11:18 +1641 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline URL attributes use HTML entity decoding -11:18 +1642 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text `
Cell
` -11:18 +1643 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text \\\\\
Cell\
-11:18 +1644 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: ```html -11:18 +1645 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe:
Cell
-11:18 +1646 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text
Cell
-11:18 +1647 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html -11:18 +1648 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: -11:18 +1649 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
-11:18 +1650 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
-11:18 +1651 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^unused]: -11:18 +1652 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^used]: -11:18 +1653 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - ```html -11:18 +1654 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` then -11:18 +1655 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` `` -11:18 +1656 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > ```html -11:18 +1657 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - Example -11:18 +1658 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > - `` then -11:18 +1659 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: --- -11:18 +1660 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html -11:18 +1661 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | Code | HTML | -11:18 +1662 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | One | -11:18 +1663 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `a ` -11:18 +1664 -1: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: unsafe Markdown URLs are located at the link, after literal examples -11:18 +1665 -1: loading /home/albert/busystack/busymark/test/src/window_control_service_test.dart -11:19 +1665 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: button and native close requests share one pending confirmation -11:19 +1666 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: initializes prevent-close interception -11:19 +1667 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: toggles full screen and tracks native window-state changes -11:19 +1668 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: no dirty documents closes without dialog -11:19 +1669 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation enabled show dialog -11:19 +1670 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation disabled close directly -11:19 +1671 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: discard closes after disabling prevent-close -11:19 +1672 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save closes only when saving succeeds -11:19 +1673 -1: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save failure keeps the app open -11:19 +1674 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart -11:21 +1674 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: terminal code block gets a non-serializing trailing paragraph -11:21 +1675 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter inserts a newline within one code block -11:23 +1676 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: a code block created by editing also retains a trailing paragraph -11:23 +1677 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: third terminal Enter exits code and removes the two empty lines -11:23 +1678 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: exiting before existing content inserts a transient paragraph -11:23 +1679 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter in the trailing paragraph records an intentional blank -11:23 +1680 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: code Enter stays in the multiline code field -11:25 +1681 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Ctrl+Enter exits into the trailing paragraph -11:25 +1682 -1: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Arrow Down exits a terminal code block -11:25 +1683 -1: loading /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart -11:27 +1683 -1: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: shows only a compact line-ending label -11:28 +1684 -1: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: makes BOM visible and keeps final-newline detail compact -11:28 +1685 -1: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: uses a compact technical label for mixed line endings -11:28 +1686 -1: loading /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart -11:36 +1686 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: ordinary WYSIWYG selection never suppresses spelling underlines -11:36 +1687 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: source spelling correction is one exact transaction -11:37 +1688 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: formatted rich correction preserves structure and publishes once -11:37 +1689 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich image spelling preserves source and one undo step -11:37 +1690 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested code and math spelling preserves source and undo -11:38 +1691 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested address and math spelling preserves source and undo -11:38 +1692 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table image spelling preserves authored cell syntax -11:38 +1693 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed rich image preparation refuses a newer revision -11:38 +1694 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed math image preparation refuses a newer revision -11:39 +1695 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich correction preserves entities and translates later anchors -11:39 +1696 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich hard-break correction keeps later source anchor -11:39 +1697 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table correction preserves encoded cell source -11:39 +1698 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table-cell correction preserves link and publishes sessions once -11:39 +1699 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich underline painter keeps confirmed helo visible at caret -11:39 +1700 -1: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: table cell underline uses the live cell composing range -11:39 +1701 -1: loading /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart -11:40 +1701 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: inlines safe generated CSS into a vector-only SVG -11:40 +1702 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: keeps sanitized foreignObject only in the browser raster input -11:40 +1703 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes SVG and CSS animations -11:40 +1704 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects remote, executable, and escaped CSS URLs -11:40 +1705 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: allows embedded D2-style fonts but rejects remote image attributes -11:41 +1706 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: requires rasterization for CSS the vector inliner cannot preserve -11:41 +1707 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: preserves safe browser-only inline CSS and rasterizes it -11:41 +1708 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes unsafe URLs from inline CSS -11:41 +1709 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: does not claim a vector result when CSS cascade resolution is needed -11:41 +1710 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects declarations, excessive complexity, and invalid dimensions -11:41 +1711 -1: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: applies the size limit to UTF-8 bytes -11:41 +1712 -1: loading /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart -11:41 +1712 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: remote requests reject existing local references before reading dependencies -11:41 +1713 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: resolves local files, hashes them, and terminates circular schemas -11:41 +1714 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: keeps internal-only references independent of a saved path -11:41 +1715 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: rejects remote, absolute, malformed, and unsupported references -11:41 +1716 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: reports an unsaved document that contains a local reference -11:42 +1717 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: converts traversal and symlink escapes into typed diagnostics -11:42 +1718 -1: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: enforces dependency count and byte limits -11:42 +1719 -1: loading /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart -11:44 +1719 -1: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: platform host sends reduced source and geometry over one channel -11:44 +1720 -1: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: Linux player keeps interactive media in a restricted WebKit host -11:44 +1721 -1: loading /home/albert/busystack/busymark/test/src/export_options_test.dart -11:45 +1721 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: defaults retain PDF geometry and independent HTML reading appearance -11:45 +1722 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: every option persists and copies without losing unrelated fields -11:45 +1723 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: absent and malformed persisted values fall back per field -11:45 +1724 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: geometry resolves dimensions, orientation and four independent margins -11:45 +1725 -1: /home/albert/busystack/busymark/test/src/export_options_test.dart: payload contains resolved geometry and every renderer option as data -11:45 +1726 -1: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -11:47 +1726 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review -11:48 +1727 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab -11:49 +1728 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes -11:49 +1729 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save -11:49 +1730 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) -11:49 +1731 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) -11:49 +1732 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) -11:49 +1733 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) -11:50 +1734 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart -11:50 +1735 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation -11:50 +1736 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox -11:50 +1737 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit -11:50 +1738 -1: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session -11:50 +1739 -1: loading /home/albert/busystack/busymark/test/src/source_folding_test.dart -11:51 +1739 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line starts map to the following source line -11:51 +1740 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects sections lists quotes and code blocks -11:51 +1741 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding keeps shorter fence runs inside dynamic fences -11:51 +1742 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown structures inside fences do not create fold regions -11:51 +1743 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores tags inside multiline comments and CDATA -11:51 +1744 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores greater-than signs inside quoted attributes -11:51 +1745 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding scans opening tags across source lines -11:51 +1746 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding skips processing instructions and declarations -11:51 +1747 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding does not join separate indented code blocks -11:51 +1748 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsed gutter entries preserve source line numbers -11:51 +1749 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsing one repeated markdown subsection keeps peer sections visible -11:51 +1750 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding detects simple multiline tag blocks -11:51 +1751 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects nested headings task lists and blockquotes -11:51 +1752 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding handles nested same-name tags with a stack -11:51 +1753 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: malformed xml does not create unsafe fold ranges -11:51 +1754 -1: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line info supports CRLF endings -11:51 +1755 -1: loading /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart -11:52 +1755 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: shipped spelling catalog is metadata-only and revision pinned -11:52 +1756 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: ordinary Linux release does not prepare all-language pairs -11:52 +1757 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: committed spelling checksum inventory matches exact shipped bytes -11:52 +1758 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: native spelling notices are explicit installed artifacts -11:52 +1759 -1: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: strict Snap smoke performs and verifies a local revision transition -11:52 +1760 -1: loading /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart -11:53 +1760 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates and registers an empty instance with build settings -11:54 +1761 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates a non-publishing TOC library instance -11:54 +1762 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: imports selected Markdown and its referenced local media -11:54 +1763 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: renames an instance and refactors documented project references -11:54 +1764 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: first topic added to an empty instance becomes its home page -11:54 +1765 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: invalid project XML blocks an instance ID refactor without changing files -11:54 +1766 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: concurrent config change prevents every instance publication -11:54 +1767 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import copies selected topics, media, and inserts root entries in order -11:55 +1768 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import inserts several siblings after the exact reference in list order -11:55 +1769 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import initializes only the first imported topic as the start page -11:55 +1770 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects batch, existing-ID, target, and invalid-name conflicts -11:55 +1771 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import accepts a Unicode topic filename -11:55 +1772 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects a stale reference identity without publishing files -11:55 +1773 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import discovered-but-unparsed topic basename blocks import -11:55 +1774 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import fails closed when semantic topic discovery is incomplete -11:55 +1775 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import revalidates IDs before publishing and leaves no partial import -11:56 +1776 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import allows an unrelated topic created before publication -11:56 +1777 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects existing and selected-batch topic IDs -11:56 +1778 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects an invalid topic filename -11:56 +1779 -1: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import fails closed on incomplete discovery -11:56 +1780 -1: loading /home/albert/busystack/busymark/test/src/validation_consistency_test.dart -11:57 +1780 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: module load, topic validation, and config validation agree and clear fixes -11:57 +1781 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: editing a target refreshes diagnostics in the referencing topic -11:57 +1782 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variables, comments, interpolation controls and optional includes agree -11:57 +1783 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: interpolated includes agree across load, topic and config validation -11:58 +1784 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variable scope identity includes its declaring topic -11:58 +1785 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: cross-module includes refresh when their target changes -11:58 +1786 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: malformed glossary and keymap XML report the supporting file and clear after repair -11:58 +1787 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: Markdown validation preserves other files and scan warnings while clearing active errors -11:58 +1788 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: linked anchors use dirty buffers and canonical self-links, caching targets -11:58 +1789 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: large buffered targets parse asynchronously and missing saved targets use their buffers -11:59 +1790 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: front matter requires complete delimiter lines with LF and CRLF -11:59 +1791 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: HTML diagnostics exclude prose and literal code without relaxing rendering policy -11:59 +1792 -1: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: location maps are reused within a parse and released between parses -11:59 +1793 -1: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart -12:00 +1793 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes -12:00 +1794 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs -12:00 +1795 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin -12:00 +1796 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success -12:00 +1797 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser -12:00 +1798 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll -12:00 +1799 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll -12:00 +1800 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password -12:00 +1801 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling -12:00 +1802 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints -12:00 +1803 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors -12:00 +1804 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account -12:00 +1805 -1: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics -12:00 +1806 -1: loading /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart -12:01 +1806 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside Markdown collapsible chapter owns its section -12:01 +1807 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown keeps Writerside collapse syntax literal -12:01 +1808 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown does not assign semantic Writerside collapse -12:01 +1809 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside fenced code consumes its collapsible attribute line -12:01 +1810 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: edited collapsible blocks serialize valid Writerside attributes -12:01 +1811 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary fenced code does not consume a collapse attribute line -12:01 +1812 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: semantic collapsible elements become structured preview content -12:01 +1813 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside XML topic preview keeps collapsible content nested -12:03 +1814 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: shared collapse control honors default state and toggles -12:03 +1815 -1: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: WYSIWYG collapses only Writerside chapter content -12:04 +1816 -1: loading /home/albert/busystack/busymark/test/src/export_review_regression_test.dart -12:05 +1816 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside PDF retains percent-encoded non-ASCII footnote labels -12:07 +1817 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: included footnotes use separate document-occurrence namespaces -12:07 +1818 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=false) -12:07 +1819 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=true) -12:07 +1820 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: repeated includes receive distinct nested occurrence IDs -12:08 +1821 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: mapper cannot substitute a diagram for a colliding paragraph -12:08 +1822 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside rejects outside file URIs and symlinks while staging shared-module images -12:08 +1823 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=false) -12:08 +1824 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=true) -12:08 +1825 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=true) -12:08 +1826 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=true) -12:08 +1827 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=false) -12:08 +1828 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=false) -12:08 +1829 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: collapsible headings keep numbering and actual outline order -12:08 +1830 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false #%FF) -12:08 +1831 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false %FF.md) -12:08 +1832 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false file%FF.txt) -12:08 +1833 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true #%FF) -12:08 +1834 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true %FF.md) -12:08 +1835 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true file%FF.txt) -12:08 +1836 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: combined Writerside PDF keeps diagrams and scoped notes without reading an outside image -12:08 +1837 -1: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: ordinary Markdown footnotes compile with retained definitions and repeated references -12:08 +1838 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart -12:09 +1838 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only committed newline and continued typing replace a table-ended selection -12:11 +1839 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table committed newline and continued typing replace a table-ended selection -12:12 +1840 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table committed newline and continued typing replace a table-ended selection -12:13 +1841 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables committed newline and continued typing replace a table-ended selection -12:13 +1842 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=false -12:13 +1843 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Up control=false -12:14 +1844 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=false -12:14 +1845 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Down control=false -12:14 +1846 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=true -12:15 +1847 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=true -12:15 +1848 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing commit uses real input -12:15 +1849 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing cancel uses real input -12:16 +1850 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=false -12:16 +1851 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Up control=false -12:16 +1852 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=false -12:16 +1853 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Down control=false -12:16 +1854 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=true -12:17 +1855 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=true -12:17 +1856 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing commit uses real input -12:17 +1857 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing cancel uses real input -12:18 +1858 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=false -12:18 +1859 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Up control=false -12:18 +1860 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=false -12:18 +1861 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Down control=false -12:19 +1862 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=true -12:19 +1863 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=true -12:19 +1864 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=false -12:19 +1865 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Up control=false -12:19 +1866 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=false -12:20 +1867 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Down control=false -12:20 +1868 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=true -12:20 +1869 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=true -12:20 +1870 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing commit uses real input -12:21 +1871 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing cancel uses real input -12:21 +1872 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=false -12:21 +1873 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Up control=false -12:21 +1874 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=false -12:22 +1875 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Down control=false -12:22 +1876 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=true -12:22 +1877 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=true -12:22 +1878 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing commit uses real input -12:23 +1879 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing cancel uses real input -12:23 +1880 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=false -12:23 +1881 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Up control=false -12:23 +1882 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=false -12:23 +1883 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Down control=false -12:24 +1884 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=true -12:24 +1885 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=true -12:24 +1886 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=false -12:24 +1887 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Up control=false -12:25 +1888 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=false -12:25 +1889 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Down control=false -12:25 +1890 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=true -12:25 +1891 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=true -12:25 +1892 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing commit uses real input -12:26 +1893 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing cancel uses real input -12:26 +1894 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=false -12:26 +1895 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Up control=false -12:27 +1896 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=false -12:27 +1897 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Down control=false -12:27 +1898 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=true -12:27 +1899 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=true -12:28 +1900 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing commit uses real input -12:28 +1901 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing cancel uses real input -12:29 +1902 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=false -12:29 +1903 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Up control=false -12:29 +1904 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=false -12:29 +1905 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Down control=false -12:29 +1906 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=true -12:29 +1907 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=true -12:29 +1908 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=false -12:29 +1909 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Up control=false -12:30 +1910 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=false -12:30 +1911 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Down control=false -12:30 +1912 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=true -12:30 +1913 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=true -12:30 +1914 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: false) -12:31 +1915 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: true) -12:31 +1916 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#80d00(keyId: "0x100000301", keyLabel: "Arrow Down", debugName: "Arrow Down"), previous: LogicalKeyboardKey#88515(keyId: "0x100000304", keyLabel: "Arrow Up", debugName: "Arrow Up"), word: false) -12:32 +1917 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after selection -12:32 +1918 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after document -12:32 +1919 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after same document source -12:32 +1920 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after disposal -12:33 +1921 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=false -12:33 +1922 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=true -12:33 +1923 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: clipboard history replaces selected table through document range -12:34 +1924 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: partial paragraph to table to paragraph replacement preserves outside text and undo -12:34 +1925 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell-local input cut paste and Tab remain local -12:34 +1926 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by up (variant: TargetPlatform.linux) -12:35 +1927 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by cancel (variant: TargetPlatform.linux) -12:36 +1928 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by document (variant: TargetPlatform.linux) -12:37 +1929 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by disposal (variant: TargetPlatform.linux) -12:37 +1930 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=false -12:38 +1931 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=true -12:38 +1932 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=false -12:38 +1933 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=true -12:39 +1934 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=false -12:39 +1935 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=true -12:39 +1936 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=false -12:40 +1937 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=true -12:40 +1938 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=false -12:40 +1939 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=true -12:41 +1940 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=false -12:41 +1941 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=true -12:42 +1942 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=false -12:42 +1943 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=true -12:42 +1944 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=false -12:43 +1945 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=true -12:44 +1946 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=false -12:44 +1947 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=true -12:45 +1948 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=false -12:45 +1949 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=true -12:46 +1950 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=false -12:46 +1951 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=true -12:46 +1952 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=false -12:46 +1953 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=true -12:47 +1954 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=false -12:47 +1955 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=true -12:47 +1956 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=false -12:48 +1957 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=true -12:48 +1958 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=false -12:49 +1959 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=true -12:49 +1960 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=false -12:49 +1961 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=true -12:50 +1962 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=false -12:50 +1963 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=true -12:50 +1964 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=false -12:51 +1965 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=true -12:51 +1966 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=false -12:52 +1967 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=true -12:52 +1968 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=false -12:53 +1969 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=true -12:53 +1970 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local paragraph accepts immediate Unicode input -12:54 +1971 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local cell accepts immediate Unicode input -12:54 +1972 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by caret before handoff -12:54 +1973 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by range before handoff -12:54 +1974 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by document before handoff -12:55 +1975 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by tab replacement before handoff -12:55 +1976 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by disposal before handoff -12:55 +1977 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input retains a scrolled viewport -12:56 +1978 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input uses clamped session offsets -12:56 +1979 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Backspace until committed input -12:56 +1980 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Delete until committed input -12:56 +1981 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Enter until committed input -12:57 +1982 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Left until committed input -12:57 +1983 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Right until committed input -12:57 +1984 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Up until committed input -12:57 +1985 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Down until committed input -12:58 +1986 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Home until committed input -12:58 +1987 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns End until committed input -12:58 +1988 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=false -12:58 +1989 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=true -12:58 +1990 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag up retains committed text input -12:59 +1991 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag cancel retains committed text input -12:59 +1992 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during clipboard preparation -12:59 +1993 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during open menu -13:00 +1994 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=false -13:01 +1995 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=true -13:01 +1996 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false switching a reused editor captures outgoing document selection -13:02 +1997 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true switching a reused editor captures outgoing document selection -13:02 +1998 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false switching a reused editor captures outgoing document selection -13:02 +1999 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true switching a reused editor captures outgoing document selection -13:02 +2000 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false switching a reused editor captures outgoing document selection -13:03 +2001 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true switching a reused editor captures outgoing document selection -13:03 +2002 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false switching a reused editor captures outgoing document selection -13:03 +2003 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true switching a reused editor captures outgoing document selection -13:04 +2004 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=false switching a reused editor captures outgoing document selection -13:04 +2005 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=true switching a reused editor captures outgoing document selection -13:05 +2006 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Cut edits only the selected table -13:05 +2007 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste edits only the selected table -13:05 +2008 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste as Plain Text edits only the selected table -13:06 +2009 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=false -13:06 +2010 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=true -13:06 +2011 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint up restores real typing -13:07 +2012 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint cancel restores real typing -13:07 +2013 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real Select All survives workspace session JSON and editor recreation -13:07 +2014 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real reverse drag survives workspace session JSON and editor recreation -13:07 +2015 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real Select All survives workspace session JSON and editor recreation -13:08 +2016 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real reverse drag survives workspace session JSON and editor recreation -13:08 +2017 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real Select All survives workspace session JSON and editor recreation -13:08 +2018 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real reverse drag survives workspace session JSON and editor recreation -13:09 +2019 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real Select All survives workspace session JSON and editor recreation -13:09 +2020 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real reverse drag survives workspace session JSON and editor recreation -13:10 +2021 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph local reverse selection restores locally -13:10 +2022 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell local reverse selection restores locally -13:10 +2023 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target removed uses current-document fallback -13:10 +2024 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed kind uses current-document fallback -13:11 +2025 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed text uses current-document fallback -13:11 +2026 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned block drag -13:11 +2027 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned cell drag -13:11 +2028 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=false -13:11 +2029 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=true -13:12 +2030 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=false -13:12 +2031 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=true -13:12 +2032 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Delete replaces the selected structured block and undoes -13:13 +2033 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Backspace replaces the selected structured block and undoes -13:13 +2034 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Cut replaces the selected structured block and undoes -13:13 +2035 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Enter replaces the selected structured block and undoes -13:13 +2036 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: plain paste replaces the selected structured block and undoes -13:14 +2037 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: structured paste replaces the selected structured block and undoes -13:14 +2038 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Delete replaces the selected structured block and undoes -13:14 +2039 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Backspace replaces the selected structured block and undoes -13:15 +2040 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Cut replaces the selected structured block and undoes -13:15 +2041 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Enter replaces the selected structured block and undoes -13:15 +2042 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: plain paste replaces the selected structured block and undoes -13:15 +2043 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: structured paste replaces the selected structured block and undoes -13:16 +2044 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Delete replaces the selected structured block and undoes -13:16 +2045 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Backspace replaces the selected structured block and undoes -13:16 +2046 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Cut replaces the selected structured block and undoes -13:17 +2047 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Enter replaces the selected structured block and undoes -13:17 +2048 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: plain paste replaces the selected structured block and undoes -13:17 +2049 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: structured paste replaces the selected structured block and undoes -13:18 +2050 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -13:18 +2051 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -13:18 +2052 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -13:18 +2053 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -13:18 +2054 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -13:18 +2055 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -13:19 +2056 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-ended selection accepts actual committed Unicode input once -13:19 +2057 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: captured table selection restores highlighting copy and mutation -13:19 +2058 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-block drag without changing its endpoint -13:19 +2059 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-cell drag without changing its endpoint -13:19 +2060 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated pointer cannot complete an owned document drag -13:20 +2061 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Delete cannot edit a local fallback -13:20 +2062 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Enter cannot edit a local fallback -13:20 +2063 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document plain paste cannot edit a local fallback -13:20 +2064 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document structured paste cannot edit a local fallback -13:20 +2065 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document typing cannot edit a local fallback -13:20 +2066 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: failed document deletion preserves redo history -13:20 +2067 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after failure -13:20 +2068 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after selection -13:21 +2069 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after document -13:21 +2070 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after disposal -13:22 +2071 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after failure -13:22 +2072 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after selection -13:22 +2073 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after document -13:22 +2074 -1: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after disposal -13:23 +2075 -1: loading /home/albert/busystack/busymark/test/src/busymark_toast_test.dart -13:23 +2075 -1: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast works when hosted above the Navigator -13:24 +2076 -1: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast appears at the bottom center and dismisses itself -13:24 +2077 -1: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast action runs and dismisses the toast -13:24 +2078 -1: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toasts queue instead of covering each other -13:24 +2079 -1: loading /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart -13:25 +2079 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames normalizes runs, edges, case, and Unicode once -13:25 +2080 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames disabled preprocessing preserves established safe characters -13:25 +2081 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames resolves exact custom values per instance for Markdown and XML -13:25 +2082 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/default collision -13:25 +2083 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/custom collision -13:25 +2084 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses custom/custom collision -13:25 +2085 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics allows the same output name in disjoint instances -13:25 +2086 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics deduplicates repeated publication of one physical topic -13:25 +2087 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses a collision with an origin module topic -13:25 +2088 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics resolves conditioned names independently in each instance -13:25 +2089 -1: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses invalid custom filenames before export -13:25 +2090 -1: loading /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart -13:26 +2090 -1: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover preference defaults off, serializes and copies independently -13:26 +2091 -1: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover title and authors use the established metadata precedence -13:26 +2092 -1: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: snapshot metadata, display text, explicit clears and plain JSON remain independent -13:26 +2093 -1: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: instance title uses its display name and only known project metadata -13:26 +2094 -1: loading /home/albert/busystack/busymark/test/src/path_utils_test.dart -13:27 +2094 -1: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries cancels a wide directory listing at the limit -13:27 +2095 -1: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries counts directories against the scan budget -13:27 +2096 -1: /home/albert/busystack/busymark/test/src/path_utils_test.dart: directory listing failure marks traversal incomplete -13:27 +2097 -1: /home/albert/busystack/busymark/test/src/path_utils_test.dart: display scan includes hidden and unsupported entries but not VCS data -13:27 +2098 -1: loading /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart -13:29 +2098 -1: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses multiple commits -13:31 +2099 -1: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses merge commit with multiple parents -13:31 +2100 -1: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: preserves author punctuation and separator-like subject text -13:31 +2101 -1: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses empty history -13:31 +2102 -1: loading /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart -13:31 +2102 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses clean repository status -13:31 +2103 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses modified tracked file -13:31 +2104 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged modification -13:31 +2105 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses unstaged modification -13:31 +2106 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged and unstaged same file -13:31 +2107 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: keeps staged addition and working-tree deletion separate -13:31 +2108 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: tracks rename state independently in each status column -13:31 +2109 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses untracked file -13:31 +2110 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses deleted file -13:31 +2111 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses renamed file -13:31 +2112 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses copied file -13:31 +2113 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses conflicted files -13:31 +2114 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses branch header and ahead behind counts -13:31 +2115 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses detached head header -13:31 +2116 -1: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: preserves spaces, unicode, quotes, and newlines in filenames -13:31 +2117 -1: loading /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart -13:35 +2117 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: process-backed Git gateway requires workspace trust -13:35 +2118 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: configures a repository author identity without terminal setup -13:37 +2119 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: runs core workflow in a temporary Git repository -13:38 +2120 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status lists every non-ignored hidden untracked file -13:38 +2121 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: resets the current branch with each explicit Git reset mode -13:39 +2122 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: refuses to reset while HEAD is detached -13:40 +2123 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: keeps staged and unstaged comparisons separate -13:40 +2124 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged rename diff and unstage preserve both paths -13:40 +2125 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: rollback restores both sides of a staged rename to HEAD -13:41 +2126 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged addition deleted from the working tree keeps separate diffs -13:41 +2127 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: preserves complete deleted content and restores a deleted version -13:42 +2128 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: failed historical blob read cannot delete the working file -13:42 +2129 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: constructs complete text and binary comparisons for untracked files -13:42 +2130 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: direct working-tree operations reject intermediate symlink escapes -13:42 +2131 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: fetch updates remote-tracking status without changing files -13:43 +2132 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: follows renames, compares complete versions, and restores one file -13:43 +2133 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: compares a merge commit with its first parent -13:44 +2134 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: switch treats an option-like branch name as an operand -13:44 +2135 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff and commit details preserve C-quoted UTF-8 paths -13:45 +2136 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: pushSetUpstream does not broaden an option-like branch to --all -13:45 +2137 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: detects conflicted files in a temporary Git repository -13:45 +2138 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status does not run a repository-configured filesystem monitor -13:46 +2139 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff APIs do not run a repository-configured textconv -13:46 +2140 -1: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: commit details do not run a repository-configured textconv -13:46 +2141 -1: loading /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart -13:47 +2141 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner closes child stdin so commands waiting for EOF can finish -13:47 +2142 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates commands that exceed the combined output limit -13:47 +2143 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: normal gateway commands always receive a finite timeout -13:47 +2144 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: gateway classifies a missing commit author identity -13:47 +2145 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap packages the Linux process-group launcher -13:47 +2146 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap Git uses bundled helpers, templates, and SSH -13:47 +2147 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap launcher never falls back to the confined host setsid -13:47 +2148 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves process launcher failures -13:47 +2149 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves a failed version probe result -13:47 +2150 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator reports not found for a genuinely missing command -13:47 +2151 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates descendant processes when a command times out -13:49 +2152 -1: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: timeout covers descendants that outlive the direct child and hold stdio -13:50 +2153 -1: loading /home/albert/busystack/busymark/test/src/git/git_widget_test.dart -13:52 +2153 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: hunk range text hides raw unified diff markers -13:52 +2154 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes are grouped correctly -13:52 +2155 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file checkboxes select files for commit -13:53 +2156 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: a path with staged and unstaged changes appears in both groups -13:53 +2157 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AD path shows staged addition and unstaged deletion without open action -13:53 +2158 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: staged rename preserves both paths and workspace scope -13:53 +2159 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: rename paths follow the selected Git status column -13:53 +2160 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit panel reports staged count and unsaved editor state -13:53 +2161 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message uses the grouped multiline form surface -13:53 +2162 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft is a secondary button immediately before Commit -13:53 +2163 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft replaces text, trims it, and moves the cursor -13:53 +2164 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history requires an active Markdown file -13:53 +2165 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file action menu does not contain commit selection actions -13:53 +2166 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untracked file menu uses an explicit delete action -13:54 +2167 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: unsupported untracked files remain stageable but cannot open -13:54 +2168 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit section colors files by Git status -13:54 +2169 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes view commit panel commits staged files with message -13:54 +2170 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit remains disabled without staged files -13:54 +2171 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: multiline commit message is retained and committed verbatim -13:54 +2172 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: failed commit preserves the commit message -13:54 +2173 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: committing disables actions and retains text until success -13:54 +2174 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message clears when repository or workspace changes -13:54 +2175 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: conflict group is visible -13:54 +2176 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: Git unavailable empty state is shown -13:54 +2177 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untrusted workspace shows repository trust prompt -13:54 +2178 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view shows no repository sync strip when clean -13:54 +2179 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not show branch dropdown -13:54 +2180 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not describe branch sync state -13:54 +2181 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history keeps comparison controls out of the sidebar -13:54 +2182 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history file rows show selected file diff -13:55 +2183 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history reset requires an explicit reset mode -13:55 +2184 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: dirty editor banner appears in diff viewer -13:55 +2185 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff hides duplicate file header but keeps open action -13:55 +2186 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action requires an explicit working-tree target -13:55 +2187 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action uses the explicit current path -13:55 +2188 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff keeps rename paths visible -13:55 +2189 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer renders patch rows with shared source view -13:55 +2190 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff can hide hunk headers and file action -13:55 +2191 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source uses full file snapshot when available -13:55 +2192 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: deleted diff shows the complete removed file snapshot -13:55 +2193 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer scrolls to the first source change on open -13:55 +2194 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source rows use configured editor font size -13:55 +2195 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff context lines show old and new number columns -13:56 +2196 -1: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff line numbers use source gutter geometry -13:56 +2197 -1: loading /home/albert/busystack/busymark/test/src/git/git_controller_test.dart -13:57 +2197 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: diff open target follows the current working-tree context -13:57 +2198 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: refreshes after workspace attach -13:57 +2199 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: does not expose repository Git for a single Markdown file -13:57 +2200 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust-required gateway does not inspect workspace before trust -13:57 +2201 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clearing trust immediately revokes repository access -13:57 +2202 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: status failure after trust retains the detected repository -13:57 +2203 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust is scoped to the attached workspace -13:57 +2204 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: Git executes with the canonical path that was trusted -13:57 +2205 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stage and unstage update state -13:57 +2206 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: loads only the selected change comparison and reconciles after stage -13:57 +2207 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: routes untracked selections to the untracked comparison -13:57 +2208 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: staged rename comparison preserves the original path -13:57 +2209 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: rollback forwards every validated rename path -13:57 +2210 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reactivates an open change comparison tab -13:57 +2211 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks empty message -13:57 +2212 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks when no files are staged -13:57 +2213 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: configures author identity through the active repository -13:57 +2214 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: AI staged-diff fingerprint rejects obsolete commit context -13:57 +2215 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: branch switch requires clean BusyMark editor state -13:57 +2216 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the active editor has unsaved content -13:57 +2217 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the current file is staged -13:57 +2218 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore protects a repository-relative file against the repository root -13:57 +2219 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset uses the selected commit and mode -13:57 +2220 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset is blocked by unsaved editor content -13:57 +2221 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: fetch refreshes repository status -13:57 +2222 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reports Git unavailable state -13:57 +2223 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stores operation failure state -13:57 +2224 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: exposes conflict state -13:57 +2225 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clears previous workspace Git state immediately on attach -13:57 +2226 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale refresh results after workspace switch -13:57 +2227 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: cancels set-upstream push when the workspace changes during remote lookup -13:57 +2228 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale history after a workspace switch -13:57 +2229 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: history tab reloads project history after workspace switch -13:57 +2230 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: current file history scopes selected commit details to the file -13:57 +2231 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file history switches between commit and working-tree comparisons -13:57 +2232 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history loads selected commit details without a file scope -13:57 +2233 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project commit details display the first changed file by default -13:57 +2234 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: selected commit file opens a project commit diff tab -13:57 +2235 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: closing a commit diff file tab activates the neighboring tab -13:57 +2236 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: deactivating a diff file keeps open diff tabs -13:57 +2237 -1: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file and project history paginate and retain separate selections -13:57 +2238 -1: loading /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart -14:01 +2238 -1: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: Enter submits Git identity and preserves global scope -14:02 +2239 -1: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: failed commit saves identity and retries the same commit -14:02 +2240 -1: loading /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart -14:03 +2240 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses added file -14:03 +2241 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses deleted file -14:03 +2242 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses modified file with line numbers -14:03 +2243 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses renamed file -14:03 +2244 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted UTF-8 paths emitted by Git -14:03 +2245 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted rename metadata emitted by Git -14:03 +2246 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses binary file marker -14:03 +2247 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses multiple hunks -14:03 +2248 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: keeps no newline marker as header line -14:03 +2249 -1: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: tolerates unknown diff header lines -14:03 +2250 -1: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart -14:06 +2250 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export failure dialog exposes actionable detail -14:07 +2251 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export eligibility is limited to active regular Markdown -14:07 +2252 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: workspace PDF export accepts a Writerside module instance -14:07 +2253 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: atomic PDF publication never replaces without confirmation -14:08 +2254 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: service rejects compiler output that is not a PDF -14:08 +2255 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler locator prefers the explicit development override -14:08 +2256 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler cancellation force-stops an unresponsive process -14:08 +2257 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: asset staging accepts passive SVG and rejects external content -14:08 +2258 -1: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: Linux packaging pins and installs the bundled Typst compiler -14:08 +2259 -1: loading /home/albert/busystack/busymark/test/src/source_search_test.dart -14:09 +2259 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex uses Unicode code points and diagnoses zero-length matches -14:09 +2260 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace-style bounded matching stops after the sentinel match -14:09 +2261 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: search worker terminates a running backtracking expression -14:09 +2262 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: plain search finds case-insensitive matches by default -14:09 +2263 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: case-sensitive and whole-word options constrain matches -14:09 +2264 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: whole-word boundaries recognize Unicode letters and marks -14:09 +2265 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex search and invalid regex are safe -14:09 +2266 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: navigation tracks current index and wraps -14:09 +2267 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: matches inside folded content are marked hidden and revealable -14:09 +2268 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace search groups authoring content by file -14:09 +2269 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker cancels stale requests -14:09 +2270 -1: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker bounds transferred high-match results -14:09 +2271 -1: loading /home/albert/busystack/busymark/test/src/source_commands_test.dart -14:11 +2271 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab inserts spaces -14:11 +2272 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab indents selected lines without replacing their text -14:11 +2273 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: indent and outdent selected lines -14:11 +2274 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter continues unordered ordered task and blockquote lines -14:11 +2275 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter exits empty list item -14:11 +2276 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts for nested source lines -14:11 +2277 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts beneath each source parent -14:11 +2278 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: inline commands toggle bold italic code and links -14:11 +2279 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: code fence and image insertion keep source-specific placeholders -14:11 +2280 -1: /home/albert/busystack/busymark/test/src/source_commands_test.dart: block insertion accepts localized default content -14:11 +2281 -1: loading /home/albert/busystack/busymark/test/src/source_highlighter_test.dart -14:13 +2281 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: source highlighting bounds high-match span composition -14:14 +2282 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter colors editor syntax -14:15 +2283 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter formats fenced code -14:15 +2284 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter tracks dynamic fence delimiters -14:15 +2285 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter does not open on indented code -14:15 +2286 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: xml source highlighter colors tags attributes and strings -14:15 +2287 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: plain source highlighter keeps normal editor text color -14:15 +2288 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: controller can keep editable text transparent for custom render -14:15 +2289 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: transparent editing layout matches rendered Markdown layout -14:15 +2290 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions project body lines out of editable text -14:15 +2291 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: rendered folded regions hide collapsed header text -14:15 +2292 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions collapse measured editor height -14:15 +2293 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown editor keeps syntax markers visible while styling content -14:15 +2294 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown tracks dynamic fence delimiters -14:15 +2295 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges nested emphasis inside links -14:15 +2296 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps inline code inside list items -14:15 +2297 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges bold and italic nesting -14:15 +2298 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges links inside blockquotes -14:15 +2299 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps emphasis inside table cells -14:15 +2300 -1: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter recognizes math without damaging code -14:16 +2301 -1: loading /home/albert/busystack/busymark/test/src/html_export_options_test.dart -14:17 +2301 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: TOC and numbering use the semantic hierarchy and preserve anchor IDs -14:18 +2302 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.light emits complete color variables, responsive width and metadata -14:18 +2303 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.dark emits complete color variables, responsive width and metadata -14:18 +2304 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.automatic emits complete color variables, responsive width and metadata -14:18 +2305 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: custom CSS follows generated rules and is captured before processing -14:18 +2306 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF CSS hashes the text seen by the HTML parser -14:18 +2307 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF custom and built-in CSS apply in Chromium -14:25 +2308 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF CSS hashes the text seen by the HTML parser -14:25 +2309 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF custom and built-in CSS apply in Chromium -14:28 +2310 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR CSS hashes the text seen by the HTML parser -14:28 +2311 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR custom and built-in CSS apply in Chromium -14:29 +2312 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: single-file attachments retain download names and reject source data URLs -14:29 +2313 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CSS rejects unsafe URLs, imports, HTML, unreadable and oversized files -14:30 +2314 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: repeated embedded assets are bounded before publication and keep old output -14:30 +2315 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.singleFile packages validated assets without source paths or fetching -14:30 +2316 -1: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.assetsDirectory packages validated assets without source paths or fetching -14:30 +2317 -1: loading /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart -14:36 +2317 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: navigation glyphs resolve for both reading directions -14:36 +2318 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: editing glyphs resolve for both reading directions -14:36 +2319 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git branch glyph does not mirror with reading direction -14:36 +2320 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git action glyphs have native menu equivalents -14:36 +2321 -1: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Arabic and Persian font fallbacks are available in the snap -14:36 +2322 -1: loading /home/albert/busystack/busymark/test/src/source_comparison_test.dart -14:38 +2322 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: keeps separated edits as exact separate changes -14:38 +2323 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: handles repeated lines without losing exact offsets -14:38 +2324 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: refines Unicode intraline ranges on UTF-16 boundaries -14:38 +2325 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: distinguishes whitespace, final newline, empty, and XML changes -14:38 +2326 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: labels an unanchored expensive comparison as simplified -14:38 +2327 -1: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: version identity detects stale comparison inputs -14:38 +2328 -1: loading /home/albert/busystack/busymark/test/src/writerside_project_test.dart -14:42 +2328 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers modules, indexes symbols, and resolves origin references -14:42 +2329 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under build -14:42 +2330 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under a hidden directory -14:42 +2331 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: module discovery hard-excludes VCS metadata directories -14:42 +2332 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic ownership is project-wide and prefers the nested module -14:42 +2333 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace promotes a parent directory to a multi-module project -14:42 +2334 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic symbols cannot be renamed independently of their files -14:42 +2335 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace module and instance selection changes active context -14:42 +2336 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse overlays indexed symbols and preserves unrelated diagnostics -14:42 +2337 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of variables updates completion and resolution without reopening -14:42 +2338 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of an instance tree updates active project context -14:42 +2339 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: BusyMark matches the official builder semantic snapshot for the fixture -14:43 +2340 -1: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: conformance fixture preserves source and resolves semantic content -14:43 +2341 -1: loading /home/albert/busystack/busymark/test/src/math_renderer_test.dart -14:46 +2341 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: renders multiple expressions in one batch and isolates failure -14:46 +2342 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: coalesces a large page, caches successes, and rebases local IDs -14:46 +2343 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: deduplicates identical formulas pending in the same batch -14:46 +2344 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: discards an obsolete block revision -14:46 +2345 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: cancels WebKit work after a sole request is superseded -14:46 +2346 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: maps timeout and unavailable hosts to local math failures -14:46 +2347 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rejects oversized input before invoking WebKit -14:46 +2348 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: extracts baseline style and preserves vector-safe MathJax SVG -14:46 +2349 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: resolves currentColor without flattening explicit SVG colors -14:46 +2350 -1: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rebases wide MathJax coordinates before secure normalization -14:46 +2351 -1: loading /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart -14:49 +2351 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: stages vector/raster assets, maps OpenAPI, and preserves failed source -14:50 +2352 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: enforces the export block count without failing the document -14:50 +2353 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: loads a Writerside referenced diagram before PDF rendering -14:50 +2354 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: static OpenAPI export contains selectable reference sections -14:50 +2355 -1: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: Typst exports generated vector/raster assets and falls back on failure -14:50 +2356 -1: loading /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart -14:53 +2356 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: parses every GTK 3 decoration token in physical order -14:53 +2357 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: ignores unknown controls and actions safely -14:53 +2358 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: loads preferences and delegates the narrowly scoped lower action -14:53 +2359 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: window preference values have stable equality -14:53 +2360 -1: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: null decoration layout uses the documented GTK 3 default -14:53 +2361 -1: loading /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart -14:55 +2361 -1: /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart: release smoke report path requires an explicit nonempty argument -14:55 +2362 -1: loading /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart -14:59 +2362 -1: /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart: spelling release smoke requires an explicit guarded report path -14:59 +2363 -1: loading /home/albert/busystack/busymark/test/src/system_accent_test.dart -15:03 +2363 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: uses the native Yaru orange accent as the offline fallback -15:03 +2364 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: keeps exact RGB portal accent color values authoritative -15:03 +2365 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: maps Ubuntu accent names when RGB portal value is unavailable -15:03 +2366 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: falls back to RGB when the Ubuntu accent is unavailable -15:03 +2367 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: Yaru accent wins over a different generic portal RGB -15:03 +2368 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: a Yaru accent signal remains authoritative over generic RGB -15:03 +2369 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: an unavailable named accent releases the current generic RGB -15:03 +2370 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: portal subscribes before both reads and retains changes during reads -15:03 +2371 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: missing portal keys, malformed signals, cancellation and resubscription -15:03 +2372 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic portal initialization cannot overwrite a newer generic change -15:03 +2373 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=true; unavailability selects current portal -15:03 +2374 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=false; unavailability selects current portal -15:03 +2375 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: source errors remain independent and healthy native updates continue -15:03 +2376 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: startup changes supersede native snapshots, including unavailable changes -15:03 +2377 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: disposal completes pending startup and cancels each owned source once -15:03 +2378 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid GTK releases startup while portal reads stay pending -15:03 +2379 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic signal cannot resolve startup before pending named read -15:03 +2380 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid named portal releases startup without pending RGB -15:03 +2381 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending GTK blocks ready portal until GTK arrives before deadline -15:03 +2382 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on unavailable -15:03 +2383 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on failure -15:03 +2384 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on deadline -15:03 +2385 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: all silent sources time out to orange and late sources recover -15:03 +2386 -1: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending initialization disposal cancels timers and portal session once -15:03 +2387 -1: loading /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart -15:12 +2387 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=false section order and native links -15:13 +2388 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=true section order and native links -15:13 +2389 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=false section order and native links -15:13 +2390 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=true section order and native links -15:13 +2391 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=false section order and native links -15:13 +2392 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=true section order and native links -15:14 +2393 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=false section order and native links -15:14 +2394 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=true section order and native links -15:14 +2395 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: multipage native outline ends before any body paragraphs; links and page references stay correct -15:14 +2396 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=bottomCenter -15:14 +2397 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=off -15:15 +2398 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=bottomCenter -15:15 +2399 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=off -15:15 +2400 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif portrait margins -15:15 +2401 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif landscape margins -15:15 +2402 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif portrait margins -15:16 +2403 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif landscape margins -15:16 +2404 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: request defaults come from source metadata and native outline title stays localized -15:16 +2405 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: an oversized cover fails clearly and leaves the existing PDF untouched -15:16 +2406 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in sansSerif -15:16 +2407 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in serif -15:16 +2408 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+a0 fails without replacing the PDF -15:17 +2409 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+2060 fails without replacing the PDF -15:17 +2410 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within A4 cover bounds or fails without replacing the PDF -15:17 +2411 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within A4 cover bounds or fails without replacing the PDF -15:17 +2412 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within A4 cover bounds or fails without replacing the PDF -15:18 +2413 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within A4 cover bounds or fails without replacing the PDF -15:18 +2414 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within A4 cover bounds or fails without replacing the PDF -15:18 +2415 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within A4 cover bounds or fails without replacing the PDF -15:18 +2416 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within narrow custom cover bounds or fails without replacing the PDF -15:18 +2417 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within narrow custom cover bounds or fails without replacing the PDF -15:19 +2418 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within narrow custom cover bounds or fails without replacing the PDF -15:19 +2419 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within narrow custom cover bounds or fails without replacing the PDF -15:19 +2420 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within narrow custom cover bounds or fails without replacing the PDF -15:19 +2421 -1: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within narrow custom cover bounds or fails without replacing the PDF -15:19 +2422 -1: loading /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart -15:23 +2422 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: workspace spelling UI has no obsolete floating or Material chooser -15:23 +2423 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Writerside nested TOC and comment retain rich spelling through correction -15:28 +2424 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich image review preserves authored source through undo and redo -15:31 +2425 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested code image beside math through undo and redo -15:33 +2426 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested address image beside math through undo and redo -15:35 +2427 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Ctrl+N typing paints live spelling targets and corrects with undo -15:37 +2428 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: confirmed spelling underline survives continued typing -15:38 +2429 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo café - -wrld - -15:41 +2430 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo -world - -wrld - -15:43 +2431 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: | helo café | -| --- | -| hello | - -wrld - -15:46 +2432 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in editor -15:47 +2433 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in split -15:48 +2434 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: language-required state uses compact document status instead of a banner -15:49 +2435 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: general Markdown fixture finishes automatic rich spelling -15:55 +2436 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in editor -15:57 +2437 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in source -15:57 +2438 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new rich document checks spelling after choosing its language -15:59 +2439 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new source document checks spelling after choosing its language -16:00 +2440 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in editor mode -16:01 +2441 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in source mode -16:01 +2442 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in preview mode -16:02 +2443 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in split mode -16:03 +2444 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: spelling-off status remains an actionable language control -16:04 +2445 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: status initializes the chooser when automatic spelling is off -16:05 +2446 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: banner installs the required dictionary and then conceals -16:07 +2447 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed banner installation keeps the unresolved state -16:08 +2448 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: routine checking does not create persistent editor chrome -16:08 +2449 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic spelling failure is visible in the compact banner -16:09 +2450 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic incomplete projection is visible in the compact banner -16:10 +2451 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: native spelling submenu applies immediate language choices -16:11 +2452 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: cancelling document dictionary install preserves override -16:11 +2453 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: document language changes only after dictionary installation -16:14 +2454 -1: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed document dictionary install preserves override -16:15 +2455 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart -16:21 +2455 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: native fragment preserves formatting and structured blocks through JSON -16:21 +2456 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: single rich paragraphs preserve list descendants through source -16:21 +2457 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: fragment rejects invalid versions, ranges, kinds, and excessive nesting -16:21 +2458 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: relative links are rebased for another document -16:21 +2459 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: inline images retain their source media path between projects -16:21 +2460 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Writerside structure survives the fragment and insertion -16:21 +2461 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: styled table-cell insertion preserves emphasis and table structure -16:21 +2462 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard service serializes writes and reads the latest result -16:21 +2463 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard HTML carries headings, emphasis, tasks, tables, and code -16:21 +2464 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: external HTML blockquotes survive Editor serialization -16:21 +2465 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard fragment serializes its selected structure as Markdown -16:21 +2466 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: HTML normalization preserves supported CSS and checkbox state safely -16:21 +2467 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=false) -16:23 +2468 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=true) -16:23 +2469 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix < survives Enter, source reload and label edit -16:23 +2470 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix *< survives Enter, source reload and label edit -16:24 +2471 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix * survives Enter, source reload and label edit -16:24 +2472 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: © -16:24 +2473 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: & -16:24 +2474 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: &* -16:25 +2475 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=false) -16:25 +2476 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=true) -16:25 +2477 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard pasted URL retains live link coverage through split, Backspace and suffix formatting -16:25 +2478 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard fresh Editor restores system clipboard formatting and undo -16:26 +2479 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor pastes a web layout table as a complete document -16:26 +2480 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete heading list and code blocks retain structure at every paragraph position -16:27 +2481 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete blocks in list items preserve descendants and undo tree -16:28 +2482 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard single rich paragraph field replacement preserves every list subtree -16:28 +2483 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste keeps the committed caret and typing position -16:29 +2484 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard rich paste in math fields uses source coordinates -16:29 +2485 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste returns the committed block caret -16:29 +2486 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste preserves list descendants through Undo and Redo -16:30 +2487 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste persists intentional whitespace through history -16:30 +2488 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document paste preserves whitespace and heading replacement scope -16:30 +2489 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste restores table-cell focus and committed caret -16:31 +2490 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history multi-paragraph paste focuses the committed last paragraph -16:31 +2491 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copy all does not duplicate nested list children -16:31 +2492 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document copy preserves a structured blockquote -16:31 +2493 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard right-click opens the menu for a whole-document selection -16:31 +2494 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image-only clipboard context menu offers only normal Paste -16:32 +2495 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Copy Plain Text strips formatting in another Editor -16:32 +2496 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard document selection menu can copy plain text -16:32 +2497 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard partial inline copy keeps formatting inside another paragraph -16:32 +2498 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut transfers formatting before deleting the selection -16:32 +2499 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard malformed native fragment falls back to HTML -16:33 +2500 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML-only clipboard imports into a fresh Editor -16:33 +2501 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML clipboard plain paste inserts only its text -16:33 +2502 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard retained external HTML preserves structure on history paste -16:33 +2503 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard current HTML-only and malformed HTML use ordinary importer fallbacks -16:33 +2504 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard external image history retains the bytes ingested before its dialog -16:37 +2505 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history panel path paste has one editor-owned retention write -16:40 +2506 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copied local video can be pasted from history in Editor -16:41 +2507 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image paste cancellation is terminal and cleans new assets -16:46 +2508 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image picker alternatives stay provisional until acceptance -16:57 +2509 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image finalization failure preserves the inserted reference and file -16:58 +2510 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard native and history image filesystem failures are handled outcomes -16:58 +2511 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain history paste replaces a document selection ending at a non-field block -16:58 +2512 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image history follows table and multi-block destinations -17:01 +2513 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Ctrl+Shift+V pastes only interoperable plain text -17:01 +2514 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste never probes or ingests an existing image path -17:02 +2515 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard failed clipboard write leaves cut selection intact -17:02 +2516 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste does not edit a destination changed during the read -17:02 +2517 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor paste preserves composition before and during reads -17:02 +2518 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard table-cell paste shortcut is consumed during composition -17:02 +2519 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard composition starting during image ingestion invalidates and cleans paste -17:03 +2520 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut does not delete a selection changed during the write -17:03 +2521 -1: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste is cancelled when the destination Editor is replaced -17:03 +2522 -1: loading /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart -17:05 +2522 -1: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed light surface palette -17:06 +2523 -1: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed dark surface palette -17:06 +2524 -1: loading /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart -17:09 +2524 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title edit preserves the resolved topic owner across modules -17:09 +2525 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ") -17:10 +2526 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ") -17:10 +2527 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ') -17:10 +2528 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ') -17:10 +2529 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ") -17:10 +2530 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ") -17:10 +2531 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ') -17:11 +2532 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ') -17:11 +2533 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: normalized title identity still rejects changed content and raw matching stays exact -17:11 +2534 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects missing attribute ranges before publication -17:11 +2535 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects corrupt attribute ranges before publication -17:11 +2536 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title publication rejects duplicate attributes in resulting XML -17:11 +2537 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (") -17:11 +2538 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (') -17:11 +2539 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: instance title save, reopen, unchanged OK, and edit keep one escaping layer -17:13 +2540 -1: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: single-quoted Markdown override reopens decoded and edits without touching example -17:13 +2541 -1: loading /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart -17:15 +2541 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: production provider consumes an older GTK accent without portals -17:15 +2542 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: non-Linux never creates platform listeners -17:15 +2543 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: missing native snapshot uses portal, then native events regain priority -17:15 +2544 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: GTK with silent portals -17:16 +2545 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: named with silent RGB -17:16 +2546 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK before deadline -17:16 +2547 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK at deadline -17:16 +2548 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes valid -17:16 +2549 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes unavailable -17:16 +2550 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named at deadline -17:16 +2551 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: all silent at deadline -17:16 +2552 -1: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: application scope teardown cancels unresolved startup deadlines -17:16 +2553 -1: loading /home/albert/busystack/busymark/test/src/markdown_parser_test.dart -17:17 +2553 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parsed formatting boundaries -17:17 +2554 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping locates partially consumed delimiter runs -17:17 +2555 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping retains escaped collapsed references -17:17 +2556 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping keeps original autolink semantics -17:17 +2557 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping preserves supported autolink variants -17:17 +2558 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parser case folding for references -17:17 +2559 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: ordinary reference parsing retains pinned sharp-S folding behavior -17:17 +2560 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: invalid email-like text cannot orphan a later mapped link -17:17 +2561 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects logical content to container source -17:17 +2562 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: positioned block mapping accepts a trailing empty logical line -17:17 +2563 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping ignores title and code-span source breaks -17:17 +2564 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping keeps each hard-break occurrence range -17:17 +2565 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping matches standalone HTML break layout -17:17 +2566 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects HTML break layout through containers -17:17 +2567 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: HTML break layout mapping preserves soft breaks and literal code -17:17 +2568 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts title, outline, links, images, and code fences -17:17 +2569 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts front matter title -17:17 +2570 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside Markdown title comes from H1, not front matter -17:17 +2571 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside front matter title does not satisfy missing H1 -17:17 +2572 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: parseAsync handles documents above the background threshold -17:18 +2573 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates Unicode heading anchors for supported languages -17:18 +2574 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deduplicates generated heading IDs in source order -17:18 +2575 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates heading IDs from semantic inline text -17:18 +2576 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: canonicalizes valid ATX and setext heading variants -17:18 +2577 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: retains Writerside title when complex list source needs fallback -17:18 +2578 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unresolved links, missing images, and missing alt text -17:18 +2579 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not validate schemed URIs as local references -17:18 +2580 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: resolves home-relative local image references -17:18 +2581 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: derives diagnostic links and images from Markdown AST semantics -17:18 +2582 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: normal Markdown image diagnostics stay within the workspace root -17:18 +2583 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local reference diagnostics allow absolute images but reject other escapes -17:18 +2584 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: cross-linked Markdown anchor validation does not recurse forever -17:18 +2585 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation stays inside the workspace root -17:18 +2586 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read unsupported anchor targets -17:18 +2587 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read oversized Markdown targets -17:19 +2588 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unsafe raw HTML -17:19 +2589 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe raw HTML does not produce unsafe diagnostics -17:19 +2590 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Markdown headings inside paired raw HTML are not outline headings -17:19 +2591 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML tags produce unsafe diagnostics -17:19 +2592 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML attributes produce unsafe diagnostics -17:19 +2593 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML URLs produce unsafe diagnostics -17:19 +2594 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deeply nested raw HTML produces unsafe diagnostic -17:19 +2595 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe HTML tags do not become Writerside XML blocks -17:19 +2596 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts Writerside Markdown XML blocks and variables -17:19 +2597 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: emits deterministic Markdown accessibility diagnostics -17:19 +2598 -1: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not report populated table headers as empty -17:19 +2599 -1: loading /home/albert/busystack/busymark/test/src/feedback_submission_test.dart -17:20 +2599 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator requires category and enforces subject and message bounds -17:20 +2600 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts inclusive subject and message boundaries -17:21 +2601 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects oversized fields and invalid optional email -17:21 +2602 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator counts Unicode code points at subject and message boundaries -17:21 +2603 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts practical valid email syntax -17:21 +2604 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects malformed email syntax and length boundaries -17:21 +2605 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes required metadata and omits unapproved details -17:21 +2606 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes only explicitly approved technical details -17:21 +2607 -1: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission uses every declared category wire value -17:21 +2608 -1: loading /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart -17:22 +2608 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter owns application chrome; native bridge carries no split geometry -17:23 +2609 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Workspace, Welcome and Settings use the shared full-height frame -17:23 +2610 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native clipboard, menus, Writerside media and rendering hosts remain registered -17:23 +2611 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Linux desktop identity uses the standard Snap launcher mapping -17:23 +2612 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: strict Snap keeps the GTK SVG loader ABI-aligned with GNOME -17:23 +2613 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder stages bundled Git tools -17:23 +2614 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local repack replaces clean-snap font links with new bundle fonts -17:23 +2615 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: confined dependency checks reject missing and wrong resolutions -17:24 +2616 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap reuses verified platform libraries and retains private tools -17:24 +2617 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder uses the project Flutter toolchain -17:24 +2618 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snapcraft pins the same Flutter release as the project -17:24 +2619 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder keeps compiler output off the system tmpfs -17:24 +2620 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter content menus use native GTK popup menu semantics -17:24 +2621 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native content menus clean up direct GTK popup sessions -17:24 +2622 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap packaging hooks consolidate resources and keep required fixes -17:24 +2623 -1: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native GTK theme follows brightness without replacing a valid user theme -17:24 +2624 -1: loading /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart -17:25 +2624 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: valid native fragment wins over HTML and text -17:25 +2625 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: malformed native fragment falls through to valid HTML -17:25 +2626 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: unusable HTML falls through to source and plain text -17:25 +2627 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: HTML-only blockquotes are usable through descendant content -17:25 +2628 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: mixed external HTML preserves every block for Editor and Markdown Source -17:25 +2629 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode uses only interoperable text -17:25 +2630 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode rejects source-only and image-only payloads -17:25 +2631 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: whitespace text is valid and empty text is unavailable -17:25 +2632 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: explicit image is first in normal mode -17:25 +2633 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: Editor and Source use their required textual fallback order -17:25 +2634 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: structured source serialization accepts the destination mode -17:25 +2635 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: native inline serialization preserves whitespace without a newline -17:25 +2636 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: table-cell fragment serialization escapes pipes and flattens lines -17:25 +2637 -1: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: local image path detection is safe and rejects altered URI meaning -17:25 +2638 -1: loading /home/albert/busystack/busymark/test/src/uri_utils_test.dart -17:27 +2638 -1: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: external launch policy is an explicit safe-list -17:27 +2639 -1: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: scheme detection remains broader than launch policy -17:27 +2640 -1: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: remote resources only allow http and https -17:27 +2641 -1: loading /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart -17:31 +2641 -1: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger aggregates locally by month and provider -17:34 +2642 -1: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger starts a clean aggregate in a new month -17:34 +2643 -1: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: malformed ledger data is treated as empty, not surfaced -17:34 +2644 -1: loading /home/albert/busystack/busymark/test/src/busymark_design_test.dart -17:37 +2644 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch suppresses state halos and preserves focus borders -17:38 +2645 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in dark -17:38 +2646 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in dark -17:38 +2647 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in light -17:38 +2648 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in light -17:38 +2649 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: disabled switch preserves inherited disabled styling -17:38 +2650 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch row owns its control and activates exactly once -17:38 +2651 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch preserves Yaru drag activation -17:38 +2652 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: radio suppresses state halos and preserves focus borders -17:38 +2653 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in dark -17:38 +2654 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in dark -17:38 +2655 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in light -17:38 +2656 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in light -17:38 +2657 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: informational dialog keeps the close control at the right edge -17:38 +2658 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: Split Preview stays fluid without copying Source-only chrome -17:38 +2659 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: document frame centers wide content and honors physical safe edges -17:38 +2660 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: toolbar clearance is applied only to the toolbar edge -17:38 +2661 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar header and list compose the shared vertical gap -17:38 +2662 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header controls delegate geometry and elevation to Yaru -17:38 +2663 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dark header menu delegates its tooltip to IconButton -17:38 +2664 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: settings dropdowns use the framework tooltip -17:38 +2665 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: desktop tooltips use one explicit natural-width geometry -17:39 +2666 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: popup menu rows show shortcuts without redundant hover tooltips -17:39 +2667 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup sends shortcuts and separators to GTK and maps selection -17:39 +2668 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: colored popup icons stay on the native menu path -17:39 +2669 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup preserves asynchronous menu loading -17:39 +2670 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic theme retains Yaru geometry, typography, and interaction -17:39 +2671 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: accent controls use the native Yaru foreground and fill roles -17:39 +2672 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic surfaces use one modern neutral Linux role ladder -17:39 +2673 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: equal-choice segmented selection stays neutral -17:39 +2674 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped cards use native boxed-list depth and roles -17:39 +2675 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped list headings use the native semantic heading style -17:39 +2676 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner uses semantic surfaces in light and dark -17:39 +2677 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner animates its mounted layout height -17:39 +2678 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner reveal honors reduced motion -17:39 +2679 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog grouped cards resolve the contextual native layer -17:39 +2680 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native dark hover role -17:39 +2681 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native light hover role -17:39 +2682 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped row subtitles use semantic native text roles -17:39 +2683 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog roles and popup selectors use real themed buttons -17:39 +2684 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in dark -17:40 +2685 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in light -17:40 +2686 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog actions wrap at narrow localized text widths -17:40 +2687 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: action rows use semantic destructive foreground in light and dark themes -17:40 +2688 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: shared text-entry group delegates fields to the framework -17:40 +2689 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry uses the native row-owned form surface -17:40 +2690 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry forwards readOnly without disabling input -17:40 +2691 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic standard icon button delegates to FilledButton.icon -17:40 +2692 -1: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar surface owns one directional semantic boundary -17:41 +2693 -1: loading /home/albert/busystack/busymark/test/src/source_document_test.dart -17:41 +2693 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: empty document mapping is stable -17:42 +2694 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: no-fold mapping preserves offsets and ranges -17:42 +2695 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: single fold projects visible text and maps offsets -17:42 +2696 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: fold-boundary selection mapping preserves direction, not coverage -17:42 +2697 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: multiple adjacent and overlapping ranges normalize safely -17:42 +2698 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: full and visible ranges report hidden clipping -17:42 +2699 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: CRLF line endings keep line starts and projection correct -17:42 +2700 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits before and after folds preserve unrelated folds -17:42 +2701 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: full editing values preserve composing through folded projection -17:42 +2702 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits incrementally retain unaffected line entries -17:42 +2703 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: incremental line indexes match full indexes across line-break edits -17:42 +2704 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edit intersecting a fold unfolds only affected region -17:42 +2705 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: collapsed-boundary insertion preserves hidden folded content -17:42 +2706 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible insertions before and after a fold keep hidden text -17:42 +2707 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible deletions near a fold keep hidden text -17:42 +2708 -1: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible replacement spanning a fold replaces the hidden range -17:42 +2709 -1: loading /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart -17:43 +2709 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: uses each heading level effective text size for inline math -17:44 +2710 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: custom typography and four margins control actual math jobs -17:44 +2711 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: prepares inline and display math as deterministic vector assets -17:44 +2712 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: footnote inline and display math retain surrounding semantics -17:44 +2713 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst compiles footnote math through the math renderer -17:44 +2714 -1: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst keeps MathJax SVG inline and exports failed math visibly -17:44 +2715 -1: loading /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart -17:46 +2715 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: tabs synchronize and support arrow, Home and End keys -17:48 +2716 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table sorting is numeric and excludes disabled columns -17:48 +2717 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Markdown table keeps empty columns equal width -17:48 +2718 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Writerside table preserves declared column width -17:48 +2719 -1: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table spans preserve geometry and sticky header position -17:49 +2720 -1: loading /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart -17:50 +2720 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: records balance a two-line source preview with visible metadata -17:51 +2721 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: large records use a short preview and do not create a tooltip -17:51 +2722 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: actions menu is right of search and owns refresh and clear -17:52 +2723 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: keyboard navigation keeps the selected history entry visible -17:53 +2724 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: Delete edits the focused search without removing history -17:53 +2725 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: unsupported payload disables paste for the destination -17:53 +2726 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: double-clicking a shared history row pastes the item -17:53 +2727 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain-text paste remains enabled when rich paste is unavailable -17:53 +2728 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: source-only payload has no plain-text action -17:53 +2729 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: image exposes plain paste only with real text -17:53 +2730 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed insertion reports visible feedback -17:54 +2731 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: cancelled insertion is terminal without an error toast -17:54 +2732 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: current external HTML is transient until panel insertion and remains reusable -17:54 +2733 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed current-item paste is not retained and plain paste stays explicit -17:54 +2734 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: successful external paste retains after the panel is disposed -17:54 +2735 -1: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain source and Editor copies stay text and de-duplicate -17:54 +2736 -1: loading /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart -17:56 +2736 -1: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: loads version and build number from package metadata -17:56 +2737 -1: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: uses zero when package build metadata is absent -17:56 +2738 -1: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: rejects missing package version metadata -17:56 +2739 -1: loading /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart -17:58 +2739 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates XML child topic and registers it under parent TOC node -17:59 +2740 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates Unicode Markdown and XML topic filenames -17:59 +2741 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source without a root ID before publication -17:59 +2742 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source whose root ID differs from filename -17:59 +2743 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: accepts custom XML source whose root ID matches filename -17:59 +2744 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: requires a reference for every non-root placement -17:59 +2745 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a child under an exact topic-less TOC node path -17:59 +2746 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: first real topic under an empty group becomes the home page -17:59 +2747 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: exact TOC path disambiguates sibling insertion -17:59 +2748 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects an exact TOC path whose expected node has moved -17:59 +2749 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: invalid exact TOC path does not fall back to topic reference -17:59 +2750 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects duplicate topic IDs before writing -17:59 +2751 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a missing nested topics directory -18:00 +2752 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects a symlinked topics directory without writing outside -18:00 +2753 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: does not overwrite a concurrently changed tree or leave an orphan topic -18:00 +2754 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rollback preserves a created topic changed by another writer -18:00 +2755 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: atomic tree publication preserves its POSIX mode -18:00 +2756 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID with a different extension -18:00 +2757 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in a different directory -18:00 +2758 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in another configured root -18:00 +2759 -1: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation allows an unrelated concurrent topic ID -18:00 +2760 -1: loading /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart -18:02 +2760 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.rtl -18:06 +2761 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.ltr -18:08 +2762 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation uses native master-detail controls and filters -18:10 +2763 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation opens both template editor entry points -18:14 +2764 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: catalog failure keeps BusyMark status and retry controls -18:15 +2765 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files editor stages new content, cancels and persists on OK -18:18 +2766 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: source surface exposes its label and focus boundary -18:19 +2767 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: New toolbar command stages an editable draft and Cancel drops it -18:21 +2768 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: custom XML template cannot publish a mismatching root ID -18:23 +2769 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: save-as-template appears under Custom; edit, duplicate and delete preserve cancel -18:25 +2770 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: stale settings reject OK and retain draft for recovery -18:27 +2771 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Internal reset is staged, cancellable, and publishable -18:29 +2772 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: true) -18:31 +2773 -1: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: false) -18:32 +2774 -1: loading /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart -18:33 +2774 -1: /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart: tree exact reveal unfolds and line movement is one undoable full-source edit -18:34 +2775 -1: loading /home/albert/busystack/busymark/test/src/math_parser_test.dart -18:35 +2775 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses several dollar formulas as semantic inline math -18:35 +2776 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses the GitHub dollar-backtick form without delimiters -18:35 +2777 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses single-line and multiline display math as blocks -18:35 +2778 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math scanner stays aligned around every neighboring block kind -18:35 +2779 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math and Writerside tex fences follow document compatibility -18:35 +2780 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math is inline and remains source-preserving -18:35 +2781 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math decodes XML entities but preserves source -18:35 +2782 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: escaped dollars, code, currency, empty and malformed forms stay text -18:35 +2783 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: inline math survives list, blockquote, and table structure -18:35 +2784 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: CRLF math input and every original form round-trip untouched -18:35 +2785 -1: /home/albert/busystack/busymark/test/src/math_parser_test.dart: preview builder creates first-class inline and display math nodes -18:35 +2786 -1: loading /home/albert/busystack/busymark/test/src/busymark_document_test.dart -18:40 +2786 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hit testing includes shared document surface borders -18:40 +2787 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: document image width resolution is bounded consistently -18:40 +2788 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: package markdown AST imports into BusyDocument core blocks -18:40 +2789 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: linked remote image paragraphs import as editable image blocks -18:40 +2790 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer emits Markdown source for edited semantic blocks -18:40 +2791 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unchanged raw blocks -18:40 +2792 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves safe raw HTML source byte for byte -18:40 +2793 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unsafe raw HTML source while preview remains raw -18:40 +2794 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer patches dirty blocks without canonicalizing unchanged source -18:40 +2795 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve unrelated block instances -18:40 +2796 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve source-only reference definitions -18:40 +2797 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: source-only definitions survive scanner and AST count mismatches -18:40 +2798 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preserved reference definitions still resolve after an edit -18:40 +2799 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve GFM footnote definitions -18:40 +2800 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: containers with nested definitions are source-protected -18:40 +2801 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: scanner mismatches conservatively protect nested definitions -18:40 +2802 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: opaque source IDs cannot collide with semantic heading IDs -18:40 +2803 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full list serialization preserves reference definitions -18:40 +2804 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full serialization omits generated footnote output -18:40 +2805 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: invalid reference-like prose remains a modeled block -18:40 +2806 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large inline-link documents do not create source-only blocks -18:40 +2807 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large adjacent definition sets stay distinct and preserved -18:41 +2808 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: destructive selections reject read-only source endpoints -18:41 +2809 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: list indentation cannot attach content to a protected item -18:41 +2810 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested list text edit updates Markdown source -18:41 +2811 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered list edits preserve nested children -18:41 +2812 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered task edits preserve marker and nested children -18:41 +2813 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested blockquote edit preserves surrounding source -18:41 +2814 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cross-block deletion prunes an emptied blockquote -18:41 +2815 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested inline edit updates Markdown source -18:41 +2816 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested block removal updates Markdown source -18:41 +2817 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser includes setext headings in heading metadata -18:41 +2818 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: live document outline follows top-level generated heading order -18:41 +2819 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: duplicate anchors retain distinct editor block identities -18:41 +2820 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preview and WYSIWYG use the same semantic document -18:41 +2821 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edit updates Markdown source -18:41 +2822 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG empty documents have one editable paragraph -18:41 +2823 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor accepts typing in an empty document -18:42 +2824 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG heading navigation skips across large documents -18:46 +2825 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders a blockquote around its editable text -18:46 +2826 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG uses one quote frame for multiple quote paragraphs -18:46 +2827 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG quote frame focuses its first editable child -18:46 +2828 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inherits RTL indentation inside a blockquote -18:46 +2829 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG keeps a generated leaf blockquote editable -18:46 +2830 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hides a definition-only source and preserves it -18:46 +2831 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor undo and redo restore document edits -18:47 +2832 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor replaces document when active file changes -18:47 +2833 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor applies heading keyboard shortcuts -18:47 +2834 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Ctrl+Shift+- inserts a thematic break -18:47 +2835 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Tab nests eligible list items and Shift+Tab lifts them -18:47 +2836 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG arrow keys move focus between paragraphs -18:47 +2837 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Arrow crosses paragraph boundaries -18:47 +2838 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Shift+Arrow extends into the next paragraph -18:47 +2839 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated arrow keys keep moving between paragraphs -18:48 +2840 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down selection continues character by character in the next paragraph -18:48 +2841 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated Shift+Arrow extends one selection -18:48 +2842 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG horizontal selection continues vertically into the next paragraph -18:48 +2843 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse Shift+Up selection continues left in the previous paragraph -18:48 +2844 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ignores redundant source blank lines -18:48 +2845 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: typing replaces a WYSIWYG selection across paragraphs -18:48 +2846 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: deleting a selected paragraph boundary merges paragraphs -18:48 +2847 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down follows visual lines before paragraphs -18:48 +2848 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Arrow selects whole grapheme clusters -18:49 +2849 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection can copy multiple paragraphs -18:49 +2850 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG click elsewhere clears previous block selection -18:49 +2851 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift click selects text across paragraphs -18:49 +2852 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag extends selection across paragraphs -18:49 +2853 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag from heading end hides native selection -18:49 +2854 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag updates selection on pointer up -18:49 +2855 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag aligns wrapped trailing word highlight -18:49 +2856 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+X cuts block selection -18:49 +2857 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves inline formatting -18:50 +2858 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves whole block formatting -18:50 +2859 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection preserves partial paragraph boundaries -18:50 +2860 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar bold applies to selected paragraphs -18:50 +2861 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar toggle stays vertically aligned when collapsed -18:50 +2862 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar reserves its document edge -18:51 +2863 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: restoring the first block does not duplicate the Editor top inset -18:51 +2864 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: vertical WYSIWYG toolbar is bounded and extends from its edge -18:51 +2865 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar corners remain physical in LTR and RTL -18:52 +2866 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar context menu changes placement and direction when shown or hidden -18:52 +2867 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar list applies to selected paragraphs -18:52 +2868 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders safe HTML blocks and edits raw source -18:52 +2869 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar inserts an HTML block -18:52 +2870 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after the active file changes -18:53 +2871 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after document generation changes -18:53 +2872 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs stop app-level tab navigation shortcuts -18:53 +2873 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs activate the native headerbar barrier -18:53 +2874 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves existing inline formatting -18:53 +2875 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Backspace at block start merges with previous block -18:53 +2876 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+A twice selects all text for deletion -18:53 +2877 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG select-all deletion preserves source-protected definitions -18:54 +2878 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline ranges do not duplicate formatted text -18:54 +2879 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands serialize bold italic and links -18:54 +2880 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG serializes italic nested at the end of bold text -18:54 +2881 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve inline ranges where possible -18:54 +2882 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve empty-alt inline images -18:54 +2883 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG edits preserve escaped literal punctuation semantics -18:54 +2884 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog submits with Enter -18:54 +2885 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when caret is inside it -18:54 +2886 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when its text is selected -18:54 +2887 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline command toggles selected mark without dropping links -18:54 +2888 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline code command serializes selected text -18:54 +2889 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer chooses inline code delimiters that preserve backticks -18:54 +2890 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link title backslashes use standards-safe character references -18:54 +2891 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: inline serialization distinguishes every hard-break run boundary -18:54 +2892 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link titles round-trip decoded punctuation and line endings -18:54 +2893 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table link titles retain multiline values without physical rows -18:54 +2894 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves fenced code delimiters and trailing whitespace -18:54 +2895 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser preserves meaningful trailing fenced-code whitespace -18:54 +2896 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser closes dynamic code fences only with a matching delimiter -18:54 +2897 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser does not treat indented code as a fenced block -18:54 +2898 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands preserve existing sibling formatting -18:54 +2899 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands apply to multiple selected blocks -18:54 +2900 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands apply to multiple selected blocks -18:54 +2901 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG image command serializes a real image block -18:54 +2902 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders Writerside images by basename -18:54 +2903 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders absolute local image paths -18:54 +2904 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders linked remote image blocks -18:54 +2905 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in commonMark -18:54 +2906 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in writersideMarkdown -18:54 +2907 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in gfm -18:54 +2908 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter uses parser URL boundaries without parsing other syntax -18:54 +2909 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter excludes code and keeps explicit equal-label links explicit -18:54 +2910 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: bare URL destinations follow edits and splits while explicit destinations stay authored -18:54 +2911 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: rejoining only extends existing bare URLs and preserves code and explicit links -18:54 +2912 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: structural URL slices update derived destinations and link editing authors an explicit destination -18:54 +2913 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter splits one block into separate Markdown paragraphs -18:54 +2914 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores an empty paragraph represented only by blanks -18:54 +2915 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores trailing blank lines -18:54 +2916 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG does not create blocks for redundant source whitespace -18:54 +2917 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in unordered list creates next item then exits list -18:54 +2918 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in ordered list creates next numbered item -18:54 +2919 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG thematic break inserts after current block -18:54 +2920 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter key creates a new paragraph block -18:55 +2921 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter carries active inline style to next paragraph -18:55 +2922 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter at paragraph end preserves inner bold span -18:55 +2923 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG newline text edit preserves inner bold span -18:55 +2924 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text input newlines become Markdown paragraphs -18:55 +2925 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves an existing hard break -18:55 +2926 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: hard-break toolbar command retains focus and advances caret -18:55 +2927 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: formatting toolbar command retains editor focus and selection -18:55 +2928 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Shift+Enter retains focus and advances past the hard break -18:55 +2929 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line toolbar command round-trips and remains one focused edit -18:56 +2930 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor lazily builds large documents -18:56 +2931 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG task checkbox toggles directly when clicked -18:56 +2932 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands serialize headings and lists -18:56 +2933 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG extended toolbar commands serialize Markdown -18:56 +2934 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line command keeps repeated terminal markers off the text line -18:56 +2935 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table and code language commands serialize Markdown -18:56 +2936 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cell pipes round-trip without shifting columns -18:56 +2937 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table escaping protects pipes inside formatted cell content -18:56 +2938 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table code preserves a backslash immediately before a pipe -18:56 +2939 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table row and column commands serialize Markdown -18:56 +2940 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table dialog validates and synchronizes its size grid -18:57 +2941 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table alignment survives parsing, edits, and structural changes -18:57 +2942 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table column alignment command supports all Markdown alignments -18:57 +2943 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells apply Markdown column alignment -18:57 +2944 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells are formatted and editable -18:57 +2945 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table overlay menus survive structural rebuilds -18:58 +2946 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Tab travels through WYSIWYG table cells and extends the table -18:58 +2947 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG list indent outdent and task toggle commands serialize -18:58 +2948 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation starts a nested list at one -18:58 +2949 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation preserves a top-level start value -18:58 +2950 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation numbers multiple nested siblings -18:58 +2951 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered outdent continues the parent list numbering -18:58 +2952 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts an unordered item to a valid ordered marker -18:58 +2953 -1: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts selected nested items at each list depth -18:58 +2954 -1: loading /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart -18:59 +2954 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: single rich paragraph repairs independently surviving endpoints -18:59 +2955 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: table cells repair independently formatted selection endpoints -18:59 +2956 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion replaces only a heading own prefix at content start -18:59 +2957 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion removes complete ATX and Setext heading syntax -18:59 +2958 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion retains literal paragraph hashes -18:59 +2959 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: whole heading replacement removes every authored marker -18:59 +2960 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: heading insertion at middle and end preserves only the leading heading -18:59 +2961 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequence removes nested heading marker at content start -18:59 +2962 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: external HTML blockquotes remain structured in Source -18:59 +2963 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: HTML break layout stays behind a caret after the semantic break -18:59 +2964 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: caret immediately before an HTML break keeps the break after paste -18:59 +2965 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection crossing an HTML break preserves both outside slices -18:59 +2966 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete inline HTML survives rich link insertion as one fragment -18:59 +2967 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native rich trailing space survives inherited HTML insertion -18:59 +2968 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native incoming edge whitespace survives inherited HTML styles -18:59 +2969 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection replacement retains native whitespace and link titles -18:59 +2970 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: multiple native inline runs retain text styles links and spaces -18:59 +2971 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: rich insertion maps collapsed HTML whitespace as content -18:59 +2972 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through supported raw HTML styles -18:59 +2973 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through a supported raw HTML link -18:59 +2974 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: supported content corpus always plans a rich insertion -19:00 +2975 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: repeated mapped siblings avoid fallback and preserve final paste -19:01 +2976 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete blocks split and preserve enclosing inline contexts -19:01 +2977 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph-only block sequences match Editor merge semantics -19:01 +2978 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block paste preserves independent formatted selection boundaries -19:01 +2979 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured paste spans partial first and last destination blocks -19:01 +2980 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequences retain destination block and container paths -19:01 +2981 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paste output is valid input for a second paste at returned caret -19:01 +2982 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: CRLF blockquote projection retains its authored prefixes -19:01 +2983 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured complete blocks generate only CRLF boundaries -19:01 +2984 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured inline hard breaks use destination CRLF -19:01 +2985 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: mapped and generated structured breaks retain CRLF and caret width -19:01 +2986 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: protected Source context explicitly permits textual fallback -19:01 +2987 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: syntax-only positions explicitly permit textual fallback -19:01 +2988 -1: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: unmappable destination links stop rather than permit fallback -19:01 +2989 -1: loading /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart -19:02 +2989 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: rejects a superseded render even when its engine finishes last -19:03 +2990 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: retains the last successful render after invalid source -19:03 +2991 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: limits concurrency and gives export work queue priority -19:03 +2992 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: reuses a successful content-addressed cache entry -19:03 +2993 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: validates concurrency and returns a typed unavailable result -19:03 +2994 -1: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: bounds last-successful render retention with LRU eviction -19:03 +2995 -1: loading /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart -19:04 +2995 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: source navigation distinguishes repeated references on one line -19:04 +2996 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: explicit synchronization follows installed breadth-first topic matching -19:04 +2997 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edits preserve other instances, content and occurrence -19:04 +2998 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edit changes H1 and preserves front matter title -19:04 +2999 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title round trip preserves ampersands and entity spellings -19:04 +3000 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: unchanged inherited values do not add overrides -19:04 +3001 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: XML title edits escape attributes and expand self-closing root -19:04 +3002 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: clearing overrides removes only the selected instance and occurrence -19:04 +3003 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: before-drop preserves complete subtrees and returns all moved paths -19:06 +3004 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: grouping uses source order and rejects cross-parent selections -19:06 +3005 -1: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: line moves retain CRLF, caret, reversed selection and boundaries -19:06 +3006 -1: loading /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart -19:06 +3006 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: section includes descendants and stops at the next sibling -19:06 +3007 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: move up and down swap complete sibling subtrees -19:06 +3008 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: promote and demote preserve descendant hierarchy -19:06 +3009 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: demote is unavailable when a descendant is already H6 -19:06 +3010 -1: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: level changes preserve and convert Setext headings -19:06 +3011 -1: loading /home/albert/busystack/busymark/test/src/visualization_models_test.dart -19:09 +3011 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization fence classification recognizes canonical names and aliases without changing spelling -19:09 +3012 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: preserves dependency diagnostic source locations -19:09 +3013 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys canonicalizes options and dependency order -19:09 +3014 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates on engine, source, theme, profile, option, and dependency -19:09 +3015 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates entries produced by the previous render pipeline -19:09 +3016 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache round-trips SVG, raster, and structured OpenAPI successes -19:10 +3017 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache does not persist failures and repairs malformed entries -19:10 +3018 -1: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache derives the XDG cache path without changing the environment -19:10 +3019 -1: loading /home/albert/busystack/busymark/test/src/writerside_video_test.dart -19:11 +3019 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside Markdown models video and preserves its exact source -19:11 +3020 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video remains blocked raw HTML outside Writerside Markdown -19:11 +3021 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: multiline Writerside video attributes remain one semantic block -19:11 +3022 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video markup inside an ordinary code fence is not interpreted -19:11 +3023 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside topic parser exposes video attributes -19:11 +3024 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside .topic preview creates a first-class video block -19:11 +3025 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: safe video resolver accepts documented hosts and local media -19:11 +3026 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside module reports invalid and incomplete video sources -19:11 +3027 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: local poster defaults to matching PNG and can be overridden -19:11 +3028 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: hosted video posters resolve from trusted provider sources -19:11 +3029 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Vimeo poster metadata cannot point images to another host -19:11 +3030 -1: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: PDF export carries a first-class linked video poster -19:11 +3031 -1: loading /home/albert/busystack/busymark/test/src/app_router_test.dart -19:13 +3031 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings return targets are explicit and validated -19:13 +3032 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: opening Settings preserves a validated Settings origin -19:13 +3033 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings page routes are explicit and validated -19:13 +3034 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: Settings opened from Welcome returns to Welcome with a stale workspace -19:15 +3035 -1: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again -19:15 +3036 -1: loading /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart -19:17 +3036 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: mixed Markdown protects fenced code and CDATA while preserving spans -19:18 +3037 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: lazy defaults respect caller arguments and percent escaping -19:18 +3038 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: empty links use the target title for the selected instance -19:18 +3039 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional chapter content and links follow the selected instance -19:18 +3040 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: malformed markup and unresolved reuse stay visible with diagnostics -19:18 +3041 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: Markdown IDs include whole chapters and retain mixed-content spans -19:18 +3042 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional globals and include arguments override snippet defaults -19:18 +3043 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: links resolve labels, separate anchors and nullable availability -19:18 +3044 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: included code uses its source topic and unsaved source overrides -19:18 +3045 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: summaries stay metadata and starting pages suppress outside content -19:18 +3046 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: configured shortcuts, glossary and binary resources have visible references -19:18 +3047 -1: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: line and symbol selectors reject invalid selections -19:18 +3048 -1: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart -19:19 +3048 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace -19:19 +3049 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret -19:19 +3050 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string -19:19 +3051 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls -19:19 +3052 -1: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback -19:19 +3053 -1: loading /home/albert/busystack/busymark/test/src/status_semantics_test.dart -19:20 +3053 -1: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: status colors stay semantic across accents and brightness -19:23 +3054 -1: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: workspace messages use semantic status roles -19:23 +3055 -1: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: Git failures use window-level toasts -19:24 +3056 -1: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: successful Git operations use window-level toasts -19:24 +3057 -1: loading /home/albert/busystack/busymark/test/src/workspace_service_test.dart -19:27 +3057 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a single Markdown file workspace -19:27 +3058 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: resolves an unindexed sibling document within the workspace -19:27 +3059 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Markdown file from a file URI path -19:27 +3060 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a generic Markdown folder workspace -19:27 +3061 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: canonicalizes a workspace opened through a directory symlink -19:27 +3062 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects a workspace root replaced by a symlink after opening -19:27 +3063 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Writerside module workspace -19:27 +3064 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: untitled Markdown in Writerside reparses, previews, and outlines as CommonMark -19:27 +3065 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: genuine Writerside Markdown topic keeps Writerside semantics -19:27 +3066 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates and opens a Writerside starter project -19:27 +3067 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: reparses and previews Writerside Markdown without generic link validation -19:27 +3068 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a Writerside Markdown topic and registers it in the TOC -19:28 +3069 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: imports Markdown topics into the selected instance and opens the first -19:28 +3070 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Markdown import reloads stale UI inventory before planning -19:28 +3071 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation revalidates module IDs after its candidate is written -19:28 +3072 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a topic in the explicitly selected instance and TOC node -19:28 +3073 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: unparsed topic basename reserves its module-wide topic ID for creation -19:28 +3074 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under build reserves its module-wide ID for creation -19:28 +3075 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under a hidden directory reserves its module-wide ID for creation -19:28 +3076 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: duplicate topic cannot reuse an unparsed topic basename -19:28 +3077 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: template source cannot reuse an unparsed topic basename -19:28 +3078 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation refuses incomplete topic discovery -19:28 +3079 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects topic creation when the configured instance tree is outside the module -19:28 +3080 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename is stale when a new module is discovered -19:28 +3081 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic rename planning rejects incomplete project module discovery -19:28 +3082 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename rejects incomplete module discovery on apply -19:28 +3083 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: project module discovery reports directory listing failure -19:28 +3084 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: ordinary directory creation does not stale a prepared rename -19:29 +3085 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: normalizes portal-style document paths as filesystem paths -19:29 +3086 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText writes content and returns the saved file snapshot -19:29 +3087 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: file change detection ignores timestamp-only changes -19:29 +3088 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText writes a missing file and returns its snapshot -19:29 +3089 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText refuses an existing file without changing it -19:29 +3090 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not replace a file arriving before publication -19:29 +3091 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not write inside a directory arriving before publication -19:29 +3092 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveTextReplacingPath replaces a final symlink without following it -19:29 +3093 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement cannot overwrite a post-validation writer -19:29 +3094 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement validates a displaced relative symlink -19:29 +3095 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement detects a changed relative symlink target -19:29 +3096 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation directory -19:29 +3097 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation FIFO without reading -19:29 +3098 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText follows file symlinks and preserves target permissions -19:29 +3099 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: createFile rejects a directory reached through an intermediate symlink -19:29 +3100 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: renameEntity rejects a source reached through an intermediate symlink -19:29 +3101 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: moveEntity rejects a target reached through an intermediate symlink -19:29 +3102 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity rejects a directory reached through an intermediate symlink -19:29 +3103 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity removes a final symlink without deleting its target -19:29 +3104 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: generic deletion rejects topics and containing folders in a non-active module -19:29 +3105 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: an unparsed topic cannot bypass generic deletion -19:29 +3106 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: missing nested mutation paths keep domain-specific errors -19:29 +3107 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince treats deleted files as changed -19:29 +3108 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince detects content changes with unchanged modified time -19:29 +3109 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists all content except version-control metadata -19:29 +3110 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists unsupported legacy Markdown extensions -19:29 +3111 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: limited folder scan prefers shallow siblings before deep subtree -19:29 +3112 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: invalid UTF-8 Markdown does not fail the whole workspace -19:29 +3113 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Markdown files are listed but not parsed automatically -19:29 +3114 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Writerside topics are listed but not parsed automatically -19:29 +3115 -1: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Writerside topic loading honors the document limit -19:29 +3116 -1: loading /home/albert/busystack/busymark/test/src/ai_policy_test.dart -19:30 +3116 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: AI editing is enabled only for Markdown document kinds -19:32 +3117 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation accepts a prose-only replacement in the complete document -19:32 +3118 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation rejects swapped URL associations even when the URL set is equal -19:32 +3119 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation full-document validation catches edits made inside protected syntax -19:32 +3120 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects front matter, references, footnotes, tables, HTML and IDs -19:32 +3121 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects list and heading structure -19:32 +3122 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects implicit heading identifiers from prose rewrites -19:32 +3123 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: the prompt contains only the context explicitly selected by the user -19:32 +3124 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: instructions and direct prompts have explicit token budgets -19:32 +3125 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: token estimates are independent from UTF-8 transport bytes -19:32 +3126 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: generated-output byte limits are independent from provider tokens -19:32 +3127 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context selection target and block context remain independent -19:32 +3128 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context insert-after-block target can send no document context -19:32 +3129 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current block can use complete-document context -19:32 +3130 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current section includes descendants but not its sibling -19:32 +3131 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context complete-document target is explicit -19:32 +3132 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context partial protected selections are rejected instead of expanded -19:32 +3133 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context validation and application use the exact block insertion -19:32 +3134 -1: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: commit proposals require a bounded subject and blank separator -19:32 +3135 -1: loading /home/albert/busystack/busymark/test/src/linux_window_host_test.dart -19:35 +3135 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: dialogs cover application header actions while system Close uses the guarded service -19:36 +3136 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: icon uses its physical GTK side and contributes to the inset -unhandled element ; Picture key: Svg loader -19:36 +3137 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fallback application menu is absent while titlebar menu still works -19:36 +3138 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: window-state stream survives unrelated host rebuilds -19:36 +3139 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: normal maximize decoration has matching behavior -19:36 +3140 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: maximized maximize decoration has matching behavior -19:36 +3141 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen maximize decoration has matching behavior -19:37 +3142 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen titlebar double-click still restores -19:37 +3143 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: the document title itself handles titlebar double-click -19:37 +3144 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: live GTK layout removal retains each decoration identity -19:37 +3145 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=false) -19:37 +3146 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=true) -19:37 +3147 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK reduced motion settles window-control hover immediately -19:37 +3148 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion settles an in-flight window icon morph -19:37 +3149 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabled motion retains the normal active-window fade -19:37 +3150 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: Flutter reduced motion settles the host fade immediately -19:37 +3151 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK animation policy reaches the actual host overlay -19:37 +3152 -1: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion stops a fade and later fades can run -19:37 +3153 -1: loading /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart -19:38 +3153 -1: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: source editor overlays use shared semantic surfaces -19:38 +3154 -1: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: WYSIWYG content actions and table menus use shared controls -19:38 +3155 -1: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: problems dialog delegates its list surface to shared grouping -19:38 +3156 -1: loading /home/albert/busystack/busymark/test/src/writerside_document_test.dart -19:39 +3156 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=false) -19:39 +3157 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=true) -19:39 +3158 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside heading aliases prefer exact IDs and reject ambiguity -19:39 +3159 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: malformed semantic XML is still reported after a scanner mismatch -19:39 +3160 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: lossless XML nodes preserve exact duplicate ranges and generic markup -19:39 +3161 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside Markdown round-trips native and generic markup -19:39 +3162 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified semantic XML reconstructs equivalent escaped markup -19:39 +3163 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified conformance topic retains qualified namespace names -19:39 +3164 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver applies includes, filters, groups, variables, and cycles -19:39 +3165 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver negates the complete instance list -19:39 +3166 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML list type is inherited by every list item -19:39 +3167 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML lists retain numeric ordinals and their container identity -19:39 +3168 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: repeated list includes have distinct occurrence IDs and original source spans -19:40 +3169 -1: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: workspace exposes resolver errors with exact source spans -19:40 +3170 -1: loading /home/albert/busystack/busymark/test/src/writerside_api_test.dart -19:41 +3170 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: platform-backed API model remains on the host path and transfers complete semantics -19:41 +3171 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API tags select operations through the existing OpenAPI parser -19:41 +3172 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API child selectors inherit the specification and preserve sample overrides -19:41 +3173 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API schemas resolve references and honor nesting depth -19:41 +3174 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: schema and webhook elements are visible -19:41 +3175 -1: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: invalid API selection has a visible fallback and source diagnostic -19:41 +3176 -1: loading /home/albert/busystack/busymark/test/src/local_history_store_test.dart -19:42 +3176 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=false) -19:43 +3177 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=true) -19:43 +3178 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: real process contention waits and captures without a warning -19:50 +3179 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: lock timeout closes acquisition and queues recover without late capture -19:54 +3180 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: non-contention acquisition failure is prompt and closes the handle -19:54 +3181 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: body contention-shaped error never replays the transaction -19:54 +3182 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: independent production writers preserve both identities and revisions -20:01 +3183 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation cannot mutate process replacements -20:05 +3184 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation rejects an intervening process checkpoint -20:09 +3185 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=false) -20:09 +3186 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=true) -20:09 +3187 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists full revisions and stable document identity across restart -20:09 +3188 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists untitled first-save promotion without a new revision -20:09 +3189 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: untitled promotion refuses an already-owned destination path -20:09 +3190 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deleted paths never own promotion, lookup, or remap -20:09 +3191 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deduplicates only adjacent ordinary captures and preserves A-B-A -20:09 +3192 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: forced protective capture preserves an identical revision -20:09 +3193 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture identity makes a protective retry idempotent -20:10 +3194 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: idempotent capture stays complete after its lineage advances -20:10 +3195 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion retry accepts the same lineage after a later move -20:10 +3196 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: atomic path preflight accepts the same target already reconciled elsewhere -20:10 +3197 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clearing one identity does not poison another identity capture -20:10 +3198 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repairs a damaged index from intact independently checksummed records -20:10 +3199 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repair rejects a record associated with a different document -20:10 +3200 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: does not resurrect explicitly cleared revisions during repair -20:10 +3201 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rejects an unknown future index format without rewriting it -20:10 +3202 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention uses the injected capture time deterministically -20:10 +3203 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention is enforced when an idle store is reopened -20:10 +3204 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rename, directory move, delete, and per-document clearing retain lineage -20:10 +3205 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: ID-bound captures cannot implicitly move document paths -20:10 +3206 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: serializes concurrent captures without losing index entries -20:11 +3207 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: oversized capture cannot evict the previous revision -20:11 +3208 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: different paths with the same basename keep separate identities -20:11 +3209 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: an intentional empty revision after content is retained -20:11 +3210 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: missing and corrupt revision records do not damage intact entries -20:11 +3211 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: incomplete staging artifacts are never discovered as revisions -20:11 +3212 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: global clear tombstones prevent repair resurrection -20:12 +3213 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear All replay cannot erase post-clear history -20:12 +3214 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear Document replay cannot erase replacement history -20:12 +3215 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=false) -20:12 +3216 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=false) -20:12 +3217 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=true) -20:12 +3218 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=true) -20:12 +3219 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=false) -20:12 +3220 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=true) -20:12 +3221 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file capture rolls back cancellation during revision publication -20:12 +3222 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file dedup capture rolls back cancellation during index publication -20:12 +3223 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: multiple store instances coordinate concurrent index publication -20:12 +3224 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: storage permission failures surface without touching document data -20:12 +3225 -1: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: path exclusions use injected Windows path semantics -20:12 +3226 -1: loading /home/albert/busystack/busymark/test/src/web_render_host_test.dart -20:13 +3226 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends explicit request IDs and decodes a typed map response -20:13 +3227 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends a MathJax batch in one cancellable host request -20:13 +3228 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: scales the MathJax timeout for sequential batch conversion -20:13 +3229 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: applies the scaled timeout to a maximum accepted batch -20:13 +3230 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: cancels the matching native request and rejects a late success -20:13 +3231 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: times out and requests native cancellation -20:13 +3232 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: rejects an invalid native response shape -20:13 +3233 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: decodes OpenAPI references with source locations -20:13 +3234 -1: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends PNG bytes to the native image clipboard -20:13 +3235 -1: loading /home/albert/busystack/busymark/test/src/document_persistence_test.dart -20:14 +3235 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: file-backed edits update final-newline metadata -20:14 +3236 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session store keeps tab state and pending history identity without text -20:15 +3237 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session merge keys first-save promotions by durable operation owner -20:15 +3238 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery store distinguishes clean and unclean runs -20:15 +3239 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery keeps valid entries when another record is malformed -20:15 +3240 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery ownership keeps same buffer IDs isolated by process -20:16 +3241 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: restored dead-owner recovery is adopted and can be retired -20:16 +3242 -1: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery state is written with private POSIX permissions -20:16 +3243 -1: loading /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart -20:17 +3243 -1: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: intrinsic width remeasures only edited source lines -20:17 +3244 -1: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: large source width uses a bounded estimate -20:17 +3245 -1: loading /home/albert/busystack/busymark/test/src/search_replace_service_test.dart -20:19 +3245 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: Unicode regex replacement preserves complete characters -20:19 +3246 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: zero-length replacement limitation survives worker transfer -20:19 +3247 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 4999 actual matches -20:19 +3248 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5000 actual matches -20:19 +3249 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5001 actual matches -20:19 +3250 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement cancels a running expensive regex -20:20 +3251 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace scope includes closed Writerside documents and ignores unrelated open files -20:22 +3252 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: previews and applies plain whole-word replacements -20:22 +3253 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: text replacement previews enforce their match limit -20:22 +3254 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker expands one accepted regex match -20:22 +3255 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker cancels stale plans -20:22 +3256 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: expands numbered and named regex capture groups -20:22 +3257 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: applies only selected preview matches -20:22 +3258 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace preview uses dirty buffers and writes closed files -20:22 +3259 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply skips stale dirty buffers -20:22 +3260 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: truncated workspace previews cannot be applied -20:22 +3261 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: stale later files abort before earlier files are changed -20:22 +3262 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: rollback preserves a concurrent edit and reports displaced content -20:22 +3263 -1: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply revalidates open buffers after disk writes -20:22 +3264 -1: loading /home/albert/busystack/busymark/test/src/export_options_editor_test.dart -20:26 +3264 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Escape closes Export before a control receives focus -20:27 +3265 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Export keeps breathing room below its final option -20:28 +3266 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown PDF loads confirmed settings and shares controls -20:28 +3267 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside PDF loads confirmed settings and shares controls -20:29 +3268 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown HTML loads confirmed settings and shares controls -20:29 +3269 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside HTML loads confirmed settings and shares controls -20:29 +3270 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: one Export modal switches between PDF and HTML -20:30 +3271 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: custom geometry controls, TOC enablement and invalid input at minimum size -20:30 +3272 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: cancelling settings does not confirm or persist edits -20:30 +3273 -1: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: JSON settings store retains both format settings across controllers -20:30 +3274 -1: loading /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart -20:32 +3274 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: existing-topic picker filters names and selects by keyboard -20:33 +3275 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: picker returns the supplied topic identity for duplicate names -20:34 +3276 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: Group keeps raw input and Enter-only acceptance -20:34 +3277 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: rename preserves validation and Preview/Refactor results -20:34 +3278 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.rtl -20:34 +3279 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.rtl -20:35 +3280 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.ltr -20:35 +3281 -1: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.ltr -20:36 +3282 -1: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart -20:37 +3282 -1: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: Linux Writerside title and duplicate dialogs are GTK-owned -20:37 +3283 -1: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: GTK Writerside contents follow application direction, filenames stay LTR -20:38 +3284 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart -20:40 +3284 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw HTML preserves inherited and overridden block directions -20:40 +3285 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: preview model retains HTML direction for code and quotes -20:40 +3286 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML honors rtl, ltr, and auto directions -20:41 +3287 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: nested WYSIWYG blocks indent from the RTL start edge -20:41 +3288 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: English prose stays LTR in a Persian RTL UI and navigates LTR -20:42 +3289 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: Arabic prose stays RTL in an English UI and navigates RTL -20:42 +3290 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw Writerside technical blocks stay LTR with Arabic content -20:42 +3291 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered Arabic HTML without dir follows its content -20:42 +3292 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: WYSIWYG technical dialog inputs stay LTR in an RTL UI -20:43 +3293 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL horizontal arrows cross paragraph boundaries visually -20:43 +3294 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL Ctrl+Shift+Arrow extends word selection across paragraphs -20:43 +3295 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: code blocks stay LTR and use LTR boundary arrows in RTL UI -20:43 +3296 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML pre is LTR unless dir overrides it -20:44 +3297 -1: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL prefix hit testing maps the text start at the right edge -20:44 +3298 -1: loading /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart -20:46 +3298 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote source AI proposal applies with logical identity -20:48 +3299 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote WYSIWYG AI proposal applies with logical identity -20:49 +3300 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: document-only AI snapshot opens a usable configuration -20:49 +3301 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI configuration uses native rows without duplicate choices -20:49 +3302 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: Refine with AI sends the explicitly selected model -20:50 +3303 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI proposal uses an explicitly selected provider -20:50 +3304 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: provider chooser exposes only configured providers -20:50 +3305 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: configured local provider remains available when Gemini is default -20:50 +3306 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: fixed AI target cannot widen a sidebar selection -20:50 +3307 -1: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: proposal Apply refuses stale external source content -20:50 +3308 -1: loading /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart -20:52 +3308 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial prefix grows compatibly -20:53 +3309 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial becomes complete and clears marker -20:53 +3310 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations identical complete listings remain consistent -20:53 +3311 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations incompatible repeated listing rejects -20:53 +3312 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations known failed prefix recovers completely -20:53 +3313 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations failure without a known prefix cannot prove recovery -20:53 +3314 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations successful listing followed by failure rejects -20:53 +3315 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry replacement between complete reads rejects -20:53 +3316 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry removal between complete reads rejects -20:53 +3317 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter compatible scan keeps stronger proof -20:53 +3318 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete proof survives compatible limited rescan -20:53 +3319 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial rescan cannot erase a previous failure -20:53 +3320 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete recovery must retain failed-prefix entries -20:53 +3321 -1: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter failed retry retains its consumed prefix -20:53 +3322 -1: loading /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart -20:53 +3322 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: ingests workspace images with safe names and portable paths -20:54 +3323 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: reuses identical assets and resolves name collisions -20:54 +3324 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping identical publications keep the committed owner -20:54 +3325 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping different publications keep the committed owner -20:54 +3326 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect identical pending publications with equal filenames -20:57 +3327 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect different pending publications with equal filenames -21:01 +3328 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: failed publication releases only its own filesystem reservation -21:05 +3329 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: terminated provisional owner remains reserved across processes -21:08 +3330 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: rollback cannot delete an asset after its publication is committed -21:09 +3331 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: uses the configured Writerside images directory -21:09 +3332 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: restores retained Writerside video bytes without widening image paste -21:09 +3333 -1: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: requires saving untitled documents and rejects non-images -21:09 +3334 -1: loading /home/albert/busystack/busymark/test/src/ai_test.dart -21:10 +3334 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy allows literal loopback and localhost origins -21:10 +3335 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy rejects remote, credential-bearing, and path endpoints -21:10 +3336 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: prompt serializes untrusted document data as a JSON field -21:10 +3337 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: plain-text edit prompts never request Markdown -21:10 +3338 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard accepts prose edits that retain protected Markdown -21:10 +3339 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard rejects changed links and fenced code -21:10 +3340 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard protects fences with longer valid closing markers -21:10 +3341 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder handles UTF-8 and JSON split across arbitrary byte chunks -21:10 +3342 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder rejects malformed records and oversized responses -21:10 +3343 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider lists models and streams chat content and usage -21:10 +3344 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider stops at completion and ignores trailing stream records -21:10 +3345 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider uses the documented low thinking level for GPT-OSS -21:10 +3346 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider bounds the model-list response while reading it -21:10 +3347 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider rejects redirects without following them -21:10 +3348 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider does not list or run Ollama cloud models -21:10 +3349 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider cancellation interrupts a silent response stream -21:10 +3350 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator cancels the older request for the same target -21:10 +3351 -1: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator rejects a provider stream without completion -21:10 +3352 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart -21:12 +3352 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: formatting a URL suffix retains the complete live link and round trips -21:12 +3353 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter URL recognition preserves formatting, literal syntax, anchors, breaks and descendants -21:12 +3354 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter recognition preserves formatting within a URL and does not enter math fields -21:12 +3355 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: text whitespace preservation metadata follows pasted whitespace -21:12 +3356 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: paste-only whitespace keeps list descendants exactly once -21:12 +3357 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: plain whitespace paste keeps list descendants through Undo and Redo -21:15 +3358 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: replacement scope distinguishes a heading field from its document block -21:15 +3359 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete blocks inserted in list content retain every descendant -21:15 +3360 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: generic block commands cannot convert tables or preserved raw blocks -21:15 +3361 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: nested list-to-blockquote conversion preserves parent text -21:15 +3362 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: every admonition style preserves nested list parent text -21:15 +3363 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves the current list item descendants -21:15 +3364 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves descendants of an empty list item -21:16 +3365 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace rejects a merge that cannot represent descendants -21:16 +3366 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete clipboard snapshots reconstruct a table transactionally -21:16 +3367 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: same-editor cut and paste preserves complete tables -21:16 +3368 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits normalize every newline form before updating -21:16 +3369 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits preserve block-marker prefixes as literal text -21:16 +3370 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary table cell edits preserve formatting and links -21:16 +3371 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary cell edits retain toolbar-applied formatting -21:16 +3372 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve empty-alt inline images -21:16 +3373 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve existing hard line breaks -21:16 +3374 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing preserves a literal bang before an inline link -21:16 +3375 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing escapes block syntax at the start of a list item -21:16 +3376 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table field edits preserve rendered formatting and links -21:16 +3377 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields reject multiline input and reconcile the model -21:17 +3378 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields preserve block-marker-prefixed cell values -21:17 +3379 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source ranges select repeated text and table cells -21:18 +3380 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source navigation rebases spans after earlier edits -21:18 +3381 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: source navigation expands collapsed Writerside ancestors -21:19 +3382 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: outline navigation expands a collapsed heading ancestor -21:19 +3383 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cells own shortcuts, formatting, and restored selection -21:19 +3384 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external undo groups continuous typing but not transactions -21:19 +3385 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external history coalesces editor typing without local copies -21:19 +3386 -1: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: undo controllers are disposed when blocks disappear -21:19 +3387 -1: loading /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart -21:20 +3387 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: SSE decoder handles split UTF-8 frames and multiline data -21:21 +3388 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: OpenAI Responses adapter is stateless and maps text and usage -21:21 +3389 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini Interactions adapter uses stable v1 and text deltas only -21:21 +3390 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider never includes a secret in surfaced failures -21:21 +3391 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects malformed usage records -21:21 +3392 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini rejects an incomplete status update -21:21 +3393 -1: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects EOF without a typed completion event -21:21 +3394 -1: loading /home/albert/busystack/busymark/test/src/modal_barrier_test.dart -21:23 +3394 -1: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.light modal barriers use the semantic shade role -21:23 +3395 -1: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.dark modal barriers use the semantic shade role -21:24 +3396 -1: loading /home/albert/busystack/busymark/test/src/native_menu_service_test.dart -21:24 +3396 -1: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: show serializes native menu presentation and returns its selection -21:24 +3397 -1: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: dismiss is scoped to the native menu session -21:24 +3398 -1: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: missing native host reports unavailable for a themed fallback -21:24 +3399 -1: loading /home/albert/busystack/busymark/test/src/workspace_controller_test.dart -21:26 +3399 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside tab preparation loads once and current activation loads zero -21:27 +3400 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: configuration preview does not reparse in a derived loop and closing all buffers relinquishes overlays -21:27 +3401 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all Writerside tabs completes override relinquishment -21:27 +3402 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closed-tab reconciliation rejects obsolete disk models and keeps tabs closed -21:27 +3403 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: active -21:27 +3404 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: inactive -21:27 +3405 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: closure -21:27 +3406 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: workspace -21:27 +3407 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: external -21:28 +3408 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: disposal -21:28 +3409 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: rapid Writerside activation keeps derived work bounded and publishes the latest request -21:28 +3410 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered creation notifications are acknowledged, external same-size writes remain visible -21:33 +3411 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: a failed mutation cannot acknowledge its write notifications -21:33 +3412 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: quarantine and duplicate delayed deletion events acknowledge incorporated absence -21:37 +3413 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: an external same-size write during acknowledgement invalidates the consumed fingerprint -21:37 +3414 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: anchor -21:37 +3415 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: disk -21:37 +3416 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered TOC removal notifications require no subsequent module processing -21:38 +3417 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=false -21:38 +3418 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=true -21:39 +3419 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=false -21:39 +3420 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=true -21:39 +3421 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=false -21:39 +3422 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=true -21:39 +3423 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects inactive edit after clean navigation -21:40 +3424 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects reopen after clean navigation -21:40 +3425 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects close all after clean navigation -21:40 +3426 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects dispose after clean navigation -21:40 +3427 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects disk input after clean navigation -21:40 +3428 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects inactive edit after clean navigation -21:40 +3429 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects reopen after clean navigation -21:41 +3430 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects close all after clean navigation -21:41 +3431 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects dispose after clean navigation -21:41 +3432 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects disk input after clean navigation -21:41 +3433 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects inactive edit after clean navigation -21:41 +3434 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects reopen after clean navigation -21:41 +3435 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects close all after clean navigation -21:42 +3436 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects dispose after clean navigation -21:42 +3437 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects disk input after clean navigation -21:42 +3438 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining resource discovery presents stable limited inputs -21:42 +3439 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects edit during verification -21:42 +3440 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects inactive edit during verification -21:43 +3441 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects workspace replacement during verification -21:43 +3442 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects same-project reopening during verification -21:43 +3443 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects edit during verification -21:43 +3444 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects inactive edit during verification -21:43 +3445 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects workspace replacement during verification -21:43 +3446 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects same-project reopening during verification -21:43 +3447 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects edit during verification -21:44 +3448 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects inactive edit during verification -21:44 +3449 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects workspace replacement during verification -21:44 +3450 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects same-project reopening during verification -21:44 +3451 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=false -21:44 +3452 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=true -21:44 +3453 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=false -21:44 +3454 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=true -21:44 +3455 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=false -21:45 +3456 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=true -21:45 +3457 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=false -21:45 +3458 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=true -21:45 +3459 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded inactive edit -21:45 +3460 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded configuration write -21:45 +3461 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction discovery refresh keeps the live selected instance through reconciliation -21:45 +3462 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=4 -21:46 +3463 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=2 -21:46 +3464 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome creation cannot overwrite an edit made during history flush -21:47 +3465 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: starting a Welcome workspace cannot discard a dirty buffer -21:47 +3466 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome replaces clean buffers but workspace New remains additive -21:47 +3467 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete closes the topic buffer, selects a survivor, and records history -21:47 +3468 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete journal removes the deleted tab after refresh failure restart -21:47 +3469 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC writes reject an inactive dirty tree without discarding either buffer -21:47 +3470 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC creation defers its monitor events until the new document is open -21:48 +3471 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown topic import opens its first topic in an editable buffer -21:48 +3472 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed Markdown import preserves the active document and workspace -21:48 +3473 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Validate publishes a valid table containing an escaped pipe -21:48 +3474 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation reports stale, busy and failed outcomes without publishing old results -21:48 +3475 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=false -21:48 +3476 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=true -21:48 +3477 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math callbacks from an older editor revision cannot republish errors -21:48 +3478 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown validation uses the unsaved linked tab snapshot -21:48 +3479 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=true -21:48 +3480 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=false -21:49 +3481 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside rename stages verified edits across unsaved tabs with undo -21:49 +3482 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened Markdown files by file path in recent workspaces -21:49 +3483 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened folders by folder path in recent workspaces -21:49 +3484 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace file operations refresh and preserve active moved files -21:49 +3485 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates an unsaved Markdown file without adding it to recent -21:49 +3486 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates CommonMark inside Writerside without replacing project or dirty topic -21:49 +3487 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: identical untitled buffers remain distinct by buffer id -21:49 +3488 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: delayed untitled preview cannot publish into another untitled tab -21:49 +3489 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files leave preview mode for editor mode -21:49 +3490 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files preserve non-preview view modes -21:49 +3491 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an untitled Markdown file clears the workspace -21:49 +3492 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding a saved file reloads disk text and clears dirty state -21:49 +3493 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside project and records it as recent -21:49 +3494 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside topic and opens it without changing recents -21:49 +3495 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: topic TOC actions refresh the workspace and preserve file state -21:50 +3496 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: reviewed topic rename is rejected after a project buffer becomes dirty -21:50 +3497 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as writes a new Markdown file and records it as recent -21:50 +3498 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown in Writerside keeps ordinary files CommonMark -21:50 +3499 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside refresh preserves saved Markdown outside the workspace root -21:50 +3500 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown into discovered topics reclassifies it -21:50 +3501 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving multiple untitled documents creates normal file buffers -21:50 +3502 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as refuses an existing file unless overwrite is explicit -21:50 +3503 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as explicit overwrite replaces the final symlink only -21:50 +3504 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves source edits for an untitled Markdown file -21:50 +3505 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while writing the file -21:50 +3506 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as completes against its buffer after switching tabs -21:50 +3507 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while reopening the file -21:51 +3508 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: switching active files reparses outline for the new file -21:51 +3509 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale validation after save and tab switch does not restore previous file -21:51 +3510 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation completing after save preserves the saved snapshot -21:51 +3511 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source defers preview work until a preview mode is visible -21:51 +3512 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source-only validation still runs when validate-on-edit is enabled -21:51 +3513 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale text update from previous file cannot dirty active tab -21:51 +3514 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: folder workspaces track open file tabs without duplicates -21:51 +3515 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All writes every dirty file-backed buffer -21:51 +3516 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All can be scoped without saving unrelated dirty buffers -21:51 +3517 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: selected dirty buffers can be discarded without changing tabs -21:51 +3518 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing active file tabs selects a neighboring tab -21:51 +3519 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: activating sibling file tabs wraps around the open tabs -21:51 +3520 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all file tabs clears the active editor state -21:51 +3521 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs aborts when a document changes during history flush -21:52 +3522 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs cannot clear workspace state replaced during flush -21:52 +3523 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed open clears stale workspace state -21:52 +3524 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math renderer failures become source-linked runtime diagnostics -21:52 +3525 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validate on edit setting controls live diagnostics only -21:52 +3526 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save waits for an idle delay before writing -21:53 +3527 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Undo and Redo reschedule autosave after the prior save settled -21:58 +3528 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: inactive document updates schedule autosave without changing tabs -22:00 +3529 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed workspace refresh restores eligible autosave scheduling -22:01 +3530 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disabled autosave stays disabled after a failed refresh -22:03 +3531 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save remains scheduled independently for inactive tabs -22:04 +3532 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save preserves dirty state when edits happen during save -22:04 +3533 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: overlapping manual save writes the newer requested revision -22:04 +3534 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save completes against its buffer after switching tabs -22:04 +3535 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing a buffer waits for its in-flight autosave -22:04 +3536 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard aborts when the document changes during protective history capture -22:04 +3537 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard waits for its buffer in-flight autosave -22:04 +3538 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save waits for an in-flight autosave of the same buffer -22:04 +3539 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All waits for an in-flight autosave of the same buffer -22:04 +3540 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save As waits for an in-flight autosave of the same buffer -22:04 +3541 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean shutdown waits for in-flight document writes -22:04 +3542 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: pending history from a closed clean tab prevents a clean shutdown marker -22:04 +3543 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save refuses to overwrite external file changes without force -22:05 +3544 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save treats a deleted active file as an external conflict -22:05 +3545 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save detects external rewrites with unchanged modified time -22:05 +3546 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving preserves a manually removed final newline -22:05 +3547 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: WYSIWYG list edits preserve a missing final newline -22:05 +3548 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: spelling correction undo and redo restore source and rich selections -22:05 +3549 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Keep Mine retains the conflict snapshot until explicit overwrite -22:05 +3550 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitor refresh waits for an active foreground refresh -22:05 +3551 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves an active edit and editor history made during reparse -22:05 +3552 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation reconciles edits accepted while its reparse is pending -22:05 +3553 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: opening a new tab preserves live edits and editor history in the visible document -22:05 +3554 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing the active tab aborts if it changes during next-tab activation -22:05 +3555 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: aborted discard close preserves dirty state after an editor-only change -22:05 +3556 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: aborted -22:05 +3557 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: closed -22:05 +3558 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: disabled -22:05 +3559 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: shutdown -22:05 +3560 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: replaced -22:05 +3561 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation does not resurrect another tab closed while waiting -22:05 +3562 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves inactive edits and does not resurrect a closed tab -22:05 +3563 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh rejects a disk load superseded by typing -22:05 +3564 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: external file moves remap the open document buffer -22:05 +3565 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitors saved standalone tabs outside the workspace root -22:06 +3566 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: standalone refresh preserves saved tabs in different directories -22:06 +3567 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup leaves a clean session closed unless reopening is enabled -22:06 +3568 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup restores an interrupted session without an opt-in -22:06 +3569 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored sessions retain tabs whose files are missing -22:06 +3570 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored standalone sessions retain a missing document -22:06 +3571 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: mixed untitled and saved session restores as a standalone workspace -22:06 +3572 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark active -22:06 +3573 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark inactive -22:06 +3574 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean marker cannot hide remaining recovery entries -22:06 +3575 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: recovery text remains restorable when the later session save fails -22:06 +3576 -1: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: single-document session uses no workspace path after saved tabs close -22:06 +3577 -1: loading /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart -22:07 +3577 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped image-description text follows Markdown image alt semantics -22:07 +3578 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: annotated parsing has ordinary semantics across supported corpus -22:07 +3579 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: image ranges identify only resolved source occurrences -22:07 +3580 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: positioned label breaks retain raw endings and container prefixes -22:07 +3581 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped link and image titles retain exact raw boundaries -22:07 +3582 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: destination-only links and images have no mapped title -22:07 +3583 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: position records do not change HTML or link semantics -22:07 +3584 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: selection endpoints crossing HTML retain one semantic fragment -22:07 +3585 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: supported HTML whitespace positions have complete position records -22:07 +3586 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: only operation-local markers are ignored -22:07 +3587 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: delimiter-only positions are explicitly incomplete -22:07 +3588 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: syntax-boundary probes retain the ordinary semantic oracle -22:07 +3589 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: deterministic inline combinations preserve annotated semantics -22:07 +3590 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: standalone HTML break ownership uses one indexed lookup per break -22:07 +3591 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: AST source boundary lookahead is linear and maps the final link -22:07 +3592 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: fallback mapping is bounded for entities repetitions and code spans -22:07 +3593 -1: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: tag-looking attribute text does not claim break layout -22:07 +3594 -1: loading /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart -22:10 +3594 -1: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: restores WYSIWYG selection from document session state -22:11 +3595 -1: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: reports the old document session before switching tabs -22:11 +3596 -1: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: defers session provider updates until document rebuild ends -22:11 +3597 -1: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: workspace mode delegates WYSIWYG undo to buffer history -22:11 +3598 -1: loading /home/albert/busystack/busymark/test/src/writerside_identity_test.dart -22:12 +3598 -1: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: anchor identity includes topic and all instances participate in usages -22:12 +3599 -1: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: conditional globals and snippet variables have distinct scopes -22:13 +3600 -1: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: completion filters context and target identity before limiting -22:13 +3601 -1: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: validation uses relationships, typed values and current configuration syntax -22:13 +3602 -1: loading /home/albert/busystack/busymark/test/src/html_export_ui_test.dart -22:15 +3602 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: one Export command retains Ctrl+Shift+E -22:15 +3603 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Flutter Main menu exposes document export -22:16 +3604 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: untitled active text stays captured while destination picker is open -22:18 +3605 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Cancel handling before instance selection -22:18 +3606 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Discard handling before instance selection -22:19 +3607 -1: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Save handling before instance selection -22:21 +3608 -1: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart -22:21 +3608 -1: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication -22:21 +3609 -1: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path -22:22 +3610 -1: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content -22:22 +3611 -1: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document -22:22 +3612 -1: loading /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart -22:26 +3612 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Writerside numeric list starts and container boundaries reach PDF -22:26 +3613 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: list items and visualization replacements retain source anchors -22:26 +3614 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: maps Markdown semantics into renderer-neutral export blocks -22:26 +3615 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: omits reference definitions while preserving their resolved links -22:26 +3616 -1: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Typst payload contains data but never raw local image paths -22:26 +3617 -1: loading /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart -22:27 +3617 -1: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: basic fixture uses a renderable OpenAPI fence -22:27 +3618 -1: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: visualizer fences remain generic code and round-trip byte-for-byte -22:27 +3619 -1: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: dedicated visualizer rules highlight comments, keys, and keywords -22:28 +3620 -1: loading /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart -22:30 +3620 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-topic-create-10-100-0 -22:30 +3621 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-topic-create-10-100-0 -22:30 +3622 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-safe-delete-10-100-0 -22:30 +3623 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-safe-delete-10-100-0 -22:30 +3624 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 -22:30 +3625 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 -22:30 +3626 -1: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: external moves, missing destinations and authored hidden names stay visible -22:30 +3627 -1: loading /home/albert/busystack/busymark/test/src/html_rich_export_test.dart -22:31 +3627 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered mermaid retains a linked Writerside block ID -22:33 +3628 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered openapi retains a linked Writerside block ID -22:33 +3629 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: HTML uses unique occurrence jobs, standalone math and diagram/static API engines -22:33 +3630 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: custom HTML metrics and embedded rich assets stay self-contained -22:33 +3631 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: all diagram dependencies are captured before rendering begins -22:33 +3632 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: cancelling an active render retains existing output and removes staging -22:34 +3633 -1: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: render timeout is bounded and cancellation interrupts a pending job -22:34 +3634 -1: loading /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart -22:34 +3634 -1: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: finds exact href and body spans for every supported quote form -22:35 +3635 -1: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: ignores comments, fenced code, and inline code but keeps containers -22:35 +3636 -1: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: multiline anchors are exact and malformed anchors remain manual -22:35 +3637 -1: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits diff --git a/delivery/nextcloud-explicit-adoption/evidence/full-flutter.log b/delivery/nextcloud-explicit-adoption/evidence/full-flutter.log deleted file mode 100644 index d5e5f60e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/full-flutter.log +++ /dev/null @@ -1,4411 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: remote authored absolute and file image paths never enter local resolver -00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: managed attachment renderer resolves through provider -00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: provider publication accepts a remote note with no file path and rolls back through provider -00:00 +3: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: HTML and PDF remote assets cannot read authored machine files -00:00 +4: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown local copy owns portable attachments and preserves code and ordinary text -00:05 +5: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: Markdown export rewrites exact prefix-sharing destinations -00:05 +6: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: generic attachment links are escaped and exported as portable HTML downloads -00:05 +7: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable published attachment cannot silently export a broken copy -00:05 +8: /home/albert/busystack/busymark/test/src/nextcloud_media_export_test.dart: unavailable pending attachment cannot produce a broken local copy -00:05 +9: loading /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart -00:07 +9: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a complete subtree as the last child of an exact node -00:08 +10: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry after a root sibling -00:08 +11: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves a nested entry to the end of the TOC root -00:08 +12: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry relative to itself without writing -00:08 +13: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects moving an entry into its descendant without writing -00:08 +14: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: requires a destination for child and sibling placement -00:08 +15: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects invalid structural paths without writing -00:08 +16: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects stale paths whose expected TOC identities moved -00:08 +17: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a root entry and promotes its children in place -00:08 +18: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes a nested entry and promotes its child before its sibling -00:08 +19: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: removes multiple entries atomically against one tree snapshot -00:08 +20: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: batch removal handles a selected descendant and ancestor -00:08 +21: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: moves multiple subtrees as an ordered group -00:08 +22: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a tree outside the guarded module root -00:08 +23: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: rejects a symlinked tree without mutating its target -00:08 +24: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: does not overwrite a tree changed before atomic publication -00:09 +25: /home/albert/busystack/busymark/test/src/writerside_toc_editor_test.dart: atomic replacement preserves the tree POSIX mode -00:09 +26: loading /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart -00:09 +26: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal dialogs stop app and editor shortcuts -00:10 +27: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: Escape closes a modal without an initially focused control -00:10 +28: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal fallback does not steal a child autofocus request -00:10 +29: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: overlapping dialogs synchronize native modal depth -00:10 +30: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: serializes rapid manual native barrier transitions -00:10 +31: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: failed native barrier acquisition rolls back and can retry -00:10 +32: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: modal coordinator resolves the service from ProviderScope -00:10 +33: /home/albert/busystack/busymark/test/src/busymark_dialogs_test.dart: open modal barrier follows live theme changes -00:10 +34: loading /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart -00:12 +34: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: analysis finds every tree, topic link, include, and start page -00:13 +35: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove promotes children, updates usages, adds redirect, and keeps file -00:20 +36: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates all usages and removes every TOC occurrence -00:20 +37: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect to a promoted child is written to the promoted copy -00:20 +38: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed XML topics make usage analysis fail closed -00:20 +39: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: file-size-skipped topics make removal fail closed -00:20 +40: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: document-count-skipped topics make removal fail closed -00:20 +41: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: unreadable topic contents make removal fail closed -00:20 +42: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: topic-root traversal truncation makes removal fail closed -00:20 +43: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: incomplete project-module discovery makes removal fail closed -00:20 +44: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: tree directory enumeration failure makes removal fail closed -00:20 +45: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: single-quoted includes without element-id are found and removed -00:20 +46: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: variable-expanded links are analyzed and the variables file is stale-checked -00:21 +47: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: Safe Delete finds and unlinks authored HTML anchors without literal false positives -00:21 +48: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: malformed authored HTML anchors are manual Safe Delete blockers -00:21 +49: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML variable hrefs are expanded and ambiguity blocks -00:21 +50: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored HTML relevance follows its conditioned Markdown chapter -00:21 +51: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: automatic HTML unlinking permits project-wide orphan status -00:21 +52: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a surviving authored HTML link suppresses orphan status -00:21 +53: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: ambiguous references block deletion without changing any file -00:21 +54: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: old web file names follow Writerside normalization and exact overrides -00:21 +55: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: existing redirect rules block conflicting redirects -00:21 +56: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect preserves direct and rule-based accepted aliases -00:22 +57: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a transferred redirect alias collision fails before writes -00:22 +58: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: redirect sources use each host instance web filename -00:22 +59: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remaining start-page and cross-instance usages prevent orphan status -00:22 +60: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: remove-from-instance relevance respects document conditions -00:22 +61: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: start-page and stale analyses fail closed without deleting the topic -00:22 +62: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: generic Files deletion cannot bypass Writerside Safe Delete -00:22 +63: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: project analysis finds origin links, includes, cards, and ref TOC nodes -00:22 +64: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: authored Markdown HTML anchors resolve origin project-wide -00:22 +65: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: safe delete updates automatic cross-module origin usages -00:22 +66: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: selected ref node uses removal workflow and promotes its children -00:23 +67: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: semantic tree scan includes hidden/build trees and excludes VCS metadata -00:23 +68: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: a new module after analysis makes the reviewed plan stale -00:23 +69: /home/albert/busystack/busymark/test/src/writerside_topic_removal_service_test.dart: cross-module failure rolls back BusyMark edits without overwriting a concurrent edit -00:23 +70: loading /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart -00:24 +70: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source paste preserves incoming nested blocks and returns its caret -00:24 +71: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves structural block kinds -00:24 +72: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: removing final formula leaves normal editing mode -00:24 +73: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits preserve nested list children -00:24 +74: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: descendant math does not put a plain list parent in source mode -00:24 +75: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first inline math insertion preserves unaffected inline AST -00:24 +76: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math edits retain explicit heading IDs -00:24 +77: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: first math insertion recalculates a generated heading ID -00:24 +78: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion always emits reparsable source -00:24 +79: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: additional inline math uses the same reparsable insertion policy -00:24 +80: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion rejects multiline selections without mutation -00:24 +81: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves zero-width semantic inlines -00:24 +82: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table-cell source editing retains and removes semantic math -00:24 +83: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source edits cannot discard additional Markdown blocks -00:24 +84: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math source editing preserves escaped literal dollars -00:24 +85: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math insertion preserves the intended inline position -00:24 +86: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: math field source boundaries map to semantic text boundaries -00:24 +87: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: source-mode math insertion preserves the intended inline position -00:24 +88: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG renders math, edits exact source, and reparses without corruption -00:26 +89: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: WYSIWYG toolbar inserts inline and display math source -00:32 +90: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: inline math toolbar preserves existing inline structure -00:32 +91: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: rendered and focused math list items keep one marker -00:32 +92: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: table math renders unfocused and edits delimiter source -00:33 +93: /home/albert/busystack/busymark/test/src/wysiwyg_math_test.dart: plain table cell treats typed Markdown as rich text -00:33 +94: loading /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart -00:34 +94: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery refresh preserves a valid second instance -00:35 +95: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: selected instance removed -00:37 +96: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: intentional selection -00:37 +97: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction discovery selection fallback: another module -00:38 +98: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction incomplete observations are presentation only and reject changed reads -00:38 +99: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: correction limited inventory retains raw counts for excluded Git entries -00:38 +100: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: rejected source size remains an input to freshness checking -00:38 +101: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: bounded topic rejection detects recovery on the real worker -00:38 +102: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: oversized buffer overrides retain their consumed-input hash -00:38 +103: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: unreadable sources keep error diagnostics and invalidate on recovery -00:38 +104: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: real execution transfers results and propagates worker failures -00:38 +105: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: basic_project -00:38 +106: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: conformance_project -00:38 +107: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves full parsed and resolved models: markdown_export_compatibility -00:38 +108: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: malformed XML -00:38 +109: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: missing configured root -00:38 +110: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: unsafe include -00:38 +111: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: worker preserves failure and safety diagnostics: scan limit -00:38 +112: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: preparation consumes complete overlays once, then selects with zero loads -00:39 +113: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: reuse checks equal-size disk dependencies and added inputs -00:39 +114: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: planned path exclusions cannot hide a new colon-named dependency -00:39 +115: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: configuration overlay rediscovery retains symbols and diagnostics -00:39 +116: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: creation returns its typed publication result without reopening -00:39 +117: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal application shares one ownership-checked fresh project -00:39 +118: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects changed input before fingerprint collection -00:39 +119: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects added input before fingerprint collection -00:39 +120: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects removed input before fingerprint collection -00:39 +121: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects tree input before fingerprint collection -00:39 +122: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: supplied removal model rejects configuration input before fingerprint collection -00:39 +123: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects disk dependency after fingerprint verification and before commit -00:39 +124: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: removal rejects dirty affected buffer after fingerprint verification and before commit -00:39 +125: /home/albert/busystack/busymark/test/src/writerside_responsiveness_test.dart: analysis is never reused across confirmation -00:40 +126: loading /home/albert/busystack/busymark/test/src/local_history_controller_test.dart -00:42 +126: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed opened baseline retries its original source without an edit -00:43 +127: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: baseline before edit preserves original and coalesces latest edit -00:43 +128: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: closed failures keep ownership and stale settlement cannot drop newer work -00:43 +129: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed protective capture survives refresh failure without recapture -00:43 +130: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: protective authorization is invalidated while committed refresh awaits -00:43 +131: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: disable cancels an in-flight baseline at the store boundary -00:48 +132: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: exclude cancels an in-flight baseline at the store boundary -00:48 +133: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed promotion stays associated when refresh fails -00:48 +134: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As binds destination even when list refresh fails -00:48 +135: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: settling one buffer resumes retries accepted by another buffer -00:48 +136: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear document cancels its failed unbound baseline -00:48 +137: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=true) -00:48 +138: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains failed original baseline through recovery (first=false) -00:48 +139: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=false) -00:48 +140: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As keeps retained source protection with a source identity established during settlement (existing=true) -00:48 +141: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As retains a source identity established before later settlement fails -00:48 +142: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As refreshes a staged destination after its concurrent checkpoint -00:48 +143: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: abandoned and superseded moves retain the newest committed association -00:48 +144: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued edits share one retained baseline retry owner -00:48 +145: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: independent failures, permanent baselines and policy cancellation remain isolated -00:48 +146: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: cancelled failed baselines cannot be restored by delayed callbacks -00:48 +147: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: continuous typing captures latest text at fixed checkpoint interval -00:48 +148: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: inactive buffers receive independent checkpoint timers -00:48 +149: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first checkpoint attaches an empty untitled browsing scope and publishes it -00:48 +150: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file store checkpoint persists across reopen and clear stays authoritative -00:48 +151: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: active revision search follows matching and nonmatching captures -00:48 +152: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed automatic capture keeps pending source and retries without another edit -00:48 +153: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a newer edit accepted during a failed write wins the retry -00:48 +154: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: automatic checkpoint retries a transient first-save promotion failure -00:48 +155: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush waits behind queued observation and captures its latest source -00:48 +156: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear wins over an in-flight capture and later edits record normally -00:48 +157: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear Document records in the replacement lineage -00:48 +158: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document blocks replacement capture while its journal is pending -00:48 +159: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit accepted during Clear All records in the replacement lineage -00:48 +160: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All blocks replacement capture while its journal is pending -00:48 +161: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an automatic checkpoint queued for an untitled draft -00:48 +162: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear Document -00:48 +163: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed explicit save cannot recreate history after Clear All -00:48 +164: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clearing the displayed comparison closes it without a missing warning -00:48 +165: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: clear invalidates an in-flight path capture for the same document -00:48 +166: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first edit after another controller clears a stale binding starts a new lineage -00:48 +167: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight buffer replacement protection -00:48 +168: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued buffer replacement protection -00:48 +169: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects in-flight path replacement protection -00:48 +170: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document rejects queued path replacement protection -00:48 +171: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight buffer replacement protection -00:48 +172: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued buffer replacement protection -00:48 +173: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects in-flight path replacement protection -00:48 +174: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All rejects queued path replacement protection -00:48 +175: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording off prevents baseline and checkpoints without deleting history -00:48 +176: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: store-wide find locates closed and deleted documents by path or content -00:48 +177: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: retained-document lookup is temporary and normal document selection resumes following -00:49 +178: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: panel construction preserves an explicit retained-document inspection -00:49 +179: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: delayed revision search cannot repopulate a newly selected document scope -00:49 +180: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision search failure finishes searching and remains in scope -00:49 +181: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Local History follows active tabs and clears the visible query without a document dropdown -00:50 +182: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: revision rows use local second-precision time, date groups, event metadata, and RTL -00:50 +183: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a delayed revision read cannot cross the selected document or leave loading stuck -00:50 +184: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As settles pending named and untitled checkpoints safely -00:50 +185: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: untitled overwrite Save As retains a failed source checkpoint -00:50 +186: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed Save As source capture is idempotent after a lost result -00:50 +187: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As recovery never adopts unrelated same-content destination history -00:50 +188: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: recording-disabled first save promotes untitled history identity -00:50 +189: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: excluding a recovered first-save destination preserves its untitled source baseline -00:50 +190: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: queued committed Save As cannot recreate a newly excluded destination side -00:50 +191: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed first-save promotion is retried before a later capture -00:50 +192: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush retries a failed first-save promotion without another edit -00:50 +193: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flush reports a content failure after successfully retrying promotion -00:50 +194: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: remap settles pending first-save promotions for files and directories -00:50 +195: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: file and directory moves settle pending checkpoints before remap -00:50 +196: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed path reconciliation blocks affected captures but not unrelated documents -00:50 +197: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: successful path queue prefix is published before a later failure -00:50 +198: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path deletion warnings remain scoped to affected owners -00:50 +199: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: committed path operation is not replayed after refresh failure -00:50 +200: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: restored targetless executing reconciliation preserves its owner -00:50 +201: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) -00:50 +202: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/B.md) -00:50 +203: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/A.md, recursive: false, source: /workspace/C.md) -00:50 +204: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/B.md, recursive: false, source: /workspace/C.md) -00:50 +205: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirA/nested/C.md) -00:50 +206: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/dirB/nested/C.md) -00:50 +207: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: false, source: /workspace/C.md) -00:50 +208: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace/dirB/nested/C.md, recursive: false, source: /workspace/C.md) -00:50 +209: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /other, recursive: false, source: /workspace) -00:50 +210: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: true, destination: /workspace, recursive: false, source: /other) -00:50 +211: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/dirB-sibling/C.md, recursive: false, source: /workspace/dirA-sibling/C.md) -00:50 +212: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: false, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) -00:50 +213: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: true, source: /workspace/dirA/nested/C.md) -00:50 +214: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/dirA/nested/C.md, recursive: true, source: /workspace/C.md) -00:50 +215: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /other, recursive: true, source: /workspace) -00:50 +216: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: true, source: /workspace/C.md) -00:50 +217: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: true, destination: /workspace/Z.md, recursive: false, source: /workspace/A.md) -00:50 +218: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency namespaces (deletion: true, dependent: false, destination: /workspace/D.md, recursive: false, source: /workspace/C.md) -00:50 +219: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses prepared target with different paths -00:50 +220: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses bound identity with different paths -00:50 +221: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency uses destination identity with different paths -00:50 +222: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency checks promotion destination identity at a different path -00:50 +223: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency settles only conflicting entries behind an unresolved head -00:50 +224: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=false) -00:50 +225: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency recomputes identities after settling namespace prerequisites (promotion=true) -00:50 +226: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency preserves transitive queue ordering -00:50 +227: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=false) -00:50 +228: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path dependency retries independent work behind retained head (executing=true) -00:50 +229: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: staged path commit survives refresh failure until workspace acknowledgement -00:50 +230: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: external staged remap refreshes its bound target after checkpoint settlement -00:50 +231: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: definitive false staged result retires its executing journal -00:50 +232: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred deletion cannot delete replacement path history -00:50 +233: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document removes only its recursive reconciliation target -00:50 +234: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear Document preserves timer retry for remaining recursive target -00:50 +235: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: prepared remap rejects a checkpoint that changed its frozen target -00:50 +236: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: ownerless path failure is visible only in history presentation -00:50 +237: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: detached promotion capture is included in durable retained work -00:50 +238: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: live external retained owner is not replayed and Clear All retires it -00:50 +239: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: a clear conflict cancels the old baseline retry owner -00:50 +240: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: edit after failed Clear waits and persists in the replacement lineage -00:50 +241: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: post-Clear edit uses committed epoch when reconciliation refresh fails -00:50 +242: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deferred remap cannot mutate replacement path history -00:50 +243: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: failed remap reserves source and destination paths until reconciliation -00:50 +244: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: deletion remains ordered behind a retained path remap -00:50 +245: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first save waits for a reserved source path before promoting its history -00:50 +246: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path target discovery observes history written after cached load -00:50 +247: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear document -00:50 +248: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after Clear all -00:50 +249: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: first-save cleanup cannot restore promotion after disposal -00:50 +250: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Save As transfers retained remap ownership with source work -00:50 +251: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: flushBuffer reports retained remap work and retires closed owner -00:50 +252: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: Clear All cannot be undone by an in-flight path remap -00:50 +253: /home/albert/busystack/busymark/test/src/local_history_controller_test.dart: path reconciliation resumes a newly opened destination owner -00:50 +254: loading /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart -00:51 +254: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: HTML retains complex Markdown and resolves both heading ID spellings -00:56 +255: /home/albert/busystack/busymark/test/src/writerside_markdown_export_compatibility_test.dart: PDF retains complex Markdown and resolved heading links -00:56 +256: loading /home/albert/busystack/busymark/test/src/math_widget_test.dart -00:57 +256: /home/albert/busystack/busymark/test/src/math_widget_test.dart: inline math applies MathJax baseline and surrounding text metrics -00:58 +257: /home/albert/busystack/busymark/test/src/math_widget_test.dart: wide display math scrolls horizontally without clipping -00:58 +258: /home/albert/busystack/busymark/test/src/math_widget_test.dart: failed formulas retain source and a localized explanation -00:58 +259: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart -01:00 +259: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: reduced fixture uses rendered offsets without Markdown delimiters or block separators -01:01 +260: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All: logical range and copy include styled suffixes and table -01:03 +261: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b0 BusyBlockKind.paragraph -01:03 +262: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b1 BusyBlockKind.paragraph -01:04 +263: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b2 BusyBlockKind.paragraph -01:04 +264: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b3 BusyBlockKind.unorderedListItem -01:04 +265: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b4 BusyBlockKind.unorderedListItem -01:04 +266: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b5 BusyBlockKind.unorderedListItem -01:05 +267: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b6 BusyBlockKind.paragraph -01:05 +268: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: multi-block paint matches rendered runs: b17 BusyBlockKind.paragraph -01:05 +269: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table cells paint the same selected text as document copy -01:06 +270: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: repeated Select All keeps the entire document selected -01:06 +271: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: Before. - -| H | -| --- | -| Body! | - -01:07 +272: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All includes a table at the document edge: | H | -| --- | -| Body! | - -After. - -01:07 +273: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag endpoints use the styled rendered coordinate system -01:07 +274: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag from a paragraph into a table copies and selects its cells -01:07 +275: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across table cells selects the existing complete-table document block -01:08 +276: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 460.0 -01:08 +277: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 460.0 -01:08 +278: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 460.0 -01:08 +279: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 460.0 -01:08 +280: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 460.0 -01:09 +281: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 460.0 -01:09 +282: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 1, 165) at width 1000.0 -01:09 +283: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 4, 1, 165) at width 1000.0 -01:09 +284: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (1, 0, 2, 8) at width 1000.0 -01:09 +285: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (0, 0, 2, 30) at width 1000.0 -01:10 +286: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: paragraph boundary (2, 30, 0, 0) at width 1000.0 -01:10 +287: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: all styled runs and list endings repaint after resizing to 1000.0 -01:10 +288: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=2 -01:10 +289: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=10 -01:10 +290: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: **Bold** plain! end=11 -01:10 +291: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=2 -01:10 +292: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=10 -01:10 +293: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain **bold**! end=11 -01:11 +294: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=2 -01:11 +295: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=10 -01:11 +296: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: `code` plain! end=11 -01:11 +297: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=2 -01:11 +298: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=10 -01:11 +299: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: plain `code`! end=11 -01:11 +300: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=2 -01:11 +301: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=10 -01:11 +302: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: [link](https://example.test) plain! end=11 -01:11 +303: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=2 -01:11 +304: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=14 -01:11 +305: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: partial multi-block styled span: *emphasis* plain! end=15 -01:12 +306: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 3, 29) includes the final rendered character -01:12 +307: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (4, 0, 4, 36) includes the final rendered character -01:12 +308: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 4, 36) includes the final rendered character -01:12 +309: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 4, 4, 36) includes the final rendered character -01:12 +310: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (3, 0, 6, 9) includes the final rendered character -01:12 +311: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (2, 0, 6, 93) includes the final rendered character -01:12 +312: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: list boundary (5, 0, 5, 29) includes the final rendered character -01:13 +313: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: mouse range across paragraph, list, table and paragraph equals Select All -01:13 +314: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: Select All, mouse and keyboard ranges produce equivalent local selection geometry -01:14 +315: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: local table cell selection stays local; subsequent Select All expands to document -01:14 +316: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: table to following paragraph retains complete selected rows -01:14 +317: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: document selection survives viewport scrolling and block recreation -01:15 +318: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: selected table text follows horizontal cell scrolling -01:15 +319: /home/albert/busystack/busymark/test/src/wysiwyg_selection_test.dart: drag across a viewport jump resolves the visible extent block (variant: TargetPlatform.linux) -01:16 +320: loading /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart -01:17 +320: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video card embeds a supported YouTube source in place -01:18 +321: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: mini-player embeds Vimeo with the reduced video ID -01:18 +322: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: local video player receives only a canonical media path -01:18 +323: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: video dimensions preserve ratio and scale to available width -01:18 +324: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: failed native player leaves a usable poster fallback -01:18 +325: /home/albert/busystack/busymark/test/src/writerside_video_widget_test.dart: WYSIWYG renders a Writerside video without rewriting source -01:18 +326: loading /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart -01:19 +326: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: uses the native grouped modal-editor structure -01:21 +327: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shared report form remains directional in an Arabic UI -01:21 +328: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: dark route uses the shared dialog surface -01:21 +329: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows required-field validation without sending -01:21 +330: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: rejects an invalid optional reply email -01:21 +331: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: category can return to the unselected placeholder -01:21 +332: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: disables submit while a request is active -01:22 +333: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: clears the form and shows the server reference on success -01:22 +334: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: shows a distinct message when the server rejects the form -01:22 +335: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: keeps retry UUID until submitted content changes -01:22 +336: /home/albert/busystack/busymark/test/src/feedback_dialog_test.dart: cannot dismiss the dialog while submission is active -01:26 +337: loading /home/albert/busystack/busymark/test/src/headless_chrome_test.dart -01:26 +337: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: evaluates the requested document after it becomes ready -01:27 +338: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: does not evaluate the initial about:blank target -01:27 +339: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: retries when navigation destroys the execution context -01:27 +340: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a silent open DevTools socket respects the readiness bound -01:28 +341: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: socket closure before a response fails deterministically -01:28 +342: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a DevTools error is not mistaken for navigation -01:28 +343: /home/albert/busystack/busymark/test/src/headless_chrome_test.dart: a page that never becomes ready reports its last state -01:28 +344: loading /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart -01:28 +344: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in untitledMarkdown -01:28 +345: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in singleMarkdown -01:28 +346: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in markdownFolder -01:28 +347: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in writersideModule -01:28 +348: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: untitled buffer is CommonMark in nextcloudNotes -01:28 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (setUpAll) -01:29 +349: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered Markdown topic wins over generic file inventory -01:29 +350: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution discovered XML topic resolves as a Writerside XML topic -01:29 +351: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution ordinary Markdown under the project is still CommonMark -01:29 +352: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution path fallback does not depend on workspace file inventory -01:29 +353: /home/albert/busystack/busymark/test/src/workspace_document_context_test.dart: Writerside document resolution (tearDownAll) -01:32 +353: loading /home/albert/busystack/busymark/test/src/html_export_test.dart -01:32 +353: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsaved Markdown is a complete styled document with stable semantic anchors -01:35 +354: /home/albert/busystack/busymark/test/src/html_export_test.dart: raw disclosures, definitions and spans survive with structural sanitization -01:35 +355: /home/albert/busystack/busymark/test/src/html_export_test.dart: explicit blank lines export as consecutive HTML breaks -01:35 +356: /home/albert/busystack/busymark/test/src/html_export_test.dart: content-addressed assets relocate, deduplicate and reject symlink escapes -01:35 +357: /home/albert/busystack/busymark/test/src/html_export_test.dart: home-relative images use the shared local-media path rules -01:35 +358: /home/albert/busystack/busymark/test/src/html_export_test.dart: untrusted metadata and data URLs cannot create active HTML -01:35 +359: /home/albert/busystack/busymark/test/src/html_export_test.dart: unsafe SVG and CSS never reach exported assets -01:35 +360: /home/albert/busystack/busymark/test/src/html_export_test.dart: overwrite refusal, cancellation and rendering failure preserve previous HTML -01:35 +361: /home/albert/busystack/busymark/test/src/html_export_test.dart: metadata title remains separate from a formatted Markdown title heading -01:35 +362: /home/albert/busystack/busymark/test/src/html_export_test.dart: UTF-8 byte limits are enforced -01:35 +363: /home/albert/busystack/busymark/test/src/html_export_test.dart: Writerside produces linked pages, hidden topics, WIP and start copy -01:35 +364: /home/albert/busystack/busymark/test/src/html_export_test.dart: official conformance fixture exports as individual pages -01:36 +365: loading /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart -01:37 +365: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside blockquotes become typed admonitions and round-trip -01:37 +366: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown blockquotes do not acquire Writerside semantics -01:37 +367: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: semantic admonition elements include quote and preserve attributes -01:37 +368: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: admonition editing emits source that reparses semantically -01:37 +369: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: editing inside an existing admonition changes its outer type -01:37 +370: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: WYSIWYG Admonition menu applies the selected type -01:38 +371: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: ordinary Markdown does not show the Writerside editing menu -01:39 +372: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: Writerside .topic preview keeps content inside its admonition -01:39 +373: /home/albert/busystack/busymark/test/src/writerside_admonition_test.dart: PDF export keeps admonitions semantic and quotes neutral -01:39 +374: loading /home/albert/busystack/busymark/test/src/d2_renderer_test.dart -01:40 +374: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy rejects imports and icon assets with source locations -01:40 +375: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: D2 source policy does not treat comments, quoted labels, or block strings as imports -01:40 +376: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: returns normalized vector SVG for browser-independent output -01:40 +377: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes foreignObject output at PDF resolution -01:40 +378: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: rasterizes browser CSS that cannot be preserved in vector form -01:40 +379: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: maps D2 diagnostics and renderer limits to typed results -01:40 +380: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: locates only executable files at deterministic bundle paths -01:40 +381: /home/albert/busystack/busymark/test/src/d2_renderer_test.dart: bundled D2 CLI renders stdin to stdout without a shell -01:41 +382: loading /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart -01:44 +382: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only source blocks typing and formatting mutations -01:45 +383: /home/albert/busystack/busymark/test/src/nextcloud_editor_boundary_test.dart: remote read-only WYSIWYG blocks typing and formatting emissions -01:46 +384: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart -01:47 +384: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: display images do not reserve a fixed-height letterbox -01:47 +385: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: quotes and admonitions use the existing callout presentation -01:47 +386: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF export ignores redundant blank lines between blocks -01:49 +387: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: PDF payload preserves an explicit blank line as two breaks -01:49 +388: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders two explicit breaks as one blank PDF line -01:50 +389: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template renders redundant blank lines identically -01:50 +390: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: bundled template exports representative Markdown to a valid PDF -01:50 +391: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside video poster and link compile into a valid PDF -01:50 +392: /home/albert/busystack/busymark/test/src/markdown_pdf_export_service_test.dart: Writerside admonitions compile into a valid PDF -01:50 +393: loading /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart -01:51 +393: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: data tables remain tables, including borderless and single-column data -01:51 +394: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: nested layout wrappers retain their inner data table and prose -01:51 +395: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: explicit presentation table keeps caption, cell order and direction -01:51 +396: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor preserves content inside a layout table -01:51 +397: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: editor plain paste ignores layout and rich content -01:51 +398: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource preserves content inside a layout table -01:51 +399: /home/albert/busystack/busymark/test/src/clipboard_layout_table_test.dart: markdownSource plain paste ignores layout and rich content -01:51 +400: loading /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart -01:57 +400: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: selects all candidates by default and disables OK for none -01:58 +401: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: successful import closes the dialog with selected list order -01:58 +402: /home/albert/busystack/busymark/test/src/writerside_markdown_import_dialog_test.dart: failed import stays open and presents the localized error -01:59 +403: loading /home/albert/busystack/busymark/test/src/html_publication_test.dart -01:59 +403: /home/albert/busystack/busymark/test/src/html_publication_test.dart: single-file local video has a downloadable fallback -02:01 +404: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list starts and same-type boundaries survive HTML export -02:02 +405: /home/albert/busystack/busymark/test/src/html_publication_test.dart: repeated list includes export as separate HTML containers -02:02 +406: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside list styles stay distinct across consecutive lists -02:02 +407: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside shares HTML appearance without changing TOC status or source -02:02 +408: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside module origins preserve includes, variables, file identity and nullable links -02:02 +409: /home/albert/busystack/busymark/test/src/html_publication_test.dart: definition lists preserve individual disclosure states and IDs -02:02 +410: /home/albert/busystack/busymark/test/src/html_publication_test.dart: web filename and index collisions identify both topics before publication -02:02 +411: /home/albert/busystack/busymark/test/src/html_publication_test.dart: Writerside publication uses canonical effective web filenames -02:02 +412: /home/albert/busystack/busymark/test/src/html_publication_test.dart: source and media are captured before progress or later editor changes -02:02 +413: /home/albert/busystack/busymark/test/src/html_publication_test.dart: publication failure retains previous HTML and referenced immutable assets -02:02 +414: /home/albert/busystack/busymark/test/src/html_publication_test.dart: duplicate explicit IDs warn, non-Latin footnotes and document IDs resolve -02:03 +415: loading /home/albert/busystack/busymark/test/src/spelling_service_test.dart -02:03 +415: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document kinds expose one authoritative spelling capability -02:03 +416: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: effective spelling language preserves document and project order -02:03 +417: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: session identity changes when a stable buffer is saved to a path -02:03 +418: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: downloaded dictionaries use revision-shared Snap storage -02:03 +419: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: first save and Save As republish source routing immediately -02:05 +420: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rereads and merges independent external changes -02:05 +421: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words coordinates writers in independent application processes -02:07 +422: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external edit injected after staging -02:07 +423: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words merges an external replacement after the atomic exchange -02:07 +424: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves a newer destination and the rejected displaced version -02:07 +425: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words preserves case while merging canonical Unicode equivalents -02:07 +426: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words rebuilds untrusted stored keys from validated display values -02:07 +427: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words case-distinct words survive restart into the native worker -02:07 +428: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: persistent spelling words malformed storage is reported instead of overwritten -02:07 +429: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: staging validation accepts numeric header revisions and count drift -02:07 +430: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: dictionary import publishes a complete pair only after validation -02:07 +431: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation installs only one shared resource and reuses it by locale -02:07 +432: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation and checksum failure leave no installation -02:08 +433: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation cancellation observes the atomic publication commit point -02:08 +434: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale invalid record cannot remove a repaired installation -02:08 +435: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a stale valid descriptor cannot remove a replacement in another process -02:08 +436: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation catalog waits through a replacement publication gap -02:08 +437: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a late no-replace publisher cannot replace a completed installation -02:08 +438: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation independent process observes the published no-replace destination -02:09 +439: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation stalled response times out, cancels, and permits retry -02:09 +440: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation asynchronous output sink errors fail the receiver without zone leaks -02:09 +441: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed replacement cannot damage a working installation -02:09 +442: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation a failed controller download exposes a working retry -02:09 +443: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller reserves an installation before coordinator startup -02:09 +444: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller releases installation ownership after setup failure -02:09 +445: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: on-demand dictionary installation controller cancellation remains with the reserved startup operation -02:09 +446: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: aliased imports remain selectable across collision, restart, and removal -02:10 +447: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: same-resource import collision is rejected before publication -02:10 +448: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an import does not impersonate the downloadable resource row -02:10 +449: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid imported installation is removable by exact record -02:10 +450: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: invalid downloaded installation repairs through settings API -02:10 +451: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once keeps its authored anchor across editor modes -02:10 +452: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: source hit testing excludes formatting and link destination gaps -02:10 +453: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Ignore Once follows one transaction across edit, undo, redo, and tabs -02:10 +454: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: document ignores survive tab changes but not an actual close -02:10 +455: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed suggestion cannot revive after language changes -02:10 +456: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a manual request waits for its own result while a check runs -02:10 +457: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: checks in bounded batches and reuses unchanged run results -02:10 +458: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: cached runs cover the complete checked text across edits -02:10 +459: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a NUL suffix cannot complete checking and recovers after correction -02:10 +460: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project initialization publishes only the latest owner -02:11 +461: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older same-project Settings read cannot undo a newer snapshot -02:11 +462: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: older project watcher read cannot undo Settings publication -02:11 +463: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project read begun during a mutation cannot undo its result -02:11 +464: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project conflict read preserves newer state and error -02:11 +465: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: superseded project watcher error cannot replace valid state -02:11 +466: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project watcher recovers after identical dictionary repair -02:12 +467: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project repair recovers a later failed preparation at latest revision -02:13 +468: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: project reread does not clear an unrelated personal read failure -02:13 +469: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: failed personal initialization retries after repair and shares first load -02:14 +470: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: explicit checks and Settings refresh external personal words -02:14 +471: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: late personal refresh cannot undo a newer local mutation -02:14 +472: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: refresh begun during a personal mutation cannot undo its result -02:14 +473: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an older personal refresh cannot replace a newer publication -02:14 +474: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a superseded conflict read cannot replace a newer personal refresh -02:14 +475: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: Settings holds a failed preparation until deliberate retry -02:16 +476: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm no-workspace Settings refreshes personal words once -02:16 +477: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm Settings observes an external dictionary removal once -02:17 +478: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: leaving Settings during preparation ignores its late completion -02:17 +479: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent first requests start exactly one worker -02:17 +480: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a project-word mutation cannot publish into a later project -02:18 +481: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: new input hides old results before preparation can fail -02:18 +482: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: external project-word edits refresh an open document -02:21 +483: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review dialog keeps one traversal through skip, back, correction, and persistence -02:23 +484: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: review word-store conflict stays current and exposes preserved recovery path -02:24 +485: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: equivalent rebuild does not cancel session initialization -02:25 +486: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic session checks after an unresolved language is selected -02:25 +487: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: an available but absent dictionary is not downloaded implicitly -02:25 +488: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: removing a downloaded pair keeps words and reports not installed -02:25 +489: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance refreshes external installation at explicit boundaries -02:25 +490: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: warm instance replaces an active imported dictionary fingerprint -02:26 +491: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: concurrent warm catalog preparations share one owned read -02:26 +492: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a delayed catalog read cannot undo a local installation -02:26 +493: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: a failed warm catalog refresh remains retryable -02:26 +494: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: automatic checking rereads inventory after dictionary load fails -02:26 +495: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker catalog validation requires its resource-specific probe -02:26 +496: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projects source and rich snapshots through reusable messages -02:26 +497: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incrementally reuses unaffected plain Markdown runs -02:26 +498: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker incremental Markdown projection agrees with a fresh structural parse -02:26 +499: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker projection cache rebinds source targets after Save As -02:26 +500: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker project custom words do not leak between contexts -02:26 +501: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quoted corrections retain straight and curly punctuation -02:26 +502: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives projection and worker barriers -02:26 +503: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker quotation context survives a bounded worker chunk -02:27 +504: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker removing a custom exception does not forbid a base word -02:27 +505: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker prose around 64 KiB is checked across bounded chunks -02:27 +506: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker isolates encoding and oversized-token failures -02:27 +507: /home/albert/busystack/busymark/test/src/spelling_service_test.dart: long-lived spelling worker normal, large, and superseded checks stay bounded -spelling benchmark: normal=3ms large/latest=131ms suggestion=0ms -02:27 +508: loading /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart -02:28 +508: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: rapid navigation applies only monotonic complete configurations -02:28 +509: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: a new Dart session can restart native revisions from one -02:28 +510: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal depth is an atomic overlay on the latest page state -02:28 +511: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: modal barrier is retained before the first page publishes -02:28 +512: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: older runners fall back once to the ordered legacy protocol -02:28 +513: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: failed atomic apply keeps the last success and retries the same desired state -02:28 +514: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: theme map contains the native semantic visual roles -02:28 +515: /home/albert/busystack/busymark/test/src/header_bar_configuration_test.dart: native header labels expose only application-menu commands -02:28 +516: loading /home/albert/busystack/busymark/test/src/source_audit_test.dart -02:30 +516: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source tree has BusyMark identity and no removed domain surfaces -02:31 +517: /home/albert/busystack/busymark/test/src/source_audit_test.dart: pubspec package name is busymark -02:31 +518: /home/albert/busystack/busymark/test/src/source_audit_test.dart: release version metadata stays in sync -02:31 +519: /home/albert/busystack/busymark/test/src/source_audit_test.dart: top-level app routes do not animate between desktop surfaces -02:31 +520: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Flutter UI resolves icons through the BusyMark glyph catalog -02:31 +521: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview output actions are not present -02:32 +522: /home/albert/busystack/busymark/test/src/source_audit_test.dart: product stderr logging is isolated behind debug logging -02:32 +523: /home/albert/busystack/busymark/test/src/source_audit_test.dart: grouped action rows use one BusyMark-owned rounded surface -02:32 +524: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog title bars use the same surface as dialog body -02:32 +525: /home/albert/busystack/busymark/test/src/source_audit_test.dart: BusyMark dialog buttons are thin semantic framework adapters -02:32 +526: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside New Topic uses the established modal editor components -02:32 +527: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared grouped surfaces use native card shadow layers -02:32 +528: /home/albert/busystack/busymark/test/src/source_audit_test.dart: filled grouped action surfaces use the shared grouped surface -02:32 +529: /home/albert/busystack/busymark/test/src/source_audit_test.dart: semantic surfaces are centralized while inputs retain Yaru geometry -02:32 +530: /home/albert/busystack/busymark/test/src/source_audit_test.dart: split-view sidebars share one directional semantic boundary -02:32 +531: /home/albert/busystack/busymark/test/src/source_audit_test.dart: hardcoded UI colors stay in the shared design layer -02:32 +532: /home/albert/busystack/busymark/test/src/source_audit_test.dart: problems are opened from a popup instead of a bottom panel setting -02:32 +533: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native search action toggles workspace search UI -02:32 +534: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview links are actionable instead of styled-only text -02:32 +535: /home/albert/busystack/busymark/test/src/source_audit_test.dart: inline preview images do not inherit link text decoration -02:32 +536: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views share direction resolution and keep code LTR -02:32 +537: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse the shared document callout surface -02:32 +538: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document views reuse one code-block surface and typography -02:32 +539: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Editor and Preview reuse one prose line-height style -02:32 +540: /home/albert/busystack/busymark/test/src/source_audit_test.dart: equivalent Editor and Preview blocks use shared document primitives -02:32 +541: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace isolates technical labels only at rendering boundaries -02:32 +542: /home/albert/busystack/busymark/test/src/source_audit_test.dart: workspace sidebar tabs match the opened workspace kind -02:32 +543: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar tabs and editor hover use neutral native surfaces -02:32 +544: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar header menu uses shared popup menu -02:32 +545: /home/albert/busystack/busymark/test/src/source_audit_test.dart: shared popup menus prefer GTK with a themed framework fallback -02:32 +546: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git actions use the shared workspace-header popup -02:32 +547: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git changes view uses an integrated commit panel -02:32 +548: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Git sidebar actions use the shared semantic button adapter -02:32 +549: /home/albert/busystack/busymark/test/src/source_audit_test.dart: settings selectors delegate to the shared native menu -02:32 +550: /home/albert/busystack/busymark/test/src/source_audit_test.dart: report issue form uses the native grouped modal editor -02:32 +551: /home/albert/busystack/busymark/test/src/source_audit_test.dart: data-entry dialogs use native grouped modal editors -02:32 +552: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Writerside template workflow uses BusyMark and Yaru presentation -02:32 +553: /home/albert/busystack/busymark/test/src/source_audit_test.dart: sidebar trees share the expandable Yaru-style row -02:33 +554: /home/albert/busystack/busymark/test/src/source_audit_test.dart: recent workspaces expose one native menu action model -02:33 +555: /home/albert/busystack/busymark/test/src/source_audit_test.dart: history records reuse the Recent sidebar row -02:33 +556: /home/albert/busystack/busymark/test/src/source_audit_test.dart: outline tree drives source and preview heading navigation -02:33 +557: /home/albert/busystack/busymark/test/src/source_audit_test.dart: preview search navigation targets clicked result source span -02:33 +558: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source editor line numbers use measured editor layout -02:33 +559: /home/albert/busystack/busymark/test/src/source_audit_test.dart: document view modes drive source preview and split layouts -02:33 +560: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG toolbar exposes fuller Markdown controls -02:33 +561: /home/albert/busystack/busymark/test/src/source_audit_test.dart: WYSIWYG text selection does not paint full text block backgrounds -02:33 +562: /home/albert/busystack/busymark/test/src/source_audit_test.dart: Markdown image blocks render frameless and edit through dialog -02:33 +563: /home/albert/busystack/busymark/test/src/source_audit_test.dart: native context menus wait for the secondary pointer release -02:33 +564: /home/albert/busystack/busymark/test/src/source_audit_test.dart: source view has compact gutter without pane status chrome -02:33 +565: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart -02:33 +565: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: production Dart does not hardcode obvious user-facing strings -02:33 +566: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: native Linux GTK user-facing strings are not hardcoded -02:33 +567: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Linux package metadata matches supplied target locales -02:33 +568: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: package metadata uses reviewed product wording in every locale -02:33 +569: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: duplicate JSON key scanning respects nested object scopes -02:33 +570: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: ARB catalogs have valid, unique message structure and locale IDs -02:34 +571: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: all ARBs match the English messages and placeholders -02:34 +572: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: destructive, save, and Git history actions remain distinct -02:34 +573: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: English-identical target messages are explicitly reviewed -02:34 +574: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Syntax Reference is localized without legacy message keys -02:34 +575: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: clipboard write failures are localized in every target locale -02:34 +576: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese and Chinese base catalogs contain reviewed UI prose -02:34 +577: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: completed base-catalog plurals reach their supported branches -02:34 +578: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Russian and Ukrainian count messages render every reviewed form -02:34 +579: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Portuguese count messages distinguish singular and plural -02:34 +580: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Hindi unsaved-document prompt uses saved-state terminology -02:34 +581: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: RTL translations isolate technical interpolations -02:34 +582: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: Persian dynamic numbers use Persian digits -02:34 +583: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: locale resolution considers all preferences and falls back to English -02:34 +584: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: every selectable locale has a generated catalog -02:34 +585: /home/albert/busystack/busymark/test/src/localization_audit_test.dart: diagnostics localize at render time from codes and args -02:35 +586: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart -02:36 +586: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks pasted rich content completely in both editors -02:39 +587: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: packaged catalog opens real regional and non-Latin dictionaries -Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff -02:45 +588: /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart: real en-CA checks the general Markdown fixture completely -02:48 +589: loading /home/albert/busystack/busymark/test/src/command_registry_test.dart -02:49 +589: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog includes every editor command with an executable callback -02:49 +590: /home/albert/busystack/busymark/test/src/command_registry_test.dart: catalog exposes stable unique IDs for all migrated shortcuts -02:49 +591: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects duplicate command IDs -02:49 +592: /home/albert/busystack/busymark/test/src/command_registry_test.dart: rejects shortcut conflicts in the same command scope -02:49 +593: /home/albert/busystack/busymark/test/src/command_registry_test.dart: allows the same shortcut in distinct focus scopes -02:49 +594: /home/albert/busystack/busymark/test/src/command_registry_test.dart: executes only visible enabled bound commands -02:49 +595: /home/albert/busystack/busymark/test/src/command_registry_test.dart: contextual commands execute against the captured editor -02:49 +596: loading /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart -02:50 +596: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: Linux packages secure AI credential storage consistently -02:50 +597: /home/albert/busystack/busymark/test/src/ai_packaging_audit_test.dart: real local AI qualification covers every shipped action -02:50 +598: loading /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart -02:51 +598: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: source line bounds treat offsets as insertion positions -02:51 +599: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: table cell spans respect meaningful outer pipes and escaping -02:51 +600: /home/albert/busystack/busymark/test/src/markdown_source_structure_test.dart: escaped terminal pipes remain in the final cell source span -02:51 +601: loading /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart -02:54 +601: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide preview fits identically through D2 and WebKit renderers -02:54 +602: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: wide PDF fits identically through D2 and WebKit renderers -02:54 +603: /home/albert/busystack/busymark/test/src/visualization_raster_sizing_test.dart: area-constrained PDF fits identically through D2 and WebKit renderers -02:54 +604: loading /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart -02:58 +604: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: real installed catalog has six default families and 22 bundled TGDP topics -03:00 +605: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: literal substitution is simultaneous, case-sensitive, XML-only escaped -03:00 +606: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save source matches installed first-match substring behavior -03:00 +607: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: TGDP brace escaping preserves attribute blocks and rewrites relative links -03:00 +608: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: save, unique naming, restart, cancellation snapshot and stale edit rejection -03:00 +609: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: concurrent saves serialize without losing templates -03:00 +610: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: true) -03:00 +611: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: custom and Internal templates may share a name (custom first: false) -03:00 +612: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: corrupt and symbolic-link stores are never replaced -03:00 +613: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: builtin overrides persist independently and reset reveals original source -03:00 +614: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: template bytes are published in the guarded creation transaction and rolled back on conflict -03:00 +615: /home/albert/busystack/busymark/test/src/writerside_template_service_test.dart: invalid XML templates and colliding root IDs never publish a topic or TOC edit -03:00 +616: loading /home/albert/busystack/busymark/test/src/writerside_test.dart -03:01 +616: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses writerside.cfg directories and registered instances -03:01 +617: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented full writerside.cfg metadata -03:01 +618: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented config defaults -03:01 +619: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses attribute defaults for present config elements -03:01 +620: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses documented topic title overrides and web file names -03:01 +621: /home/albert/busystack/busymark/test/src/writerside_test.dart: Markdown web filename metadata ignores literal examples -03:01 +622: /home/albert/busystack/busymark/test/src/writerside_test.dart: XML topic metadata is scoped to direct topic children -03:01 +623: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses .tree metadata and TOC hierarchy -03:01 +624: /home/albert/busystack/busymark/test/src/writerside_test.dart: Writerside topic XML exposes semantic math to the shared preview -03:01 +625: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads basic Writerside project with topics and no missing topic diagnostics -03:01 +626: /home/albert/busystack/busymark/test/src/writerside_test.dart: does not parse a Writerside config above the byte limit -03:01 +627: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects configured paths outside the module root -03:01 +628: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a configured topic root reached through a symlink -03:01 +629: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects a Writerside config file reached through a symlink -03:01 +630: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads project.ihp as an equivalent Writerside config file -03:01 +631: /home/albert/busystack/busymark/test/src/writerside_test.dart: loads topics from multiple configured topic roots -03:01 +632: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves exact topic reference before basename fallback -03:01 +633: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports duplicate topic IDs in a help module -03:01 +634: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename fallback after exact matching misses -03:01 +635: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves Markdown links across configured topic roots -03:01 +636: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports ambiguous basename topic references deterministically -03:01 +637: /home/albert/busystack/busymark/test/src/writerside_test.dart: broken Writerside project produces deterministic diagnostics -03:01 +638: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves basename images in nested Writerside image directories -03:01 +639: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves local images from secondary configured image roots -03:01 +640: /home/albert/busystack/busymark/test/src/writerside_test.dart: parses the documented instance tree elements and attributes -03:01 +641: /home/albert/busystack/busymark/test/src/writerside_test.dart: rejects redirect-source attributes on empty TOC groups -03:01 +642: /home/albert/busystack/busymark/test/src/writerside_test.dart: module service retains empty-group redirect-source diagnostics -03:01 +643: /home/albert/busystack/busymark/test/src/writerside_test.dart: resolves registered TOC libraries, filters, groups, and cross-instance refs -03:01 +644: /home/albert/busystack/busymark/test/src/writerside_test.dart: reports circular reusable tree includes without recursing -03:01 +645: /home/albert/busystack/busymark/test/src/writerside_test.dart: included content still requires a regular instance home page -03:01 +646: /home/albert/busystack/busymark/test/src/writerside_test.dart: ignores status-specific values for general instance settings -03:01 +647: /home/albert/busystack/busymark/test/src/writerside_test.dart: conformance fixture is a valid openable Writerside module -03:01 +648: loading /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart -03:03 +648: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: narrow title stays centered between the controls when resized -03:04 +649: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.rtl -03:04 +650: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 500.0 in TextDirection.ltr -03:04 +651: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.rtl -03:04 +652: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header title fits asymmetric controls at width 800.0 in TextDirection.ltr -03:04 +653: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.dark seam paints the same subtle color across header and body -03:04 +654: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: Brightness.light seam paints the same subtle color across header and body -03:04 +655: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: one viewport owns the full-height sidebar edge at every frame -03:04 +656: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: unrelated rebuild preserves partial progress and body state -03:04 +657: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: breakpoint settlement is immediate and retained state survives -03:04 +658: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: RTL and fractional device pixels share one snapped edge -03:04 +659: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: divider follows the snapped physical viewport while opening and closing -03:04 +660: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: animation setting settles a running reveal to its logical target -03:04 +661: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: header receives only the presented system-control obstruction -03:04 +662: /home/albert/busystack/busymark/test/src/linux_page_frame_test.dart: frame is the single owner of the full-height sidebar seam -03:04 +663: loading /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart -03:07 +663: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: tree-to-editor sync opens selected topic even with a .tree editor active -03:11 +664: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: editor-to-TOC sync resolves qualified identities and chooses breadth-first occurrence -03:13 +665: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: live removal dialog uses documented confirmation, redirect label and usage count -03:16 +666: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: New Topic surfaces expose local Markdown import only at root/sibling -03:18 +667: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty MD Topic creates an editable document when Reading mode is active, preserving other tabs -03:21 +668: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Empty XML Topic creates an editable document when Reading mode is active, preserving other tabs -03:23 +669: /home/albert/busystack/busymark/test/src/writerside_toc_regressions_test.dart: Topic from Template... creates an editable document when Reading mode is active, preserving other tabs -03:26 +670: loading /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart -03:27 +670: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: header Escape preserves the query for the next search -03:28 +671: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: search fallback uses the normal Yaru-themed entry geometry -03:28 +672: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: focus request targets the themed text entry -03:28 +673: /home/albert/busystack/busymark/test/src/busymark_search_field_test.dart: Escape clears the query and closes the owner -03:28 +674: loading /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart -03:30 +674: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: row titles, markers and included source identity use selected context -03:30 +675: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking retains source bytes and rejects a now-present candidate -03:32 +676: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: home reassignment preserves other instances and unrelated attributes -03:32 +677: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty instance -03:32 +678: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: groups only -03:32 +679: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing home -03:32 +680: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: library -03:33 +681: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: empty group insertion -03:33 +682: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: linking initializes the first-topic home page: existing nested topic -03:33 +683: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: first linked topic and home assignment share the same publication guard -03:33 +684: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: title transaction rolls back both files on a concurrent dirty-buffer guard -03:33 +685: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: XML duplicate copies source, changes only root ID, adds basic sibling -03:33 +686: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: sort revalidates title dependencies before publishing the tree -03:33 +687: /home/albert/busystack/busymark/test/src/writerside_toc_workspace_test.dart: safe deletion rechecks dirty-buffer guard and rolls back earlier edits -03:34 +688: loading /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart -03:37 +688: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: repeated list includes restart numbering in the final PDF -03:37 +689: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF keeps alphabetic starts, separate decimal lists and procedure numbering -03:37 +690: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (unknown) -03:37 +691: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unresolved TOC origin or shared topic fails explicitly (shared-pdf) -03:37 +692: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=false -03:38 +693: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF selects shared TOC topics with filename collision=true -03:38 +694: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=true) -03:38 +695: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: final PDF retains procedure titles, definition terms and linked targets (diagram rendered=false) -03:38 +696: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: bundled Typst compiles semantic tables, anchors and glossary footnotes -03:38 +697: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: PDF retains nested chapter bodies and resolves unique internal destinations -03:38 +698: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic links retain their PDF destinations -03:38 +699: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: Markdown topic blank lines remain explicit in Writerside PDF -03:38 +700: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native export composes the selected instance without a container runtime -03:38 +701: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: hidden topics remain content and toc-title stays navigation-only -03:38 +702: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: referenced diagrams keep resolved source and all tab panels reach PDF -03:38 +703: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: pre-cancelled native export never starts PDF compilation -03:38 +704: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: unknown Writerside instance is rejected before compilation -03:38 +705: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: resolution errors prevent PDF compilation -03:38 +706: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation errors prevent PDF compilation -03:38 +707: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: module validation warnings are returned to the caller -03:39 +708: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: nonfatal resolution diagnostics are returned as PDF warnings -03:39 +709: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native exporter failures use Writerside failure codes -03:39 +710: /home/albert/busystack/busymark/test/src/writerside_pdf_export_test.dart: native Writerside fixture compiles end to end with bundled Typst -03:39 +711: loading /home/albert/busystack/busymark/test/src/clipboard_history_test.dart -03:41 +711: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains newest first, deduplicates, removes, clears, and evicts by count -03:41 +712: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: accounts byte budget and rejects an oversized item without truncation -03:41 +713: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: collection off leaves existing entries and blocks new retention -03:41 +714: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external clipboard remains transient until explicitly retained -03:41 +715: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current external HTML keeps its rich and interoperable text representations -03:41 +716: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current HTML-only clipboard is eligible without internal ownership -03:41 +717: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: current source-only clipboard does not invent plain text -03:41 +718: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal visible text with different structure stays distinct -03:41 +719: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: equal relative markup from different origins stays distinct -03:41 +720: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: retains whitespace-only text and owns image bytes immutably -03:41 +721: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: a new provider session starts with no retained history -03:41 +722: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: insertion registry follows latest target and never retains disposed targets -03:41 +723: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: unknown token cannot recover rich data through equal plain text -03:41 +724: /home/albert/busystack/busymark/test/src/clipboard_history_test.dart: rich ownership is byte bounded and shares equivalent media -03:41 +725: loading /home/albert/busystack/busymark/test/src/ai_reliability_test.dart -03:44 +725: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator honors Retry-After and caps retry attempts -03:44 +726: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator never retries after partial output -03:44 +727: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: coordinator bounds all retries by one total deadline -03:44 +728: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: global permit pool limits requests across different targets -03:44 +729: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: request-id cancellation cannot cancel a newer request for the target -03:44 +730: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: model fallback stays inside the explicitly selected provider -03:44 +731: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Ollama uses an absolute deadline even while bytes keep arriving -03:44 +732: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: cancellation interrupts the preliminary Ollama model request -03:44 +733: /home/albert/busystack/busymark/test/src/ai_reliability_test.dart: Retry-After supports seconds and HTTP dates without negatives -03:44 +734: loading /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart -03:45 +734: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: partially formatted URL source offsets and text atoms survive save and edit -03:45 +735: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: URL punctuation beside surrounding formatting retains literal and style boundaries -03:45 +736: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: surrounding formatting commits the same URL editing semantics as reopening -03:45 +737: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL trailing literal punctuation survives serialization and reparse -03:46 +738: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: © -03:46 +739: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: & -03:46 +740: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.commonMark: &* -03:46 +741: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: © -03:46 +742: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: & -03:46 +743: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL character-reference suffix round-trips in MarkdownMode.writersideMarkdown: &* -03:46 +744: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.commonMark -03:46 +745: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: unrecognized URL source preserves literal text and metadata in MarkdownMode.writersideMarkdown -03:46 +746: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: descendant whitespace preservation prevents ancestor trimming -03:46 +747: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: ordinary and metadata inline emission are byte-identical -03:46 +748: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare URL offsets and text atoms stay exact through Enter, edit and save/reparse -03:46 +749: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: bare leaf links use raw URL positions and explicit equal-label links retain delimiters -03:46 +750: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: grouped breaks retain distinct source provenance in one traversal -03:46 +751: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: text-leaf atoms use interior spans and exclude delimiters -03:46 +752: /home/albert/busystack/busymark/test/src/markdown_serializer_metadata_test.dart: table escaping translates leaf spans without changing source -03:46 +753: loading /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart -03:49 +753: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: semantic catalog uses the exact native GTK icon names -03:49 +754: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: initial load batches direction variants and preserves candidate order -03:49 +755: /home/albert/busystack/busymark/test/src/gtk_header_icon_service_test.dart: explicit Back role survives atomic theme and scale catalog replacement -03:49 +756: loading /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart -03:50 +756: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup stores password only in secret service and metadata in SQLite -03:51 +757: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring fails setup without a plaintext account fallback -03:51 +758: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: Notes 6.0.1 connects with API 1.4 -03:51 +759: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: production setup preserves the HTTPS-specific validation error -03:51 +760: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: unsupported API rolls back secret and revokes new token -03:51 +761: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: setup revokes the grant even if keyring cleanup fails -03:52 +762: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: reconnect preserves stable account identity and pending note cache -03:52 +763: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: different returned login cannot inherit the existing account outbox -03:52 +764: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: failed remote revocation still removes local account and secret -03:52 +765: /home/albert/busystack/busymark/test/src/nextcloud_connection_test.dart: locked keyring during removal retains account for explicit retry -03:52 +766: loading /home/albert/busystack/busymark/test/src/feedback_service_test.dart -03:53 +766: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: posts the serialized request and returns the server reference -03:53 +767: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps connection failures -03:53 +768: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps response timeouts -03:53 +769: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 429 and preserves Retry-After -03:53 +770: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps HTTP 400 and 422 to rejected request failures -03:53 +771: /home/albert/busystack/busymark/test/src/feedback_service_test.dart: maps server and malformed-response failures to server errors -03:53 +772: loading /home/albert/busystack/busymark/test/src/app_settings_test.dart -03:55 +772: /home/albert/busystack/busymark/test/src/app_settings_test.dart: hydration and redundant sidebar requests do not count as user transitions -03:55 +773: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior defaults protect unsaved changes -03:55 +774: /home/albert/busystack/busymark/test/src/app_settings_test.dart: reopen workspace setting is migration-safe -03:55 +775: /home/albert/busystack/busymark/test/src/app_settings_test.dart: document view mode defaults to editor -03:55 +776: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save defaults to enabled -03:55 +777: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings have bounded privacy-preserving defaults -03:55 +778: /home/albert/busystack/busymark/test/src/app_settings_test.dart: history settings validate persisted ranges and absolute exclusions -03:55 +779: /home/albert/busystack/busymark/test/src/app_settings_test.dart: AI defaults disabled and provider settings never persist secrets -03:55 +780: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction defaults to horizontal -03:55 +781: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction round-trips through settings JSON -03:55 +782: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote images default to blocked -03:55 +783: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspaces default to untrusted -03:55 +784: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy preview visibility migrates to source mode when hidden -03:55 +785: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language defaults to system locale -03:55 +786: /home/albert/busystack/busymark/test/src/app_settings_test.dart: language override persists as locale tag -03:55 +787: /home/albert/busystack/busymark/test/src/app_settings_test.dart: legacy Norwegian locale tag migrates to Bokmal -03:55 +788: /home/albert/busystack/busymark/test/src/app_settings_test.dart: supported script variants canonicalize to the available catalog -03:55 +789: /home/albert/busystack/busymark/test/src/app_settings_test.dart: regional variants canonicalize and unsupported tags are discarded -03:55 +790: /home/albert/busystack/busymark/test/src/app_settings_test.dart: unused product settings are not persisted -03:55 +791: /home/albert/busystack/busymark/test/src/app_settings_test.dart: file settings store keeps the live JSON intact until publication -03:56 +792: /home/albert/busystack/busymark/test/src/app_settings_test.dart: failed settings publication preserves the previous valid JSON -03:56 +793: /home/albert/busystack/busymark/test/src/app_settings_test.dart: window behavior settings persist -03:56 +794: /home/albert/busystack/busymark/test/src/app_settings_test.dart: auto save setting persists -03:56 +795: /home/albert/busystack/busymark/test/src/app_settings_test.dart: editing button direction setting persists -03:56 +796: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Writerside instance selection and icon color persist across renames -03:56 +797: /home/albert/busystack/busymark/test/src/app_settings_test.dart: initial load preserves user actions made before it completes -03:56 +798: /home/albert/busystack/busymark/test/src/app_settings_test.dart: removing a recent workspace persists without affecting files -03:56 +799: /home/albert/busystack/busymark/test/src/app_settings_test.dart: remote image permissions persist globally and per workspace -03:56 +800: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust persists, normalizes, and can be cleared -03:56 +801: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git workspace trust follows the canonical workspace identity -03:56 +802: /home/albert/busystack/busymark/test/src/app_settings_test.dart: stored Git trust does not follow a replaced canonical path -03:56 +803: /home/albert/busystack/busymark/test/src/app_settings_test.dart: Git trust preserves leading and trailing path whitespace -03:56 +804: loading /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart -03:57 +804: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: different live prose still reports incomplete instead of guessed mapping -03:57 +805: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: general Markdown fixture has complete Source and rich spelling mappings -03:58 +806: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: live HTML paste preserves prose and maps spelling before a reload -03:58 +807: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: pasted job maps tables, trailing HTML breaks and address barriers -03:58 +808: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: closing hashes are heading syntax only in an ATX heading -03:58 +809: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal unresolved and invalid apparent links checkable -03:58 +810: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection resolves only parser-recognized links and images across revisions -03:58 +811: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps literal trailing braces in paragraph and heading prose -03:58 +812: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection binds recognized images to their exact source occurrence -03:58 +813: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection orders formatting from image labels and surrounding body -03:58 +814: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognizes nested syntax inside exact image descriptions -03:58 +815: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes only trailing attributes recognized by the current mode -03:58 +816: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata does not split a surrounding Markdown word -03:58 +817: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection corrects a Markdown body word across independent metadata -03:58 +818: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps repeated and formatted prose without searching globally -03:58 +819: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps entities, escapes, links, and table cells source exact -03:58 +820: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps CRLF and repeated occurrence targets exact -03:58 +821: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses barriers around excluded authored syntax -03:58 +822: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection excludes a fenced code block nested in a block quote -03:58 +823: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps quoted list fences across blank continuations -03:58 +824: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection counts tab columns in list fence continuations -03:58 +825: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps unmatched delimiters and removes only parsed formatting -03:58 +826: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection maps quoted HTML attribute values from quote boundaries -03:58 +827: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection preserves semantic HTML boundaries and multiline exclusions -03:58 +828: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps comparison prose and scans multiline HTML tags exactly -03:58 +829: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection keeps escaped multiline tag-like prose checkable -03:58 +830: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection removes delimiters when a correction empties formatting -03:58 +831: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection uses parser-compatible percentages escapes and code spans -03:58 +832: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection retains complete formatting ancestors across opaque children -03:58 +833: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection validates formatting gaps in regional coordinates -03:58 +834: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection accepts canonically equivalent mapped replacement text -03:58 +835: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link titles use exact quote boundaries before trailing whitespace -03:58 +836: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized link and image titles use their authored boundaries -03:58 +837: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection destination-only links and images do not expose a false title -03:58 +838: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection recognized multiline links consume one mapped occurrence -03:58 +839: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline link labels keep container prefixes out of prose -03:58 +840: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline mapped labels agree with rich prose and corrections -03:58 +841: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection inline HTML breaks in link labels agree with rich prose -03:59 +842: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection code-styled image alternative text agrees with rich image field -03:59 +843: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code and Markdown hard breaks retain image alt semantics -03:59 +844: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection image code hard-break corrections retain authored source -03:59 +845: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: list -03:59 +846: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: quote -03:59 +847: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: crlf-after-content -03:59 +848: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: combined-quote-list -03:59 +849: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: nested-image -03:59 +850: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-inner-spaces -03:59 +851: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: authored-continuation-space -03:59 +852: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection container image code matches the block-parsed alternative: literal-code-syntax -03:59 +853: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested image code inherits the enclosing container mapping -03:59 +854: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection link title keeps literal inline-break markup as scalar text -03:59 +855: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline code inside a link label stays opaque -03:59 +856: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection multiline nested-image destination stays outside outer prose -03:59 +857: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection nested label syntax owns its breaks before outer prose resumes -03:59 +858: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection metadata scalar tag-like text remains checkable -03:59 +859: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection parenthesized title replacement escapes its own delimiter -03:59 +860: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection semantic leaf blocks define independent complete prose runs -03:59 +861: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection projects semantic HTML prose and trusts parser math nodes -03:59 +862: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Markdown spelling projection large formatting-heavy projection and correction stay bounded -03:59 +863: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps inline body words intact across readable attributes -03:59 +864: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection corrects XML body and encoded metadata independently -03:59 +865: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes visible addresses in encoded text and CDATA -03:59 +866: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps text, entities, CDATA, and positive attributes -03:59 +867: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection reports malformed XML as incomplete without guessed targets -03:59 +868: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection clips CDATA occurrences while preserving repeated surrounding text -03:59 +869: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection maps line breaks, excludes variables, and includes controls -03:59 +870: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection excludes entity-encoded variables after XML decoding -03:59 +871: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: Writerside XML spelling projection keeps decomposed Unicode in XML and CDATA corrections -03:59 +872: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction nested image descriptions retain recursive spelling policy -03:59 +873: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed rich correction preserves images beside math -03:59 +874: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction source-backed table image and math correction preserves cell source -03:59 +875: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction neighboring prose in a math image field keeps exact source -03:59 +876: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image ownership continues across ordinary and math fields -03:59 +877: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image description spelling agrees across source and rich fields -03:59 +878: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich image spelling changes only the mapped source word -03:59 +879: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction container image code corrects after continuation in rich editor -03:59 +880: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction code-styled image alternative corrects through rich controller -03:59 +881: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction image code punctuation correction retains literal code meaning -03:59 +882: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction multiline link label correction uses rich controller mapping -03:59 +883: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: # Introduction - -- [Overview](#overview) - - [Motivation](#motivation) -- [Discussion](#discussion) - - -## Overview - -helo **world** - -helo world - -03:59 +884: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - helo - - helo - -helo - -03:59 +885: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps all rich fields without requiring parser block spans: - -helo - -03:59 +886: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction escaped comment prose is still an editable rich spelling field -03:59 +887: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps hard breaks by structural field identity -03:59 +888: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction removes a rich formatting container emptied by deletion -03:59 +889: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction retains current source anchors and source-only title targets -03:59 +890: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction rich links keep all title delimiters source-only -04:00 +891: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves formatting ownership across leaves -04:00 +892: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction keeps trailing formatting on its original leaf -04:00 +893: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction preserves link destination and table structure -04:00 +894: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction maps and corrects a table-cell field containing inline math -04:00 +895: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects transformed prose in table math source fields -04:00 +896: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction corrects formatted and encoded prose in math source fields -04:00 +897: /home/albert/busystack/busymark/test/src/spellcheck_projection_test.dart: exact rich correction owns every nested wrapper in paragraph math-source fields -04:00 +898: loading /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart -04:00 +898: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: validates availability, finite normalized RGB and payload shape -04:00 +899: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: attaches before snapshot and rejects a superseded snapshot -04:00 +900: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: replays current value, deduplicates and safely resubscribes -04:00 +901: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: missing channels are unavailable and cancellable -04:00 +902: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while snapshot is pending discards its result -04:00 +903: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: silent channels expire locally and unsuperseded late snapshot recovers -04:00 +904: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: new unavailable event invalidates older read and deadline -04:00 +905: /home/albert/busystack/busymark/test/src/linux_gtk_accent_service_test.dart: cancellation while both native calls pending rejects late errors -04:01 +906: loading /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart -04:03 +906: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project scaffold and loads without diagnostics -04:04 +907: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: derives the starter topic filename from its title -04:04 +908: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: creates starter project with Unicode directory and instance ID -04:04 +909: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: escapes XML-sensitive project names in writerside.cfg -04:05 +910: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: sanitizes start topic title as plain Markdown heading text -04:05 +911: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects existing non-empty target directory and does not overwrite files -04:05 +912: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects an existing project target symlink without writing through it -04:05 +913: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: canonicalizes a project parent selected through a symlink -04:05 +914: /home/albert/busystack/busymark/test/src/writerside_project_creator_test.dart: rejects unsafe create request names before writing files -04:05 +915: loading /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart -04:05 +915: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: cover edits survive toggling and format changes, validate, reset, and do not leak through preferences -04:08 +916: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: instance changes refresh automatic fields without replacing edited or cleared text -04:09 +917: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: settings without a document show only the reusable cover preference -04:09 +918: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Markdown forwards current defaults and export-owned text -04:10 +919: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Direct PDF Writerside forwards current defaults and export-owned text -04:11 +920: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Markdown forwards current defaults and export-owned text -04:11 +921: /home/albert/busystack/busymark/test/src/pdf_title_page_ui_test.dart: Unified PDF Writerside forwards current defaults and export-owned text -04:12 +922: loading /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart -04:13 +922: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: README screenshot references resolve to checked-in images -04:13 +923: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: release metadata is consistent and production-grade -04:13 +924: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: web engines are exact, checksummed, licensed, and installed offline -04:13 +925: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: D2 is checksum pinned for amd64 and installed with notices -04:13 +926: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: Linux CI builds and exercises the bundled visualization stack -04:13 +927: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: only offscreen WebKit views disable hardware compositing -04:13 +928: /home/albert/busystack/busymark/test/src/visualization_packaging_audit_test.dart: WebKit host and harness disable persistence and external resources -04:13 +929: loading /home/albert/busystack/busymark/test/src/workspace_safety_test.dart -04:14 +929: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes dialog aborts destructive navigation on cancel -04:16 +930: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discarding unsaved changes prevents repeated prompts -04:16 +931: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: destructive dialog buttons stay readable on dark controls -04:16 +932: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: unsaved changes Discard action renders white in the dark dialog -04:16 +933: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overwrite confirmation stays pinned to the document being saved -04:16 +934: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: overlapping manual saves write the newer requested revision -04:16 +935: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: save completes for its buffer when the active document changes -04:16 +936: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As stays pinned while the file picker is open -04:16 +937: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancel does not overwrite an existing normalized markdown path -04:16 +938: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As overwrites an existing normalized markdown path only after confirmation -04:16 +939: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: Save As cancels when the document changes during path lookup -04:16 +940: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: discard confirmation cannot discard a newly active document -04:16 +941: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: workspace continuation resolves inactive dirty documents too -04:17 +942: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can save it while another stays dirty -04:17 +943: /home/albert/busystack/busymark/test/src/workspace_safety_test.dart: closing one dirty tab can discard it while another stays dirty -04:17 +944: loading /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart -04:17 +944: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar update retries native channel initialization after early miss -04:17 +945: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar forwards text direction updates -04:17 +946: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: headerbar action events preserve repeated identical clicks -04:17 +947: /home/albert/busystack/busymark/test/src/linux_header_bar_service_test.dart: native search events and focus request keep semantic meaning -04:17 +948: loading /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart -04:24 +948: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source pastes a web layout table as a complete document -04:25 +949: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (current) -04:25 +950: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a pending result (find next) -04:26 +951: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (current) -04:26 +952: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search replacement recovers after editing a missing result (find next) -04:26 +953: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3 matches -04:27 +954: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Replace current follows selected result with 3000 matches -04:28 +955: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: search navigation retains a later window when unfolding -04:28 +956: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling review caret uses full offsets after an earlier fold -04:28 +957: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: spelling reveal unfolds and retains the word selection -04:28 +958: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Markdown spelling painter ignores selection and tracks composition -04:29 +959: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source Writerside Markdown spelling painter ignores selection and tracks composition -04:29 +960: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source XML spelling painter ignores selection and tracks composition -04:29 +961: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI action applies a selection through the editor path -04:29 +962: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu targets the pointer occurrence exactly -04:29 +963: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling language uses a checked native submenu without a dialog -04:29 +964: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source spelling menu converts folded offsets to full source -04:29 +965: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source AI applies a user-selected insertion target -04:29 +966: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor remains LTR inside an Arabic interface -04:29 +967: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor shows large-file fallback status -04:46 +968: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor renders visible diagnostic gutter tooltip -04:46 +969: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search localizes an invalid regular expression -04:46 +970: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source search reports no current match before navigation -04:46 +971: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source fold and search options use semantic icon buttons -04:46 +972: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace All is one editor operation -04:47 +973: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source Replace and Find Next selects the logical next match -04:47 +974: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: shifted folded regions are persisted after edit debounce -04:47 +975: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source sessions ignore render notifications and coalesce scrolling -04:47 +976: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source editor gives glyphs, caret, and selection breathing room -04:47 +977: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading selections cover styled glyphs evenly -04:47 +978: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source heading caret advances after a typed space -04:47 +979: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source caret follows an immediate end-of-file contraction -04:47 +980: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Tab indents selected Source lines without replacing text -04:47 +981: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source symbol shortcuts dispatch the full source caret -04:47 +982: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Ctrl+Space opens project-aware source completion -04:47 +983: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: wordWrap false uses one horizontally scrollable layout -04:47 +984: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source input preserves an active IME composing range -04:48 +985: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Enter to the input method -04:48 +986: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers Tab to the input method -04:48 +987: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers autocomplete Escape to the input method -04:48 +988: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: active IME composition defers the autocomplete shortcut -04:48 +989: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: focused Source accepts authoritative parent text updates -04:48 +990: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source keyboard copy retains exact whitespace once -04:48 +991: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source normal HTML paste converts while plain paste uses text -04:48 +992: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source CRLF structured paste is one exact undo transaction -04:48 +993: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source plain paste keeps LF bytes in a CRLF document -04:48 +994: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste keeps surrounding text inline -04:48 +995: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured block paste adds Markdown boundaries -04:48 +996: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks keep boundaries at every position - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#f8e32(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#db76f, undoController: UndoHistoryController#856b3(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#9cdcf(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b8835]], state: _TextFieldState#2963a), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#78d04 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#1ac4c@Offset(425.5, 300.0), RenderSemanticsAnnotations#b4833@Offset(425.5, 300.0), RenderPointerListener#2f545@Offset(425.5, 300.0), RenderSemanticsGestureHandler#4afd7@Offset(425.5, 300.0), RenderExcludeSemantics#64003@Offset(425.5, 300.0), RenderBlockSemantics#6f746@Offset(425.5, 300.0), RenderIgnorePointer#6fbb4@Offset(425.5, 300.0), RenderSemanticsAnnotations#e75a2@Offset(425.5, 300.0), _RenderTheater#10839@Offset(425.5, 300.0), RenderAbsorbPointer#a4a59@Offset(425.5, 300.0), RenderPointerListener#82490@Offset(425.5, 300.0), RenderSemanticsAnnotations#8cf87@Offset(425.5, 300.0), RenderCustomPaint#3bebf@Offset(425.5, 300.0), RenderSemanticsAnnotations#67e25@Offset(425.5, 300.0), RenderSemanticsAnnotations#ff792@Offset(425.5, 300.0), RenderSemanticsAnnotations#157e2@Offset(425.5, 300.0), RenderTapRegionSurface#4d0e2@Offset(425.5, 300.0), RenderSemanticsAnnotations#6df89@Offset(425.5, 300.0), RenderSemanticsAnnotations#93542@Offset(425.5, 300.0), HitTestEntry#813a1(_ReusableRenderView#6a9e0), HitTestEntry#81110()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2597:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:48 +997: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete heading list and code blocks retain structure at every paragraph position - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#11591(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#0e89f, undoController: UndoHistoryController#c5b74(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#c5f60(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#92287]], state: _TextFieldState#4329e), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#f4d04 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#d82a3@Offset(425.5, 300.0), RenderSemanticsAnnotations#5f29f@Offset(425.5, 300.0), RenderPointerListener#04c89@Offset(425.5, 300.0), RenderSemanticsGestureHandler#56ae0@Offset(425.5, 300.0), RenderExcludeSemantics#01352@Offset(425.5, 300.0), RenderBlockSemantics#c5144@Offset(425.5, 300.0), RenderIgnorePointer#56da8@Offset(425.5, 300.0), RenderSemanticsAnnotations#4b8b5@Offset(425.5, 300.0), _RenderTheater#24245@Offset(425.5, 300.0), RenderAbsorbPointer#aae85@Offset(425.5, 300.0), RenderPointerListener#a7453@Offset(425.5, 300.0), RenderSemanticsAnnotations#c66e2@Offset(425.5, 300.0), RenderCustomPaint#01fc8@Offset(425.5, 300.0), RenderSemanticsAnnotations#fbbd6@Offset(425.5, 300.0), RenderSemanticsAnnotations#dcce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#e3ffd@Offset(425.5, 300.0), RenderTapRegionSurface#28afb@Offset(425.5, 300.0), RenderSemanticsAnnotations#7d010@Offset(425.5, 300.0), RenderSemanticsAnnotations#ded4a@Offset(425.5, 300.0), HitTestEntry#00f1d(_ReusableRenderView#6a9e0), HitTestEntry#b914d()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#11591(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#0e89f, undoController: UndoHistoryController#c5b74(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#c5f60(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#92287]], state: _TextFieldState#4329e), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#f4d04 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#00bac@Offset(425.5, 300.0), RenderSemanticsAnnotations#221c5@Offset(425.5, 300.0), RenderPointerListener#49748@Offset(425.5, 300.0), RenderSemanticsGestureHandler#986dc@Offset(425.5, 300.0), RenderExcludeSemantics#d4518@Offset(425.5, 300.0), RenderBlockSemantics#3ef22@Offset(425.5, 300.0), RenderIgnorePointer#ed5f4@Offset(425.5, 300.0), RenderSemanticsAnnotations#7268a@Offset(425.5, 300.0), _RenderTheater#24245@Offset(425.5, 300.0), RenderAbsorbPointer#aae85@Offset(425.5, 300.0), RenderPointerListener#a7453@Offset(425.5, 300.0), RenderSemanticsAnnotations#c66e2@Offset(425.5, 300.0), RenderCustomPaint#01fc8@Offset(425.5, 300.0), RenderSemanticsAnnotations#fbbd6@Offset(425.5, 300.0), RenderSemanticsAnnotations#dcce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#e3ffd@Offset(425.5, 300.0), RenderTapRegionSurface#28afb@Offset(425.5, 300.0), RenderSemanticsAnnotations#7d010@Offset(425.5, 300.0), RenderSemanticsAnnotations#ded4a@Offset(425.5, 300.0), HitTestEntry#bff2d(_ReusableRenderView#6a9e0), HitTestEntry#82ae4()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#11591(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 9, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#0e89f, undoController: UndoHistoryController#c5b74(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#c5f60(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#92287]], state: _TextFieldState#4329e), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#f4d04 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#6ef1d@Offset(425.5, 300.0), RenderSemanticsAnnotations#6e975@Offset(425.5, 300.0), RenderPointerListener#ff6d8@Offset(425.5, 300.0), RenderSemanticsGestureHandler#e85af@Offset(425.5, 300.0), RenderExcludeSemantics#75288@Offset(425.5, 300.0), RenderBlockSemantics#884da@Offset(425.5, 300.0), RenderIgnorePointer#5585b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f9f0b@Offset(425.5, 300.0), _RenderTheater#24245@Offset(425.5, 300.0), RenderAbsorbPointer#aae85@Offset(425.5, 300.0), RenderPointerListener#a7453@Offset(425.5, 300.0), RenderSemanticsAnnotations#c66e2@Offset(425.5, 300.0), RenderCustomPaint#01fc8@Offset(425.5, 300.0), RenderSemanticsAnnotations#fbbd6@Offset(425.5, 300.0), RenderSemanticsAnnotations#dcce0@Offset(425.5, 300.0), RenderSemanticsAnnotations#e3ffd@Offset(425.5, 300.0), RenderTapRegionSurface#28afb@Offset(425.5, 300.0), RenderSemanticsAnnotations#7d010@Offset(425.5, 300.0), RenderSemanticsAnnotations#ded4a@Offset(425.5, 300.0), HitTestEntry#78411(_ReusableRenderView#6a9e0), HitTestEntry#96484()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2633:30) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:49 +998: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete-block split preserves styles caret and one-step Undo -04:49 +999: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source boundary-crossing replacements restore text selection and caret -04:49 +1000: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich inline paste composes with enclosing inline syntax - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#9e490(TextEditingValue(text: ┤[leftright](https://example.test)├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#5f08f, undoController: UndoHistoryController#64749(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5f066(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#d1479]], state: _TextFieldState#714e1), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#7ce28 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#eb347@Offset(425.5, 300.0), RenderSemanticsAnnotations#d6da1@Offset(425.5, 300.0), RenderPointerListener#e2579@Offset(425.5, 300.0), RenderSemanticsGestureHandler#13d65@Offset(425.5, 300.0), RenderExcludeSemantics#2e52f@Offset(425.5, 300.0), RenderBlockSemantics#d672d@Offset(425.5, 300.0), RenderIgnorePointer#fa0a7@Offset(425.5, 300.0), RenderSemanticsAnnotations#a5b88@Offset(425.5, 300.0), _RenderTheater#331b1@Offset(425.5, 300.0), RenderAbsorbPointer#c6bfd@Offset(425.5, 300.0), RenderPointerListener#9e8b4@Offset(425.5, 300.0), RenderSemanticsAnnotations#b90f2@Offset(425.5, 300.0), RenderCustomPaint#b5368@Offset(425.5, 300.0), RenderSemanticsAnnotations#d4cfd@Offset(425.5, 300.0), RenderSemanticsAnnotations#1d500@Offset(425.5, 300.0), RenderSemanticsAnnotations#a4eb2@Offset(425.5, 300.0), RenderTapRegionSurface#3ca4f@Offset(425.5, 300.0), RenderSemanticsAnnotations#5481b@Offset(425.5, 300.0), RenderSemanticsAnnotations#daf5a@Offset(425.5, 300.0), HitTestEntry#b5822(_ReusableRenderView#6a9e0), HitTestEntry#e589b()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2945:28) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:2999:22) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:49 +1001: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline reconciliation ignores separate destination runs -04:49 +1002: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source adjacent-style reconciliation preserves literal code delimiters -04:49 +1003: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation preserves a partially consumed delimiter -04:49 +1004: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table inline reconciliation is confined to the selected cell -04:49 +1005: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table keeps multiple independent incoming style runs -04:49 +1006: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source does not treat multiple incoming bold runs as one wrapper -04:49 +1007: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences with paragraph context -04:49 +1008: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciles arbitrary inline sequences inside table cells -04:49 +1009: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table sequence reconciliation retains authored delimiters -04:49 +1010: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table reconciliation retains mixed nested styles -04:49 +1011: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves hyperlink semantics in table cells -04:50 +1012: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline mapping handles links multiline styles and literal syntax -04:50 +1013: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret mapping preserves literal bang before a following link -04:50 +1014: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits resolved reference links without changing definitions -04:50 +1015: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source splits multiline blockquote links without exposing prefixes -04:50 +1016: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source preserves occurrence-specific hard-break provenance -04:50 +1017: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source caret remains between pasted and retained hard breaks -04:50 +1018: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste after an HTML break does not retain its layout newline -04:50 +1019: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste preserves enclosing inline HTML as one run -04:51 +1020: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source system and history rich paste map normalized HTML whitespace -04:51 +1021: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source syntax-only availability agrees with textual fallback execution -04:51 +1022: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source terminal structured failure blocks availability and text fallback -04:51 +1023: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source rich paste remaps generated grouped hard breaks -04:51 +1024: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source remaps reopened grouped breaks in a CRLF container -04:51 +1025: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps nested and reference links through container prefixes -04:51 +1026: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves autolink destination semantics -04:51 +1027: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: invalid email-like text does not invalidate another link target -04:51 +1028: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste distinguishes authored and generated URL content -04:51 +1029: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves parser-folded reference identity -04:52 +1030: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source same-destination paste preserves parser-folded reference identity -04:52 +1031: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste retains the provenance of surviving line breaks -04:52 +1032: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste keeps label break provenance independent of link titles -04:52 +1033: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: normalized code-span breaks do not shift surviving link provenance -04:52 +1034: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste combines folded references with surviving break provenance -04:52 +1035: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste tracks old and new breaks independently -04:52 +1036: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reference-link label replacement retains definitions -04:52 +1037: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps escaped brackets in collapsed and shortcut references -04:52 +1038: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links around unmatched and code-span backticks -04:52 +1039: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps links with escaped and balanced label brackets -04:53 +1040: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline wrapper mapping stays bounded for paste and availability -04:53 +1041: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps all retained break offsets in one serialization traversal -04:54 +1042: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source AST boundary mapping stays linear for availability and paste -04:54 +1043: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table paste preserves multiline link titles -04:54 +1044: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table boundary paste preserves styles caret and one-step history -04:54 +1045: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured inline paste handles every line boundary -04:54 +1046: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source inline paste preserves unrelated syntax whitespace and caret - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#9f5b8(TextEditingValue(text: ┤__leftright__├, selection: TextSelection.collapsed(offset: 10, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#7033e, undoController: UndoHistoryController#6a90a(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#86aa5(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#09908]], state: _TextFieldState#2765b), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#58aa2 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#54e4d@Offset(425.5, 300.0), RenderSemanticsAnnotations#b6159@Offset(425.5, 300.0), RenderPointerListener#8bde1@Offset(425.5, 300.0), RenderSemanticsGestureHandler#afa04@Offset(425.5, 300.0), RenderExcludeSemantics#ca62d@Offset(425.5, 300.0), RenderBlockSemantics#abba9@Offset(425.5, 300.0), RenderIgnorePointer#6c035@Offset(425.5, 300.0), RenderSemanticsAnnotations#3d5f3@Offset(425.5, 300.0), _RenderTheater#43546@Offset(425.5, 300.0), RenderAbsorbPointer#f63fc@Offset(425.5, 300.0), RenderPointerListener#05aa2@Offset(425.5, 300.0), RenderSemanticsAnnotations#b3898@Offset(425.5, 300.0), RenderCustomPaint#50a06@Offset(425.5, 300.0), RenderSemanticsAnnotations#ba7ce@Offset(425.5, 300.0), RenderSemanticsAnnotations#3249f@Offset(425.5, 300.0), RenderSemanticsAnnotations#71118@Offset(425.5, 300.0), RenderTapRegionSurface#caff5@Offset(425.5, 300.0), RenderSemanticsAnnotations#a257a@Offset(425.5, 300.0), RenderSemanticsAnnotations#e9f73@Offset(425.5, 300.0), HitTestEntry#59e7c(_ReusableRenderView#6a9e0), HitTestEntry#d0056()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..paste (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6908:28) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:6936:20) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:55 +1047: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source table cells reconcile surrounding inline styles -04:55 +1048: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source reconciliation reuses table-normalized inline content -04:55 +1049: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source whole-block replacement differs from surviving table and code contexts - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#25832(TextEditingValue(text: ┤```text - old - ``` - ├, selection: TextSelection.collapsed(offset: 16, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#06dc4, undoController: UndoHistoryController#82a7f(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#b95f9(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#6b1c1]], state: _TextFieldState#8e790), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#43f8e -The hit test result at that offset is: HitTestResult(RenderMouseRegion#aeadf@Offset(425.5, 300.0), RenderSemanticsAnnotations#6b21f@Offset(425.5, 300.0), RenderPointerListener#229cf@Offset(425.5, 300.0), RenderSemanticsGestureHandler#997a5@Offset(425.5, 300.0), RenderExcludeSemantics#2363b@Offset(425.5, 300.0), RenderBlockSemantics#fd1c5@Offset(425.5, 300.0), RenderIgnorePointer#70c35@Offset(425.5, 300.0), RenderSemanticsAnnotations#4252a@Offset(425.5, 300.0), _RenderTheater#5baae@Offset(425.5, 300.0), RenderAbsorbPointer#8a268@Offset(425.5, 300.0), RenderPointerListener#2ff9e@Offset(425.5, 300.0), RenderSemanticsAnnotations#27add@Offset(425.5, 300.0), RenderCustomPaint#bcdc6@Offset(425.5, 300.0), RenderSemanticsAnnotations#99f86@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1d95@Offset(425.5, 300.0), RenderSemanticsAnnotations#7df99@Offset(425.5, 300.0), RenderTapRegionSurface#bb5e1@Offset(425.5, 300.0), RenderSemanticsAnnotations#72261@Offset(425.5, 300.0), RenderSemanticsAnnotations#e553b@Offset(425.5, 300.0), HitTestEntry#be724(_ReusableRenderView#6a9e0), HitTestEntry#c1baa()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7158:25) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:55 +1050: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paragraph markers escape only at block starts - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#45602(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#841fc, undoController: UndoHistoryController#153c5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5ba12(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b6f39]], state: _TextFieldState#e248f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#27ce7 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#62ed7@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb2bb@Offset(425.5, 300.0), RenderPointerListener#b59d1@Offset(425.5, 300.0), RenderSemanticsGestureHandler#7d5bc@Offset(425.5, 300.0), RenderExcludeSemantics#d59da@Offset(425.5, 300.0), RenderBlockSemantics#f4a36@Offset(425.5, 300.0), RenderIgnorePointer#64eed@Offset(425.5, 300.0), RenderSemanticsAnnotations#2b4ba@Offset(425.5, 300.0), _RenderTheater#47274@Offset(425.5, 300.0), RenderAbsorbPointer#290a9@Offset(425.5, 300.0), RenderPointerListener#367ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8925@Offset(425.5, 300.0), RenderCustomPaint#2d11b@Offset(425.5, 300.0), RenderSemanticsAnnotations#03519@Offset(425.5, 300.0), RenderSemanticsAnnotations#2bc7b@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f0af@Offset(425.5, 300.0), RenderTapRegionSurface#6596d@Offset(425.5, 300.0), RenderSemanticsAnnotations#c856a@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bbd7@Offset(425.5, 300.0), HitTestEntry#44e9d(_ReusableRenderView#6a9e0), HitTestEntry#49a95()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#45602(TextEditingValue(text: ┤├, selection: TextSelection.collapsed(offset: 0, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#841fc, undoController: UndoHistoryController#153c5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5ba12(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b6f39]], state: _TextFieldState#e248f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#27ce7 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#44999@Offset(425.5, 300.0), RenderSemanticsAnnotations#8814e@Offset(425.5, 300.0), RenderPointerListener#ce0e6@Offset(425.5, 300.0), RenderSemanticsGestureHandler#97712@Offset(425.5, 300.0), RenderExcludeSemantics#37751@Offset(425.5, 300.0), RenderBlockSemantics#f6871@Offset(425.5, 300.0), RenderIgnorePointer#dcb8a@Offset(425.5, 300.0), RenderSemanticsAnnotations#bce72@Offset(425.5, 300.0), _RenderTheater#47274@Offset(425.5, 300.0), RenderAbsorbPointer#290a9@Offset(425.5, 300.0), RenderPointerListener#367ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8925@Offset(425.5, 300.0), RenderCustomPaint#2d11b@Offset(425.5, 300.0), RenderSemanticsAnnotations#03519@Offset(425.5, 300.0), RenderSemanticsAnnotations#2bc7b@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f0af@Offset(425.5, 300.0), RenderTapRegionSurface#6596d@Offset(425.5, 300.0), RenderSemanticsAnnotations#c856a@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bbd7@Offset(425.5, 300.0), HitTestEntry#2777a(_ReusableRenderView#6a9e0), HitTestEntry#63e7f()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7226:23) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#45602(TextEditingValue(text: ┤leftright├, selection: TextSelection.collapsed(offset: 8, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#841fc, undoController: UndoHistoryController#153c5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5ba12(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b6f39]], state: _TextFieldState#e248f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#27ce7 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#991a4@Offset(425.5, 300.0), RenderSemanticsAnnotations#be2c9@Offset(425.5, 300.0), RenderPointerListener#29e97@Offset(425.5, 300.0), RenderSemanticsGestureHandler#83f3d@Offset(425.5, 300.0), RenderExcludeSemantics#5d404@Offset(425.5, 300.0), RenderBlockSemantics#ba597@Offset(425.5, 300.0), RenderIgnorePointer#08172@Offset(425.5, 300.0), RenderSemanticsAnnotations#1a7c3@Offset(425.5, 300.0), _RenderTheater#47274@Offset(425.5, 300.0), RenderAbsorbPointer#290a9@Offset(425.5, 300.0), RenderPointerListener#367ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8925@Offset(425.5, 300.0), RenderCustomPaint#2d11b@Offset(425.5, 300.0), RenderSemanticsAnnotations#03519@Offset(425.5, 300.0), RenderSemanticsAnnotations#2bc7b@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f0af@Offset(425.5, 300.0), RenderTapRegionSurface#6596d@Offset(425.5, 300.0), RenderSemanticsAnnotations#c856a@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bbd7@Offset(425.5, 300.0), HitTestEntry#209bf(_ReusableRenderView#6a9e0), HitTestEntry#9959f()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7247:24) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#45602(TextEditingValue(text: ┤- right├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#841fc, undoController: UndoHistoryController#153c5(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#5ba12(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#b6f39]], state: _TextFieldState#e248f), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#27ce7 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#5ac40@Offset(425.5, 300.0), RenderSemanticsAnnotations#bfa85@Offset(425.5, 300.0), RenderPointerListener#b8985@Offset(425.5, 300.0), RenderSemanticsGestureHandler#6a01f@Offset(425.5, 300.0), RenderExcludeSemantics#d9660@Offset(425.5, 300.0), RenderBlockSemantics#2f1b5@Offset(425.5, 300.0), RenderIgnorePointer#0f7b8@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8848@Offset(425.5, 300.0), _RenderTheater#47274@Offset(425.5, 300.0), RenderAbsorbPointer#290a9@Offset(425.5, 300.0), RenderPointerListener#367ff@Offset(425.5, 300.0), RenderSemanticsAnnotations#a8925@Offset(425.5, 300.0), RenderCustomPaint#2d11b@Offset(425.5, 300.0), RenderSemanticsAnnotations#03519@Offset(425.5, 300.0), RenderSemanticsAnnotations#2bc7b@Offset(425.5, 300.0), RenderSemanticsAnnotations#4f0af@Offset(425.5, 300.0), RenderTapRegionSurface#6596d@Offset(425.5, 300.0), RenderSemanticsAnnotations#c856a@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bbd7@Offset(425.5, 300.0), HitTestEntry#ffb6f(_ReusableRenderView#6a9e0), HitTestEntry#5e430()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7277:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:55 +1051: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native inline paste preserves edge and only whitespace - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#808bc(TextEditingValue(text: ┤leftDELETEright├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#9291b, undoController: UndoHistoryController#1b521(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#aa955(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#1a720]], state: _TextFieldState#92e34), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#16ef3 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#3f494@Offset(425.5, 300.0), RenderSemanticsAnnotations#57276@Offset(425.5, 300.0), RenderPointerListener#13a41@Offset(425.5, 300.0), RenderSemanticsGestureHandler#41694@Offset(425.5, 300.0), RenderExcludeSemantics#ec69a@Offset(425.5, 300.0), RenderBlockSemantics#5b278@Offset(425.5, 300.0), RenderIgnorePointer#4187c@Offset(425.5, 300.0), RenderSemanticsAnnotations#adcb7@Offset(425.5, 300.0), _RenderTheater#d9318@Offset(425.5, 300.0), RenderAbsorbPointer#229f1@Offset(425.5, 300.0), RenderPointerListener#a97fb@Offset(425.5, 300.0), RenderSemanticsAnnotations#90a22@Offset(425.5, 300.0), RenderCustomPaint#9cf53@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb70f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ca400@Offset(425.5, 300.0), RenderSemanticsAnnotations#b2e7e@Offset(425.5, 300.0), RenderTapRegionSurface#bd4b8@Offset(425.5, 300.0), RenderSemanticsAnnotations#c30bf@Offset(425.5, 300.0), RenderSemanticsAnnotations#9a3d3@Offset(425.5, 300.0), HitTestEntry#94eda(_ReusableRenderView#6a9e0), HitTestEntry#bb017()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7379:24) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:55 +1052: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source native rich edge whitespace repeats and restores real Undo state -04:55 +1053: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured paste respects table-cell semantics -04:55 +1054: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source maps a final table cell ending in an escaped pipe -04:55 +1055: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source structured blocks preserve list and quote containers -04:55 +1056: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks remain in containers at every content boundary - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#ae53e(TextEditingValue(text: ┤> item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#714c1 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#53c95@Offset(425.5, 300.0), RenderSemanticsAnnotations#cb415@Offset(425.5, 300.0), RenderPointerListener#0210f@Offset(425.5, 300.0), RenderSemanticsGestureHandler#87e37@Offset(425.5, 300.0), RenderExcludeSemantics#49d60@Offset(425.5, 300.0), RenderBlockSemantics#52aab@Offset(425.5, 300.0), RenderIgnorePointer#4e6ae@Offset(425.5, 300.0), RenderSemanticsAnnotations#79db2@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#f1c90(_ReusableRenderView#6a9e0), HitTestEntry#8d723()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#ae53e(TextEditingValue(text: ┤> item - ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#714c1 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#0d5ad@Offset(425.5, 300.0), RenderSemanticsAnnotations#02c50@Offset(425.5, 300.0), RenderPointerListener#3f5e2@Offset(425.5, 300.0), RenderSemanticsGestureHandler#fa0b6@Offset(425.5, 300.0), RenderExcludeSemantics#31ad0@Offset(425.5, 300.0), RenderBlockSemantics#d5dd0@Offset(425.5, 300.0), RenderIgnorePointer#f6fb2@Offset(425.5, 300.0), RenderSemanticsAnnotations#89481@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#725f8(_ReusableRenderView#6a9e0), HitTestEntry#6d951()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#ae53e(TextEditingValue(text: ┤- item├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#714c1 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#0354e@Offset(425.5, 300.0), RenderSemanticsAnnotations#e32a0@Offset(425.5, 300.0), RenderPointerListener#2c7ee@Offset(425.5, 300.0), RenderSemanticsGestureHandler#dd244@Offset(425.5, 300.0), RenderExcludeSemantics#c39f0@Offset(425.5, 300.0), RenderBlockSemantics#59b20@Offset(425.5, 300.0), RenderIgnorePointer#3405f@Offset(425.5, 300.0), RenderSemanticsAnnotations#86ed2@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#1851d(_ReusableRenderView#6a9e0), HitTestEntry#a0b81()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#ae53e(TextEditingValue(text: ┤- item - ├, selection: TextSelection.collapsed(offset: 7, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#714c1 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#bfbe6@Offset(425.5, 300.0), RenderSemanticsAnnotations#754cd@Offset(425.5, 300.0), RenderPointerListener#b4961@Offset(425.5, 300.0), RenderSemanticsGestureHandler#500fb@Offset(425.5, 300.0), RenderExcludeSemantics#b310c@Offset(425.5, 300.0), RenderBlockSemantics#f4693@Offset(425.5, 300.0), RenderIgnorePointer#b4baa@Offset(425.5, 300.0), RenderSemanticsAnnotations#2eae4@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#621a2(_ReusableRenderView#6a9e0), HitTestEntry#d19b2()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#ae53e(TextEditingValue(text: ┤> 3. item├, selection: TextSelection.collapsed(offset: 11, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#22b66, undoController: UndoHistoryController#eebe8(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#db4bc(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#c3e06]], state: _TextFieldState#c74cf), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#714c1 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#9fe49@Offset(425.5, 300.0), RenderSemanticsAnnotations#33ba6@Offset(425.5, 300.0), RenderPointerListener#b12b3@Offset(425.5, 300.0), RenderSemanticsGestureHandler#7c610@Offset(425.5, 300.0), RenderExcludeSemantics#f8ac0@Offset(425.5, 300.0), RenderBlockSemantics#ccd76@Offset(425.5, 300.0), RenderIgnorePointer#54f21@Offset(425.5, 300.0), RenderSemanticsAnnotations#8c036@Offset(425.5, 300.0), _RenderTheater#c1c8f@Offset(425.5, 300.0), RenderAbsorbPointer#d6764@Offset(425.5, 300.0), RenderPointerListener#9e888@Offset(425.5, 300.0), RenderSemanticsAnnotations#a7fe3@Offset(425.5, 300.0), RenderCustomPaint#9a539@Offset(425.5, 300.0), RenderSemanticsAnnotations#0cea0@Offset(425.5, 300.0), RenderSemanticsAnnotations#03b63@Offset(425.5, 300.0), RenderSemanticsAnnotations#fb158@Offset(425.5, 300.0), RenderTapRegionSurface#d3aeb@Offset(425.5, 300.0), RenderSemanticsAnnotations#4234b@Offset(425.5, 300.0), RenderSemanticsAnnotations#96a05@Offset(425.5, 300.0), HitTestEntry#55ca0(_ReusableRenderView#6a9e0), HitTestEntry#d8f89()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7808:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:56 +1057: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks retain continuation-line ancestors - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#8d430(TextEditingValue(text: ┤- first - leftright - ├, selection: TextSelection.collapsed(offset: 20, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#69bfa, undoController: UndoHistoryController#c1bd4(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#dc51b(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#edecb]], state: _TextFieldState#1c4ba), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#08f15 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#e8e0a@Offset(425.5, 300.0), RenderSemanticsAnnotations#aa85f@Offset(425.5, 300.0), RenderPointerListener#2fd49@Offset(425.5, 300.0), RenderSemanticsGestureHandler#18844@Offset(425.5, 300.0), RenderExcludeSemantics#890af@Offset(425.5, 300.0), RenderBlockSemantics#ccca4@Offset(425.5, 300.0), RenderIgnorePointer#f704f@Offset(425.5, 300.0), RenderSemanticsAnnotations#efd95@Offset(425.5, 300.0), _RenderTheater#a6282@Offset(425.5, 300.0), RenderAbsorbPointer#fff48@Offset(425.5, 300.0), RenderPointerListener#bd9f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bdc1@Offset(425.5, 300.0), RenderCustomPaint#04240@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f5d3c@Offset(425.5, 300.0), RenderSemanticsAnnotations#dff2e@Offset(425.5, 300.0), RenderTapRegionSurface#20e97@Offset(425.5, 300.0), RenderSemanticsAnnotations#47a4b@Offset(425.5, 300.0), RenderSemanticsAnnotations#2e2dc@Offset(425.5, 300.0), HitTestEntry#59a97(_ReusableRenderView#6a9e0), HitTestEntry#edaeb()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#8d430(TextEditingValue(text: ┤- first - - leftright - ├, selection: TextSelection.collapsed(offset: 21, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#69bfa, undoController: UndoHistoryController#c1bd4(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#dc51b(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#edecb]], state: _TextFieldState#1c4ba), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#08f15 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#53eb2@Offset(425.5, 300.0), RenderSemanticsAnnotations#a61ce@Offset(425.5, 300.0), RenderPointerListener#adf55@Offset(425.5, 300.0), RenderSemanticsGestureHandler#26314@Offset(425.5, 300.0), RenderExcludeSemantics#87038@Offset(425.5, 300.0), RenderBlockSemantics#849ef@Offset(425.5, 300.0), RenderIgnorePointer#e045f@Offset(425.5, 300.0), RenderSemanticsAnnotations#ee06c@Offset(425.5, 300.0), _RenderTheater#a6282@Offset(425.5, 300.0), RenderAbsorbPointer#fff48@Offset(425.5, 300.0), RenderPointerListener#bd9f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bdc1@Offset(425.5, 300.0), RenderCustomPaint#04240@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f5d3c@Offset(425.5, 300.0), RenderSemanticsAnnotations#dff2e@Offset(425.5, 300.0), RenderTapRegionSurface#20e97@Offset(425.5, 300.0), RenderSemanticsAnnotations#47a4b@Offset(425.5, 300.0), RenderSemanticsAnnotations#2e2dc@Offset(425.5, 300.0), HitTestEntry#0d93a(_ReusableRenderView#6a9e0), HitTestEntry#c7941()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: - BusyMarkSourceController#8d430(TextEditingValue(text: ┤> first - leftright - ├, selection: TextSelection.collapsed(offset: 18, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))) - , focusNode: FocusNode#69bfa, undoController: UndoHistoryController#c1bd4(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#dc51b(one client, offset 0.0), dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#edecb]], state: _TextFieldState#1c4ba), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#08f15 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#9ce3e@Offset(425.5, 300.0), RenderSemanticsAnnotations#a1f11@Offset(425.5, 300.0), RenderPointerListener#09be1@Offset(425.5, 300.0), RenderSemanticsGestureHandler#293dc@Offset(425.5, 300.0), RenderExcludeSemantics#94463@Offset(425.5, 300.0), RenderBlockSemantics#673be@Offset(425.5, 300.0), RenderIgnorePointer#5c0b4@Offset(425.5, 300.0), RenderSemanticsAnnotations#34ab8@Offset(425.5, 300.0), _RenderTheater#a6282@Offset(425.5, 300.0), RenderAbsorbPointer#fff48@Offset(425.5, 300.0), RenderPointerListener#bd9f2@Offset(425.5, 300.0), RenderSemanticsAnnotations#0bdc1@Offset(425.5, 300.0), RenderCustomPaint#04240@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e13b@Offset(425.5, 300.0), RenderSemanticsAnnotations#f5d3c@Offset(425.5, 300.0), RenderSemanticsAnnotations#dff2e@Offset(425.5, 300.0), RenderTapRegionSurface#20e97@Offset(425.5, 300.0), RenderSemanticsAnnotations#47a4b@Offset(425.5, 300.0), RenderSemanticsAnnotations#2e2dc@Offset(425.5, 300.0), HitTestEntry#0bf80(_ReusableRenderView#6a9e0), HitTestEntry#1563e()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:7849:28) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:56 +1058: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source container recovery is bound to the actual nested ancestors -04:56 +1059: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source complete blocks use list markers rather than task prefixes -04:56 +1060: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source task items keep block kinds at every content position -04:56 +1061: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source checked ordered nested and zero lists retain inserted block kinds -04:56 +1062: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source composes mixed and continuation container ancestors -04:57 +1063: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source protected contexts use the safe source fallback -04:57 +1064: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Writerside Source preserves a structured procedure block -04:57 +1065: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source delayed paste rejects a changed selection -04:57 +1066: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source paste preserves composition before and during a read -04:57 +1067: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source failed cut keeps text and does not record history -04:58 +1068: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: source delayed cut revalidates selection before deletion -04:58 +1069: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: history insertion follows the latest Source selection -04:58 +1070: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history rebases retained media into Source -04:58 +1071: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: structured history restores a local video into Source -04:58 +1072: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: standalone image history ingests and inserts one undoable Source edit -04:58 +1073: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: Source local image path retains imported bytes once - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#daf5b(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#65fd2, undoController: UndoHistoryController#90494(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#a712f(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#5e108]], state: _TextFieldState#0e265), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#f04c7 -The hit test result at that offset is: HitTestResult(RenderMouseRegion#aedd1@Offset(425.5, 300.0), RenderSemanticsAnnotations#283c4@Offset(425.5, 300.0), RenderPointerListener#63026@Offset(425.5, 300.0), RenderSemanticsGestureHandler#00edf@Offset(425.5, 300.0), RenderExcludeSemantics#5aa3d@Offset(425.5, 300.0), RenderBlockSemantics#fb071@Offset(425.5, 300.0), RenderIgnorePointer#49ca5@Offset(425.5, 300.0), RenderSemanticsAnnotations#0e19b@Offset(425.5, 300.0), _RenderTheater#abcde@Offset(425.5, 300.0), RenderAbsorbPointer#99499@Offset(425.5, 300.0), RenderPointerListener#b0d47@Offset(425.5, 300.0), RenderSemanticsAnnotations#3e991@Offset(425.5, 300.0), RenderCustomPaint#028b0@Offset(425.5, 300.0), RenderSemanticsAnnotations#08165@Offset(425.5, 300.0), RenderSemanticsAnnotations#f0d71@Offset(425.5, 300.0), RenderSemanticsAnnotations#96867@Offset(425.5, 300.0), RenderTapRegionSurface#4a77d@Offset(425.5, 300.0), RenderSemanticsAnnotations#307a0@Offset(425.5, 300.0), RenderSemanticsAnnotations#307e7@Offset(425.5, 300.0), HitTestEntry#52678(_ReusableRenderView#6a9e0), HitTestEntry#e98d4()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main..expectNormalReplay (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8934:7) - -#5 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:8956:5) - -#6 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#7 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#8 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -04:59 +1074: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: unsafe local image candidates paste their original text - -Warning: A call to tap() with finder "Found 1 widget with type "TextField": [ - TextField(controller: BusyMarkSourceController#5ae3c(TextEditingValue(text: ┤Target├, selection: TextSelection.collapsed(offset: 6, affinity: TextAffinity.downstream, isDirectional: false), composing: TextRange(start: -1, end: -1))), focusNode: FocusNode#13907, undoController: UndoHistoryController#acaf1(UndoHistoryValue(canUndo: false, canRedo: false)), decoration: InputDecoration(contentPadding: EdgeInsets(12.0, 16.0, 16.0, 16.0), isCollapsed: true, fillColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), hoverColor: Color(alpha: 0.0000, red: 0.0000, green: 0.0000, blue: 0.0000, colorSpace: ColorSpace.sRGB), focusedBorder: _NoInputBorder(), enabledBorder: _NoInputBorder(), border: _NoInputBorder()), keyboardType: TextInputType(name: TextInputType.multiline, signed: null, decimal: null), style: TextStyle(inherit: true, family: Ubuntu Mono, familyFallback: [Noto Sans Arabic, Noto Sans Mono, DejaVu Sans Mono, DejaVu Sans], size: 14.0, height: 1.6x, leadingDistribution: even), autocorrect: false, smartDashesType: disabled, smartQuotesType: disabled, enableSuggestions: false, maxLines: null, expands: true, textAlignVertical: TextAlignVertical(y: -1.0), textDirection: ltr, cursorWidth: 1.4, cursorHeight: 18.8, cursorColor: Color(alpha: 0.8200, red: 0.9686, green: 0.9686, blue: 0.9686, colorSpace: ColorSpace.sRGB), scrollController: ScrollController#caea0(one client, offset 0.0), dirty, dependencies: [DefaultSelectionStyle, InheritedCupertinoTheme, MediaQuery, UnmanagedRestorationScope, _InheritedTheme, _LocalizationsScope-[GlobalKey#63c4b]], state: _TextFieldState#d2e6a), -]" derived an Offset (Offset(425.5, 300.0)) that would not hit test on the specified widget. -Maybe the widget is actually off-screen, or another widget is obscuring it, or the widget cannot receive pointer events. -The finder corresponds to this RenderBox: RenderMouseRegion#0123b -The hit test result at that offset is: HitTestResult(RenderMouseRegion#e9bbd@Offset(425.5, 300.0), RenderSemanticsAnnotations#531be@Offset(425.5, 300.0), RenderPointerListener#8fb5a@Offset(425.5, 300.0), RenderSemanticsGestureHandler#d6d5e@Offset(425.5, 300.0), RenderExcludeSemantics#e97e0@Offset(425.5, 300.0), RenderBlockSemantics#125d4@Offset(425.5, 300.0), RenderIgnorePointer#cd358@Offset(425.5, 300.0), RenderSemanticsAnnotations#42952@Offset(425.5, 300.0), _RenderTheater#ead95@Offset(425.5, 300.0), RenderAbsorbPointer#18aac@Offset(425.5, 300.0), RenderPointerListener#9ac86@Offset(425.5, 300.0), RenderSemanticsAnnotations#71fe0@Offset(425.5, 300.0), RenderCustomPaint#5b1ca@Offset(425.5, 300.0), RenderSemanticsAnnotations#7785b@Offset(425.5, 300.0), RenderSemanticsAnnotations#7a6e9@Offset(425.5, 300.0), RenderSemanticsAnnotations#aa5b4@Offset(425.5, 300.0), RenderTapRegionSurface#63f56@Offset(425.5, 300.0), RenderSemanticsAnnotations#c2208@Offset(425.5, 300.0), RenderSemanticsAnnotations#2600d@Offset(425.5, 300.0), HitTestEntry#7668a(_ReusableRenderView#6a9e0), HitTestEntry#275b3()) -#0 WidgetController._getElementPoint (package:flutter_test/src/controller.dart:2165:25) -#1 WidgetController.getCenter (package:flutter_test/src/controller.dart:1947:12) -#2 WidgetController.tap (package:flutter_test/src/controller.dart:1080:7) -#3 _pumpClipboardSourceEditor (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9400:16) - -#4 main. (file:///home/albert/busystack/busymark/test/src/source_editor_widget_test.dart:9010:26) - -#5 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#6 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - -#7 StackZoneSpecification._registerCallback. (package:stack_trace/src/stack_zone_specification.dart:114:42) - -To silence this warning, pass "warnIfMissed: false" to "tap()". -To make this warning fatal, set WidgetController.hitTestWarningShouldBeFatal to true. - -05:00 +1075: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: image history asks to save an untitled Source document -05:00 +1076: /home/albert/busystack/busymark/test/src/source_editor_widget_test.dart: generic XML does not invent Writerside image syntax -05:00 +1077: loading /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart -05:01 +1077: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: reads the initial GTK animation setting -05:01 +1078: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: animation stream follows GTK setting changes -05:01 +1079: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: provider exposes the preloaded value before native events -05:01 +1080: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: missing GTK integration falls back without disabling motion -05:01 +1081: /home/albert/busystack/busymark/test/src/gtk_animation_settings_service_test.dart: native GTK bridge observes and tears down animation preference state -05:01 +1082: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart -05:04 +1082: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: exact discovery across refresh reconnect and restart cannot bind or mutate draft -05:05 +1083: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: sanitized discovery across refresh reconnect and restart cannot bind or mutate draft -05:05 +1084: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: multiple discovery across refresh reconnect and restart cannot bind or mutate draft -05:06 +1085: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: none discovery across refresh reconnect and restart cannot bind or mutate draft -05:06 +1086: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: empty discovery across refresh reconnect and restart cannot bind or mutate draft -05:06 +1087: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: other actor discovery across refresh reconnect and restart cannot bind or mutate draft -05:08 +1088: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects content candidate and retains unresolved work -05:08 +1089: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects readonly candidate and retains unresolved work -05:08 +1090: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects error candidate and retains unresolved work -05:08 +1091: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects deleted candidate and retains unresolved work -05:08 +1092: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation rejects unavailable candidate and retains unresolved work -05:08 +1093: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates local edit during authenticated GET -05:08 +1094: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates account removal during authenticated GET -05:08 +1095: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: confirmation revalidates repeat confirmation during authenticated GET -05:09 +1096: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with durable edit -05:09 +1097: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with pending attachment -05:09 +1098: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: binding protects downloaded candidate with open editor -05:09 +1099: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: failed adoption transaction rolls back binding and downloaded identity -05:09 +1100: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_creation_policy_test.dart: separate-note decision is durable and repeated confirmation makes one replacement -05:09 +1101: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart -05:10 +1101: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt -05:12 +1102: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption -05:12 +1103: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -05:12 +1104: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary -05:12 +1105: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment -05:12 +1106: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title -05:13 +1107: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category -05:13 +1108: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment -05:13 +1109: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart -05:13 +1110: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment -05:13 +1111: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment -05:14 +1112: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -05:14 +1113: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -05:14 +1114: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -05:14 +1115: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -05:14 +1116: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit -05:14 +1117: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit -05:14 +1118: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -05:14 +1119: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice -05:15 +1120: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note -05:15 +1121: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -05:15 +1122: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions -05:15 +1123: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -05:15 +1124: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -05:15 +1125: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -05:15 +1126: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -05:15 +1127: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -05:16 +1128: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -05:16 +1129: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -05:16 +1130: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -05:16 +1131: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -05:16 +1132: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -05:16 +1133: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -05:16 +1134: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -05:16 +1135: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -05:16 +1136: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -05:17 +1137: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -05:17 +1138: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -05:17 +1139: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -05:17 +1140: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -05:17 +1141: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -05:18 +1142: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: a deliberate re-upload can reuse a deleted attachment filename -05:18 +1143: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -05:18 +1144: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -05:18 +1145: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -05:18 +1146: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -05:18 +1147: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -05:18 +1148: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -05:19 +1149: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -05:19 +1150: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -05:19 +1151: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -05:19 +1152: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -05:19 +1153: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -05:19 +1154: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -05:19 +1155: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -05:20 +1156: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -05:20 +1157: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -05:20 +1158: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -05:20 +1159: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -05:20 +1160: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -05:20 +1161: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart -05:21 +1161: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: identical changes do not need a choice -05:21 +1162: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: boolean three-way truth table preserves all independent changes -05:21 +1163: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_conflict_test.dart: favorite without a known base requires an explicit choice -05:21 +1164: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart -05:21 +1164: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length null including empty -05:21 +1165: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 3 including empty -05:21 +1166: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: streams attachment with content length 0 including empty -05:21 +1167: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: rejects oversized advertised length before consuming body -05:21 +1168: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length null -05:22 +1169: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: counts bytes beyond limit with absent/dishonest length 1 -05:22 +1170: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: network leaves neither valid attachment nor partial file -05:22 +1171: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: truncated leaves neither valid attachment nor partial file -05:22 +1172: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: dishonest leaves neither valid attachment nor partial file -05:22 +1173: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancel leaves neither valid attachment nor partial file -05:22 +1174: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: cancellation before request makes no HTTP call -05:22 +1175: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: authenticated attachment redirect never follows another origin -05:22 +1176: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_stream_test.dart: symlink destination remains untouched -05:22 +1177: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart -05:22 +1177: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: attachment recovery finds positioned inline and reference destinations -05:22 +1178: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: authored HTML attachments retain exact attribute positions -05:22 +1179: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_attachment_references_test.dart: literal code, comments and prose do not become attachment operations -05:22 +1180: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart -05:23 +1180: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.0; DELETE independently gated -05:24 +1181: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.0.1; DELETE independently gated -05:24 +1182: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0; DELETE independently gated -05:24 +1183: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.4; DELETE independently gated -05:24 +1184: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on ; DELETE independently gated -05:24 +1185: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on unknown; DELETE independently gated -05:24 +1186: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 6.1.0-rc1; DELETE independently gated -05:24 +1187: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: API 1.4 uploads/downloads on 999999999999999999999.0.0; DELETE independently gated -05:24 +1188: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: persisted HTTP account cannot issue an authenticated request -05:24 +1189: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: pruned IDs tolerate future fields and filename URI escaping is reversible -05:24 +1190: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: decodes future fields/read-only/error without exception text as content -05:24 +1191: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: CRUD preserves installation prefix and sends exactly quoted If-Match -05:24 +1192: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: canonical title/category write response is adopted -05:24 +1193: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 412 carries complete fresh remote conflict state -05:24 +1194: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 401 preserving future-code compatibility -05:24 +1195: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 403 preserving future-code compatibility -05:24 +1196: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 404 preserving future-code compatibility -05:24 +1197: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 423 preserving future-code compatibility -05:24 +1198: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 507 preserving future-code compatibility -05:24 +1199: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 500 preserving future-code compatibility -05:24 +1200: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 429 preserving future-code compatibility -05:24 +1201: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: classifies HTTP 599 preserving future-code compatibility -05:24 +1202: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: never follows cross-origin authenticated redirects -05:24 +1203: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: incremental chunk list uses server Last-Modified and final complete ids -05:24 +1204: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: 304 returns unchanged checkpoint outcome without parsing a body -05:24 +1205: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: interrupted chunks do not return partial deletion evidence -05:24 +1206: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload uses authoritative renamed relative path -05:24 +1207: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment upload rejects a filename outside the current note -05:24 +1208: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment fetch rejects URLs and traversal without sending credentials -05:24 +1209: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: attachment delete gates app version independently of API 1.4 -05:24 +1210: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: create does not publish private staging references -05:24 +1211: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: update never publishes an unresolved private attachment reference -05:24 +1212: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_api_test.dart: private namespace text in prose and code is preserved by create and update -05:24 +1213: loading /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart -05:26 +1213: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles default-a4 and preserves document data -05:27 +1214: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles letter-landscape and preserves document data -05:27 +1215: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles legal-serif and preserves document data -05:27 +1216: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles custom-sans and preserves document data -05:28 +1217: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles no-numbers and preserves document data -05:28 +1218: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles numbered-no-outline and preserves document data -05:28 +1219: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomLeft and preserves document data -05:28 +1220: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomCenter and preserves document data -05:29 +1221: /home/albert/busystack/busymark/test/src/pdf_export_options_render_test.dart: bundled Typst compiles narrow-title-bottomRight and preserves document data -05:29 +1222: loading /home/albert/busystack/busymark/test/src/app_smoke_test.dart -05:30 +1222: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor shortcuts use documented cross-editor defaults -05:30 +1223: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace resize retains the sidebar and leaves room for header controls -05:32 +1224: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: document view shortcuts are distinct from existing commands -05:32 +1225: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace routes paste shortcuts only to editable document views -05:36 +1226: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace source history restores a pasted URL suffix through undo and redo -05:36 +1227: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app wires generated localization delegates and locales -05:36 +1228: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: app boots to BusyMark welcome screen without login UI -05:36 +1229: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (0) -05:37 +1230: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recovery shows one actionable notice and preserves damage warnings (1) -05:37 +1231: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: false) -05:38 +1232: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Welcome creates a fresh Markdown workspace after leaving basic.md (close tab: true) -05:39 +1233: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: main menu and F11 toggle full-screen mode -05:39 +1234: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Alt+Left activates the header Back command -05:39 +1235: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: restored capture failure stays owned across Back create discard create -05:40 +1236: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Escape closes header popup menus -05:40 +1237: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: report issue is in the shared main menu, not Settings content -05:41 +1238: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: global reference and settings shortcuts open targets -05:41 +1239: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings screen opens -05:43 +1240: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings uses the regular split sidebar at desktop width -05:44 +1241: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Spelling Dictionaries page groups downloadable and custom data -05:44 +1242: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt uses native controls and submits a trimmed ID -05:50 +1243: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: import dictionary prompt cancels and saves without redesign -05:56 +1244: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a default-language install keeps the previous selection -05:56 +1245: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: default language persists only after dictionary installation succeeds -06:02 +1246: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: failed dictionary install keeps the default language -06:04 +1247: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: cancelling a project-language install keeps the previous selection -06:04 +1248: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: settings main surface matches the headerbar in light and dark -06:05 +1249: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: stored language override localizes app text -06:05 +1250: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: European Portuguese system locale renders the completed base catalog -06:05 +1251: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: language-only Chinese system locale renders the completed base catalog -06:05 +1252: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside project dialog syncs generated fields until edited -06:05 +1253: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts dialog opens from the header -06:06 +1254: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference categories expose supported authoring forms -06:07 +1255: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+Alt+M opens and Escape closes the syntax reference -06:07 +1256: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: syntax reference remains usable in constrained RTL layout -06:07 +1257: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: keyboard shortcuts tabs section title is localized -06:08 +1258: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: about dialog shows the BusyMark logo -unhandled element ; Picture key: Svg loader -06:08 +1259: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N chooses between Markdown and Writerside creation -06:08 +1260: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N keeps unsaved documents in independent tabs -06:09 +1261: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+N creates real CommonMark inside a Writerside workspace -06:10 +1262: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions -06:15 +1263: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Table of Contents creates from selection and exposes nested Writerside actions with an available native host -06:20 +1264: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside topic rename uses Preview, Do Refactor, and shared entry points -06:21 +1265: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: topic rename saves every dirty Writerside project source before planning -06:22 +1266: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: tab keyboard shortcuts move and close editor tabs -06:22 +1267: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Git diff files are shown as separate editor tabs -06:23 +1268: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: File History comparison selector shares its row with match navigation -06:24 +1269: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: file tree disables Git file actions without a repository -06:24 +1270: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: sidebar view shortcuts select workspace sidebar tabs -06:26 +1271: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: real Source edits reach the visible Local History list on the fixed deadline -06:26 +1272: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: selected WYSIWYG formatting reaches Local History through workspace callbacks -06:27 +1273: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Writerside sidebar shortcuts survive document view changes -06:29 +1274: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view colors entries by Git status -06:29 +1275: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Files view shows hidden, empty, and unsupported entries -06:29 +1276: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Arabic -06:29 +1277: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace sidebar is on the right in Persian -06:30 +1278: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Arabic untitled workspace stays RTL and diagnostic metadata stays LTR -06:30 +1279: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: RTL topic copy keeps bidi controls out of clipboard data -06:30 +1280: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Copy uses an inactive origin topic open buffer -06:31 +1281: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: TOC Paste reviews an inactive dirty tree before moving -06:31 +1282: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source undo cannot restore saved text from previous tab -06:31 +1283: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source groups typing and deletion undo with historical carets -06:32 +1284: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Source remount starts a distinct undo group -06:32 +1285: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: source view supports editor formatting shortcuts -06:32 +1286: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab and Shift+Tab update indentation in source view -06:32 +1287: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editing toolbar context menu changes persisted layout without toggling -06:33 +1288: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share a frame while Split stays fluid -06:33 +1289: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: rendered views ignore redundant blanks while Source preserves them -06:33 +1290: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: standalone HTML breaks preserve one blank line in every document view -06:33 +1291: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share task-list presentation and wrapping -06:33 +1292: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same quote shell geometry -06:33 +1293: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview reuse the same code block presentation -06:34 +1294: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share professional heading hierarchy -06:34 +1295: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share admonition and image presentation -06:34 +1296: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Preview renders structured formatted and nested quotes -06:34 +1297: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: editor undo cannot restore saved text from previous tab -06:34 +1298: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Tab inserts a tab character in editor view paragraphs -06:34 +1299: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close still warns when active changes are unsaved -06:35 +1300: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: window close flushes autosave for saved files -06:35 +1301: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: startup path opens a Markdown file workspace -06:35 +1302: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline follows unsaved source headings without live validation -06:35 +1303: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline context menu edits complete heading sections -06:36 +1304: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline highlights the heading at the document viewport -06:38 +1305: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: outline navigates to a renamed unsaved editor heading -06:40 +1306: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: untitled outline navigates before the first save -06:40 +1307: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview tolerates duplicate heading anchors -06:40 +1308: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading opens an unindexed sibling document link -06:40 +1309: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading linked block and inline images open their targets -06:40 +1310: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: new empty document leaves remembered preview mode for editor -06:40 +1311: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: blocked remote image prompt allows the current workspace -06:40 +1312: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+O open chooser lists recent workspaces -06:41 +1313: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: recent workspace menus support pointer and keyboard actions -06:41 +1314: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local images -06:41 +1315: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer blocks remote images by default -06:41 +1316: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths with spaces -06:41 +1317: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves absolute paths outside workspace -06:41 +1318: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves Snap real-home paths -06:41 +1319: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer resolves local SVG images -06:41 +1320: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer rejects oversized local SVGs -06:41 +1321: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer sanitizes embedded SVG image data -06:42 +1322: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: shared Markdown image renderer renders generated SVG badges -06:42 +1323: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: header Search button toggles the expanded search field -06:42 +1324: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: native header Search action toggles search and Back visibility -06:43 +1325: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search awaits non-active file reads without blocking builds -06:43 +1326: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search native submit uses exact payload and selected sidebar occurrence -06:44 +1327: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search preserves query and lands on unopened destination -06:44 +1328: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search observes edits to inactive buffers -06:45 +1329: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search reports limits and continues into later files -06:46 +1330: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search exposes skipped files and regex diagnostics -06:47 +1331: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search cancels expensive regex while UI keeps building -06:48 +1332: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: workspace search replacement review loads an asynchronous plan -06:49 +1333: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search highlights preserve Unicode offsets -06:49 +1334: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: literal workspace search bounds malformed Markdown snippets around the match -06:50 +1335: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks move preview scroll repeatedly -06:50 +1336: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview lazily builds large documents -06:50 +1337: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result clicks scroll to code block matches -06:51 +1338: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on paragraph after lists -06:51 +1339: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Editor and Preview share ordered list styling and geometry -06:51 +1340: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders nested list children -06:51 +1341: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview renders raw HTML table as table cells -06:51 +1342: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Reading applies Markdown table column alignment -06:51 +1343: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: preview search result click lands on code block line -06:52 +1344: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S runs Save for the active workspace -06:52 +1345: /home/albert/busystack/busymark/test/src/app_smoke_test.dart: Ctrl+S saves source edits from an untitled Markdown document -06:52 +1346: loading /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart -06:54 +1346: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from preview -06:58 +1347: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: Problems reveals the source and dismisses from editor -07:03 +1348: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: an open Problems dialog updates its count and math rows -07:04 +1349: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: manual Validate supersedes queued automatic validation and presents once -07:06 +1350: /home/albert/busystack/busymark/test/src/validation_problems_ui_test.dart: failed and stale validation do not show Problems; concurrent clicks publish once -07:09 +1351: loading /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart -07:10 +1351: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside math forms use semantic math nodes and round-trip -07:13 +1352: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: ordinary Markdown does not reinterpret Writerside TeX forms -07:13 +1353: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside semantic and fenced diagrams share visualizers -07:13 +1354: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: referenced diagram source is constrained to the Writerside root -07:13 +1355: /home/albert/busystack/busymark/test/src/writerside_math_diagram_test.dart: Writerside topic XML exposes TeX and diagrams to shared preview -07:17 +1356: loading /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart -07:19 +1356: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: view changes fade one live editor while ordinary data changes do not -07:20 +1357: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained destinations settle immediately under reduced motion -07:20 +1358: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: retained crossfade keeps two live pages and hides outgoing UI -07:20 +1359: /home/albert/busystack/busymark/test/src/busymark_motion_widgets_test.dart: keyed crossfade retains three semantic destinations -07:21 +1360: loading /home/albert/busystack/busymark/test/src/preview_builder_test.dart -07:29 +1360: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview uses one generic label and no compatibility banner -07:29 +1361: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview ignores redundant blank lines between blocks -07:29 +1362: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves an explicit blank line encoded with HTML breaks -07:29 +1363: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview headings carry parser anchors for outline navigation -07:29 +1364: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview blocks carry source locations for search navigation -07:29 +1365: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview source locations survive adjacent list items and code fences -07:29 +1366: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview list text removes Markdown markers -07:29 +1367: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves links inside list items -07:29 +1368: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves nested list children -07:29 +1369: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps ordered list numbering independent at each depth -07:29 +1370: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves inline Markdown semantics -07:29 +1371: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: inline autolinks only support launchable URI schemes -07:29 +1372: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities -07:29 +1373: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces -07:29 +1374: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders quote characters as text instead of HTML entities -07:29 +1375: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves pasted local image destinations with spaces -07:29 +1376: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview treats single newlines inside paragraphs as soft breaks -07:29 +1377: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview supports common Markdown block variants -07:29 +1378: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves structured and formatted quote children -07:29 +1379: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves source order for code and images -07:29 +1380: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview parses Writerside image attributes -07:29 +1381: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: front matter is skipped only at the top of the document -07:29 +1382: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML paragraph without literal tags -07:29 +1383: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table sections and inline cell formatting -07:29 +1384: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders direct rows under raw HTML table -07:29 +1385: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders raw HTML table captions before the table -07:29 +1386: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders inline raw HTML safely -07:29 +1387: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not make raw HTML links active without href -07:29 +1388: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects absolute local image paths in raw HTML -07:29 +1389: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview rejects deeply nested raw HTML before conversion -07:29 +1390: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders safe raw HTML containers as child content -07:29 +1391: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview renders top-level raw HTML image as image block -07:29 +1392: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview preserves raw HTML figure caption relationship -07:29 +1393: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview allows safe remote raw HTML links images and citations -07:29 +1394: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps unsafe raw HTML literal -07:29 +1395: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview does not parse Markdown inside raw HTML blocks -07:29 +1396: /home/albert/busystack/busymark/test/src/preview_builder_test.dart: preview keeps paired raw HTML blocks together across blank lines -07:29 +1397: loading /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart -07:30 +1397: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: accepts stable baseline and ignores future capability fields -07:31 +1398: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.0 -07:31 +1399: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.0.1 -07:31 +1400: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.0 -07:31 +1401: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 6.1.2 -07:31 +1402: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version null -07:31 +1403: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version -07:31 +1404: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version malformed -07:31 +1405: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: API 1.4 accepted independently of app version 42 -07:31 +1406: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: rejects missing Notes and unavailable/old API accurately -07:31 +1407: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: requests OCS capabilities under prefix with proper Basic and headers -07:31 +1408: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: authenticated redirects are rejected without following another origin -07:31 +1409: /home/albert/busystack/busymark/test/src/nextcloud_capabilities_test.dart: revocation uses documented DELETE and is best effort on non-200 -07:31 +1410: loading /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart -07:32 +1410: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by file-size limits -07:32 +1411: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic skipped by document limits -07:32 +1412: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects topic discovery truncated by tree limits -07:32 +1413: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a topic-root directory listing failure -07:32 +1414: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: topic discovery traverses excluded and hidden directories but not VCS metadata -07:32 +1415: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves a Markdown reference under build -07:34 +1416: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates and resolves an XML reference under a hidden directory -07:34 +1417: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename planning rejects a discovered unreadable topic source -07:34 +1418: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates topic and start-page references in every tree -07:34 +1419: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename refactors links, includes, ref entries, and leaves unrelated text -07:34 +1420: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename ignores link-shaped text in image titles and HTML attributes -07:34 +1421: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds reference links outside image titles and HTML attributes -07:35 +1422: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename binds exact HTML hrefs outside Markdown link and image titles -07:35 +1423: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename follows origin across modules without touching a local namesake -07:35 +1424: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: project-wide rename includes an origin reference in a build module -07:35 +1425: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: renaming a local namesake preserves origin-qualified Markdown XML links -07:35 +1426: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports unquoted origin-qualified raw HTML links -07:35 +1427: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename keeps decoded whitespace safe in unquoted HTML hrefs -07:36 +1428: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates shared Markdown reference definitions once -07:36 +1429: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves escapes required by a Markdown destination -07:36 +1430: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rewrites an XML-encoded topic destination -07:36 +1431: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename escapes decoded XML attribute replacements -07:36 +1432: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename updates a matching XML topic root id -07:36 +1433: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: missing or mismatched XML root IDs block rename atomically -07:36 +1434: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: prepared rename is read-only and applies its exact captured changes -07:36 +1435: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: stale prepared rename fails before any partial write -07:36 +1436: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preflights collisions only in publishing instances -07:37 +1437: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: origin topic collisions block a project-wide prepared rename -07:37 +1438: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: Unicode Markdown and XML topic filenames rename safely -07:37 +1439: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename supports Writerside .markdown topics -07:37 +1440: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects duplicate targets and extension changes -07:37 +1441: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves a target created concurrently before exclusive create -07:37 +1442: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete reloads newly configured instances before start-page checks -07:37 +1443: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename does not claim a new same-basename nested reference -07:37 +1444: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename aborts when a concurrent topic changes basename resolution -07:37 +1445: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete aborts when a concurrent topic changes basename resolution -07:40 +1446: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename retains target when an applied tree cannot be rolled back -07:40 +1447: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: cross-module rollback retains a target after another module changes -07:40 +1448: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: clean rollback removes the harmless newly created target -07:40 +1449: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename preserves topic and instance tree file modes -07:40 +1450: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete removes every TOC entry and promotes children in place -07:41 +1451: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic used as any instance start page -07:41 +1452: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: rename rejects unsafe path components before writing -07:41 +1453: /home/albert/busystack/busymark/test/src/writerside_topic_file_editor_test.dart: delete rejects a topic replaced by a symlink without touching its target -07:41 +1454: loading /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart -07:41 +1454: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic maps to full and visible line without folds -07:41 +1455: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: diagnostic inside folded region is aggregated onto its fold header -07:41 +1456: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: folded layout geometry is reused for equal collapsed sets -07:42 +1457: /home/albert/busystack/busymark/test/src/source_gutter_diagnostics_test.dart: incremental gutter layout matches a full measured layout -07:42 +1458: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart -07:43 +1458: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Duplicate Topic is serialized to the native dialog host -07:43 +1459: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: Edit Title returns all native field values -07:43 +1460: /home/albert/busystack/busymark/test/src/native_writerside_dialog_service_test.dart: native cancellation remains distinct from an unavailable host -07:43 +1461: loading /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart -07:46 +1461: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps a nested Writerside block to its source block -07:47 +1462: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI maps selected text when unsourced editor blocks exist -07:47 +1463: /home/albert/busystack/busymark/test/src/wysiwyg_ai_test.dart: WYSIWYG AI applies through canonical Markdown source -07:48 +1464: loading /home/albert/busystack/busymark/test/src/document_status_bar_test.dart -07:49 +1464: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: places interactive spelling at start and format at end -07:49 +1465: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: keeps passive format when spelling is unsupported -07:49 +1466: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: truncates a long one-line language without displacing format -07:50 +1467: /home/albert/busystack/busymark/test/src/document_status_bar_test.dart: uses directional start and end placement in RTL -07:50 +1468: loading /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart -07:51 +1468: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: detects and preserves UTF-8 BOM, CRLF, and final newline -07:51 +1469: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: preserves a missing final newline when saving edited text -07:51 +1470: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: requires an explicit normalization for mixed line endings -07:51 +1471: /home/albert/busystack/busymark/test/src/text_format_metadata_test.dart: rejects invalid UTF-8 instead of replacing bytes -07:51 +1472: loading /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart -07:53 +1472: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: autocomplete prioritizes Writerside Markdown authoring suggestions -07:53 +1473: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion derives XML caret context and consumes the project index -07:53 +1474: /home/albert/busystack/busymark/test/src/source_autocomplete_test.dart: completion suggests attributes legal for the element at the caret -07:53 +1475: loading /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart -07:55 +1475: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: reads the provider key through the native credential channel -07:55 +1476: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: trims a key before securely storing it -07:55 +1477: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: deletes only the selected provider key -07:55 +1478: /home/albert/busystack/busymark/test/src/ai_secret_store_test.dart: surfaces the native credential-service failure -07:55 +1479: loading /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart -07:58 +1479: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pristine empty draft discards without protective storage -08:01 +1480: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace replacement retires settled bindings and retains failed baselines -08:01 +1481: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects nonempty content when history is unavailable -08:01 +1482: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects whitespace content when history is unavailable -08:01 +1483: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects edited-empty content when history is unavailable -08:01 +1484: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects recovered content when history is unavailable -08:01 +1485: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: discard still protects file content when history is unavailable -08:01 +1486: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: background protective retry cannot execute a previously rejected discard -08:01 +1487: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=false) -08:01 +1488: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=false external=true) -08:01 +1489: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=false) -08:01 +1490: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restored promotion reconciles only the saved lineage (file=true external=true) -08:01 +1491: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save cannot adopt a deleted path lineage -08:01 +1492: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: vacant first save retires a stale active history owner -08:01 +1493: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first save promotes an established untitled lineage over deleted history -08:01 +1494: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison uses unsaved editor source and whole restore is one undo step -08:01 +1495: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels queued restore protection -08:01 +1496: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All cancels queued restore protection -08:01 +1497: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: region restore is exact, undoable, and rejects stale ranges -08:02 +1498: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed protective capture leaves current document unchanged -08:02 +1499: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: restoration rejects a revision from another history document -08:02 +1500: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled history compares and restores through stable identity -08:02 +1501: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing during a delayed reload cancels the stale replacement -08:02 +1502: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reload reparse cannot publish after another buffer becomes active -08:02 +1503: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delete skips binary and excluded history descendants -08:02 +1504: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deleted document restores through normal create flow without overwriting -08:02 +1505: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: missing history restores over an existing file without touching disk and undoes to its real source -08:02 +1506: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing open destination protects unsaved source as the restore undo baseline -08:02 +1507: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: existing destination restore stops when protection fails or the target changes -08:02 +1508: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: autosaved existing-destination recovery never publishes an empty file -08:02 +1509: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: delayed explicit save records exactly the source that was written -08:02 +1510: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history failure cannot turn a successful save into a failure -08:02 +1511: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move keeps edits made during history remap on the destination -08:02 +1512: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reparse cannot publish after a newer edit -08:02 +1513: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move cannot remap a replacement created while loading target -08:02 +1514: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move completion cannot publish into a replacement workspace -08:02 +1515: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: monitor event emitted after invalidation cannot enter reopened workspace -08:02 +1516: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: file monitor lifecycle recovers after a failed stop -08:02 +1517: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: editing while monitor start is pending still enables workspace events -08:02 +1518: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: folder refresh while monitor start is pending still enables events -08:02 +1519: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed workspace ignores a delayed monitor start completion -08:02 +1520: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed file monitor cannot resume an overtaken start -08:02 +1521: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: deferred monitor move cannot enter a replacement workspace -08:02 +1522: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move retains reconciliation when another process checkpoints the old identity -08:02 +1523: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move with no bound identity cannot remap replacement history -08:02 +1524: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion with no bound identity cannot delete replacement history -08:02 +1525: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection retries into the deleted lineage -08:02 +1526: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed external-delete protection survives restart as detached work -08:02 +1527: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move remaps nested open history -08:02 +1528: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move publishes every buffer after one decode failure -08:02 +1529: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closing a tab during an external directory move settles its journal -08:02 +1530: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory deletion marks nested open history deleted -08:02 +1531: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed recursive-delete protection survives restart on its lineage -08:02 +1532: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external move reconciles closed file history -08:02 +1533: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external deletion reconciles closed file history -08:02 +1534: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce before history reconciliation -08:02 +1535: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external chained moves coalesce across an unrelated queued event -08:02 +1536: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: closed source move cannot steal an open destination lineage -08:02 +1537: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external file move includes identity established by source settlement -08:02 +1538: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: external directory move includes identity established by source settlement -08:02 +1539: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: cancelled named Save As detaches source history and reopens separately -08:03 +1540: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recording disabled after first-save publication preserves untitled lineage -08:03 +1541: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, completed pending capture -08:03 +1542: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: disable, failed pending capture -08:03 +1543: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, completed pending capture -08:03 +1544: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear document, failed pending capture -08:03 +1545: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, completed pending capture -08:04 +1546: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first-save pre-promotion cancellation: clear all, failed pending capture -08:04 +1547: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As keeps edits made during destination capture out of source history -08:04 +1548: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot claim a dirty open buffer at a missing destination -08:04 +1549: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=false) -08:04 +1550: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rejected Discard protection remains with the Save As source (existing=true) -08:05 +1551: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: rename remaps a failed unbound baseline to the committed destination -08:05 +1552: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed prepared rename never reaches the filesystem without an execution journal -08:05 +1553: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document cancels a prepared rename before filesystem publication -08:05 +1554: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear Document retains an executing rename journal across a crash -08:05 +1555: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All retains an executing rename journal across a crash -08:05 +1556: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: targetless executing rename owner survives an ambiguous restart -08:05 +1557: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: move remaps a deferred first-save destination before baseline recovery -08:05 +1558: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive folder move remaps retained baselines for every open descendant -08:05 +1559: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=false) -08:06 +1560: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: pending unrelated remap permits workspace Save As (existing=true) -08:06 +1561: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed move retries a failed history path reconciliation -08:06 +1562: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: shutdown retries first-save promotion without requiring another edit -08:06 +1563: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: second Save As preserves a failed first-save association as the source -08:06 +1564: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As partitions a failed source checkpoint -08:06 +1565: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: untitled overwrite Save As source checkpoint survives process restart -08:06 +1566: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As journals its source before the filesystem commit returns -08:06 +1567: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As cannot publish a second owner when its destination opens in flight -08:06 +1568: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As rechecks destination ownership after opening its workspace -08:06 +1569: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: first Save As waits for an unbound live destination history owner -08:06 +1570: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: disposed Save As cannot publish after losing its prepared journal owner -08:06 +1571: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As published after disposal leaves a committed recoverable journal -08:07 +1572: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As commit write failure after disposal uses the session fallback -08:07 +1573: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Save As publishes destination after a post-publish callback failure -08:08 +1574: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed rename reconciliation survives shutdown and restart -08:08 +1575: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: live owner keeps committed remap journal until its recovery can follow -08:08 +1576: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared rename journal repairs a crash after filesystem commit -08:08 +1577: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed deletion detaches recovery newer than stored history -08:08 +1578: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: recursive deletion evidence cannot consume a sibling recovery -08:09 +1579: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: Clear All durably removes a previously persisted path journal -08:09 +1580: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup applies committed destination cleanup before Save As recovery -08:09 +1581: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup keeps untitled first-save source when another tab owns destination -08:09 +1582: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: committed Save As recovery cannot claim another process tab with the same buffer id -08:09 +1583: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session restore selects recovery by process owner before shared buffer id -08:09 +1584: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed startup reconstruction releases adopted recovery ownership -08:09 +1585: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: history retry during slow failed startup cannot erase adopted recovery -08:10 +1586: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: session identity restore waits for the authoritative history snapshot -08:10 +1587: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: renamed adopted recovery still honors its original path-operation owner -08:10 +1588: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: replayed durable Clear All preserves newer history -08:10 +1589: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: startup aborts until replayed clear refresh is authoritative -08:10 +1590: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: prepared deletion journal repairs a crash after filesystem commit -08:10 +1591: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: failed deletion reconciliation survives shutdown and restart -08:10 +1592: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: reopened tab adopts its unresolved first-save history association -08:10 +1593: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: unresolved shutdown promotion survives in session and retries on startup -08:10 +1594: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace rename settles a failed first-save promotion -08:10 +1595: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace directory move settles a nested failed first-save promotion -08:10 +1596: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison renders styled intraline spans without framework errors -08:11 +1597: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: comparison restore actions wait for the current replacement result -08:11 +1598: /home/albert/busystack/busymark/test/src/local_history_workspace_test.dart: workspace refresh invalidates a completed comparison by source content -08:11 +1599: loading /home/albert/busystack/busymark/test/src/visualization_card_test.dart -08:13 +1599: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: full-screen diagram coordinates its modal and preserves pan/zoom -08:14 +1600: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: retains the last valid diagram and navigates new diagnostics -08:14 +1601: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: fits a small Mermaid diagram to the preview width -08:14 +1602: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: keeps a wide Mermaid diagram readable until fit is requested -08:14 +1603: /home/albert/busystack/busymark/test/src/visualization_card_test.dart: shows searchable OpenAPI operations and opens the native reference -08:14 +1604: loading /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart -08:15 +1604: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: computes the diagnostic offset within fenced source -08:15 +1605: /home/albert/busystack/busymark/test/src/wysiwyg_visualization_diagnostic_test.dart: WYSIWYG diagnostic selects its actual source line -08:16 +1606: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -08:16 +1606: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: Nextcloud settings route selects its dedicated page -08:19 +1607: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote editor tabs retain note titles through metadata rename -08:22 +1608: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: cached note list searches content and excludes clean deletion tombstones -08:25 +1609: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: favorites and ancestor category filtering operate on cached notes -08:26 +1610: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: moving the last selected category note clears its filter -08:26 +1611: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: the final category can disappear without hiding uncategorized notes -08:27 +1612: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain attachment controls remain available with fetched remote state -08:27 +1613: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only metadata stays read-only while favorite is writable and export is explicit -08:28 +1614: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: attachment deletion warns about links and cancellation retains the file -08:28 +1615: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: remote deletion offers explicit discard with a second confirmation -08:29 +1616: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: merge requires explicit choices for divergent scalar metadata -08:29 +1617: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: read-only favorite conflict offers a safe merge -08:30 +1618: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: uncertain creation lets the user select a candidate -08:30 +1619: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits -08:31 +1620: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: forbidden pending changes offer recovery without overwrite -08:31 +1621: /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: unavailable pending changes offer recovery without overwrite -08:31 +1622: loading /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart -08:32 +1622: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table pipes cannot bind across subsequent cells -08:32 +1623: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: a\|b | a|b -08:32 +1624: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b\|c | a|b|c | -08:32 +1625: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\\\|b | a\\|b | -08:32 +1626: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | a|b\ -08:32 +1627: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | a\|b | -08:32 +1628: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table normalization preserves a later HTML cell: | `a\|b` | a|b | -08:32 +1629: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped pipes in the table header retain diagnostic positions -08:32 +1630: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | a\|b | a|b | -08:32 +1631: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: escaped table cells retain HTML positions: | `` a\|b | a| | -08:32 +1632: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in block context -08:32 +1633: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML attributes are checked in inline context -08:32 +1634: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline caption attributes are checked before tree construction -08:32 +1635: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline colgroup attributes are checked before tree construction -08:32 +1636: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline col attributes are checked before tree construction -08:32 +1637: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline thead attributes are checked before tree construction -08:32 +1638: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tbody attributes are checked before tree construction -08:32 +1639: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline tfoot attributes are checked before tree construction -08:32 +1640: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline th attributes are checked before tree construction -08:32 +1641: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline td attributes are checked before tree construction -08:32 +1642: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: inline URL attributes use HTML entity decoding -08:32 +1643: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text `
Cell
` -08:32 +1644: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text \\\\\
Cell\
-08:32 +1645: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: ```html -08:32 +1646: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe:
Cell
-08:32 +1647: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: table HTML remains literal or safe: Text
Cell
-08:32 +1648: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html -08:32 +1649: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: -08:32 +1650: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
-08:32 +1651: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source:
-08:32 +1652: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^unused]: -08:32 +1653: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: [^used]: -08:32 +1654: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - ```html -08:32 +1655: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` then -08:32 +1656: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `` `` -08:32 +1657: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > ```html -08:32 +1658: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: - Example -08:32 +1659: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: > - `` then -08:32 +1660: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: --- -08:32 +1661: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: ```html -08:32 +1662: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | Code | HTML | -08:32 +1663: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: | One | -08:32 +1664: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: HTML location follows parsed source: `a ` -08:32 +1665: /home/albert/busystack/busymark/test/src/authored_html_diagnostics_test.dart: unsafe Markdown URLs are located at the link, after literal examples -08:32 +1666: loading /home/albert/busystack/busymark/test/src/window_control_service_test.dart -08:33 +1666: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: button and native close requests share one pending confirmation -08:33 +1667: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: initializes prevent-close interception -08:33 +1668: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: toggles full screen and tracks native window-state changes -08:33 +1669: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: no dirty documents closes without dialog -08:33 +1670: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation enabled show dialog -08:33 +1671: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: dirty documents with confirmation disabled close directly -08:33 +1672: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: discard closes after disabling prevent-close -08:33 +1673: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save closes only when saving succeeds -08:33 +1674: /home/albert/busystack/busymark/test/src/window_control_service_test.dart: save failure keeps the app open -08:33 +1675: loading /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart -08:36 +1675: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: terminal code block gets a non-serializing trailing paragraph -08:36 +1676: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter inserts a newline within one code block -08:36 +1677: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: a code block created by editing also retains a trailing paragraph -08:36 +1678: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: third terminal Enter exits code and removes the two empty lines -08:37 +1679: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: exiting before existing content inserts a transient paragraph -08:37 +1680: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Enter in the trailing paragraph records an intentional blank -08:37 +1681: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: code Enter stays in the multiline code field -08:39 +1682: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Ctrl+Enter exits into the trailing paragraph -08:39 +1683: /home/albert/busystack/busymark/test/src/wysiwyg_code_block_editing_test.dart: Arrow Down exits a terminal code block -08:39 +1684: loading /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart -08:40 +1684: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: shows only a compact line-ending label -08:40 +1685: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: makes BOM visible and keeps final-newline detail compact -08:40 +1686: /home/albert/busystack/busymark/test/src/document_format_indicator_test.dart: uses a compact technical label for mixed line endings -08:40 +1687: loading /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart -08:43 +1687: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: ordinary WYSIWYG selection never suppresses spelling underlines -08:43 +1688: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: source spelling correction is one exact transaction -08:45 +1689: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: formatted rich correction preserves structure and publishes once -08:45 +1690: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich image spelling preserves source and one undo step -08:46 +1691: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested code and math spelling preserves source and undo -08:47 +1692: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich nested address and math spelling preserves source and undo -08:47 +1693: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table image spelling preserves authored cell syntax -08:48 +1694: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed rich image preparation refuses a newer revision -08:48 +1695: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: delayed math image preparation refuses a newer revision -08:48 +1696: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich correction preserves entities and translates later anchors -08:48 +1697: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich hard-break correction keeps later source anchor -08:48 +1698: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table correction preserves encoded cell source -08:49 +1699: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich table-cell correction preserves link and publishes sessions once -08:49 +1700: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: rich underline painter keeps confirmed helo visible at caret -08:49 +1701: /home/albert/busystack/busymark/test/src/spelling_editor_integration_test.dart: table cell underline uses the live cell composing range -08:49 +1702: loading /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart -08:50 +1702: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: inlines safe generated CSS into a vector-only SVG -08:50 +1703: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: keeps sanitized foreignObject only in the browser raster input -08:50 +1704: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes SVG and CSS animations -08:50 +1705: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects remote, executable, and escaped CSS URLs -08:50 +1706: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: allows embedded D2-style fonts but rejects remote image attributes -08:50 +1707: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: requires rasterization for CSS the vector inliner cannot preserve -08:50 +1708: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: preserves safe browser-only inline CSS and rasterizes it -08:50 +1709: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: removes unsafe URLs from inline CSS -08:50 +1710: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: does not claim a vector result when CSS cascade resolution is needed -08:50 +1711: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: rejects declarations, excessive complexity, and invalid dimensions -08:50 +1712: /home/albert/busystack/busymark/test/src/generated_svg_normalizer_test.dart: applies the size limit to UTF-8 bytes -08:50 +1713: loading /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart -08:52 +1713: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: remote requests reject existing local references before reading dependencies -08:54 +1714: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: resolves local files, hashes them, and terminates circular schemas -08:54 +1715: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: keeps internal-only references independent of a saved path -08:54 +1716: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: rejects remote, absolute, malformed, and unsupported references -08:54 +1717: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: reports an unsaved document that contains a local reference -08:54 +1718: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: converts traversal and symlink escapes into typed diagnostics -08:54 +1719: /home/albert/busystack/busymark/test/src/openapi_dependency_resolver_test.dart: enforces dependency count and byte limits -08:54 +1720: loading /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart -08:55 +1720: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: platform host sends reduced source and geometry over one channel -08:55 +1721: /home/albert/busystack/busymark/test/src/writerside_video_player_host_test.dart: Linux player keeps interactive media in a restricted WebKit host -08:58 +1722: loading /home/albert/busystack/busymark/test/src/export_options_test.dart -09:00 +1722: /home/albert/busystack/busymark/test/src/export_options_test.dart: defaults retain PDF geometry and independent HTML reading appearance -09:00 +1723: /home/albert/busystack/busymark/test/src/export_options_test.dart: every option persists and copies without losing unrelated fields -09:00 +1724: /home/albert/busystack/busymark/test/src/export_options_test.dart: absent and malformed persisted values fall back per field -09:00 +1725: /home/albert/busystack/busymark/test/src/export_options_test.dart: geometry resolves dimensions, orientation and four independent margins -09:00 +1726: /home/albert/busystack/busymark/test/src/export_options_test.dart: payload contains resolved geometry and every renderer option as data -09:00 +1727: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -09:02 +1727: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: an unsaved independently opened candidate blocks consolidation without orphaning its tab -09:05 +1728: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: Save, Save All, autosave and shutdown durably retain offline notes -09:05 +1729: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: immediate persistence cannot deadlock a remote save -09:06 +1730: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: false) -09:06 +1731: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved editor base survives refresh (in flight: true) -09:06 +1732: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: false) -09:06 +1733: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removed active note activates remaining tab (explicit: true) -09:06 +1734: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote session restores content and pending sync from SQLite after restart -09:07 +1735: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote Save As keeps account, buffer identity and pending operation -09:07 +1736: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: closing the final remote tab leaves its Notes workspace and outbox -09:07 +1737: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: remote history restore is a durable new local edit -09:07 +1738: /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: removing an open remote account clears its session -09:08 +1739: loading /home/albert/busystack/busymark/test/src/source_folding_test.dart -09:09 +1739: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line starts map to the following source line -09:09 +1740: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects sections lists quotes and code blocks -09:09 +1741: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding keeps shorter fence runs inside dynamic fences -09:09 +1742: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown structures inside fences do not create fold regions -09:09 +1743: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores tags inside multiline comments and CDATA -09:09 +1744: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding ignores greater-than signs inside quoted attributes -09:09 +1745: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding scans opening tags across source lines -09:09 +1746: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding skips processing instructions and declarations -09:09 +1747: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding does not join separate indented code blocks -09:09 +1748: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsed gutter entries preserve source line numbers -09:09 +1749: /home/albert/busystack/busymark/test/src/source_folding_test.dart: collapsing one repeated markdown subsection keeps peer sections visible -09:09 +1750: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding detects simple multiline tag blocks -09:09 +1751: /home/albert/busystack/busymark/test/src/source_folding_test.dart: markdown folding detects nested headings task lists and blockquotes -09:09 +1752: /home/albert/busystack/busymark/test/src/source_folding_test.dart: xml folding handles nested same-name tags with a stack -09:09 +1753: /home/albert/busystack/busymark/test/src/source_folding_test.dart: malformed xml does not create unsafe fold ranges -09:09 +1754: /home/albert/busystack/busymark/test/src/source_folding_test.dart: line info supports CRLF endings -09:09 +1755: loading /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart -09:10 +1755: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: shipped spelling catalog is metadata-only and revision pinned -09:10 +1756: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: ordinary Linux release does not prepare all-language pairs -09:11 +1757: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: committed spelling checksum inventory matches exact shipped bytes -09:11 +1758: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: native spelling notices are explicit installed artifacts -09:11 +1759: /home/albert/busystack/busymark/test/src/spelling_packaging_audit_test.dart: strict Snap smoke performs and verifies a local revision transition -09:11 +1760: loading /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart -09:12 +1760: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates and registers an empty instance with build settings -09:13 +1761: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: creates a non-publishing TOC library instance -09:13 +1762: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: imports selected Markdown and its referenced local media -09:13 +1763: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: renames an instance and refactors documented project references -09:14 +1764: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: first topic added to an empty instance becomes its home page -09:14 +1765: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: invalid project XML blocks an instance ID refactor without changing files -09:14 +1766: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: concurrent config change prevents every instance publication -09:14 +1767: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import copies selected topics, media, and inserts root entries in order -09:14 +1768: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import inserts several siblings after the exact reference in list order -09:15 +1769: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import initializes only the first imported topic as the start page -09:15 +1770: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects batch, existing-ID, target, and invalid-name conflicts -09:15 +1771: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import accepts a Unicode topic filename -09:15 +1772: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import rejects a stale reference identity without publishing files -09:15 +1773: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import discovered-but-unparsed topic basename blocks import -09:15 +1774: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import fails closed when semantic topic discovery is incomplete -09:15 +1775: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import revalidates IDs before publishing and leaves no partial import -09:15 +1776: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: existing-instance Markdown topic import allows an unrelated topic created before publication -09:15 +1777: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects existing and selected-batch topic IDs -09:15 +1778: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import rejects an invalid topic filename -09:15 +1779: /home/albert/busystack/busymark/test/src/writerside_instance_service_test.dart: new-instance import fails closed on incomplete discovery -09:16 +1780: loading /home/albert/busystack/busymark/test/src/validation_consistency_test.dart -09:16 +1780: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: module load, topic validation, and config validation agree and clear fixes -09:17 +1781: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: editing a target refreshes diagnostics in the referencing topic -09:17 +1782: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variables, comments, interpolation controls and optional includes agree -09:17 +1783: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: interpolated includes agree across load, topic and config validation -09:18 +1784: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: local variable scope identity includes its declaring topic -09:20 +1785: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: cross-module includes refresh when their target changes -09:20 +1786: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: malformed glossary and keymap XML report the supporting file and clear after repair -09:20 +1787: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: Markdown validation preserves other files and scan warnings while clearing active errors -09:20 +1788: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: linked anchors use dirty buffers and canonical self-links, caching targets -09:20 +1789: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: large buffered targets parse asynchronously and missing saved targets use their buffers -09:21 +1790: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: front matter requires complete delimiter lines with LF and CRLF -09:21 +1791: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: HTML diagnostics exclude prose and literal code without relaxing rendering policy -09:21 +1792: /home/albert/busystack/busymark/test/src/validation_consistency_test.dart: location maps are reused within a parse and released between parses -09:21 +1793: loading /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart -09:22 +1793: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs normalizes the root URL and preserves installation prefixes -09:22 +1794: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs rejects malformed and unsafe installation URLs -09:22 +1795: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Nextcloud installation URLs routes cannot reset a prefix or change origin -09:22 +1796: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 anonymous start, browser, pending poll and canonical exact success -09:22 +1797: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 production login rejects HTTP before network or browser -09:22 +1798: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 token expires at twenty minutes without extra poll -09:22 +1799: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 user can cancel while waiting without another poll -09:22 +1800: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 cancel racing a success revokes the returned app password -09:22 +1801: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 failed external browser launch does not begin polling -09:22 +1802: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 rejects malformed responses and unsafe returned flow endpoints -09:22 +1803: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 pending status is only 404; other status and redirects are errors -09:22 +1804: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 malformed credentials never become an account -09:22 +1805: /home/albert/busystack/busymark/test/src/nextcloud_login_flow_test.dart: Login Flow v2 network failures have sanitized diagnostics -09:22 +1806: loading /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart -09:23 +1806: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside Markdown collapsible chapter owns its section -09:23 +1807: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown keeps Writerside collapse syntax literal -09:23 +1808: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary Markdown does not assign semantic Writerside collapse -09:23 +1809: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside fenced code consumes its collapsible attribute line -09:23 +1810: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: edited collapsible blocks serialize valid Writerside attributes -09:23 +1811: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: ordinary fenced code does not consume a collapse attribute line -09:23 +1812: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: semantic collapsible elements become structured preview content -09:23 +1813: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: Writerside XML topic preview keeps collapsible content nested -09:24 +1814: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: shared collapse control honors default state and toggles -09:24 +1815: /home/albert/busystack/busymark/test/src/writerside_collapsible_test.dart: WYSIWYG collapses only Writerside chapter content -09:25 +1816: loading /home/albert/busystack/busymark/test/src/export_review_regression_test.dart -09:26 +1816: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside PDF retains percent-encoded non-ASCII footnote labels -09:28 +1817: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: included footnotes use separate document-occurrence namespaces -09:28 +1818: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=false) -09:28 +1819: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside diagram and paragraph collisions retain each occurrence (XML=true) -09:28 +1820: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: repeated includes receive distinct nested occurrence IDs -09:28 +1821: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: mapper cannot substitute a diagram for a colliding paragraph -09:28 +1822: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: Writerside rejects outside file URIs and symlinks while staging shared-module images -09:29 +1823: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=false) -09:29 +1824: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: cross-instance navigation is not published (reference only=true) -09:29 +1825: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=true) -09:29 +1826: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=true) -09:29 +1827: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit raw anchor is reserved (first=false) -09:29 +1828: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: explicit inline anchor is reserved (first=false) -09:29 +1829: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: collapsible headings keep numbering and actual outline order -09:29 +1830: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false #%FF) -09:29 +1831: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false %FF.md) -09:29 +1832: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (false file%FF.txt) -09:29 +1833: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true #%FF) -09:29 +1834: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true %FF.md) -09:29 +1835: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: malformed encoded link becomes a source warning (true file%FF.txt) -09:29 +1836: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: combined Writerside PDF keeps diagrams and scoped notes without reading an outside image -09:29 +1837: /home/albert/busystack/busymark/test/src/export_review_regression_test.dart: ordinary Markdown footnotes compile with retained definitions and repeated references -09:29 +1838: loading /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart -09:30 +1838: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only committed newline and continued typing replace a table-ended selection -09:32 +1839: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table committed newline and continued typing replace a table-ended selection -09:33 +1840: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table committed newline and continued typing replace a table-ended selection -09:35 +1841: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables committed newline and continued typing replace a table-ended selection -09:36 +1842: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=false -09:36 +1843: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Up control=false -09:37 +1844: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=false -09:37 +1845: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Down control=false -09:37 +1846: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Left control=true -09:38 +1847: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false collapse Arrow Right control=true -09:38 +1848: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing commit uses real input -09:38 +1849: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false composing cancel uses real input -09:39 +1850: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=false -09:39 +1851: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Up control=false -09:39 +1852: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=false -09:39 +1853: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Down control=false -09:40 +1854: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Left control=true -09:40 +1855: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true collapse Arrow Right control=true -09:40 +1856: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing commit uses real input -09:40 +1857: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true composing cancel uses real input -09:41 +1858: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=false -09:41 +1859: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Up control=false -09:41 +1860: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=false -09:42 +1861: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Down control=false -09:42 +1862: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Left control=true -09:42 +1863: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false collapse Arrow Right control=true -09:42 +1864: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=false -09:43 +1865: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Up control=false -09:43 +1866: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=false -09:43 +1867: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Down control=false -09:43 +1868: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Left control=true -09:43 +1869: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true collapse Arrow Right control=true -09:44 +1870: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing commit uses real input -09:44 +1871: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true composing cancel uses real input -09:44 +1872: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=false -09:45 +1873: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Up control=false -09:45 +1874: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=false -09:45 +1875: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Down control=false -09:45 +1876: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Left control=true -09:45 +1877: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false collapse Arrow Right control=true -09:46 +1878: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing commit uses real input -09:46 +1879: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false composing cancel uses real input -09:46 +1880: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=false -09:47 +1881: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Up control=false -09:47 +1882: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=false -09:47 +1883: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Down control=false -09:47 +1884: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Left control=true -09:47 +1885: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true collapse Arrow Right control=true -09:48 +1886: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=false -09:48 +1887: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Up control=false -09:48 +1888: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=false -09:48 +1889: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Down control=false -09:49 +1890: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Left control=true -09:49 +1891: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false collapse Arrow Right control=true -09:49 +1892: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing commit uses real input -09:50 +1893: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false composing cancel uses real input -09:50 +1894: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=false -09:50 +1895: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Up control=false -09:51 +1896: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=false -09:51 +1897: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Down control=false -09:51 +1898: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Left control=true -09:51 +1899: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true collapse Arrow Right control=true -09:52 +1900: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing commit uses real input -09:52 +1901: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true composing cancel uses real input -09:52 +1902: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=false -09:52 +1903: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Up control=false -09:53 +1904: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=false -09:53 +1905: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Down control=false -09:53 +1906: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Left control=true -09:53 +1907: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=false collapse Arrow Right control=true -09:53 +1908: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=false -09:53 +1909: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Up control=false -09:53 +1910: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=false -09:54 +1911: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Down control=false -09:54 +1912: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Left control=true -09:54 +1913: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: text control reverse=true collapse Arrow Right control=true -09:54 +1914: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: false) -09:55 +1915: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right"), previous: LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left"), word: true) -09:55 +1916: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: keyboard extension includes consecutive tables and returns to a selected table: (next: LogicalKeyboardKey#80d00(keyId: "0x100000301", keyLabel: "Arrow Down", debugName: "Arrow Down"), previous: LogicalKeyboardKey#88515(keyId: "0x100000304", keyLabel: "Arrow Up", debugName: "Arrow Up"), word: false) -09:55 +1917: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after selection -09:56 +1918: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after document -09:56 +1919: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after same document source -09:56 +1920: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: old table input client is rejected after disposal -09:56 +1921: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=false -09:57 +1922: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: empty table copy deletion undo externalHistory=true -09:57 +1923: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: clipboard history replaces selected table through document range -09:57 +1924: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: partial paragraph to table to paragraph replacement preserves outside text and undo -09:57 +1925: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell-local input cut paste and Tab remain local -09:58 +1926: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by up (variant: TargetPlatform.linux) -09:58 +1927: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by cancel (variant: TargetPlatform.linux) -09:59 +1928: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by document (variant: TargetPlatform.linux) -10:01 +1929: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: scrolling owned drag terminates safely by disposal (variant: TargetPlatform.linux) -10:02 +1930: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=false -10:02 +1931: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=recreate external=true -10:03 +1932: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=false -10:03 +1933: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=false lifecycle=reuse external=true -10:04 +1934: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=false -10:04 +1935: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=recreate external=true -10:04 +1936: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=false -10:04 +1937: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input paragraphs reverse=true lifecycle=reuse external=true -10:05 +1938: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=false -10:05 +1939: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=recreate external=true -10:06 +1940: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=false -10:06 +1941: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=false lifecycle=reuse external=true -10:06 +1942: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=false -10:07 +1943: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=recreate external=true -10:10 +1944: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=false -10:10 +1945: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input mixed paragraph reverse=true lifecycle=reuse external=true -10:11 +1946: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=false -10:11 +1947: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=recreate external=true -10:11 +1948: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=false -10:12 +1949: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=false lifecycle=reuse external=true -10:13 +1950: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=false -10:13 +1951: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=recreate external=true -10:14 +1952: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=false -10:14 +1953: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input list extent reverse=true lifecycle=reuse external=true -10:14 +1954: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=false -10:14 +1955: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=recreate external=true -10:15 +1956: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=false -10:15 +1957: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=false lifecycle=reuse external=true -10:15 +1958: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=false -10:16 +1959: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=recreate external=true -10:16 +1960: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=false -10:16 +1961: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored direct input table extent control reverse=true lifecycle=reuse external=true -10:17 +1962: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=false -10:17 +1963: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=false cancel=true -10:17 +1964: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=false -10:21 +1965: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=false reverse=true cancel=true -10:21 +1966: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=false -10:22 +1967: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=false cancel=true -10:26 +1968: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=false -10:26 +1969: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary composition matches fresh mixed=true reverse=true cancel=true -10:27 +1970: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local paragraph accepts immediate Unicode input -10:27 +1971: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored local cell accepts immediate Unicode input -10:27 +1972: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by caret before handoff -10:27 +1973: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by range before handoff -10:27 +1974: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by document before handoff -10:28 +1975: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by tab replacement before handoff -10:28 +1976: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored input focus is superseded by disposal before handoff -10:28 +1977: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input retains a scrolled viewport -10:29 +1978: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: restored ordinary input uses clamped session offsets -10:29 +1979: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Backspace until committed input -10:29 +1980: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Delete until committed input -10:29 +1981: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Enter until committed input -10:29 +1982: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Left until committed input -10:30 +1983: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Right until committed input -10:30 +1984: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Up until committed input -10:30 +1985: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Arrow Down until committed input -10:31 +1986: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns Home until committed input -10:31 +1987: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table preedit owns End until committed input -10:31 +1988: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=false -10:31 +1989: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a new pointer gesture supersedes deferred table caret start=true -10:32 +1990: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag up retains committed text input -10:32 +1991: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph-ended drag cancel retains committed text input -10:33 +1992: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during clipboard preparation -10:33 +1993: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: a table context menu cannot follow a changed document during open menu -10:34 +1994: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=false -10:35 +1995: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: structured table fragment replaces selected table surrounded=true -10:36 +1996: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=false switching a reused editor captures outgoing document selection -10:36 +1997: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only reverse=true switching a reused editor captures outgoing document selection -10:36 +1998: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=false switching a reused editor captures outgoing document selection -10:37 +1999: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table reverse=true switching a reused editor captures outgoing document selection -10:37 +2000: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=false switching a reused editor captures outgoing document selection -10:38 +2001: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table reverse=true switching a reused editor captures outgoing document selection -10:38 +2002: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=false switching a reused editor captures outgoing document selection -10:40 +2003: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables reverse=true switching a reused editor captures outgoing document selection -10:40 +2004: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=false switching a reused editor captures outgoing document selection -10:41 +2005: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded reverse=true switching a reused editor captures outgoing document selection -10:41 +2006: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Cut edits only the selected table -10:42 +2007: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste edits only the selected table -10:42 +2008: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: document context menu Paste as Plain Text edits only the selected table -10:43 +2009: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=false -10:43 +2010: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: undo table deletion restores a real cell caret surrounded=true -10:43 +2011: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint up restores real typing -10:44 +2012: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: returning to an ordinary collapsed endpoint cancel restores real typing -10:44 +2013: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real Select All survives workspace session JSON and editor recreation -10:44 +2014: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-only real reverse drag survives workspace session JSON and editor recreation -10:45 +2015: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real Select All survives workspace session JSON and editor recreation -10:45 +2016: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: leading table real reverse drag survives workspace session JSON and editor recreation -10:45 +2017: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real Select All survives workspace session JSON and editor recreation -10:46 +2018: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: trailing table real reverse drag survives workspace session JSON and editor recreation -10:46 +2019: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real Select All survives workspace session JSON and editor recreation -10:46 +2020: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: consecutive tables real reverse drag survives workspace session JSON and editor recreation -10:47 +2021: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: paragraph local reverse selection restores locally -10:47 +2022: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cell local reverse selection restores locally -10:47 +2023: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target removed uses current-document fallback -10:47 +2024: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed kind uses current-document fallback -10:48 +2025: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: saved table target changed text uses current-document fallback -10:48 +2026: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned block drag -10:48 +2027: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated move and cancel preserve owned cell drag -10:48 +2028: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=false -10:48 +2029: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=false control=true -10:49 +2030: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=false -10:49 +2031: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: ordinary caret navigation preserves table traversal forward=true control=true -10:49 +2032: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Delete replaces the selected structured block and undoes -10:50 +2033: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Backspace replaces the selected structured block and undoes -10:50 +2034: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Cut replaces the selected structured block and undoes -10:50 +2035: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: Enter replaces the selected structured block and undoes -10:50 +2036: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: plain paste replaces the selected structured block and undoes -10:51 +2037: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table drag: structured paste replaces the selected structured block and undoes -10:51 +2038: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Delete replaces the selected structured block and undoes -10:51 +2039: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Backspace replaces the selected structured block and undoes -10:51 +2040: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Cut replaces the selected structured block and undoes -10:52 +2041: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: Enter replaces the selected structured block and undoes -10:52 +2042: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: plain paste replaces the selected structured block and undoes -10:52 +2043: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table Select All: structured paste replaces the selected structured block and undoes -10:52 +2044: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Delete replaces the selected structured block and undoes -10:53 +2045: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Backspace replaces the selected structured block and undoes -10:53 +2046: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Cut replaces the selected structured block and undoes -10:53 +2047: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: Enter replaces the selected structured block and undoes -10:53 +2048: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: plain paste replaces the selected structured block and undoes -10:54 +2049: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: surrounded drag: structured paste replaces the selected structured block and undoes -10:54 +2050: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -10:54 +2051: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -10:54 +2052: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -10:54 +2053: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: true true LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -10:54 +2054: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#860f3(keyId: "0x100000302", keyLabel: "Arrow Left", debugName: "Arrow Left") -10:55 +2055: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table endpoint arrow collapse: false false LogicalKeyboardKey#857a2(keyId: "0x100000303", keyLabel: "Arrow Right", debugName: "Arrow Right") -10:55 +2056: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: table-ended selection accepts actual committed Unicode input once -10:55 +2057: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: captured table selection restores highlighting copy and mutation -10:56 +2058: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-block drag without changing its endpoint -10:56 +2059: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: cancel releases cross-cell drag without changing its endpoint -10:56 +2060: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: unrelated pointer cannot complete an owned document drag -10:56 +2061: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Delete cannot edit a local fallback -10:57 +2062: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document Enter cannot edit a local fallback -10:57 +2063: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document plain paste cannot edit a local fallback -10:57 +2064: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document structured paste cannot edit a local fallback -10:57 +2065: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: rejected protected document typing cannot edit a local fallback -10:57 +2066: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: failed document deletion preserves redo history -10:58 +2067: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after failure -10:58 +2068: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after selection -10:58 +2069: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after document -10:59 +2070: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table paste is safe after disposal -10:59 +2071: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after failure -11:10 +2072: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after selection -11:11 +2073: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after document -11:11 +2074: /home/albert/busystack/busymark/test/src/wysiwyg_selection_lifecycle_test.dart: delayed table cut is safe after disposal -11:11 +2075: loading /home/albert/busystack/busymark/test/src/busymark_toast_test.dart -11:14 +2075: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast works when hosted above the Navigator -11:15 +2076: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast appears at the bottom center and dismisses itself -11:18 +2077: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toast action runs and dismisses the toast -11:18 +2078: /home/albert/busystack/busymark/test/src/busymark_toast_test.dart: toasts queue instead of covering each other -11:19 +2079: loading /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart -11:20 +2079: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames normalizes runs, edges, case, and Unicode once -11:20 +2080: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames disabled preprocessing preserves established safe characters -11:20 +2081: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: canonical Writerside web filenames resolves exact custom values per instance for Markdown and XML -11:20 +2082: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/default collision -11:21 +2083: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses default/custom collision -11:21 +2084: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses custom/custom collision -11:21 +2085: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics allows the same output name in disjoint instances -11:21 +2086: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics deduplicates repeated publication of one physical topic -11:21 +2087: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses a collision with an origin module topic -11:21 +2088: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics resolves conditioned names independently in each instance -11:21 +2089: /home/albert/busystack/busymark/test/src/writerside_web_file_name_test.dart: project instance URL diagnostics diagnoses invalid custom filenames before export -11:22 +2090: loading /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart -11:24 +2090: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover preference defaults off, serializes and copies independently -11:27 +2091: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: cover title and authors use the established metadata precedence -11:27 +2092: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: snapshot metadata, display text, explicit clears and plain JSON remain independent -11:27 +2093: /home/albert/busystack/busymark/test/src/pdf_title_page_test.dart: instance title uses its display name and only known project metadata -11:27 +2094: loading /home/albert/busystack/busymark/test/src/path_utils_test.dart -11:28 +2094: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries cancels a wide directory listing at the limit -11:28 +2095: /home/albert/busystack/busymark/test/src/path_utils_test.dart: maxTreeEntries counts directories against the scan budget -11:28 +2096: /home/albert/busystack/busymark/test/src/path_utils_test.dart: directory listing failure marks traversal incomplete -11:28 +2097: /home/albert/busystack/busymark/test/src/path_utils_test.dart: display scan includes hidden and unsupported entries but not VCS data -11:31 +2098: loading /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart -11:35 +2098: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses multiple commits -11:35 +2099: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses merge commit with multiple parents -11:35 +2100: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: preserves author punctuation and separator-like subject text -11:35 +2101: /home/albert/busystack/busymark/test/src/git/git_log_parser_test.dart: parses empty history -11:35 +2102: loading /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart -11:36 +2102: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses clean repository status -11:36 +2103: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses modified tracked file -11:36 +2104: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged modification -11:36 +2105: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses unstaged modification -11:36 +2106: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses staged and unstaged same file -11:36 +2107: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: keeps staged addition and working-tree deletion separate -11:36 +2108: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: tracks rename state independently in each status column -11:36 +2109: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses untracked file -11:36 +2110: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses deleted file -11:36 +2111: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses renamed file -11:36 +2112: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses copied file -11:36 +2113: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses conflicted files -11:36 +2114: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses branch header and ahead behind counts -11:36 +2115: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: parses detached head header -11:36 +2116: /home/albert/busystack/busymark/test/src/git/git_status_parser_test.dart: preserves spaces, unicode, quotes, and newlines in filenames -11:39 +2117: loading /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart -11:40 +2117: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: process-backed Git gateway requires workspace trust -11:40 +2118: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: configures a repository author identity without terminal setup -11:42 +2119: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: runs core workflow in a temporary Git repository -11:43 +2120: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status lists every non-ignored hidden untracked file -11:43 +2121: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: resets the current branch with each explicit Git reset mode -11:44 +2122: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: refuses to reset while HEAD is detached -11:45 +2123: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: keeps staged and unstaged comparisons separate -11:46 +2124: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged rename diff and unstage preserve both paths -11:46 +2125: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: rollback restores both sides of a staged rename to HEAD -11:47 +2126: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: staged addition deleted from the working tree keeps separate diffs -11:47 +2127: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: preserves complete deleted content and restores a deleted version -11:48 +2128: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: failed historical blob read cannot delete the working file -11:49 +2129: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: constructs complete text and binary comparisons for untracked files -11:49 +2130: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: direct working-tree operations reject intermediate symlink escapes -11:49 +2131: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: fetch updates remote-tracking status without changing files -11:50 +2132: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: follows renames, compares complete versions, and restores one file -11:51 +2133: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: compares a merge commit with its first parent -11:51 +2134: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: switch treats an option-like branch name as an operand -11:52 +2135: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff and commit details preserve C-quoted UTF-8 paths -11:53 +2136: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: pushSetUpstream does not broaden an option-like branch to --all -11:53 +2137: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: detects conflicted files in a temporary Git repository -11:53 +2138: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: status does not run a repository-configured filesystem monitor -11:54 +2139: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: diff APIs do not run a repository-configured textconv -11:54 +2140: /home/albert/busystack/busymark/test/src/git/git_cli_gateway_integration_test.dart: commit details do not run a repository-configured textconv -11:55 +2141: loading /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart -11:56 +2141: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner closes child stdin so commands waiting for EOF can finish -11:56 +2142: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates commands that exceed the combined output limit -11:56 +2143: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: normal gateway commands always receive a finite timeout -11:57 +2144: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: gateway classifies a missing commit author identity -11:57 +2145: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap packages the Linux process-group launcher -11:57 +2146: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap Git uses bundled helpers, templates, and SSH -11:57 +2147: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: snap launcher never falls back to the confined host setsid -11:57 +2148: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves process launcher failures -11:57 +2149: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator preserves a failed version probe result -11:57 +2150: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: Git locator reports not found for a genuinely missing command -11:57 +2151: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: runner terminates descendant processes when a command times out -11:59 +2152: /home/albert/busystack/busymark/test/src/git/git_process_runner_test.dart: timeout covers descendants that outlive the direct child and hold stdio -12:01 +2153: loading /home/albert/busystack/busymark/test/src/git/git_widget_test.dart -12:06 +2153: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: hunk range text hides raw unified diff markers -12:06 +2154: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes are grouped correctly -12:07 +2155: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file checkboxes select files for commit -12:08 +2156: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: a path with staged and unstaged changes appears in both groups -12:08 +2157: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AD path shows staged addition and unstaged deletion without open action -12:08 +2158: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: staged rename preserves both paths and workspace scope -12:09 +2159: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: rename paths follow the selected Git status column -12:09 +2160: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit panel reports staged count and unsaved editor state -12:09 +2161: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message uses the grouped multiline form surface -12:09 +2162: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft is a secondary button immediately before Commit -12:09 +2163: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: AI commit draft replaces text, trims it, and moves the cursor -12:10 +2164: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history requires an active Markdown file -12:10 +2165: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file action menu does not contain commit selection actions -12:10 +2166: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untracked file menu uses an explicit delete action -12:10 +2167: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: unsupported untracked files remain stageable but cannot open -12:10 +2168: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit section colors files by Git status -12:10 +2169: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: changes view commit panel commits staged files with message -12:11 +2170: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit remains disabled without staged files -12:11 +2171: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: multiline commit message is retained and committed verbatim -12:11 +2172: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: failed commit preserves the commit message -12:11 +2173: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: committing disables actions and retains text until success -12:11 +2174: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit message clears when repository or workspace changes -12:11 +2175: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: conflict group is visible -12:11 +2176: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: Git unavailable empty state is shown -12:11 +2177: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: untrusted workspace shows repository trust prompt -12:11 +2178: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view shows no repository sync strip when clean -12:11 +2179: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not show branch dropdown -12:12 +2180: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: commit view does not describe branch sync state -12:12 +2181: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: file history keeps comparison controls out of the sidebar -12:12 +2182: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history file rows show selected file diff -12:12 +2183: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: project history reset requires an explicit reset mode -12:13 +2184: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: dirty editor banner appears in diff viewer -12:13 +2185: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff hides duplicate file header but keeps open action -12:13 +2186: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action requires an explicit working-tree target -12:13 +2187: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff open action uses the explicit current path -12:13 +2188: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff keeps rename paths visible -12:13 +2189: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer renders patch rows with shared source view -12:13 +2190: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: embedded diff can hide hunk headers and file action -12:13 +2191: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source uses full file snapshot when available -12:13 +2192: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: deleted diff shows the complete removed file snapshot -12:13 +2193: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer scrolls to the first source change on open -12:14 +2194: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff viewer source rows use configured editor font size -12:14 +2195: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff context lines show old and new number columns -12:14 +2196: /home/albert/busystack/busymark/test/src/git/git_widget_test.dart: diff line numbers use source gutter geometry -12:14 +2197: loading /home/albert/busystack/busymark/test/src/git/git_controller_test.dart -12:15 +2197: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: diff open target follows the current working-tree context -12:15 +2198: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: refreshes after workspace attach -12:15 +2199: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: does not expose repository Git for a single Markdown file -12:15 +2200: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust-required gateway does not inspect workspace before trust -12:15 +2201: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clearing trust immediately revokes repository access -12:15 +2202: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: status failure after trust retains the detected repository -12:15 +2203: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: trust is scoped to the attached workspace -12:15 +2204: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: Git executes with the canonical path that was trusted -12:15 +2205: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stage and unstage update state -12:15 +2206: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: loads only the selected change comparison and reconciles after stage -12:15 +2207: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: routes untracked selections to the untracked comparison -12:15 +2208: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: staged rename comparison preserves the original path -12:15 +2209: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: rollback forwards every validated rename path -12:15 +2210: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reactivates an open change comparison tab -12:15 +2211: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks empty message -12:15 +2212: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: commit blocks when no files are staged -12:15 +2213: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: configures author identity through the active repository -12:15 +2214: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: AI staged-diff fingerprint rejects obsolete commit context -12:15 +2215: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: branch switch requires clean BusyMark editor state -12:15 +2216: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the active editor has unsaved content -12:15 +2217: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore is blocked while the current file is staged -12:15 +2218: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: restore protects a repository-relative file against the repository root -12:15 +2219: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset uses the selected commit and mode -12:15 +2220: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history reset is blocked by unsaved editor content -12:15 +2221: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: fetch refreshes repository status -12:15 +2222: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: reports Git unavailable state -12:15 +2223: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: stores operation failure state -12:15 +2224: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: exposes conflict state -12:15 +2225: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: clears previous workspace Git state immediately on attach -12:15 +2226: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale refresh results after workspace switch -12:15 +2227: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: cancels set-upstream push when the workspace changes during remote lookup -12:15 +2228: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: ignores stale history after a workspace switch -12:15 +2229: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: history tab reloads project history after workspace switch -12:15 +2230: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: current file history scopes selected commit details to the file -12:15 +2231: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file history switches between commit and working-tree comparisons -12:15 +2232: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project history loads selected commit details without a file scope -12:15 +2233: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: project commit details display the first changed file by default -12:15 +2234: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: selected commit file opens a project commit diff tab -12:15 +2235: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: closing a commit diff file tab activates the neighboring tab -12:15 +2236: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: deactivating a diff file keeps open diff tabs -12:15 +2237: /home/albert/busystack/busymark/test/src/git/git_controller_test.dart: file and project history paginate and retain separate selections -12:16 +2238: loading /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart -12:18 +2238: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: Enter submits Git identity and preserves global scope -12:19 +2239: /home/albert/busystack/busymark/test/src/git/git_author_identity_dialog_test.dart: failed commit saves identity and retries the same commit -12:20 +2240: loading /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart -12:21 +2240: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses added file -12:21 +2241: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses deleted file -12:21 +2242: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses modified file with line numbers -12:21 +2243: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses renamed file -12:21 +2244: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted UTF-8 paths emitted by Git -12:21 +2245: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: decodes C-quoted rename metadata emitted by Git -12:21 +2246: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses binary file marker -12:21 +2247: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: parses multiple hunks -12:21 +2248: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: keeps no newline marker as header line -12:21 +2249: /home/albert/busystack/busymark/test/src/git/git_diff_parser_test.dart: tolerates unknown diff header lines -12:21 +2250: loading /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart -12:25 +2250: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export failure dialog exposes actionable detail -12:26 +2251: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: PDF export eligibility is limited to active regular Markdown -12:26 +2252: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: workspace PDF export accepts a Writerside module instance -12:26 +2253: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: atomic PDF publication never replaces without confirmation -12:28 +2254: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: service rejects compiler output that is not a PDF -12:28 +2255: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler locator prefers the explicit development override -12:28 +2256: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: compiler cancellation force-stops an unresponsive process -12:29 +2257: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: asset staging accepts passive SVG and rejects external content -12:29 +2258: /home/albert/busystack/busymark/test/src/markdown_pdf_export_test.dart: Linux packaging pins and installs the bundled Typst compiler -12:29 +2259: loading /home/albert/busystack/busymark/test/src/source_search_test.dart -12:29 +2259: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex uses Unicode code points and diagnoses zero-length matches -12:29 +2260: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace-style bounded matching stops after the sentinel match -12:29 +2261: /home/albert/busystack/busymark/test/src/source_search_test.dart: search worker terminates a running backtracking expression -12:29 +2262: /home/albert/busystack/busymark/test/src/source_search_test.dart: plain search finds case-insensitive matches by default -12:29 +2263: /home/albert/busystack/busymark/test/src/source_search_test.dart: case-sensitive and whole-word options constrain matches -12:29 +2264: /home/albert/busystack/busymark/test/src/source_search_test.dart: whole-word boundaries recognize Unicode letters and marks -12:29 +2265: /home/albert/busystack/busymark/test/src/source_search_test.dart: regex search and invalid regex are safe -12:29 +2266: /home/albert/busystack/busymark/test/src/source_search_test.dart: navigation tracks current index and wraps -12:29 +2267: /home/albert/busystack/busymark/test/src/source_search_test.dart: matches inside folded content are marked hidden and revealable -12:29 +2268: /home/albert/busystack/busymark/test/src/source_search_test.dart: workspace search groups authoring content by file -12:29 +2269: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker cancels stale requests -12:29 +2270: /home/albert/busystack/busymark/test/src/source_search_test.dart: source search worker bounds transferred high-match results -12:29 +2271: loading /home/albert/busystack/busymark/test/src/source_commands_test.dart -12:32 +2271: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab inserts spaces -12:32 +2272: /home/albert/busystack/busymark/test/src/source_commands_test.dart: tab indents selected lines without replacing their text -12:32 +2273: /home/albert/busystack/busymark/test/src/source_commands_test.dart: indent and outdent selected lines -12:32 +2274: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter continues unordered ordered task and blockquote lines -12:32 +2275: /home/albert/busystack/busymark/test/src/source_commands_test.dart: smart Enter exits empty list item -12:32 +2276: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts for nested source lines -12:32 +2277: /home/albert/busystack/busymark/test/src/source_commands_test.dart: ordered list numbering restarts beneath each source parent -12:32 +2278: /home/albert/busystack/busymark/test/src/source_commands_test.dart: inline commands toggle bold italic code and links -12:32 +2279: /home/albert/busystack/busymark/test/src/source_commands_test.dart: code fence and image insertion keep source-specific placeholders -12:32 +2280: /home/albert/busystack/busymark/test/src/source_commands_test.dart: block insertion accepts localized default content -12:32 +2281: loading /home/albert/busystack/busymark/test/src/source_highlighter_test.dart -12:35 +2281: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: source highlighting bounds high-match span composition -12:35 +2282: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter colors editor syntax -12:35 +2283: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown source highlighter formats fenced code -12:35 +2284: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter tracks dynamic fence delimiters -12:35 +2285: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter does not open on indented code -12:35 +2286: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: xml source highlighter colors tags attributes and strings -12:35 +2287: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: plain source highlighter keeps normal editor text color -12:35 +2288: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: controller can keep editable text transparent for custom render -12:35 +2289: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: transparent editing layout matches rendered Markdown layout -12:35 +2290: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions project body lines out of editable text -12:35 +2291: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: rendered folded regions hide collapsed header text -12:35 +2292: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: folded regions collapse measured editor height -12:35 +2293: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown editor keeps syntax markers visible while styling content -12:35 +2294: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: visual markdown tracks dynamic fence delimiters -12:35 +2295: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges nested emphasis inside links -12:36 +2296: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps inline code inside list items -12:36 +2297: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges bold and italic nesting -12:36 +2298: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter merges links inside blockquotes -12:36 +2299: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter keeps emphasis inside table cells -12:36 +2300: /home/albert/busystack/busymark/test/src/source_highlighter_test.dart: markdown highlighter recognizes math without damaging code -12:36 +2301: loading /home/albert/busystack/busymark/test/src/html_export_options_test.dart -12:37 +2301: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: TOC and numbering use the semantic hierarchy and preserve anchor IDs -12:39 +2302: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.light emits complete color variables, responsive width and metadata -12:39 +2303: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.dark emits complete color variables, responsive width and metadata -12:39 +2304: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlExportTheme.automatic emits complete color variables, responsive width and metadata -12:39 +2305: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: custom CSS follows generated rules and is captured before processing -12:39 +2306: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF CSS hashes the text seen by the HTML parser -12:39 +2307: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: LF custom and built-in CSS apply in Chromium -12:44 +2308: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF CSS hashes the text seen by the HTML parser -12:44 +2309: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CRLF custom and built-in CSS apply in Chromium -12:45 +2310: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR CSS hashes the text seen by the HTML parser -12:45 +2311: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CR custom and built-in CSS apply in Chromium -12:46 +2312: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: single-file attachments retain download names and reject source data URLs -12:46 +2313: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: CSS rejects unsafe URLs, imports, HTML, unreadable and oversized files -12:46 +2314: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: repeated embedded assets are bounded before publication and keep old output -12:46 +2315: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.singleFile packages validated assets without source paths or fetching -12:46 +2316: /home/albert/busystack/busymark/test/src/html_export_options_test.dart: HtmlPackaging.assetsDirectory packages validated assets without source paths or fetching -12:46 +2317: loading /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart -12:49 +2317: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: navigation glyphs resolve for both reading directions -12:49 +2318: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: editing glyphs resolve for both reading directions -12:49 +2319: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git branch glyph does not mirror with reading direction -12:49 +2320: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Git action glyphs have native menu equivalents -12:49 +2321: /home/albert/busystack/busymark/test/src/rtl_glyphs_test.dart: Arabic and Persian font fallbacks are available in the snap -12:49 +2322: loading /home/albert/busystack/busymark/test/src/source_comparison_test.dart -12:49 +2322: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: keeps separated edits as exact separate changes -12:49 +2323: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: handles repeated lines without losing exact offsets -12:49 +2324: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: refines Unicode intraline ranges on UTF-16 boundaries -12:49 +2325: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: distinguishes whitespace, final newline, empty, and XML changes -12:49 +2326: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: labels an unanchored expensive comparison as simplified -12:49 +2327: /home/albert/busystack/busymark/test/src/source_comparison_test.dart: version identity detects stale comparison inputs -12:49 +2328: loading /home/albert/busystack/busymark/test/src/writerside_project_test.dart -12:52 +2328: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers modules, indexes symbols, and resolves origin references -12:52 +2329: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under build -12:52 +2330: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: discovers and loads a module under a hidden directory -12:52 +2331: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: module discovery hard-excludes VCS metadata directories -12:52 +2332: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic ownership is project-wide and prefers the nested module -12:52 +2333: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace promotes a parent directory to a multi-module project -12:53 +2334: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: topic symbols cannot be renamed independently of their files -12:53 +2335: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: workspace module and instance selection changes active context -12:53 +2336: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse overlays indexed symbols and preserves unrelated diagnostics -12:53 +2337: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of variables updates completion and resolution without reopening -12:53 +2338: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: reparse of an instance tree updates active project context -12:53 +2339: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: BusyMark matches the official builder semantic snapshot for the fixture -12:53 +2340: /home/albert/busystack/busymark/test/src/writerside_project_test.dart: conformance fixture preserves source and resolves semantic content -12:53 +2341: loading /home/albert/busystack/busymark/test/src/math_renderer_test.dart -12:54 +2341: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: renders multiple expressions in one batch and isolates failure -12:55 +2342: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: coalesces a large page, caches successes, and rebases local IDs -12:56 +2343: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: deduplicates identical formulas pending in the same batch -12:56 +2344: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: discards an obsolete block revision -12:56 +2345: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: cancels WebKit work after a sole request is superseded -12:56 +2346: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: maps timeout and unavailable hosts to local math failures -12:56 +2347: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rejects oversized input before invoking WebKit -12:56 +2348: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: extracts baseline style and preserves vector-safe MathJax SVG -12:56 +2349: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: resolves currentColor without flattening explicit SVG colors -12:56 +2350: /home/albert/busystack/busymark/test/src/math_renderer_test.dart: rebases wide MathJax coordinates before secure normalization -12:56 +2351: loading /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart -12:56 +2351: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: stages vector/raster assets, maps OpenAPI, and preserves failed source -12:58 +2352: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: enforces the export block count without failing the document -12:58 +2353: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: loads a Writerside referenced diagram before PDF rendering -12:59 +2354: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: static OpenAPI export contains selectable reference sections -12:59 +2355: /home/albert/busystack/busymark/test/src/markdown_visualization_export_test.dart: Typst exports generated vector/raster assets and falls back on failure -12:59 +2356: loading /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart -12:59 +2356: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: parses every GTK 3 decoration token in physical order -12:59 +2357: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: ignores unknown controls and actions safely -12:59 +2358: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: loads preferences and delegates the narrowly scoped lower action -12:59 +2359: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: window preference values have stable equality -12:59 +2360: /home/albert/busystack/busymark/test/src/gtk_window_preferences_service_test.dart: null decoration layout uses the documented GTK 3 default -12:59 +2361: loading /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart -13:02 +2361: /home/albert/busystack/busymark/test/src/visualization_release_smoke_test.dart: release smoke report path requires an explicit nonempty argument -13:02 +2362: loading /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart -13:06 +2362: /home/albert/busystack/busymark/test/src/spelling_release_smoke_test.dart: spelling release smoke requires an explicit guarded report path -13:06 +2363: loading /home/albert/busystack/busymark/test/src/system_accent_test.dart -13:11 +2363: /home/albert/busystack/busymark/test/src/system_accent_test.dart: uses the native Yaru orange accent as the offline fallback -13:11 +2364: /home/albert/busystack/busymark/test/src/system_accent_test.dart: keeps exact RGB portal accent color values authoritative -13:11 +2365: /home/albert/busystack/busymark/test/src/system_accent_test.dart: maps Ubuntu accent names when RGB portal value is unavailable -13:11 +2366: /home/albert/busystack/busymark/test/src/system_accent_test.dart: falls back to RGB when the Ubuntu accent is unavailable -13:11 +2367: /home/albert/busystack/busymark/test/src/system_accent_test.dart: Yaru accent wins over a different generic portal RGB -13:11 +2368: /home/albert/busystack/busymark/test/src/system_accent_test.dart: a Yaru accent signal remains authoritative over generic RGB -13:11 +2369: /home/albert/busystack/busymark/test/src/system_accent_test.dart: an unavailable named accent releases the current generic RGB -13:11 +2370: /home/albert/busystack/busymark/test/src/system_accent_test.dart: portal subscribes before both reads and retains changes during reads -13:11 +2371: /home/albert/busystack/busymark/test/src/system_accent_test.dart: missing portal keys, malformed signals, cancellation and resubscription -13:11 +2372: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic portal initialization cannot overwrite a newer generic change -13:11 +2373: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=true; unavailability selects current portal -13:11 +2374: /home/albert/busystack/busymark/test/src/system_accent_test.dart: GTK wins with gtkFirst=false; unavailability selects current portal -13:11 +2375: /home/albert/busystack/busymark/test/src/system_accent_test.dart: source errors remain independent and healthy native updates continue -13:11 +2376: /home/albert/busystack/busymark/test/src/system_accent_test.dart: startup changes supersede native snapshots, including unavailable changes -13:11 +2377: /home/albert/busystack/busymark/test/src/system_accent_test.dart: disposal completes pending startup and cancels each owned source once -13:11 +2378: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid GTK releases startup while portal reads stay pending -13:12 +2379: /home/albert/busystack/busymark/test/src/system_accent_test.dart: generic signal cannot resolve startup before pending named read -13:12 +2380: /home/albert/busystack/busymark/test/src/system_accent_test.dart: valid named portal releases startup without pending RGB -13:12 +2381: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending GTK blocks ready portal until GTK arrives before deadline -13:12 +2382: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on unavailable -13:12 +2383: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on failure -13:12 +2384: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending named releases retained RGB on deadline -13:12 +2385: /home/albert/busystack/busymark/test/src/system_accent_test.dart: all silent sources time out to orange and late sources recover -13:12 +2386: /home/albert/busystack/busymark/test/src/system_accent_test.dart: pending initialization disposal cancels timers and portal session once -13:12 +2387: loading /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart -13:12 +2387: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=false section order and native links -13:13 +2388: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=false toc=true section order and native links -13:14 +2389: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=false section order and native links -13:14 +2390: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Markdown: cover=true toc=true section order and native links -13:14 +2391: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=false section order and native links -13:14 +2392: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=false toc=true section order and native links -13:14 +2393: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=false section order and native links -13:14 +2394: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Writerside: cover=true toc=true section order and native links -13:15 +2395: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: multipage native outline ends before any body paragraphs; links and page references stay correct -13:15 +2396: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=bottomCenter -13:15 +2397: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=false numbers=off -13:15 +2398: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=bottomCenter -13:16 +2399: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover suppresses running text, physical first=true numbers=off -13:16 +2400: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif portrait margins -13:16 +2401: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within sansSerif landscape margins -13:16 +2402: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif portrait margins -13:17 +2403: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: cover wraps Unicode and multiline metadata within serif landscape margins -13:17 +2404: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: request defaults come from source metadata and native outline title stays localized -13:17 +2405: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: an oversized cover fails clearly and leaves the existing PDF untouched -13:17 +2406: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in sansSerif -13:17 +2407: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: Chinese cover without spaces wraps onto two lines in serif -13:20 +2408: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+a0 fails without replacing the PDF -13:20 +2409: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: CJK non-breaking sequence U+2060 fails without replacing the PDF -13:21 +2410: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within A4 cover bounds or fails without replacing the PDF -13:21 +2411: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within A4 cover bounds or fails without replacing the PDF -13:21 +2412: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within A4 cover bounds or fails without replacing the PDF -13:22 +2413: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within A4 cover bounds or fails without replacing the PDF -13:22 +2414: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within A4 cover bounds or fails without replacing the PDF -13:23 +2415: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within A4 cover bounds or fails without replacing the PDF -13:24 +2416: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken title stays within narrow custom cover bounds or fails without replacing the PDF -13:24 +2417: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken subtitle stays within narrow custom cover bounds or fails without replacing the PDF -13:24 +2418: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken author stays within narrow custom cover bounds or fails without replacing the PDF -13:24 +2419: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken organization stays within narrow custom cover bounds or fails without replacing the PDF -13:24 +2420: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken version stays within narrow custom cover bounds or fails without replacing the PDF -13:24 +2421: /home/albert/busystack/busymark/test/src/pdf_front_matter_render_test.dart: unbroken date stays within narrow custom cover bounds or fails without replacing the PDF -13:24 +2422: loading /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart -13:25 +2422: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: workspace spelling UI has no obsolete floating or Material chooser -13:25 +2423: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Writerside nested TOC and comment retain rich spelling through correction -13:31 +2424: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich image review preserves authored source through undo and redo -13:33 +2425: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested code image beside math through undo and redo -13:36 +2426: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: rich review preserves nested address image beside math through undo and redo -13:38 +2427: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: Ctrl+N typing paints live spelling targets and corrects with undo -13:40 +2428: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: confirmed spelling underline survives continued typing -13:41 +2429: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo café - -wrld - -13:43 +2430: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: helo -world - -wrld - -13:46 +2431: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: real rich review retains later visits after serialization: | helo café | -| --- | -| hello | - -wrld - -13:48 +2432: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in editor -13:49 +2433: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: missing dictionary uses one integrated banner in split -13:49 +2434: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: language-required state uses compact document status instead of a banner -13:51 +2435: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: general Markdown fixture finishes automatic rich spelling -13:57 +2436: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in editor -13:58 +2437: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: pasted formatted job finishes automatic spelling in source -13:59 +2438: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new rich document checks spelling after choosing its language -14:00 +2439: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: new source document checks spelling after choosing its language -14:02 +2440: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in editor mode -14:02 +2441: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in source mode -14:03 +2442: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in preview mode -14:04 +2443: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: uses one document status strip in split mode -14:04 +2444: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: spelling-off status remains an actionable language control -14:06 +2445: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: status initializes the chooser when automatic spelling is off -14:07 +2446: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: banner installs the required dictionary and then conceals -14:09 +2447: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed banner installation keeps the unresolved state -14:10 +2448: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: routine checking does not create persistent editor chrome -14:10 +2449: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic spelling failure is visible in the compact banner -14:11 +2450: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: automatic incomplete projection is visible in the compact banner -14:11 +2451: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: native spelling submenu applies immediate language choices -14:12 +2452: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: cancelling document dictionary install preserves override -14:13 +2453: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: document language changes only after dictionary installation -14:16 +2454: /home/albert/busystack/busymark/test/src/spelling_workspace_test.dart: failed document dictionary install preserves override -14:17 +2455: loading /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart -14:18 +2455: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: native fragment preserves formatting and structured blocks through JSON -14:18 +2456: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: single rich paragraphs preserve list descendants through source -14:18 +2457: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: fragment rejects invalid versions, ranges, kinds, and excessive nesting -14:18 +2458: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: relative links are rebased for another document -14:18 +2459: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: inline images retain their source media path between projects -14:18 +2460: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Writerside structure survives the fragment and insertion -14:18 +2461: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: styled table-cell insertion preserves emphasis and table structure -14:18 +2462: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard service serializes writes and reads the latest result -14:18 +2463: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard HTML carries headings, emphasis, tasks, tables, and code -14:18 +2464: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: external HTML blockquotes survive Editor serialization -14:18 +2465: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: clipboard fragment serializes its selected structure as Markdown -14:18 +2466: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: HTML normalization preserves supported CSS and checkbox state safely -14:18 +2467: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=false) -14:20 +2468: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL paste then ordinary Enter recognizes a live link (plainText=true) -14:20 +2469: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix < survives Enter, source reload and label edit -14:20 +2470: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix *< survives Enter, source reload and label edit -14:21 +2471: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL suffix * survives Enter, source reload and label edit -14:21 +2472: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: © -14:22 +2473: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: & -14:22 +2474: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard text-only URL character-reference suffix survives Enter and reopening: &* -14:22 +2475: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=false) -14:22 +2476: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard formatting only a pasted URL suffix preserves the boundary (nested=true) -14:23 +2477: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard pasted URL retains live link coverage through split, Backspace and suffix formatting -14:23 +2478: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard fresh Editor restores system clipboard formatting and undo -14:24 +2479: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor pastes a web layout table as a complete document -14:24 +2480: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete heading list and code blocks retain structure at every paragraph position -14:25 +2481: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard complete blocks in list items preserve descendants and undo tree -14:26 +2482: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard single rich paragraph field replacement preserves every list subtree -14:27 +2483: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste keeps the committed caret and typing position -14:27 +2484: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard rich paste in math fields uses source coordinates -14:27 +2485: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste returns the committed block caret -14:28 +2486: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard math structural paste preserves list descendants through Undo and Redo -14:28 +2487: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste persists intentional whitespace through history -14:28 +2488: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document paste preserves whitespace and heading replacement scope -14:29 +2489: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history rich paste restores table-cell focus and committed caret -14:29 +2490: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history multi-paragraph paste focuses the committed last paragraph -14:29 +2491: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copy all does not duplicate nested list children -14:29 +2492: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard whole-document copy preserves a structured blockquote -14:29 +2493: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard right-click opens the menu for a whole-document selection -14:30 +2494: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image-only clipboard context menu offers only normal Paste -14:30 +2495: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Copy Plain Text strips formatting in another Editor -14:30 +2496: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard document selection menu can copy plain text -14:30 +2497: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard partial inline copy keeps formatting inside another paragraph -14:30 +2498: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut transfers formatting before deleting the selection -14:31 +2499: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard malformed native fragment falls back to HTML -14:31 +2500: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML-only clipboard imports into a fresh Editor -14:31 +2501: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard HTML clipboard plain paste inserts only its text -14:31 +2502: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard retained external HTML preserves structure on history paste -14:31 +2503: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard current HTML-only and malformed HTML use ordinary importer fallbacks -14:32 +2504: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard external image history retains the bytes ingested before its dialog -14:36 +2505: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard history panel path paste has one editor-owned retention write -14:40 +2506: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard copied local video can be pasted from history in Editor -14:40 +2507: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image paste cancellation is terminal and cleans new assets -14:47 +2508: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image picker alternatives stay provisional until acceptance -14:58 +2509: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image finalization failure preserves the inserted reference and file -14:59 +2510: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard native and history image filesystem failures are handled outcomes -15:00 +2511: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain history paste replaces a document selection ending at a non-field block -15:00 +2512: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard image history follows table and multi-block destinations -15:03 +2513: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Ctrl+Shift+V pastes only interoperable plain text -15:03 +2514: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard plain paste never probes or ingests an existing image path -15:03 +2515: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard failed clipboard write leaves cut selection intact -15:03 +2516: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste does not edit a destination changed during the read -15:03 +2517: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard Editor paste preserves composition before and during reads -15:03 +2518: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard table-cell paste shortcut is consumed during composition -15:03 +2519: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard composition starting during image ingestion invalidates and cleans paste -15:05 +2520: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard cut does not delete a selection changed during the write -15:05 +2521: /home/albert/busystack/busymark/test/src/wysiwyg_clipboard_test.dart: Editor clipboard paste is cancelled when the destination Editor is replaced -15:05 +2522: loading /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart -15:06 +2522: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed light surface palette -15:06 +2523: /home/albert/busystack/busymark/test/src/surface_palette_render_test.dart: renders the reviewed dark surface palette -15:07 +2524: loading /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart -15:09 +2524: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title edit preserves the resolved topic owner across modules -15:11 +2525: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ") -15:11 +2526: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ") -15:12 +2527: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (1, ') -15:12 +2528: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (1, ') -15:12 +2529: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ") -15:12 +2530: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ") -15:12 +2531: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: multiline quoted titles change and clear safely (2, ') -15:12 +2532: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: clearing a multiline TOC override removes the existing attribute (2, ') -15:13 +2533: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: normalized title identity still rejects changed content and raw matching stays exact -15:13 +2534: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects missing attribute ranges before publication -15:13 +2535: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title transaction rejects corrupt attribute ranges before publication -15:13 +2536: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: title publication rejects duplicate attributes in resulting XML -15:13 +2537: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (") -15:13 +2538: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: semantic Markdown instance titles ignore fenced examples and decode once (') -15:13 +2539: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: instance title save, reopen, unchanged OK, and edit keep one escaping layer -15:14 +2540: /home/albert/busystack/busymark/test/src/writerside_title_regressions_test.dart: single-quoted Markdown override reopens decoded and edits without touching example -15:15 +2541: loading /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart -15:15 +2541: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: production provider consumes an older GTK accent without portals -15:16 +2542: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: non-Linux never creates platform listeners -15:16 +2543: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: missing native snapshot uses portal, then native events regain priority -15:16 +2544: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: GTK with silent portals -15:16 +2545: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: named with silent RGB -15:16 +2546: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK before deadline -15:17 +2547: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending GTK at deadline -15:17 +2548: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes valid -15:17 +2549: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named becomes unavailable -15:17 +2550: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: pending named at deadline -15:17 +2551: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: first application frame and live light/dark themes: all silent at deadline -15:17 +2552: /home/albert/busystack/busymark/test/src/linux_accent_provider_test.dart: application scope teardown cancels unresolved startup deadlines -15:17 +2553: loading /home/albert/busystack/busymark/test/src/markdown_parser_test.dart -15:22 +2553: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parsed formatting boundaries -15:22 +2554: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping locates partially consumed delimiter runs -15:22 +2555: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping retains escaped collapsed references -15:22 +2556: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping keeps original autolink semantics -15:22 +2557: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping preserves supported autolink variants -15:22 +2558: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: inline source mapping uses parser case folding for references -15:22 +2559: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: ordinary reference parsing retains pinned sharp-S folding behavior -15:22 +2560: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: invalid email-like text cannot orphan a later mapped link -15:22 +2561: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects logical content to container source -15:22 +2562: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: positioned block mapping accepts a trailing empty logical line -15:22 +2563: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping ignores title and code-span source breaks -15:22 +2564: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping keeps each hard-break occurrence range -15:22 +2565: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping matches standalone HTML break layout -15:22 +2566: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: block inline mapping projects HTML break layout through containers -15:22 +2567: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: HTML break layout mapping preserves soft breaks and literal code -15:22 +2568: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts title, outline, links, images, and code fences -15:22 +2569: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts front matter title -15:22 +2570: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside Markdown title comes from H1, not front matter -15:22 +2571: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Writerside front matter title does not satisfy missing H1 -15:22 +2572: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: parseAsync handles documents above the background threshold -15:22 +2573: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates Unicode heading anchors for supported languages -15:22 +2574: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deduplicates generated heading IDs in source order -15:22 +2575: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: generates heading IDs from semantic inline text -15:22 +2576: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: canonicalizes valid ATX and setext heading variants -15:22 +2577: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: retains Writerside title when complex list source needs fallback -15:22 +2578: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unresolved links, missing images, and missing alt text -15:22 +2579: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not validate schemed URIs as local references -15:22 +2580: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: resolves home-relative local image references -15:22 +2581: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: derives diagnostic links and images from Markdown AST semantics -15:22 +2582: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: normal Markdown image diagnostics stay within the workspace root -15:22 +2583: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local reference diagnostics allow absolute images but reject other escapes -15:22 +2584: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: cross-linked Markdown anchor validation does not recurse forever -15:22 +2585: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation stays inside the workspace root -15:22 +2586: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read unsupported anchor targets -15:22 +2587: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: local link validation does not read oversized Markdown targets -15:22 +2588: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: detects unsafe raw HTML -15:22 +2589: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe raw HTML does not produce unsafe diagnostics -15:22 +2590: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: Markdown headings inside paired raw HTML are not outline headings -15:22 +2591: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML tags produce unsafe diagnostics -15:22 +2592: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML attributes produce unsafe diagnostics -15:22 +2593: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: unsafe raw HTML URLs produce unsafe diagnostics -15:22 +2594: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: deeply nested raw HTML produces unsafe diagnostic -15:22 +2595: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: safe HTML tags do not become Writerside XML blocks -15:23 +2596: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: extracts Writerside Markdown XML blocks and variables -15:23 +2597: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: emits deterministic Markdown accessibility diagnostics -15:23 +2598: /home/albert/busystack/busymark/test/src/markdown_parser_test.dart: does not report populated table headers as empty -15:23 +2599: loading /home/albert/busystack/busymark/test/src/feedback_submission_test.dart -15:26 +2599: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator requires category and enforces subject and message bounds -15:26 +2600: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts inclusive subject and message boundaries -15:26 +2601: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects oversized fields and invalid optional email -15:26 +2602: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator counts Unicode code points at subject and message boundaries -15:26 +2603: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator accepts practical valid email syntax -15:26 +2604: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackValidator rejects malformed email syntax and length boundaries -15:26 +2605: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes required metadata and omits unapproved details -15:26 +2606: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission serializes only explicitly approved technical details -15:26 +2607: /home/albert/busystack/busymark/test/src/feedback_submission_test.dart: FeedbackSubmission uses every declared category wire value -15:26 +2608: loading /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart -15:26 +2608: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter owns application chrome; native bridge carries no split geometry -15:26 +2609: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Workspace, Welcome and Settings use the shared full-height frame -15:26 +2610: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native clipboard, menus, Writerside media and rendering hosts remain registered -15:26 +2611: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Linux desktop identity uses the standard Snap launcher mapping -15:26 +2612: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: strict Snap keeps the GTK SVG loader ABI-aligned with GNOME -15:26 +2613: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder stages bundled Git tools -15:26 +2614: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local repack replaces clean-snap font links with new bundle fonts -15:28 +2615: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: confined dependency checks reject missing and wrong resolutions -15:29 +2616: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap reuses verified platform libraries and retains private tools -15:29 +2617: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder uses the project Flutter toolchain -15:29 +2618: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snapcraft pins the same Flutter release as the project -15:29 +2619: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: local snap builder keeps compiler output off the system tmpfs -15:29 +2620: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Flutter content menus use native GTK popup menu semantics -15:29 +2621: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native content menus clean up direct GTK popup sessions -15:29 +2622: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: Snap packaging hooks consolidate resources and keep required fixes -15:29 +2623: /home/albert/busystack/busymark/test/src/native_headerbar_audit_test.dart: native GTK theme follows brightness without replacing a valid user theme -15:29 +2624: loading /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart -15:30 +2624: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: valid native fragment wins over HTML and text -15:30 +2625: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: malformed native fragment falls through to valid HTML -15:30 +2626: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: unusable HTML falls through to source and plain text -15:30 +2627: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: HTML-only blockquotes are usable through descendant content -15:30 +2628: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: mixed external HTML preserves every block for Editor and Markdown Source -15:30 +2629: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode uses only interoperable text -15:30 +2630: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: plain mode rejects source-only and image-only payloads -15:30 +2631: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: whitespace text is valid and empty text is unavailable -15:30 +2632: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: explicit image is first in normal mode -15:30 +2633: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: Editor and Source use their required textual fallback order -15:30 +2634: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: structured source serialization accepts the destination mode -15:30 +2635: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: native inline serialization preserves whitespace without a newline -15:30 +2636: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: table-cell fragment serialization escapes pipes and flattens lines -15:30 +2637: /home/albert/busystack/busymark/test/src/clipboard_paste_resolver_test.dart: local image path detection is safe and rejects altered URI meaning -15:30 +2638: loading /home/albert/busystack/busymark/test/src/uri_utils_test.dart -15:32 +2638: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: external launch policy is an explicit safe-list -15:32 +2639: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: scheme detection remains broader than launch policy -15:32 +2640: /home/albert/busystack/busymark/test/src/uri_utils_test.dart: remote resources only allow http and https -15:32 +2641: loading /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart -15:35 +2641: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger aggregates locally by month and provider -15:37 +2642: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: usage ledger starts a clean aggregate in a new month -15:37 +2643: /home/albert/busystack/busymark/test/src/ai_usage_store_test.dart: malformed ledger data is treated as empty, not surfaced -15:37 +2644: loading /home/albert/busystack/busymark/test/src/busymark_design_test.dart -15:39 +2644: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch suppresses state halos and preserves focus borders -15:40 +2645: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in dark -15:40 +2646: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in dark -15:40 +2647: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows blue track states in light -15:40 +2648: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: checked switch follows purple track states in light -15:40 +2649: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: disabled switch preserves inherited disabled styling -15:40 +2650: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch row owns its control and activates exactly once -15:40 +2651: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: switch preserves Yaru drag activation -15:40 +2652: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: radio suppresses state halos and preserves focus borders -15:41 +2653: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in dark -15:41 +2654: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in dark -15:41 +2655: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows blue accent states in light -15:41 +2656: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: selected radio follows purple accent states in light -15:41 +2657: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: informational dialog keeps the close control at the right edge -15:41 +2658: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: Split Preview stays fluid without copying Source-only chrome -15:41 +2659: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: document frame centers wide content and honors physical safe edges -15:41 +2660: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: toolbar clearance is applied only to the toolbar edge -15:41 +2661: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar header and list compose the shared vertical gap -15:41 +2662: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header controls delegate geometry and elevation to Yaru -15:41 +2663: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dark header menu delegates its tooltip to IconButton -15:41 +2664: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: settings dropdowns use the framework tooltip -15:41 +2665: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: desktop tooltips use one explicit natural-width geometry -15:41 +2666: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: popup menu rows show shortcuts without redundant hover tooltips -15:41 +2667: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup sends shortcuts and separators to GTK and maps selection -15:42 +2668: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: colored popup icons stay on the native menu path -15:42 +2669: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: header popup preserves asynchronous menu loading -15:42 +2670: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic theme retains Yaru geometry, typography, and interaction -15:42 +2671: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: accent controls use the native Yaru foreground and fill roles -15:42 +2672: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic surfaces use one modern neutral Linux role ladder -15:42 +2673: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: equal-choice segmented selection stays neutral -15:42 +2674: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped cards use native boxed-list depth and roles -15:42 +2675: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped list headings use the native semantic heading style -15:42 +2676: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner uses semantic surfaces in light and dark -15:42 +2677: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner animates its mounted layout height -15:42 +2678: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: contextual banner reveal honors reduced motion -15:42 +2679: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog grouped cards resolve the contextual native layer -15:42 +2680: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native dark hover role -15:42 +2681: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped rows use the native light hover role -15:42 +2682: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped row subtitles use semantic native text roles -15:42 +2683: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog roles and popup selectors use real themed buttons -15:42 +2684: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in dark -15:43 +2685: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: WYSIWYG toolbar uses accent controls in light -15:44 +2686: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: dialog actions wrap at narrow localized text widths -15:44 +2687: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: action rows use semantic destructive foreground in light and dark themes -15:44 +2688: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: shared text-entry group delegates fields to the framework -15:44 +2689: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry uses the native row-owned form surface -15:44 +2690: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: grouped text entry forwards readOnly without disabling input -15:44 +2691: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: semantic standard icon button delegates to FilledButton.icon -15:44 +2692: /home/albert/busystack/busymark/test/src/busymark_design_test.dart: sidebar surface owns one directional semantic boundary -15:44 +2693: loading /home/albert/busystack/busymark/test/src/source_document_test.dart -15:45 +2693: /home/albert/busystack/busymark/test/src/source_document_test.dart: empty document mapping is stable -15:45 +2694: /home/albert/busystack/busymark/test/src/source_document_test.dart: no-fold mapping preserves offsets and ranges -15:45 +2695: /home/albert/busystack/busymark/test/src/source_document_test.dart: single fold projects visible text and maps offsets -15:45 +2696: /home/albert/busystack/busymark/test/src/source_document_test.dart: fold-boundary selection mapping preserves direction, not coverage -15:45 +2697: /home/albert/busystack/busymark/test/src/source_document_test.dart: multiple adjacent and overlapping ranges normalize safely -15:45 +2698: /home/albert/busystack/busymark/test/src/source_document_test.dart: full and visible ranges report hidden clipping -15:45 +2699: /home/albert/busystack/busymark/test/src/source_document_test.dart: CRLF line endings keep line starts and projection correct -15:45 +2700: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits before and after folds preserve unrelated folds -15:45 +2701: /home/albert/busystack/busymark/test/src/source_document_test.dart: full editing values preserve composing through folded projection -15:45 +2702: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edits incrementally retain unaffected line entries -15:45 +2703: /home/albert/busystack/busymark/test/src/source_document_test.dart: incremental line indexes match full indexes across line-break edits -15:45 +2704: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible edit intersecting a fold unfolds only affected region -15:45 +2705: /home/albert/busystack/busymark/test/src/source_document_test.dart: collapsed-boundary insertion preserves hidden folded content -15:45 +2706: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible insertions before and after a fold keep hidden text -15:45 +2707: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible deletions near a fold keep hidden text -15:45 +2708: /home/albert/busystack/busymark/test/src/source_document_test.dart: visible replacement spanning a fold replaces the hidden range -15:45 +2709: loading /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart -15:47 +2709: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: uses each heading level effective text size for inline math -15:50 +2710: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: custom typography and four margins control actual math jobs -15:50 +2711: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: prepares inline and display math as deterministic vector assets -15:50 +2712: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: footnote inline and display math retain surrounding semantics -15:50 +2713: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst compiles footnote math through the math renderer -15:51 +2714: /home/albert/busystack/busymark/test/src/markdown_math_export_test.dart: Typst keeps MathJax SVG inline and exports failed math visibly -15:51 +2715: loading /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart -15:52 +2715: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: tabs synchronize and support arrow, Home and End keys -15:53 +2716: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table sorting is numeric and excludes disabled columns -15:54 +2717: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Markdown table keeps empty columns equal width -15:54 +2718: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: Writerside table preserves declared column width -15:54 +2719: /home/albert/busystack/busymark/test/src/writerside_semantic_widgets_test.dart: table spans preserve geometry and sticky header position -15:55 +2720: loading /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart -15:55 +2720: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: records balance a two-line source preview with visible metadata -15:56 +2721: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: large records use a short preview and do not create a tooltip -15:57 +2722: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: actions menu is right of search and owns refresh and clear -15:57 +2723: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: keyboard navigation keeps the selected history entry visible -15:58 +2724: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: Delete edits the focused search without removing history -15:58 +2725: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: unsupported payload disables paste for the destination -15:58 +2726: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: double-clicking a shared history row pastes the item -15:59 +2727: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain-text paste remains enabled when rich paste is unavailable -15:59 +2728: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: source-only payload has no plain-text action -15:59 +2729: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: image exposes plain paste only with real text -15:59 +2730: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed insertion reports visible feedback -15:59 +2731: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: cancelled insertion is terminal without an error toast -16:00 +2732: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: current external HTML is transient until panel insertion and remains reusable -16:00 +2733: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: failed current-item paste is not retained and plain paste stays explicit -16:01 +2734: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: successful external paste retains after the panel is disposed -16:01 +2735: /home/albert/busystack/busymark/test/src/clipboard_history_panel_test.dart: plain source and Editor copies stay text and de-duplicate -16:01 +2736: loading /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart -16:02 +2736: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: loads version and build number from package metadata -16:02 +2737: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: uses zero when package build metadata is absent -16:02 +2738: /home/albert/busystack/busymark/test/src/feedback_metadata_test.dart: rejects missing package version metadata -16:02 +2739: loading /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart -16:05 +2739: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates XML child topic and registers it under parent TOC node -16:08 +2740: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates Unicode Markdown and XML topic filenames -16:08 +2741: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source without a root ID before publication -16:08 +2742: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects custom XML source whose root ID differs from filename -16:08 +2743: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: accepts custom XML source whose root ID matches filename -16:08 +2744: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: requires a reference for every non-root placement -16:08 +2745: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a child under an exact topic-less TOC node path -16:08 +2746: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: first real topic under an empty group becomes the home page -16:08 +2747: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: exact TOC path disambiguates sibling insertion -16:09 +2748: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects an exact TOC path whose expected node has moved -16:09 +2749: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: invalid exact TOC path does not fall back to topic reference -16:09 +2750: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects duplicate topic IDs before writing -16:09 +2751: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: creates a missing nested topics directory -16:09 +2752: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rejects a symlinked topics directory without writing outside -16:09 +2753: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: does not overwrite a concurrently changed tree or leave an orphan topic -16:09 +2754: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: rollback preserves a created topic changed by another writer -16:09 +2755: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: atomic tree publication preserves its POSIX mode -16:09 +2756: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID with a different extension -16:09 +2757: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in a different directory -16:09 +2758: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation blocks a concurrent same ID in another configured root -16:09 +2759: /home/albert/busystack/busymark/test/src/writerside_topic_creator_test.dart: final module-wide topic ID validation allows an unrelated concurrent topic ID -16:09 +2760: loading /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart -16:11 +2760: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.rtl -16:15 +2761: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation selects real variants, validates and submits in TextDirection.ltr -16:18 +2762: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation uses native master-detail controls and filters -16:19 +2763: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: creation opens both template editor entry points -16:23 +2764: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: catalog failure keeps BusyMark status and retry controls -16:24 +2765: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files editor stages new content, cancels and persists on OK -16:27 +2766: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: source surface exposes its label and focus boundary -16:29 +2767: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: New toolbar command stages an editable draft and Cancel drops it -16:30 +2768: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: custom XML template cannot publish a mismatching root ID -16:33 +2769: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: save-as-template appears under Custom; edit, duplicate and delete preserve cancel -16:34 +2770: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: stale settings reject OK and retain draft for recovery -16:36 +2771: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Internal reset is staged, cancellable, and publishable -16:39 +2772: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: true) -16:41 +2773: /home/albert/busystack/busymark/test/src/writerside_template_dialogs_test.dart: Files and Internal Starter.md both save (custom first: false) -16:43 +2774: loading /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart -16:44 +2774: /home/albert/busystack/busymark/test/src/writerside_toc_source_widget_test.dart: tree exact reveal unfolds and line movement is one undoable full-source edit -16:46 +2775: loading /home/albert/busystack/busymark/test/src/math_parser_test.dart -16:49 +2775: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses several dollar formulas as semantic inline math -16:49 +2776: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses the GitHub dollar-backtick form without delimiters -16:49 +2777: /home/albert/busystack/busymark/test/src/math_parser_test.dart: parses single-line and multiline display math as blocks -16:49 +2778: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math scanner stays aligned around every neighboring block kind -16:49 +2779: /home/albert/busystack/busymark/test/src/math_parser_test.dart: math and Writerside tex fences follow document compatibility -16:49 +2780: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math is inline and remains source-preserving -16:49 +2781: /home/albert/busystack/busymark/test/src/math_parser_test.dart: Writerside semantic math decodes XML entities but preserves source -16:49 +2782: /home/albert/busystack/busymark/test/src/math_parser_test.dart: escaped dollars, code, currency, empty and malformed forms stay text -16:49 +2783: /home/albert/busystack/busymark/test/src/math_parser_test.dart: inline math survives list, blockquote, and table structure -16:49 +2784: /home/albert/busystack/busymark/test/src/math_parser_test.dart: CRLF math input and every original form round-trip untouched -16:49 +2785: /home/albert/busystack/busymark/test/src/math_parser_test.dart: preview builder creates first-class inline and display math nodes -16:49 +2786: loading /home/albert/busystack/busymark/test/src/busymark_document_test.dart -16:52 +2786: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hit testing includes shared document surface borders -16:52 +2787: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: document image width resolution is bounded consistently -16:53 +2788: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: package markdown AST imports into BusyDocument core blocks -16:53 +2789: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: linked remote image paragraphs import as editable image blocks -16:53 +2790: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer emits Markdown source for edited semantic blocks -16:53 +2791: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unchanged raw blocks -16:53 +2792: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves safe raw HTML source byte for byte -16:53 +2793: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves unsafe raw HTML source while preview remains raw -16:53 +2794: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer patches dirty blocks without canonicalizing unchanged source -16:53 +2795: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve unrelated block instances -16:53 +2796: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve source-only reference definitions -16:53 +2797: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: source-only definitions survive scanner and AST count mismatches -16:53 +2798: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preserved reference definitions still resolve after an edit -16:53 +2799: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: unrelated edits preserve GFM footnote definitions -16:53 +2800: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: containers with nested definitions are source-protected -16:53 +2801: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: scanner mismatches conservatively protect nested definitions -16:53 +2802: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: opaque source IDs cannot collide with semantic heading IDs -16:53 +2803: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full list serialization preserves reference definitions -16:53 +2804: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: full serialization omits generated footnote output -16:53 +2805: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: invalid reference-like prose remains a modeled block -16:53 +2806: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large inline-link documents do not create source-only blocks -16:53 +2807: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: large adjacent definition sets stay distinct and preserved -16:54 +2808: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: destructive selections reject read-only source endpoints -16:54 +2809: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: list indentation cannot attach content to a protected item -16:54 +2810: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested list text edit updates Markdown source -16:54 +2811: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered list edits preserve nested children -16:54 +2812: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered task edits preserve marker and nested children -16:54 +2813: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested blockquote edit preserves surrounding source -16:54 +2814: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cross-block deletion prunes an emptied blockquote -16:54 +2815: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested inline edit updates Markdown source -16:54 +2816: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG nested block removal updates Markdown source -16:54 +2817: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser includes setext headings in heading metadata -16:54 +2818: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: live document outline follows top-level generated heading order -16:54 +2819: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: duplicate anchors retain distinct editor block identities -16:54 +2820: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: preview and WYSIWYG use the same semantic document -16:54 +2821: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edit updates Markdown source -16:54 +2822: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG empty documents have one editable paragraph -16:54 +2823: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor accepts typing in an empty document -16:55 +2824: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG heading navigation skips across large documents -16:59 +2825: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders a blockquote around its editable text -16:59 +2826: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG uses one quote frame for multiple quote paragraphs -16:59 +2827: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG quote frame focuses its first editable child -16:59 +2828: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inherits RTL indentation inside a blockquote -16:59 +2829: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG keeps a generated leaf blockquote editable -16:59 +2830: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG hides a definition-only source and preserves it -16:59 +2831: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor undo and redo restore document edits -16:59 +2832: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor replaces document when active file changes -17:00 +2833: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor applies heading keyboard shortcuts -17:00 +2834: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Ctrl+Shift+- inserts a thematic break -17:00 +2835: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Tab nests eligible list items and Shift+Tab lifts them -17:00 +2836: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG arrow keys move focus between paragraphs -17:01 +2837: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Arrow crosses paragraph boundaries -17:01 +2838: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+Shift+Arrow extends into the next paragraph -17:01 +2839: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated arrow keys keep moving between paragraphs -17:01 +2840: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down selection continues character by character in the next paragraph -17:02 +2841: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG repeated Shift+Arrow extends one selection -17:02 +2842: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG horizontal selection continues vertically into the next paragraph -17:02 +2843: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse Shift+Up selection continues left in the previous paragraph -17:02 +2844: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ignores redundant source blank lines -17:02 +2845: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: typing replaces a WYSIWYG selection across paragraphs -17:03 +2846: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: deleting a selected paragraph boundary merges paragraphs -17:03 +2847: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Down follows visual lines before paragraphs -17:03 +2848: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift+Arrow selects whole grapheme clusters -17:03 +2849: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection can copy multiple paragraphs -17:03 +2850: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG click elsewhere clears previous block selection -17:04 +2851: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift click selects text across paragraphs -17:04 +2852: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag extends selection across paragraphs -17:04 +2853: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Shift drag from heading end hides native selection -17:04 +2854: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag updates selection on pointer up -17:04 +2855: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reverse drag aligns wrapped trailing word highlight -17:04 +2856: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+X cuts block selection -17:05 +2857: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves inline formatting -17:05 +2858: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG cut paste preserves whole block formatting -17:05 +2859: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG drag selection preserves partial paragraph boundaries -17:05 +2860: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar bold applies to selected paragraphs -17:05 +2861: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar toggle stays vertically aligned when collapsed -17:05 +2862: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar reserves its document edge -17:06 +2863: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: restoring the first block does not duplicate the Editor top inset -17:07 +2864: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: vertical WYSIWYG toolbar is bounded and extends from its edge -17:07 +2865: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar corners remain physical in LTR and RTL -17:08 +2866: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: editing toolbar context menu changes placement and direction when shown or hidden -17:08 +2867: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar list applies to selected paragraphs -17:08 +2868: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG renders safe HTML blocks and edits raw source -17:09 +2869: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG toolbar inserts an HTML block -17:09 +2870: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after the active file changes -17:09 +2871: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialog submission is discarded after document generation changes -17:09 +2872: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs stop app-level tab navigation shortcuts -17:10 +2873: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG dialogs activate the native headerbar barrier -17:10 +2874: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves existing inline formatting -17:10 +2875: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Backspace at block start merges with previous block -17:10 +2876: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Ctrl+A twice selects all text for deletion -17:10 +2877: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG select-all deletion preserves source-protected definitions -17:10 +2878: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline ranges do not duplicate formatted text -17:10 +2879: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands serialize bold italic and links -17:10 +2880: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG serializes italic nested at the end of bold text -17:10 +2881: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve inline ranges where possible -17:10 +2882: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text edits preserve empty-alt inline images -17:10 +2883: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG edits preserve escaped literal punctuation semantics -17:10 +2884: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog submits with Enter -17:11 +2885: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when caret is inside it -17:11 +2886: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG link dialog edits an existing link when its text is selected -17:11 +2887: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline command toggles selected mark without dropping links -17:11 +2888: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline code command serializes selected text -17:11 +2889: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer chooses inline code delimiters that preserve backticks -17:11 +2890: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link title backslashes use standards-safe character references -17:11 +2891: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: inline serialization distinguishes every hard-break run boundary -17:11 +2892: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: link titles round-trip decoded punctuation and line endings -17:11 +2893: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table link titles retain multiline values without physical rows -17:11 +2894: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: serializer preserves fenced code delimiters and trailing whitespace -17:11 +2895: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser preserves meaningful trailing fenced-code whitespace -17:11 +2896: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser closes dynamic code fences only with a matching delimiter -17:11 +2897: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: parser does not treat indented code as a fenced block -17:11 +2898: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands preserve existing sibling formatting -17:11 +2899: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands apply to multiple selected blocks -17:11 +2900: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG inline commands apply to multiple selected blocks -17:11 +2901: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG image command serializes a real image block -17:11 +2902: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders Writerside images by basename -17:11 +2903: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders absolute local image paths -17:11 +2904: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor renders linked remote image blocks -17:11 +2905: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in commonMark -17:11 +2906: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in writersideMarkdown -17:11 +2907: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter recognizes a pasted bare URL in gfm -17:11 +2908: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter uses parser URL boundaries without parsing other syntax -17:11 +2909: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter excludes code and keeps explicit equal-label links explicit -17:11 +2910: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: bare URL destinations follow edits and splits while explicit destinations stay authored -17:11 +2911: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: rejoining only extends existing bare URLs and preserves code and explicit links -17:11 +2912: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: structural URL slices update derived destinations and link editing authors an explicit destination -17:11 +2913: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter splits one block into separate Markdown paragraphs -17:11 +2914: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores an empty paragraph represented only by blanks -17:11 +2915: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG reload ignores trailing blank lines -17:11 +2916: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG does not create blocks for redundant source whitespace -17:11 +2917: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in unordered list creates next item then exits list -17:11 +2918: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter in ordered list creates next numbered item -17:11 +2919: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG thematic break inserts after current block -17:11 +2920: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter key creates a new paragraph block -17:12 +2921: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter carries active inline style to next paragraph -17:12 +2922: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG Enter at paragraph end preserves inner bold span -17:12 +2923: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG newline text edit preserves inner bold span -17:12 +2924: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG text input newlines become Markdown paragraphs -17:12 +2925: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG typing preserves an existing hard break -17:12 +2926: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: hard-break toolbar command retains focus and advances caret -17:13 +2927: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: formatting toolbar command retains editor focus and selection -17:13 +2928: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Shift+Enter retains focus and advances past the hard break -17:13 +2929: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line toolbar command round-trips and remains one focused edit -17:13 +2930: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG editor lazily builds large documents -17:13 +2931: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG task checkbox toggles directly when clicked -17:13 +2932: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG block commands serialize headings and lists -17:13 +2933: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG extended toolbar commands serialize Markdown -17:13 +2934: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: blank-line command keeps repeated terminal markers off the text line -17:13 +2935: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table and code language commands serialize Markdown -17:13 +2936: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cell pipes round-trip without shifting columns -17:13 +2937: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table escaping protects pipes inside formatted cell content -17:13 +2938: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table code preserves a backslash immediately before a pipe -17:13 +2939: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table row and column commands serialize Markdown -17:13 +2940: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table dialog validates and synchronizes its size grid -17:14 +2941: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table alignment survives parsing, edits, and structural changes -17:14 +2942: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: table column alignment command supports all Markdown alignments -17:14 +2943: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells apply Markdown column alignment -17:14 +2944: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table cells are formatted and editable -17:15 +2945: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG table overlay menus survive structural rebuilds -17:15 +2946: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: Tab travels through WYSIWYG table cells and extends the table -17:15 +2947: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG list indent outdent and task toggle commands serialize -17:15 +2948: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation starts a nested list at one -17:15 +2949: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation preserves a top-level start value -17:15 +2950: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered indentation numbers multiple nested siblings -17:15 +2951: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG ordered outdent continues the parent list numbering -17:15 +2952: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts an unordered item to a valid ordered marker -17:15 +2953: /home/albert/busystack/busymark/test/src/busymark_document_test.dart: WYSIWYG converts selected nested items at each list depth -17:15 +2954: loading /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart -17:16 +2954: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: single rich paragraph repairs independently surviving endpoints -17:17 +2955: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: table cells repair independently formatted selection endpoints -17:17 +2956: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion replaces only a heading own prefix at content start -17:17 +2957: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion removes complete ATX and Setext heading syntax -17:17 +2958: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block insertion retains literal paragraph hashes -17:17 +2959: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: whole heading replacement removes every authored marker -17:17 +2960: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: heading insertion at middle and end preserves only the leading heading -17:17 +2961: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequence removes nested heading marker at content start -17:17 +2962: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: external HTML blockquotes remain structured in Source -17:17 +2963: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: HTML break layout stays behind a caret after the semantic break -17:17 +2964: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: caret immediately before an HTML break keeps the break after paste -17:17 +2965: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection crossing an HTML break preserves both outside slices -17:17 +2966: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete inline HTML survives rich link insertion as one fragment -17:17 +2967: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native rich trailing space survives inherited HTML insertion -17:17 +2968: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: native incoming edge whitespace survives inherited HTML styles -17:17 +2969: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: selection replacement retains native whitespace and link titles -17:17 +2970: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: multiple native inline runs retain text styles links and spaces -17:17 +2971: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: rich insertion maps collapsed HTML whitespace as content -17:17 +2972: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through supported raw HTML styles -17:17 +2973: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: collapsed whitespace maps through a supported raw HTML link -17:17 +2974: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: supported content corpus always plans a rich insertion -17:17 +2975: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: repeated mapped siblings avoid fallback and preserve final paste -17:18 +2976: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: complete blocks split and preserve enclosing inline contexts -17:18 +2977: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph-only block sequences match Editor merge semantics -17:18 +2978: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: block paste preserves independent formatted selection boundaries -17:19 +2979: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured paste spans partial first and last destination blocks -17:19 +2980: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paragraph sequences retain destination block and container paths -17:19 +2981: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: paste output is valid input for a second paste at returned caret -17:19 +2982: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: CRLF blockquote projection retains its authored prefixes -17:19 +2983: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured complete blocks generate only CRLF boundaries -17:19 +2984: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: structured inline hard breaks use destination CRLF -17:19 +2985: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: mapped and generated structured breaks retain CRLF and caret width -17:19 +2986: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: protected Source context explicitly permits textual fallback -17:19 +2987: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: syntax-only positions explicitly permit textual fallback -17:19 +2988: /home/albert/busystack/busymark/test/src/source_paste_engine_test.dart: unmappable destination links stop rather than permit fallback -17:19 +2989: loading /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart -17:19 +2989: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: rejects a superseded render even when its engine finishes last -17:21 +2990: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: retains the last successful render after invalid source -17:21 +2991: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: limits concurrency and gives export work queue priority -17:21 +2992: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: reuses a successful content-addressed cache entry -17:21 +2993: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: validates concurrency and returns a typed unavailable result -17:21 +2994: /home/albert/busystack/busymark/test/src/visualization_coordinator_test.dart: bounds last-successful render retention with LRU eviction -17:22 +2995: loading /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart -17:22 +2995: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: source navigation distinguishes repeated references on one line -17:22 +2996: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: explicit synchronization follows installed breadth-first topic matching -17:22 +2997: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edits preserve other instances, content and occurrence -17:22 +2998: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title edit changes H1 and preserves front matter title -17:22 +2999: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: Markdown title round trip preserves ampersands and entity spellings -17:22 +3000: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: unchanged inherited values do not add overrides -17:22 +3001: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: XML title edits escape attributes and expand self-closing root -17:22 +3002: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: clearing overrides removes only the selected instance and occurrence -17:22 +3003: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: before-drop preserves complete subtrees and returns all moved paths -17:24 +3004: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: grouping uses source order and rejects cross-parent selections -17:24 +3005: /home/albert/busystack/busymark/test/src/writerside_toc_actions_test.dart: line moves retain CRLF, caret, reversed selection and boundaries -17:24 +3006: loading /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart -17:26 +3006: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: section includes descendants and stops at the next sibling -17:26 +3007: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: move up and down swap complete sibling subtrees -17:26 +3008: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: promote and demote preserve descendant hierarchy -17:27 +3009: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: demote is unavailable when a descendant is already H6 -17:27 +3010: /home/albert/busystack/busymark/test/src/markdown_section_editor_test.dart: level changes preserve and convert Setext headings -17:27 +3011: loading /home/albert/busystack/busymark/test/src/visualization_models_test.dart -17:28 +3011: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization fence classification recognizes canonical names and aliases without changing spelling -17:28 +3012: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: preserves dependency diagnostic source locations -17:28 +3013: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys canonicalizes options and dependency order -17:28 +3014: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates on engine, source, theme, profile, option, and dependency -17:28 +3015: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization cache keys invalidates entries produced by the previous render pipeline -17:28 +3016: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache round-trips SVG, raster, and structured OpenAPI successes -17:30 +3017: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache does not persist failures and repairs malformed entries -17:30 +3018: /home/albert/busystack/busymark/test/src/visualization_models_test.dart: visualization disk cache derives the XDG cache path without changing the environment -17:30 +3019: loading /home/albert/busystack/busymark/test/src/writerside_video_test.dart -17:31 +3019: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside Markdown models video and preserves its exact source -17:31 +3020: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video remains blocked raw HTML outside Writerside Markdown -17:31 +3021: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: multiline Writerside video attributes remain one semantic block -17:31 +3022: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: video markup inside an ordinary code fence is not interpreted -17:31 +3023: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside topic parser exposes video attributes -17:31 +3024: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside .topic preview creates a first-class video block -17:31 +3025: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: safe video resolver accepts documented hosts and local media -17:31 +3026: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Writerside module reports invalid and incomplete video sources -17:31 +3027: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: local poster defaults to matching PNG and can be overridden -17:31 +3028: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: hosted video posters resolve from trusted provider sources -17:31 +3029: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: Vimeo poster metadata cannot point images to another host -17:31 +3030: /home/albert/busystack/busymark/test/src/writerside_video_test.dart: PDF export carries a first-class linked video poster -17:31 +3031: loading /home/albert/busystack/busymark/test/src/app_router_test.dart -17:34 +3031: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings return targets are explicit and validated -17:34 +3032: /home/albert/busystack/busymark/test/src/app_router_test.dart: opening Settings preserves a validated Settings origin -17:34 +3033: /home/albert/busystack/busymark/test/src/app_router_test.dart: settings page routes are explicit and validated -17:34 +3034: /home/albert/busystack/busymark/test/src/app_router_test.dart: Settings opened from Welcome returns to Welcome with a stale workspace -17:35 +3035: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again -17:36 +3036: loading /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart -17:37 +3036: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: mixed Markdown protects fenced code and CDATA while preserving spans -17:37 +3037: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: lazy defaults respect caller arguments and percent escaping -17:37 +3038: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: empty links use the target title for the selected instance -17:38 +3039: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional chapter content and links follow the selected instance -17:38 +3040: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: malformed markup and unresolved reuse stay visible with diagnostics -17:38 +3041: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: Markdown IDs include whole chapters and retain mixed-content spans -17:38 +3042: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: conditional globals and include arguments override snippet defaults -17:38 +3043: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: links resolve labels, separate anchors and nullable availability -17:38 +3044: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: included code uses its source topic and unsaved source overrides -17:38 +3045: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: summaries stay metadata and starting pages suppress outside content -17:38 +3046: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: configured shortcuts, glossary and binary resources have visible references -17:38 +3047: /home/albert/busystack/busymark/test/src/writerside_resolution_regression_test.dart: line and symbol selectors reject invalid selections -17:38 +3048: loading /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart -17:39 +3048: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: reads exact app password in dedicated stable account namespace -17:39 +3049: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: writes and deletes only the selected account secret -17:39 +3050: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects app passwords that cannot be stored as an exact C string -17:39 +3051: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: rejects caller-controlled keys and non-random UUIDs before native calls -17:39 +3052: /home/albert/busystack/busymark/test/src/nextcloud_secret_store_test.dart: unavailable keyring fails safely without plaintext fallback -17:39 +3053: loading /home/albert/busystack/busymark/test/src/status_semantics_test.dart -17:43 +3053: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: status colors stay semantic across accents and brightness -17:43 +3054: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: workspace messages use semantic status roles -17:43 +3055: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: Git failures use window-level toasts -17:44 +3056: /home/albert/busystack/busymark/test/src/status_semantics_test.dart: successful Git operations use window-level toasts -17:44 +3057: loading /home/albert/busystack/busymark/test/src/workspace_service_test.dart -17:45 +3057: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a single Markdown file workspace -17:45 +3058: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: resolves an unindexed sibling document within the workspace -17:45 +3059: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Markdown file from a file URI path -17:45 +3060: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a generic Markdown folder workspace -17:45 +3061: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: canonicalizes a workspace opened through a directory symlink -17:45 +3062: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects a workspace root replaced by a symlink after opening -17:45 +3063: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: opens a Writerside module workspace -17:45 +3064: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: untitled Markdown in Writerside reparses, previews, and outlines as CommonMark -17:45 +3065: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: genuine Writerside Markdown topic keeps Writerside semantics -17:45 +3066: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates and opens a Writerside starter project -17:46 +3067: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: reparses and previews Writerside Markdown without generic link validation -17:46 +3068: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a Writerside Markdown topic and registers it in the TOC -17:46 +3069: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: imports Markdown topics into the selected instance and opens the first -17:46 +3070: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Markdown import reloads stale UI inventory before planning -17:46 +3071: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation revalidates module IDs after its candidate is written -17:46 +3072: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: creates a topic in the explicitly selected instance and TOC node -17:46 +3073: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: unparsed topic basename reserves its module-wide topic ID for creation -17:46 +3074: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under build reserves its module-wide ID for creation -17:46 +3075: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic under a hidden directory reserves its module-wide ID for creation -17:46 +3076: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: duplicate topic cannot reuse an unparsed topic basename -17:46 +3077: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: template source cannot reuse an unparsed topic basename -17:47 +3078: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic creation refuses incomplete topic discovery -17:47 +3079: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: rejects topic creation when the configured instance tree is outside the module -17:47 +3080: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename is stale when a new module is discovered -17:47 +3081: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: topic rename planning rejects incomplete project module discovery -17:47 +3082: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: prepared topic rename rejects incomplete module discovery on apply -17:47 +3083: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: project module discovery reports directory listing failure -17:47 +3084: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: ordinary directory creation does not stale a prepared rename -17:47 +3085: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: normalizes portal-style document paths as filesystem paths -17:47 +3086: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText writes content and returns the saved file snapshot -17:47 +3087: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: file change detection ignores timestamp-only changes -17:47 +3088: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText writes a missing file and returns its snapshot -17:47 +3089: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText refuses an existing file without changing it -17:47 +3090: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not replace a file arriving before publication -17:47 +3091: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveNewText does not write inside a directory arriving before publication -17:47 +3092: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveTextReplacingPath replaces a final symlink without following it -17:47 +3093: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement cannot overwrite a post-validation writer -17:47 +3094: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement validates a displaced relative symlink -17:47 +3095: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement detects a changed relative symlink target -17:47 +3096: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation directory -17:47 +3097: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: conditional replacement restores a post-validation FIFO without reading -17:47 +3098: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: saveText follows file symlinks and preserves target permissions -17:47 +3099: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: createFile rejects a directory reached through an intermediate symlink -17:47 +3100: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: renameEntity rejects a source reached through an intermediate symlink -17:47 +3101: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: moveEntity rejects a target reached through an intermediate symlink -17:47 +3102: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity rejects a directory reached through an intermediate symlink -17:47 +3103: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: deleteEntity removes a final symlink without deleting its target -17:47 +3104: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: generic deletion rejects topics and containing folders in a non-active module -17:47 +3105: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: an unparsed topic cannot bypass generic deletion -17:47 +3106: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: missing nested mutation paths keep domain-specific errors -17:47 +3107: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince treats deleted files as changed -17:47 +3108: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: fileChangedSince detects content changes with unchanged modified time -17:48 +3109: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists all content except version-control metadata -17:48 +3110: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: folder workspace lists unsupported legacy Markdown extensions -17:48 +3111: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: limited folder scan prefers shallow siblings before deep subtree -17:48 +3112: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: invalid UTF-8 Markdown does not fail the whole workspace -17:48 +3113: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Markdown files are listed but not parsed automatically -17:48 +3114: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: large Writerside topics are listed but not parsed automatically -17:48 +3115: /home/albert/busystack/busymark/test/src/workspace_service_test.dart: Writerside topic loading honors the document limit -17:48 +3116: loading /home/albert/busystack/busymark/test/src/ai_policy_test.dart -17:48 +3116: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: AI editing is enabled only for Markdown document kinds -17:48 +3117: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation accepts a prose-only replacement in the complete document -17:49 +3118: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation rejects swapped URL associations even when the URL set is equal -17:49 +3119: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation full-document validation catches edits made inside protected syntax -17:49 +3120: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects front matter, references, footnotes, tables, HTML and IDs -17:49 +3121: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects list and heading structure -17:49 +3122: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: Markdown preservation protects implicit heading identifiers from prose rewrites -17:49 +3123: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: the prompt contains only the context explicitly selected by the user -17:49 +3124: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: instructions and direct prompts have explicit token budgets -17:49 +3125: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: token estimates are independent from UTF-8 transport bytes -17:49 +3126: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: generated-output byte limits are independent from provider tokens -17:49 +3127: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context selection target and block context remain independent -17:49 +3128: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context insert-after-block target can send no document context -17:49 +3129: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current block can use complete-document context -17:49 +3130: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context current section includes descendants but not its sibling -17:49 +3131: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context complete-document target is explicit -17:49 +3132: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context partial protected selections are rejected instead of expanded -17:49 +3133: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: user-selected Markdown target and context validation and application use the exact block insertion -17:49 +3134: /home/albert/busystack/busymark/test/src/ai_policy_test.dart: commit proposals require a bounded subject and blank separator -17:49 +3135: loading /home/albert/busystack/busymark/test/src/linux_window_host_test.dart -17:52 +3135: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: dialogs cover application header actions while system Close uses the guarded service -17:53 +3136: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: icon uses its physical GTK side and contributes to the inset -unhandled element ; Picture key: Svg loader -17:54 +3137: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fallback application menu is absent while titlebar menu still works -17:54 +3138: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: window-state stream survives unrelated host rebuilds -17:54 +3139: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: normal maximize decoration has matching behavior -17:54 +3140: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: maximized maximize decoration has matching behavior -17:54 +3141: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen maximize decoration has matching behavior -17:54 +3142: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: fullscreen titlebar double-click still restores -17:54 +3143: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: the document title itself handles titlebar double-click -17:54 +3144: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: live GTK layout removal retains each decoration identity -17:54 +3145: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=false) -17:54 +3146: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: reduced motion settles maximize and restore icons (GTK=true) -17:54 +3147: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK reduced motion settles window-control hover immediately -17:54 +3148: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion settles an in-flight window icon morph -17:54 +3149: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabled motion retains the normal active-window fade -17:54 +3150: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: Flutter reduced motion settles the host fade immediately -17:54 +3151: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: GTK animation policy reaches the actual host overlay -17:54 +3152: /home/albert/busystack/busymark/test/src/linux_window_host_test.dart: enabling reduced motion stops a fade and later fades can run -17:54 +3153: loading /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart -17:56 +3153: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: source editor overlays use shared semantic surfaces -17:56 +3154: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: WYSIWYG content actions and table menus use shared controls -17:56 +3155: /home/albert/busystack/busymark/test/src/editor_ui_primitives_audit_test.dart: problems dialog delegates its list surface to shared grouping -17:57 +3156: loading /home/albert/busystack/busymark/test/src/writerside_document_test.dart -17:58 +3156: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=false) -17:58 +3157: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: complex Markdown retains semantic XML spans (protected=true) -17:58 +3158: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside heading aliases prefer exact IDs and reject ambiguity -17:58 +3159: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: malformed semantic XML is still reported after a scanner mismatch -17:58 +3160: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: lossless XML nodes preserve exact duplicate ranges and generic markup -17:58 +3161: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: Writerside Markdown round-trips native and generic markup -17:58 +3162: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified semantic XML reconstructs equivalent escaped markup -17:58 +3163: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: modified conformance topic retains qualified namespace names -17:58 +3164: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver applies includes, filters, groups, variables, and cycles -17:58 +3165: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: resolver negates the complete instance list -17:58 +3166: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML list type is inherited by every list item -17:58 +3167: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: XML lists retain numeric ordinals and their container identity -17:58 +3168: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: repeated list includes have distinct occurrence IDs and original source spans -17:58 +3169: /home/albert/busystack/busymark/test/src/writerside_document_test.dart: workspace exposes resolver errors with exact source spans -17:58 +3170: loading /home/albert/busystack/busymark/test/src/writerside_api_test.dart -18:02 +3170: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: platform-backed API model remains on the host path and transfers complete semantics -18:03 +3171: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API tags select operations through the existing OpenAPI parser -18:03 +3172: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API child selectors inherit the specification and preserve sample overrides -18:03 +3173: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: API schemas resolve references and honor nesting depth -18:03 +3174: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: schema and webhook elements are visible -18:03 +3175: /home/albert/busystack/busymark/test/src/writerside_api_test.dart: invalid API selection has a visible fallback and source diagnostic -18:03 +3176: loading /home/albert/busystack/busymark/test/src/local_history_store_test.dart -18:04 +3176: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=false) -18:04 +3177: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: capture commit guard rejects stale policy (memory=true) -18:04 +3178: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: real process contention waits and captures without a warning -18:20 +3179: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: lock timeout closes acquisition and queues recover without late capture -18:24 +3180: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: non-contention acquisition failure is prompt and closes the handle -18:24 +3181: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: body contention-shaped error never replays the transaction -18:24 +3182: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: independent production writers preserve both identities and revisions -18:30 +3183: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation cannot mutate process replacements -18:35 +3184: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: identity-targeted reconciliation rejects an intervening process checkpoint -18:39 +3185: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=false) -18:39 +3186: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion repair rechecks the stale owner atomically (memory=true) -18:39 +3187: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists full revisions and stable document identity across restart -18:39 +3188: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: persists untitled first-save promotion without a new revision -18:40 +3189: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: untitled promotion refuses an already-owned destination path -18:40 +3190: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deleted paths never own promotion, lookup, or remap -18:40 +3191: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: deduplicates only adjacent ordinary captures and preserves A-B-A -18:40 +3192: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: forced protective capture preserves an identical revision -18:40 +3193: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture identity makes a protective retry idempotent -18:40 +3194: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: idempotent capture stays complete after its lineage advances -18:40 +3195: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: promotion retry accepts the same lineage after a later move -18:40 +3196: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: atomic path preflight accepts the same target already reconciled elsewhere -18:40 +3197: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clearing one identity does not poison another identity capture -18:41 +3198: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repairs a damaged index from intact independently checksummed records -18:41 +3199: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: repair rejects a record associated with a different document -18:41 +3200: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: does not resurrect explicitly cleared revisions during repair -18:41 +3201: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rejects an unknown future index format without rewriting it -18:41 +3202: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention uses the injected capture time deterministically -18:41 +3203: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: age retention is enforced when an idle store is reopened -18:41 +3204: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: rename, directory move, delete, and per-document clearing retain lineage -18:41 +3205: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: ID-bound captures cannot implicitly move document paths -18:42 +3206: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: serializes concurrent captures without losing index entries -18:42 +3207: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: oversized capture cannot evict the previous revision -18:43 +3208: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: different paths with the same basename keep separate identities -18:43 +3209: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: an intentional empty revision after content is retained -18:43 +3210: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: missing and corrupt revision records do not damage intact entries -18:43 +3211: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: incomplete staging artifacts are never discovered as revisions -18:43 +3212: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: global clear tombstones prevent repair resurrection -18:43 +3213: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear All replay cannot erase post-clear history -18:43 +3214: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: durable Clear Document replay cannot erase replacement history -18:43 +3215: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=false) -18:44 +3216: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=false) -18:44 +3217: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier rejects accepted pathless work from its lineage (memory=true) -18:44 +3218: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: clear barrier retains a deleted document path without a replacement (memory=true) -18:44 +3219: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=false) -18:44 +3220: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: stable capture replay resolves identity before path checks (memory=true) -18:44 +3221: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file capture rolls back cancellation during revision publication -18:44 +3222: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: file dedup capture rolls back cancellation during index publication -18:44 +3223: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: multiple store instances coordinate concurrent index publication -18:44 +3224: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: storage permission failures surface without touching document data -18:44 +3225: /home/albert/busystack/busymark/test/src/local_history_store_test.dart: path exclusions use injected Windows path semantics -18:44 +3226: loading /home/albert/busystack/busymark/test/src/web_render_host_test.dart -18:45 +3226: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends explicit request IDs and decodes a typed map response -18:45 +3227: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends a MathJax batch in one cancellable host request -18:45 +3228: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: scales the MathJax timeout for sequential batch conversion -18:45 +3229: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: applies the scaled timeout to a maximum accepted batch -18:45 +3230: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: cancels the matching native request and rejects a late success -18:45 +3231: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: times out and requests native cancellation -18:45 +3232: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: rejects an invalid native response shape -18:45 +3233: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: decodes OpenAPI references with source locations -18:45 +3234: /home/albert/busystack/busymark/test/src/web_render_host_test.dart: sends PNG bytes to the native image clipboard -18:45 +3235: loading /home/albert/busystack/busymark/test/src/document_persistence_test.dart -18:48 +3235: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: file-backed edits update final-newline metadata -18:48 +3236: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session store keeps tab state and pending history identity without text -18:53 +3237: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: session merge keys first-save promotions by durable operation owner -18:53 +3238: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery store distinguishes clean and unclean runs -18:54 +3239: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery keeps valid entries when another record is malformed -18:54 +3240: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery ownership keeps same buffer IDs isolated by process -18:54 +3241: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: restored dead-owner recovery is adopted and can be retired -18:54 +3242: /home/albert/busystack/busymark/test/src/document_persistence_test.dart: recovery state is written with private POSIX permissions -18:55 +3243: loading /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart -18:55 +3243: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: intrinsic width remeasures only edited source lines -18:56 +3244: /home/albert/busystack/busymark/test/src/source_intrinsic_width_test.dart: large source width uses a bounded estimate -18:56 +3245: loading /home/albert/busystack/busymark/test/src/search_replace_service_test.dart -18:59 +3245: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: Unicode regex replacement preserves complete characters -18:59 +3246: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: zero-length replacement limitation survives worker transfer -18:59 +3247: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 4999 actual matches -18:59 +3248: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5000 actual matches -18:59 +3249: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement limit at 5001 actual matches -18:59 +3250: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace replacement cancels a running expensive regex -18:59 +3251: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace scope includes closed Writerside documents and ignores unrelated open files -18:59 +3252: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: previews and applies plain whole-word replacements -18:59 +3253: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: text replacement previews enforce their match limit -18:59 +3254: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker expands one accepted regex match -18:59 +3255: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: replacement worker cancels stale plans -18:59 +3256: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: expands numbered and named regex capture groups -18:59 +3257: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: applies only selected preview matches -18:59 +3258: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace preview uses dirty buffers and writes closed files -19:00 +3259: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply skips stale dirty buffers -19:00 +3260: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: truncated workspace previews cannot be applied -19:00 +3261: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: stale later files abort before earlier files are changed -19:00 +3262: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: rollback preserves a concurrent edit and reports displaced content -19:00 +3263: /home/albert/busystack/busymark/test/src/search_replace_service_test.dart: workspace apply revalidates open buffers after disk writes -19:00 +3264: loading /home/albert/busystack/busymark/test/src/export_options_editor_test.dart -19:00 +3264: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Escape closes Export before a control receives focus -19:02 +3265: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Export keeps breathing room below its final option -19:02 +3266: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown PDF loads confirmed settings and shares controls -19:03 +3267: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside PDF loads confirmed settings and shares controls -19:04 +3268: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Markdown HTML loads confirmed settings and shares controls -19:04 +3269: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: Writerside HTML loads confirmed settings and shares controls -19:05 +3270: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: one Export modal switches between PDF and HTML -19:05 +3271: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: custom geometry controls, TOC enablement and invalid input at minimum size -19:06 +3272: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: cancelling settings does not confirm or persist edits -19:06 +3273: /home/albert/busystack/busymark/test/src/export_options_editor_test.dart: JSON settings store retains both format settings across controllers -19:07 +3274: loading /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart -19:07 +3274: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: existing-topic picker filters names and selects by keyboard -19:09 +3275: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: picker returns the supplied topic identity for duplicate names -19:09 +3276: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: Group keeps raw input and Enter-only acceptance -19:09 +3277: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: rename preserves validation and Preview/Refactor results -19:09 +3278: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.rtl -19:10 +3279: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.rtl -19:10 +3280: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: nested menus use the native host in TextDirection.ltr -19:10 +3281: /home/albert/busystack/busymark/test/src/writerside_toc_menu_test.dart: unavailable-host fallback supports keyboard and Escape in TextDirection.ltr -19:11 +3282: loading /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart -19:11 +3282: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: Linux Writerside title and duplicate dialogs are GTK-owned -19:13 +3283: /home/albert/busystack/busymark/test/src/native_writerside_dialog_source_test.dart: GTK Writerside contents follow application direction, filenames stay LTR -19:14 +3284: loading /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart -19:14 +3284: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw HTML preserves inherited and overridden block directions -19:15 +3285: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: preview model retains HTML direction for code and quotes -19:15 +3286: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML honors rtl, ltr, and auto directions -19:15 +3287: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: nested WYSIWYG blocks indent from the RTL start edge -19:16 +3288: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: English prose stays LTR in a Persian RTL UI and navigates LTR -19:16 +3289: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: Arabic prose stays RTL in an English UI and navigates RTL -19:16 +3290: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: raw Writerside technical blocks stay LTR with Arabic content -19:17 +3291: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered Arabic HTML without dir follows its content -19:17 +3292: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: WYSIWYG technical dialog inputs stay LTR in an RTL UI -19:17 +3293: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL horizontal arrows cross paragraph boundaries visually -19:18 +3294: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL Ctrl+Shift+Arrow extends word selection across paragraphs -19:18 +3295: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: code blocks stay LTR and use LTR boundary arrows in RTL UI -19:18 +3296: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: rendered HTML pre is LTR unless dir overrides it -19:18 +3297: /home/albert/busystack/busymark/test/src/wysiwyg_rtl_test.dart: RTL prefix hit testing maps the text start at the right edge -19:18 +3298: loading /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart -19:19 +3298: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote source AI proposal applies with logical identity -19:20 +3299: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: remote WYSIWYG AI proposal applies with logical identity -19:21 +3300: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: document-only AI snapshot opens a usable configuration -19:21 +3301: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI configuration uses native rows without duplicate choices -19:21 +3302: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: Refine with AI sends the explicitly selected model -19:22 +3303: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: AI proposal uses an explicitly selected provider -19:22 +3304: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: provider chooser exposes only configured providers -19:22 +3305: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: configured local provider remains available when Gemini is default -19:22 +3306: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: fixed AI target cannot widen a sidebar selection -19:22 +3307: /home/albert/busystack/busymark/test/src/ai_edit_ui_test.dart: proposal Apply refuses stale external source content -19:22 +3308: loading /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart -19:23 +3308: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial prefix grows compatibly -19:24 +3309: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial becomes complete and clears marker -19:24 +3310: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations identical complete listings remain consistent -19:24 +3311: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations incompatible repeated listing rejects -19:24 +3312: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations known failed prefix recovers completely -19:24 +3313: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations failure without a known prefix cannot prove recovery -19:24 +3314: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations successful listing followed by failure rejects -19:24 +3315: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry replacement between complete reads rejects -19:24 +3316: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations real entry removal between complete reads rejects -19:24 +3317: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter compatible scan keeps stronger proof -19:24 +3318: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete proof survives compatible limited rescan -19:24 +3319: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations partial rescan cannot erase a previous failure -19:24 +3320: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations complete recovery must retain failed-prefix entries -19:24 +3321: /home/albert/busystack/busymark/test/src/writerside_input_snapshot_test.dart: remaining observations shorter failed retry retains its consumed prefix -19:24 +3322: loading /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart -19:26 +3322: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: ingests workspace images with safe names and portable paths -19:26 +3323: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: reuses identical assets and resolves name collisions -19:27 +3324: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping identical publications keep the committed owner -19:27 +3325: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: overlapping different publications keep the committed owner -19:27 +3326: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect identical pending publications with equal filenames -19:31 +3327: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: separate processes protect different pending publications with equal filenames -19:34 +3328: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: failed publication releases only its own filesystem reservation -19:37 +3329: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: terminated provisional owner remains reserved across processes -19:41 +3330: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: rollback cannot delete an asset after its publication is committed -19:41 +3331: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: uses the configured Writerside images directory -19:41 +3332: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: restores retained Writerside video bytes without widening image paste -19:41 +3333: /home/albert/busystack/busymark/test/src/asset_ingestion_service_test.dart: requires saving untitled documents and rejects non-images -19:41 +3334: loading /home/albert/busystack/busymark/test/src/ai_test.dart -19:42 +3334: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy allows literal loopback and localhost origins -19:42 +3335: /home/albert/busystack/busymark/test/src/ai_test.dart: local endpoint policy rejects remote, credential-bearing, and path endpoints -19:42 +3336: /home/albert/busystack/busymark/test/src/ai_test.dart: prompt serializes untrusted document data as a JSON field -19:42 +3337: /home/albert/busystack/busymark/test/src/ai_test.dart: plain-text edit prompts never request Markdown -19:42 +3338: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard accepts prose edits that retain protected Markdown -19:42 +3339: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard rejects changed links and fenced code -19:42 +3340: /home/albert/busystack/busymark/test/src/ai_test.dart: Markdown proposal guard protects fences with longer valid closing markers -19:42 +3341: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder handles UTF-8 and JSON split across arbitrary byte chunks -19:42 +3342: /home/albert/busystack/busymark/test/src/ai_test.dart: NDJSON decoder rejects malformed records and oversized responses -19:42 +3343: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider lists models and streams chat content and usage -19:42 +3344: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider stops at completion and ignores trailing stream records -19:42 +3345: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider uses the documented low thinking level for GPT-OSS -19:42 +3346: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider bounds the model-list response while reading it -19:42 +3347: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider rejects redirects without following them -19:42 +3348: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider does not list or run Ollama cloud models -19:42 +3349: /home/albert/busystack/busymark/test/src/ai_test.dart: Ollama provider cancellation interrupts a silent response stream -19:42 +3350: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator cancels the older request for the same target -19:42 +3351: /home/albert/busystack/busymark/test/src/ai_test.dart: coordinator rejects a provider stream without completion -19:42 +3352: loading /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart -19:45 +3352: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: formatting a URL suffix retains the complete live link and round trips -19:47 +3353: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter URL recognition preserves formatting, literal syntax, anchors, breaks and descendants -19:47 +3354: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Enter recognition preserves formatting within a URL and does not enter math fields -19:47 +3355: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: text whitespace preservation metadata follows pasted whitespace -19:47 +3356: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: paste-only whitespace keeps list descendants exactly once -19:47 +3357: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: plain whitespace paste keeps list descendants through Undo and Redo -19:51 +3358: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: replacement scope distinguishes a heading field from its document block -19:51 +3359: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete blocks inserted in list content retain every descendant -19:51 +3360: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: generic block commands cannot convert tables or preserved raw blocks -19:51 +3361: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: nested list-to-blockquote conversion preserves parent text -19:51 +3362: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: every admonition style preserves nested list parent text -19:51 +3363: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves the current list item descendants -19:51 +3364: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace merge preserves descendants of an empty list item -19:51 +3365: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: Backspace rejects a merge that cannot represent descendants -19:51 +3366: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: complete clipboard snapshots reconstruct a table transactionally -19:51 +3367: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: same-editor cut and paste preserves complete tables -19:51 +3368: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits normalize every newline form before updating -19:51 +3369: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cell edits preserve block-marker prefixes as literal text -19:51 +3370: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary table cell edits preserve formatting and links -19:51 +3371: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: ordinary cell edits retain toolbar-applied formatting -19:51 +3372: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve empty-alt inline images -19:51 +3373: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: structural edits preserve existing hard line breaks -19:51 +3374: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing preserves a literal bang before an inline link -19:51 +3375: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: editing escapes block syntax at the start of a list item -19:51 +3376: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table field edits preserve rendered formatting and links -19:51 +3377: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields reject multiline input and reconcile the model -19:52 +3378: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table fields preserve block-marker-prefixed cell values -19:52 +3379: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source ranges select repeated text and table cells -19:52 +3380: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: exact source navigation rebases spans after earlier edits -19:53 +3381: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: source navigation expands collapsed Writerside ancestors -19:53 +3382: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: outline navigation expands a collapsed heading ancestor -19:53 +3383: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: table cells own shortcuts, formatting, and restored selection -19:53 +3384: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external undo groups continuous typing but not transactions -19:53 +3385: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: external history coalesces editor typing without local copies -19:53 +3386: /home/albert/busystack/busymark/test/src/wysiwyg_structured_regression_test.dart: undo controllers are disposed when blocks disappear -19:53 +3387: loading /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart -19:54 +3387: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: SSE decoder handles split UTF-8 frames and multiline data -19:54 +3388: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: OpenAI Responses adapter is stateless and maps text and usage -19:54 +3389: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini Interactions adapter uses stable v1 and text deltas only -19:54 +3390: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider never includes a secret in surfaced failures -19:54 +3391: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects malformed usage records -19:54 +3392: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: Gemini rejects an incomplete status update -19:54 +3393: /home/albert/busystack/busymark/test/src/ai_cloud_provider_test.dart: cloud provider rejects EOF without a typed completion event -19:58 +3394: loading /home/albert/busystack/busymark/test/src/modal_barrier_test.dart -19:59 +3394: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.light modal barriers use the semantic shade role -20:03 +3395: /home/albert/busystack/busymark/test/src/modal_barrier_test.dart: Brightness.dark modal barriers use the semantic shade role -20:03 +3396: loading /home/albert/busystack/busymark/test/src/native_menu_service_test.dart -20:03 +3396: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: show serializes native menu presentation and returns its selection -20:06 +3397: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: dismiss is scoped to the native menu session -20:06 +3398: /home/albert/busystack/busymark/test/src/native_menu_service_test.dart: missing native host reports unavailable for a themed fallback -20:07 +3399: loading /home/albert/busystack/busymark/test/src/workspace_controller_test.dart -20:11 +3399: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside tab preparation loads once and current activation loads zero -20:15 +3400: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: configuration preview does not reparse in a derived loop and closing all buffers relinquishes overlays -20:15 +3401: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all Writerside tabs completes override relinquishment -20:15 +3402: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closed-tab reconciliation rejects obsolete disk models and keeps tabs closed -20:16 +3403: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: active -20:16 +3404: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: inactive -20:16 +3405: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: closure -20:16 +3406: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: workspace -20:16 +3407: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: external -20:17 +3408: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside preparation rejects obsolete full input state: disposal -20:18 +3409: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: rapid Writerside activation keeps derived work bounded and publishes the latest request -20:18 +3410: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered creation notifications are acknowledged, external same-size writes remain visible -20:19 +3411: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: a failed mutation cannot acknowledge its write notifications -20:19 +3412: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: quarantine and duplicate delayed deletion events acknowledge incorporated absence -20:20 +3413: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: an external same-size write during acknowledgement invalidates the consumed fingerprint -20:21 +3414: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: anchor -20:21 +3415: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disposal during covered notification verification is safe: disk -20:21 +3416: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: covered TOC removal notifications require no subsequent module processing -20:22 +3417: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=false -20:22 +3418: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement accepts clean navigation return=true -20:23 +3419: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=false -20:23 +3420: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine accepts clean navigation return=true -20:23 +3421: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=false -20:23 +3422: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion accepts clean navigation return=true -20:23 +3423: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects inactive edit after clean navigation -20:23 +3424: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects reopen after clean navigation -20:24 +3425: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects close all after clean navigation -20:24 +3426: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects dispose after clean navigation -20:24 +3427: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal replacement rejects disk input after clean navigation -20:24 +3428: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects inactive edit after clean navigation -20:24 +3429: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects reopen after clean navigation -20:24 +3430: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects close all after clean navigation -20:25 +3431: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects dispose after clean navigation -20:25 +3432: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal quarantine rejects disk input after clean navigation -20:25 +3433: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects inactive edit after clean navigation -20:25 +3434: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects reopen after clean navigation -20:25 +3435: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects close all after clean navigation -20:25 +3436: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects dispose after clean navigation -20:25 +3437: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining removal final deletion rejects disk input after clean navigation -20:25 +3438: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: remaining resource discovery presents stable limited inputs -20:26 +3439: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects edit during verification -20:26 +3440: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects inactive edit during verification -20:26 +3441: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects workspace replacement during verification -20:26 +3442: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal replacement rejects same-project reopening during verification -20:26 +3443: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects edit during verification -20:26 +3444: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects inactive edit during verification -20:26 +3445: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects workspace replacement during verification -20:26 +3446: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal quarantine rejects same-project reopening during verification -20:26 +3447: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects edit during verification -20:27 +3448: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects inactive edit during verification -20:27 +3449: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects workspace replacement during verification -20:27 +3450: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction removal final deletion rejects same-project reopening during verification -20:27 +3451: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=false -20:27 +3452: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit disk before refresh inactive=true -20:27 +3453: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=false -20:27 +3454: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction deletion reconciliation preserves a newer accepted edit preparation after disk scan inactive=true -20:28 +3455: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=false -20:28 +3456: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial open recovers model/read mismatch automatic=true -20:28 +3457: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=false -20:28 +3458: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction initial creation recovers model/read mismatch automatic=true -20:28 +3459: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded inactive edit -20:28 +3460: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction limited preparation rejects superseded configuration write -20:28 +3461: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction discovery refresh keeps the live selected instance through reconciliation -20:28 +3462: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=4 -20:29 +3463: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: correction incomplete tree traversal publishes readable edited content and settles limit=2 -20:30 +3464: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome creation cannot overwrite an edit made during history flush -20:30 +3465: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: starting a Welcome workspace cannot discard a dirty buffer -20:30 +3466: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Welcome replaces clean buffers but workspace New remains additive -20:30 +3467: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete closes the topic buffer, selects a survivor, and records history -20:30 +3468: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Safe Delete journal removes the deleted tab after refresh failure restart -20:30 +3469: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC writes reject an inactive dirty tree without discarding either buffer -20:30 +3470: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: TOC creation defers its monitor events until the new document is open -20:31 +3471: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown topic import opens its first topic in an editable buffer -20:31 +3472: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed Markdown import preserves the active document and workspace -20:31 +3473: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Validate publishes a valid table containing an escaped pipe -20:31 +3474: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation reports stale, busy and failed outcomes without publishing old results -20:31 +3475: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=false -20:31 +3476: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation preserves the latest runtime diagnostic change: clear=true -20:31 +3477: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math callbacks from an older editor revision cannot republish errors -20:31 +3478: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Markdown validation uses the unsaved linked tab snapshot -20:31 +3479: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=true -20:31 +3480: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an inactive Writerside tab restores disk dependencies: savedAnchor=false -20:31 +3481: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside rename stages verified edits across unsaved tabs with undo -20:32 +3482: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened Markdown files by file path in recent workspaces -20:32 +3483: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: records opened folders by folder path in recent workspaces -20:32 +3484: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace file operations refresh and preserve active moved files -20:32 +3485: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates an unsaved Markdown file without adding it to recent -20:32 +3486: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates CommonMark inside Writerside without replacing project or dirty topic -20:32 +3487: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: identical untitled buffers remain distinct by buffer id -20:32 +3488: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: delayed untitled preview cannot publish into another untitled tab -20:32 +3489: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files leave preview mode for editor mode -20:32 +3490: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: new Markdown files preserve non-preview view modes -20:32 +3491: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding an untitled Markdown file clears the workspace -20:32 +3492: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discarding a saved file reloads disk text and clears dirty state -20:32 +3493: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside project and records it as recent -20:32 +3494: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: creates a Writerside topic and opens it without changing recents -20:32 +3495: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: topic TOC actions refresh the workspace and preserve file state -20:33 +3496: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: reviewed topic rename is rejected after a project buffer becomes dirty -20:33 +3497: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as writes a new Markdown file and records it as recent -20:33 +3498: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown in Writerside keeps ordinary files CommonMark -20:33 +3499: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside refresh preserves saved Markdown outside the workspace root -20:33 +3500: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving untitled Markdown into discovered topics reclassifies it -20:33 +3501: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving multiple untitled documents creates normal file buffers -20:33 +3502: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as refuses an existing file unless overwrite is explicit -20:33 +3503: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as explicit overwrite replaces the final symlink only -20:33 +3504: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves source edits for an untitled Markdown file -20:33 +3505: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while writing the file -20:33 +3506: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as completes against its buffer after switching tabs -20:33 +3507: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save as preserves edits made while reopening the file -20:33 +3508: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: switching active files reparses outline for the new file -20:34 +3509: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale validation after save and tab switch does not restore previous file -20:34 +3510: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validation completing after save preserves the saved snapshot -20:34 +3511: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source defers preview work until a preview mode is visible -20:34 +3512: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Source-only validation still runs when validate-on-edit is enabled -20:34 +3513: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: stale text update from previous file cannot dirty active tab -20:34 +3514: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: folder workspaces track open file tabs without duplicates -20:34 +3515: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All writes every dirty file-backed buffer -20:34 +3516: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All can be scoped without saving unrelated dirty buffers -20:34 +3517: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: selected dirty buffers can be discarded without changing tabs -20:34 +3518: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing active file tabs selects a neighboring tab -20:34 +3519: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: activating sibling file tabs wraps around the open tabs -20:34 +3520: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all file tabs clears the active editor state -20:34 +3521: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs aborts when a document changes during history flush -20:34 +3522: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing all tabs cannot clear workspace state replaced during flush -20:34 +3523: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed open clears stale workspace state -20:34 +3524: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: math renderer failures become source-linked runtime diagnostics -20:34 +3525: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: validate on edit setting controls live diagnostics only -20:34 +3526: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save waits for an idle delay before writing -20:36 +3527: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Undo and Redo reschedule autosave after the prior save settled -20:41 +3528: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: inactive document updates schedule autosave without changing tabs -20:42 +3529: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: failed workspace refresh restores eligible autosave scheduling -20:44 +3530: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: disabled autosave stays disabled after a failed refresh -20:45 +3531: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save remains scheduled independently for inactive tabs -20:47 +3532: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: auto save preserves dirty state when edits happen during save -20:47 +3533: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: overlapping manual save writes the newer requested revision -20:47 +3534: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save completes against its buffer after switching tabs -20:47 +3535: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing a buffer waits for its in-flight autosave -20:47 +3536: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard aborts when the document changes during protective history capture -20:47 +3537: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard waits for its buffer in-flight autosave -20:47 +3538: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: manual save waits for an in-flight autosave of the same buffer -20:47 +3539: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save All waits for an in-flight autosave of the same buffer -20:47 +3540: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Save As waits for an in-flight autosave of the same buffer -20:47 +3541: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean shutdown waits for in-flight document writes -20:47 +3542: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: pending history from a closed clean tab prevents a clean shutdown marker -20:48 +3543: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save refuses to overwrite external file changes without force -20:48 +3544: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save treats a deleted active file as an external conflict -20:48 +3545: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: save detects external rewrites with unchanged modified time -20:48 +3546: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: saving preserves a manually removed final newline -20:48 +3547: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: WYSIWYG list edits preserve a missing final newline -20:48 +3548: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: spelling correction undo and redo restore source and rich selections -20:48 +3549: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Keep Mine retains the conflict snapshot until explicit overwrite -20:49 +3550: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitor refresh waits for an active foreground refresh -20:49 +3551: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves an active edit and editor history made during reparse -20:49 +3552: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation reconciles edits accepted while its reparse is pending -20:49 +3553: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: opening a new tab preserves live edits and editor history in the visible document -20:49 +3554: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: closing the active tab aborts if it changes during next-tab activation -20:49 +3555: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: aborted discard close preserves dirty state after an editor-only change -20:49 +3556: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: aborted -20:49 +3557: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: closed -20:49 +3558: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: disabled -20:49 +3559: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: shutdown -20:49 +3560: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: discard close autosave disposition: replaced -20:49 +3561: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: tab activation does not resurrect another tab closed while waiting -20:49 +3562: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh preserves inactive edits and does not resurrect a closed tab -20:49 +3563: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: workspace refresh rejects a disk load superseded by typing -20:49 +3564: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: external file moves remap the open document buffer -20:49 +3565: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: monitors saved standalone tabs outside the workspace root -20:50 +3566: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: standalone refresh preserves saved tabs in different directories -20:50 +3567: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup leaves a clean session closed unless reopening is enabled -20:50 +3568: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: startup restores an interrupted session without an opt-in -20:50 +3569: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored sessions retain tabs whose files are missing -20:50 +3570: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: restored standalone sessions retain a missing document -20:50 +3571: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: mixed untitled and saved session restores as a standalone workspace -20:50 +3572: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark active -20:50 +3573: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: Writerside session restores recovered untitled CommonMark inactive -20:50 +3574: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: clean marker cannot hide remaining recovery entries -20:50 +3575: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: recovery text remains restorable when the later session save fails -20:50 +3576: /home/albert/busystack/busymark/test/src/workspace_controller_test.dart: single-document session uses no workspace path after saved tabs close -20:50 +3577: loading /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart -20:50 +3577: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped image-description text follows Markdown image alt semantics -20:50 +3578: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: annotated parsing has ordinary semantics across supported corpus -20:50 +3579: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: image ranges identify only resolved source occurrences -20:50 +3580: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: positioned label breaks retain raw endings and container prefixes -20:50 +3581: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: mapped link and image titles retain exact raw boundaries -20:50 +3582: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: destination-only links and images have no mapped title -20:50 +3583: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: position records do not change HTML or link semantics -20:50 +3584: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: selection endpoints crossing HTML retain one semantic fragment -20:50 +3585: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: supported HTML whitespace positions have complete position records -20:50 +3586: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: only operation-local markers are ignored -20:51 +3587: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: delimiter-only positions are explicitly incomplete -20:51 +3588: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: syntax-boundary probes retain the ordinary semantic oracle -20:51 +3589: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: deterministic inline combinations preserve annotated semantics -20:51 +3590: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: standalone HTML break ownership uses one indexed lookup per break -20:51 +3591: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: AST source boundary lookahead is linear and maps the final link -20:51 +3592: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: fallback mapping is bounded for entities repetitions and code spans -20:51 +3593: /home/albert/busystack/busymark/test/src/markdown_source_map_test.dart: tag-looking attribute text does not claim break layout -20:51 +3594: loading /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart -20:55 +3594: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: restores WYSIWYG selection from document session state -20:56 +3595: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: reports the old document session before switching tabs -20:56 +3596: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: defers session provider updates until document rebuild ends -20:56 +3597: /home/albert/busystack/busymark/test/src/wysiwyg_session_test.dart: workspace mode delegates WYSIWYG undo to buffer history -20:57 +3598: loading /home/albert/busystack/busymark/test/src/writerside_identity_test.dart -20:58 +3598: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: anchor identity includes topic and all instances participate in usages -20:58 +3599: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: conditional globals and snippet variables have distinct scopes -20:58 +3600: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: completion filters context and target identity before limiting -20:58 +3601: /home/albert/busystack/busymark/test/src/writerside_identity_test.dart: validation uses relationships, typed values and current configuration syntax -20:58 +3602: loading /home/albert/busystack/busymark/test/src/html_export_ui_test.dart -21:02 +3602: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: one Export command retains Ctrl+Shift+E -21:02 +3603: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Flutter Main menu exposes document export -21:02 +3604: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: untitled active text stays captured while destination picker is open -21:05 +3605: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Cancel handling before instance selection -21:05 +3606: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Discard handling before instance selection -21:06 +3607: /home/albert/busystack/busymark/test/src/html_export_ui_test.dart: Writerside HTML follows Save handling before instance selection -21:14 +3608: loading /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart -21:15 +3608: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote identity is independent of paths, title and publication -21:15 +3609: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote context stays Markdown and has no disk root or disk path -21:15 +3610: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: session v2 stores remote identity and editor state without content -21:15 +3611: /home/albert/busystack/busymark/test/src/nextcloud_document_model_test.dart: remote history binds reopened and renamed notes to one logical document -21:15 +3612: loading /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart -21:17 +3612: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Writerside numeric list starts and container boundaries reach PDF -21:17 +3613: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: list items and visualization replacements retain source anchors -21:17 +3614: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: maps Markdown semantics into renderer-neutral export blocks -21:17 +3615: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: omits reference definitions while preserving their resolved links -21:17 +3616: /home/albert/busystack/busymark/test/src/markdown_export_mapper_test.dart: Typst payload contains data but never raw local image paths -21:17 +3617: loading /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart -21:21 +3617: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: basic fixture uses a renderable OpenAPI fence -21:21 +3618: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: visualizer fences remain generic code and round-trip byte-for-byte -21:22 +3619: /home/albert/busystack/busymark/test/src/visualization_markdown_integration_test.dart: dedicated visualizer rules highlight comments, keys, and keywords -21:23 +3620: loading /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart -21:26 +3620: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-topic-create-10-100-0 -21:26 +3621: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-topic-create-10-100-0 -21:26 +3622: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.guide.tree.busymark-safe-delete-10-100-0 -21:26 +3623: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.guide.tree.busymark-safe-delete-10-100-0 -21:26 +3624: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: temporary-to-real move retains publication: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 -21:26 +3625: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: real-to-temporary move retains deletion: /tmp/.topic.md.busymark-safe-delete-quarantine-10-100-0 -21:26 +3626: /home/albert/busystack/busymark/test/src/workspace_monitor_endpoints_test.dart: external moves, missing destinations and authored hidden names stay visible -21:26 +3627: loading /home/albert/busystack/busymark/test/src/html_rich_export_test.dart -21:27 +3627: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered mermaid retains a linked Writerside block ID -21:29 +3628: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: rendered openapi retains a linked Writerside block ID -21:29 +3629: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: HTML uses unique occurrence jobs, standalone math and diagram/static API engines -21:29 +3630: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: custom HTML metrics and embedded rich assets stay self-contained -21:29 +3631: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: all diagram dependencies are captured before rendering begins -21:29 +3632: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: cancelling an active render retains existing output and removes staging -21:29 +3633: /home/albert/busystack/busymark/test/src/html_rich_export_test.dart: render timeout is bounded and cancellation interrupts a pending job -21:30 +3634: loading /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart -21:30 +3634: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: finds exact href and body spans for every supported quote form -21:30 +3635: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: ignores comments, fenced code, and inline code but keeps containers -21:30 +3636: /home/albert/busystack/busymark/test/src/writerside_html_reference_scanner_test.dart: multiline anchors are exact and malformed anchors remain manual -21:30 +3637: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/gtk-accent-host.log b/delivery/nextcloud-explicit-adoption/evidence/gtk-accent-host.log deleted file mode 100644 index 45f8665c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/gtk-accent-host.log +++ /dev/null @@ -1,25 +0,0 @@ -dbus-daemon[739764]: [session uid=1000 pid=739764] Activating service name='org.a11y.Bus' requested by ':1.0' (uid=1000 pid=739765 comm="/tmp/busymark-gtk-accent-host.9JEEOy/probe /tmp/bu" label="unconfined") -dbus-daemon[739764]: [session uid=1000 pid=739764] Successfully activated service 'org.a11y.Bus' -dbus-daemon[739764]: [session uid=1000 pid=739764] Activating service name='org.gtk.vfs.Daemon' requested by ':1.2' (uid=1000 pid=739765 comm="/tmp/busymark-gtk-accent-host.9JEEOy/probe /tmp/bu" label="unconfined") -dbus-daemon[739764]: [session uid=1000 pid=739764] Successfully activated service 'org.gtk.vfs.Daemon' -fusermount3: failed to access mountpoint /run/user/1000/gvfs: Permission denied -libEGL warning: DRI3 error: Could not get DRI3 device -libEGL warning: Ensure your X server supports DRI3 to get accelerated rendering -PASS production getAccent method and exact standard-codec payload -dbus-daemon[739774]: Activating service name='org.a11y.atspi.Registry' requested by ':1.0' (uid=1000 pid=739765 comm="/tmp/busymark-gtk-accent-host.9JEEOy/probe /tmp/bu" label="unconfined") -PASS actual event channel replay, live GTK/dark changes and unavailability -PASS channel cancellation and current-state reattachment -PASS host free cancels queued refresh and detaches channel callbacks -embedder.cc (2605): 'FlutterEngineRemoveView' returned 'kInvalidArguments'. Engine handle was invalid. -dbus-daemon[739774]: Successfully activated service 'org.a11y.atspi.Registry' -SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry -libEGL warning: DRI3 error: Could not get DRI3 device -libEGL warning: Ensure your X server supports DRI3 to get accelerated rendering -embedder.cc (2605): 'FlutterEngineRemoveView' returned 'kInvalidArguments'. Engine handle was invalid. -PASS window-first destruction, subsequent cleanup and no events after shutdown -libEGL warning: DRI3 error: Could not get DRI3 device -libEGL warning: Ensure your X server supports DRI3 to get accelerated rendering -embedder.cc (2605): 'FlutterEngineRemoveView' returned 'kInvalidArguments'. Engine handle was invalid. -PASS view-first destruction, subsequent cleanup and no events after shutdown -PASS Flutter messenger shutdown releases both channel objects -A connection to the bus can't be made diff --git a/delivery/nextcloud-explicit-adoption/evidence/gtk-accent.log b/delivery/nextcloud-explicit-adoption/evidence/gtk-accent.log deleted file mode 100644 index cb97f2ec..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/gtk-accent.log +++ /dev/null @@ -1,7 +0,0 @@ -PASS older-only lookup: #336699 (modern symbol absent) -PASS listener attachment replays current modern color -PASS runtime theme-name and dark-preference notifications read refreshed CSS -PASS transparent and missing lookups remain unavailable; duplicates suppressed -PASS header CSS refresh produces no accent feedback -PASS cancellation, resubscription and queued-callback cleanup -GTK 3.24.41; backend=GdkX11Display; fixture package=unpackaged native probe diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock-persistent.json b/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock-persistent.json deleted file mode 100644 index 18865be2..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock-persistent.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "ok": false, - "checks": { - "notesVersion": "6.1.0", - "apiVersion": "1.4", - "lockFixtureState": "locked", - "lockFixturePending": true, - "unrelatedDuringLockState": "synced", - "real423PreservesLocalOutboxAndOtherNotesSync": true, - "locallyDurableCreation": true, - "contentCategoryFavoriteCanonicalTitle": true, - "titleSanitized": true, - "attachmentDelete": true, - "attachmentUploadFetchRename": true, - "secondActorEtagConflictAndMerge": true, - "offlineNewNoteAttachmentRestartReconnect": true - }, - "failureType": "StateError", - "failure": "Discovery mutated the candidate or published an attachment." -} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock.json b/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock.json deleted file mode 100644 index 3c899831..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/live-fixtures/live-lock.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "ok": false, - "checks": { - "notesVersion": "6.1.0", - "apiVersion": "1.4", - "lockFixtureState": "synced", - "lockFixturePending": false, - "unrelatedDuringLockState": "synced" - }, - "failureType": "StateError", - "failure": "Real 423 did not preserve the local outbox and isolate unrelated notes." -} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.json b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.json deleted file mode 100644 index a64e36ae..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/home/tester/busymark-release/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": true, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": false - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.log deleted file mode 100644 index 73824465..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-online.log +++ /dev/null @@ -1,7 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(process:2): GLib-GIO-CRITICAL **: 10:54:38.174: Error while sending AddMatch() message: The connection is closed - -(process:2): GLib-GIO-CRITICAL **: 10:54:38.178: Error while sending GetNameOwner() message: The connection is closed - -(process:2): GLib-GIO-CRITICAL **: 10:54:38.178: Error while sending AddMatch() message: The connection is closed diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.json b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.json deleted file mode 100644 index 4a0f27d7..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "ok": false, - "checks": { - "resourceRoot": "/home/tester/busymark-release/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": false, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true - }, - "error": "TimeoutException after 0:00:05.000000: Future not completed", - "stackTrace": "#0 Future.timeout. (dart:async/future_impl.dart:1042)\n\n#1 _settleSmokeFrames (package:busymark/src/spellcheck/spelling_release_smoke.dart:696)\n\n#2 _unmountSmokeEditor (package:busymark/src/spellcheck/spelling_release_smoke.dart:671)\n\n#3 runSpellingReleaseSmoke (package:busymark/src/spellcheck/spelling_release_smoke.dart:299)\n\n#4 main (package:busymark/main.dart:29)\n\n" -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.log deleted file mode 100644 index 89658a12..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-wayland-denied-network.log +++ /dev/null @@ -1,12 +0,0 @@ - -(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:56:22.512: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:56:49.913: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:57:06.137: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed -Gdk-Message: 10:57:06.153: Unable to load from the cursor theme - -(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:57:07.797: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:13289): Gdk-CRITICAL **: 10:57:09.421: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.json b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.json deleted file mode 100644 index fa26aee8..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/home/tester/busymark-release/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": false, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": true - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.log deleted file mode 100644 index 31d4ef8f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/spelling-x11-denied-network.log +++ /dev/null @@ -1,7 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(process:2): GLib-GIO-CRITICAL **: 10:56:18.355: Error while sending AddMatch() message: The connection is closed - -(process:2): GLib-GIO-CRITICAL **: 10:56:18.366: Error while sending GetNameOwner() message: The connection is closed - -(process:2): GLib-GIO-CRITICAL **: 10:56:18.366: Error while sending AddMatch() message: The connection is closed diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/weston.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/weston.log deleted file mode 100644 index 7c7f2fb1..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/weston.log +++ /dev/null @@ -1,32 +0,0 @@ -Date: 2026-10-07 UTC -[10:56:18.509] weston 13.0.0 - https://wayland.freedesktop.org - Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/ - Build: 13.0.0 -[10:56:18.519] Command line: weston --backend=headless --renderer=pixman --socket=wayland-native --idle-time=0 --log=/home/tester/native-evidence/weston.log -[10:56:18.519] OS: Linux, 6.8.0-142-generic, #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026, x86_64 -[10:56:18.519] Flight recorder: enabled -[10:56:18.527] Starting with no config file. -[10:56:18.534] Output repaint window is 7 ms maximum. -[10:56:18.536] Loading module '/usr/lib/x86_64-linux-gnu/libweston-13/headless-backend.so' -[10:56:18.573] Using Pixman renderer -[10:56:18.574] Registered plugin API 'weston_windowed_output_api_v2' of size 16 -[10:56:18.575] Color manager: no-op -[10:56:18.578] Output 'headless' attempts EOTF mode: SDR -[10:56:18.579] Output 'headless' using color profile: stock sRGB color profile -[10:56:18.586] Output 'headless' enabled with head(s) headless -[10:56:18.587] Compositor capabilities: - arbitrary surface rotation: yes - screen capture uses y-flip: no - cursor planes: no - arbitrary resolutions: no - view mask clipping: yes - explicit sync: no - color operations: no - presentation clock: CLOCK_MONOTONIC_RAW, id 4 - presentation clock resolution: 0.000000001 s -[10:56:18.590] Loading module '/usr/lib/x86_64-linux-gnu/weston/desktop-shell.so' -[10:56:18.600] launching '/usr/libexec/weston-keyboard' -[10:56:18.606] launching '/usr/libexec/weston-desktop-shell' -[10:57:33.516] caught signal 15 -[10:57:33.540] BUG: finalizing a layer with views still on it. diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/xvfb.log b/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/xvfb.log deleted file mode 100644 index 9d6a58c7..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/native-fixtures/xvfb.log +++ /dev/null @@ -1,57 +0,0 @@ -The XKEYBOARD keymap compiler (xkbcomp) reports: -> Warning: Could not resolve keysym XF86CameraAccessEnable -> Warning: Could not resolve keysym XF86CameraAccessDisable -> Warning: Could not resolve keysym XF86CameraAccessToggle -> Warning: Could not resolve keysym XF86NextElement -> Warning: Could not resolve keysym XF86PreviousElement -> Warning: Could not resolve keysym XF86AutopilotEngageToggle -> Warning: Could not resolve keysym XF86MarkWaypoint -> Warning: Could not resolve keysym XF86Sos -> Warning: Could not resolve keysym XF86NavChart -> Warning: Could not resolve keysym XF86FishingChart -> Warning: Could not resolve keysym XF86SingleRangeRadar -> Warning: Could not resolve keysym XF86DualRangeRadar -> Warning: Could not resolve keysym XF86RadarOverlay -> Warning: Could not resolve keysym XF86TraditionalSonar -> Warning: Could not resolve keysym XF86ClearvuSonar -> Warning: Could not resolve keysym XF86SidevuSonar -> Warning: Could not resolve keysym XF86NavInfo -Errors from xkbcomp are not fatal to the X server -The XKEYBOARD keymap compiler (xkbcomp) reports: -> Warning: Could not resolve keysym XF86CameraAccessEnable -> Warning: Could not resolve keysym XF86CameraAccessDisable -> Warning: Could not resolve keysym XF86CameraAccessToggle -> Warning: Could not resolve keysym XF86NextElement -> Warning: Could not resolve keysym XF86PreviousElement -> Warning: Could not resolve keysym XF86AutopilotEngageToggle -> Warning: Could not resolve keysym XF86MarkWaypoint -> Warning: Could not resolve keysym XF86Sos -> Warning: Could not resolve keysym XF86NavChart -> Warning: Could not resolve keysym XF86FishingChart -> Warning: Could not resolve keysym XF86SingleRangeRadar -> Warning: Could not resolve keysym XF86DualRangeRadar -> Warning: Could not resolve keysym XF86RadarOverlay -> Warning: Could not resolve keysym XF86TraditionalSonar -> Warning: Could not resolve keysym XF86ClearvuSonar -> Warning: Could not resolve keysym XF86SidevuSonar -> Warning: Could not resolve keysym XF86NavInfo -Errors from xkbcomp are not fatal to the X server -The XKEYBOARD keymap compiler (xkbcomp) reports: -> Warning: Could not resolve keysym XF86CameraAccessEnable -> Warning: Could not resolve keysym XF86CameraAccessDisable -> Warning: Could not resolve keysym XF86CameraAccessToggle -> Warning: Could not resolve keysym XF86NextElement -> Warning: Could not resolve keysym XF86PreviousElement -> Warning: Could not resolve keysym XF86AutopilotEngageToggle -> Warning: Could not resolve keysym XF86MarkWaypoint -> Warning: Could not resolve keysym XF86Sos -> Warning: Could not resolve keysym XF86NavChart -> Warning: Could not resolve keysym XF86FishingChart -> Warning: Could not resolve keysym XF86SingleRangeRadar -> Warning: Could not resolve keysym XF86DualRangeRadar -> Warning: Could not resolve keysym XF86RadarOverlay -> Warning: Could not resolve keysym XF86TraditionalSonar -> Warning: Could not resolve keysym XF86ClearvuSonar -> Warning: Could not resolve keysym XF86SidevuSonar -> Warning: Could not resolve keysym XF86NavInfo -Errors from xkbcomp are not fatal to the X server diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/change.patch b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/change.patch deleted file mode 100644 index 87e1ceb9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/change.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- a/linux/runner/web_render_host.cc -+++ b/linux/runner/web_render_host.cc -@@ -486,7 +486,13 @@ - self->active_cancellable = g_cancellable_new(); - g_autoptr(GVariant) arguments = - javascript_arguments(request->operation, request->arguments_json); -+ // WebKit can lose an async function's result when its pending Promise is -+ // collected. Keep the complete render task reachable until it settles, -+ // including harness readiness and font/layout waits during HTML exports. - constexpr char kBody[] = -+ "const pending = window.busymarkPendingTasks ||" -+ "(window.busymarkPendingTasks = new Set());" -+ "const task = (async () => {" - "if (typeof window.busymarkRender !== 'function') {" - "await new Promise((resolve, reject) => {" - "const timer = window.setTimeout(() => reject(new Error(" -@@ -498,7 +504,10 @@ - "}" - "const request = JSON.parse(requestJson);" - "request.operation = operation;" -- "return JSON.stringify(await window.busymarkRender(request));"; -+ "return JSON.stringify(await window.busymarkRender(request));" -+ "})();" -+ "pending.add(task);" -+ "try { return await task; } finally { pending.delete(task); }"; - webkit_web_view_call_async_javascript_function( - self->web_view, kBody, -1, arguments, nullptr, kHarnessUri, - self->active_cancellable, javascript_finished_cb, request); diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/identity.json b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/identity.json deleted file mode 100644 index 60a2c5f0..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/identity.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "historical": true, - "reverted": true, - "reason": "Promise retention did not fix actual installed visualization acceptance. No renderer change is delivered.", - "experimentSourceSha256": "bf268868ef2baf322b91fe1efaaeebd0829a7b6b3dd25b9aaf36f8339359940d", - "experimentSnapSha256": "a4124cdcd8667c0cf51e3bb0a9a41f7dd3fdda033468cae3fa610dde4aa624ae", - "fullFlutter": { - "passed": 3638, - "failed": 0, - "duration": "18:28", - "historicalExperiment": true - }, - "nativeVisualization": { - "x11Checks": 23, - "waylandChecks": 23 - }, - "installedVisualizationPassed": false -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/linux-build-render-root.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/linux-build-render-root.log deleted file mode 100644 index 0134c64b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/linux-build-render-root.log +++ /dev/null @@ -1,65 +0,0 @@ -Resolving dependencies... -Downloading packages... - _fe_analyzer_shared 99.0.0 (109.0.0 available) - analyzer 12.1.0 (14.5.0 available) - animated_vector 0.2.2 (0.2.3 available) - animated_vector_annotations 0.2.2 (0.3.0 available) - archive 4.0.9 (4.3.0 available) - assorted_layout_widgets 11.0.0 (13.1.0 available) - clock 1.1.2 (1.1.3 available) - code_assets 1.2.1 (2.1.0 available) - cross_file 0.3.5+4 (0.4.0 available) - dbus 0.7.13 (0.8.0 available) - file_selector_android 0.5.2+8 (0.5.2+11 available) - file_selector_ios 0.5.3+5 (0.5.3+6 available) - file_selector_linux 0.9.4 (0.9.4+1 available) - file_selector_macos 0.9.5 (0.9.5+1 available) - file_selector_windows 0.9.3+5 (0.9.3+6 available) - flutter_riverpod 3.3.2 (3.4.3 available) - frontend_server_client 4.0.0 (4.1.0 available) - glob 2.1.3 (2.2.0 available) - go_router 17.3.0 (18.0.2 available) - gsettings 0.2.8 (0.2.9 available) - html 0.15.6 (0.15.7 available) - image 4.9.1 (4.10.1 available) - io 1.0.5 (1.1.0 available) - jni 1.0.0 (1.1.0 available) - jni_flutter 1.0.1 (1.0.4+1 available) - material_color_utilities 0.13.0 (0.13.1 available) - mime 2.0.0 (2.1.0 available) - native_toolchain_c 0.19.3 (0.19.5 available) - objective_c 9.4.1 (9.6.2 available) - package_config 2.2.0 (3.0.0 available) - package_info_plus 10.2.1 (10.2.2 available) - petitparser 7.0.2 (7.1.0 available) - platform 3.1.6 (3.2.0 available) - pool 1.5.2 (1.5.3 available) - posix 6.5.0 (6.5.2 available) - pub_semver 2.2.0 (2.2.1 available) - riverpod 3.3.2 (3.4.3 available) - source_maps 0.10.13 (0.10.14 available) - stack_trace 1.12.1 (1.12.2 available) - test 1.31.1 (1.32.0 available) - test_api 0.7.12 (0.7.14 available) - test_core 0.6.18 (0.6.20 available) - ubuntu_localizations 0.5.2+3 (0.5.2+4 available) - unorm_dart 0.3.2 (0.3.3 available) - url_launcher 6.3.2 (6.3.3 available) - url_launcher_android 6.3.32 (6.3.33 available) - url_launcher_ios 6.4.1 (6.4.2 available) - url_launcher_linux 3.2.2 (3.2.3 available) - url_launcher_macos 3.2.5 (3.2.6 available) - url_launcher_windows 3.1.5 (3.1.6 available) - vector_graphics 1.2.2 (1.2.3 available) - vector_graphics_compiler 1.2.6 (1.3.0 available) - vector_math 2.4.2 (2.4.3 available) - vm_service 15.2.0 (15.3.0 available) - win32 6.3.0 (6.4.0 available) - xml 7.0.1 (7.1.0 available) - yaml 3.1.3 (3.1.4 available) - yaru 10.2.0 (11.0.0 available) -Got dependencies! -58 packages have newer versions incompatible with dependency constraints. -Try `flutter pub outdated` for more information. -Building Linux application... -✓ Built build/linux/x64/release/bundle/busymark diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-wayland-render.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-wayland-render.log deleted file mode 100644 index 976d56c9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-wayland-render.log +++ /dev/null @@ -1,26 +0,0 @@ - -(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.306: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:1415271): dbind-WARNING **: 06:34:27.310: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory - -(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.416: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:1415271): Atk-CRITICAL **: 06:34:27.417: atk_socket_embed: assertion 'plug_id != NULL' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.519: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed -Gdk-Message: 06:34:27.520: Unable to load from the cursor theme - -(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.644: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:27.703: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (process:2): WARNING **: 06:34:27.732: Failed to connect to bus: Could not connect: No such file or directory - -** (process:2): WARNING **: 06:34:27.734: Can't connect to a11y bus: Error receiving data: Connection reset by peer - -(io.busystack.busymark:1415271): Gdk-CRITICAL **: 06:34:29.112: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (process:2): WARNING **: 06:34:29.192: Failed to connect to bus: Could not connect: No such file or directory - -** (process:2): WARNING **: 06:34:29.194: Can't connect to a11y bus: Error receiving data: Connection reset by peer diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-x11-render.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-x11-render.log deleted file mode 100644 index 70bf1956..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/native-visualization-x11-render.log +++ /dev/null @@ -1,13 +0,0 @@ - -(io.busystack.busymark:1404609): dbind-WARNING **: 06:30:47.740: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory - -(io.busystack.busymark:1404609): Atk-CRITICAL **: 06:30:47.886: atk_socket_embed: assertion 'plug_id != NULL' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -** (process:2): WARNING **: 06:30:48.401: Failed to connect to bus: Could not connect: No such file or directory - -** (process:2): WARNING **: 06:30:48.607: Can't connect to a11y bus: Error receiving data: Connection reset by peer - -** (process:2): WARNING **: 06:30:50.317: Failed to connect to bus: Could not connect: No such file or directory - -** (process:2): WARNING **: 06:30:50.319: Can't connect to a11y bus: Error receiving data: Connection reset by peer diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-clean-render.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-clean-render.log deleted file mode 100644 index 37ba8dad..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-clean-render.log +++ /dev/null @@ -1,8848 +0,0 @@ -Cleaning all parts -Initialising lifecycle -Installing build-packages -The following snaps are required but not installed as the application is running inside docker or podman container: gnome-46-2404, gtk-common-themes, mesa-2404, core24, node/24/stable, gnome-46-2404-sdk. -Please ensure the environment is properly setup before continuing. -Ignore this message if the appropriate measures have already been taken. -Pulling busymark -Fetching stage-packages -Downloading package: fontconfig -/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/fontconfig_2.15.0-1.1ubuntu2_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) - acq.run() -Downloading package: libvulkan1 -Downloading package: libsvtav1enc1d1 -Downloading package: libhwy1t64 -Downloading package: libxcb-present0 -Downloading package: yaru-theme-icon -Downloading package: libyajl2 -Downloading package: libv4lconvert0t64 -Downloading package: libgomp1 -Downloading package: libzxing3 -Downloading package: libpulse0 -Downloading package: libwebpmux3 -Downloading package: libopenal-data -Downloading package: libltc11 -Downloading package: libvpl2 -Downloading package: libserd-0-0 -Downloading package: libvpx9 -Downloading package: libxxf86vm1 -Downloading package: libcodec2-1.2 -Downloading package: librubberband2 -Downloading package: libsharpyuv0 -Downloading package: libnghttp2-14 -Downloading package: openssh-client -Downloading package: libglx-mesa0 -Downloading package: libtwolame0 -Downloading package: gstreamer1.0-plugins-ugly -Downloading package: libzvbi-common -Downloading package: libjack-jackd2-0 -Downloading package: libfreeaptx0 -Downloading package: libdatrie1 -Downloading package: libthai0 -Downloading package: libssh-4 -Downloading package: libxrender1 -Downloading package: libldap2 -Downloading package: libglvnd0 -Downloading package: libproxy1v5 -Downloading package: libgdbm-compat4t64 -Downloading package: libraptor2-0 -Downloading package: libsensors-config -Downloading package: hicolor-icon-theme -Downloading package: git -Downloading package: libglib2.0-bin -Downloading package: perl -Downloading package: libx11-xcb1 -Downloading package: libxshmfence1 -Downloading package: libfluidsynth3 -Downloading package: libunwind8 -Downloading package: libdecor-0-0 -Downloading package: libpango-1.0-0 -Downloading package: libvo-aacenc0 -Downloading package: libwavpack1 -Downloading package: libavtp0 -Downloading package: libsrt1.5-gnutls -Downloading package: libwayland-cursor0 -Downloading package: libx264-164 -Downloading package: libshine3 -Downloading package: libaom3 -Downloading package: lsb-base -Downloading package: libjpeg-turbo8 -Downloading package: libv4l-0t64 -Downloading package: libavahi-common-data -Downloading package: libcolord2 -Downloading package: libpsl5t64 -Downloading package: libx265-199 -Downloading package: libass9 -Downloading package: libsasl2-2 -Downloading package: libxcb-dri3-0 -Downloading package: libcairo2 -Downloading package: libgbm1 -Downloading package: libxcursor1 -Downloading package: libbluray2 -Downloading package: libvorbisfile3 -Downloading package: libdv4t64 -Downloading package: libblas3 -Downloading package: libdeflate0 -Downloading package: libqrencode4 -Downloading package: libjpeg8 -Downloading package: x11-common -Downloading package: libiec61883-0 -Downloading package: libsphinxbase3t64 -Downloading package: libbs2b0 -Downloading package: libfftw3-double3 -Downloading package: libglx0 -Downloading package: libgme0 -Downloading package: libdav1d7 -Downloading package: libcaca0 -Downloading package: libfribidi0 -Downloading package: mesa-libgallium -Downloading package: libraw1394-11 -Downloading package: librtmp1 -Downloading package: adwaita-icon-theme -Downloading package: libgpm2 -Downloading package: libtiff6 -Downloading package: libgfortran5 -Downloading package: libpixman-1-0 -Downloading package: libtag1v5 -Downloading package: libvidstab1.1 -Downloading package: libva-x11-2 -Downloading package: librist4 -Downloading package: libgsm1 -Downloading package: libgupnp-1.6-0 -Downloading package: libcjson1 -Downloading package: libshout3 -Downloading package: libxau6 -Downloading package: libgtk2.0-0t64 -Downloading package: libxcb1 -Downloading package: libgstreamer-gl1.0-0 -Downloading package: libssh-gcrypt-4 -Downloading package: libllvm20 -Downloading package: libxcomposite1 -Downloading package: libmfx1 -Downloading package: libmpcdec6 -Downloading package: libnuma1 -Downloading package: libcdio19t64 -Downloading package: libdirectfb-1.7-7t64 -Downloading package: libxdamage1 -Downloading package: libgdk-pixbuf-2.0-0 -Downloading package: libsasl2-modules-db -Downloading package: libfaad2 -Downloading package: timgm6mb-soundfont -Downloading package: libcairo-gobject2 -Downloading package: fonts-noto-mono -Downloading package: liblerc4 -Downloading package: ubuntu-mono -Downloading package: libgupnp-igd-1.6-0 -Downloading package: libgdbm6t64 -Downloading package: libxml2 -Downloading package: libglib2.0-data -Downloading package: humanity-icon-theme -Downloading package: libgtk2.0-common -Downloading package: libgraphite2-3 -Downloading package: util-linux -Downloading package: libdconf1 -Downloading package: libfontconfig1 -Downloading package: libcups2t64 -Downloading package: libvdpau1 -Downloading package: libsbc1 -Downloading package: libmodplug1 -Downloading package: libopenexr-3-1-30 -Downloading package: libopenh264-7 -Downloading package: libpostproc57 -Downloading package: libxss1 -Downloading package: shared-mime-info -Downloading package: libatspi2.0-0t64 -Downloading package: glib-networking-common -Downloading package: libgles2 -Downloading package: libgl1-mesa-dri -Downloading package: libcurl3t64-gnutls -Downloading package: libasound2t64 -Downloading package: libxrandr2 -Downloading package: libjxl0.7 -Downloading package: fontconfig-config -Downloading package: gtk2-engines-murrine -Downloading package: libmp3lame0 -Downloading package: libsoxr0 -Downloading package: libx11-data -Downloading package: libsoup-3.0-0 -Downloading package: libgudev-1.0-0 -Downloading package: libgstreamer-plugins-good1.0-0 -Downloading package: libavc1394-0 -Downloading package: libsodium23 -Downloading package: libudfread0 -Downloading package: libjson-glib-1.0-common -Downloading package: libmjpegutils-2.1-0t64 -Downloading package: gnome-themes-extra-data -Downloading package: libmbedcrypto7t64 -Downloading package: libsnappy1v5 -Downloading package: libsndio7.0 -Downloading package: libopus0 -Downloading package: libpangocairo-1.0-0 -Downloading package: libnorm1t64 -Downloading package: libxtst6 -Downloading package: glib-networking-services -Downloading package: libmysofa1 -Downloading package: yaru-theme-gtk -Downloading package: libavcodec60 -Downloading package: libzimg2 -Downloading package: libgstreamer-plugins-bad1.0-0 -Downloading package: libxcb-render0 -Downloading package: libusb-1.0-0 -Downloading package: libvisual-0.4-0 -Downloading package: libgssdp-1.6-0 -Downloading package: libimath-3-1-29t64 -Downloading package: libzvbi0t64 -Downloading package: gsettings-desktop-schemas -Downloading package: fonts-noto-core -Downloading package: libdvdread8t64 -Downloading package: gstreamer1.0-plugins-good -Downloading package: libwebrtc-audio-processing1 -Downloading package: libopenni2-0 -Downloading package: gstreamer1.0-plugins-base -Downloading package: libopenal1 -Downloading package: libvorbisenc2 -Downloading package: libasyncns0 -Downloading package: libunibreak5 -Downloading package: libnss3 -Downloading package: libpangoft2-1.0-0 -Downloading package: libtheora0 -Downloading package: libxvidcore4 -Downloading package: libpocketsphinx3 -Downloading package: libspandsp2t64 -Downloading package: libsndfile1 -Downloading package: libavutil58 -Downloading package: liborc-0.4-0t64 -Downloading package: libwebp7 -Downloading package: libsidplay1v5 -Downloading package: libwildmidi2 -Downloading package: libxslt1.1 -Downloading package: libswscale7 -Downloading package: fonts-dejavu-mono -Downloading package: liblc3-1 -Downloading package: libatk1.0-0t64 -Downloading package: libspeex1 -Downloading package: libmpeg2-4 -Downloading package: libasound2-data -Downloading package: adduser -Downloading package: libflac12t64 -Downloading package: libthai-data -Downloading package: libgstreamer1.0-0 -Downloading package: libdca0 -Downloading package: libavahi-common3 -Downloading package: liblrdf0 -Downloading package: librsvg2-2 -Downloading package: libsamplerate0 -Downloading package: liberror-perl -Downloading package: ocl-icd-libopencl1 -Downloading package: libxcb-glx0 -Downloading package: libldacbt-enc2 -Downloading package: libogg0 -Downloading package: libxinerama1 -Downloading package: libsord-0-0 -Downloading package: libjbig0 -Downloading package: libflite1 -Downloading package: libopenjp2-7 -Downloading package: libwayland-egl1 -Downloading package: libcdparanoia0 -Downloading package: libplacebo338 -Downloading package: libzix-0-0 -Downloading package: libvorbis0a -Downloading package: libsdl2-2.0-0 -Downloading package: libdw1t64 -Downloading package: libjson-glib-1.0-0 -Downloading package: perl-base -Downloading package: libspa-0.2-modules -Downloading package: libzmq5 -Downloading package: libdrm-amdgpu1 -Downloading package: gtk2-engines-pixbuf -Downloading package: dconf-gsettings-backend -Downloading package: libchromaprint1 -Downloading package: libsensors5 -Downloading package: libxcb-randr0 -Downloading package: libvo-amrwbenc0 -Downloading package: libswresample4 -Downloading package: librabbitmq4 -Downloading package: libpipewire-0.3-0t64 -Downloading package: gtk-update-icon-cache -Downloading package: libxcb-xkb1 -Downloading package: libsrtp2-1 -Downloading package: libxext6 -Downloading package: libsoup-3.0-common -Downloading package: libgtk-3-common -Downloading package: libdvdnav4 -Downloading package: libdc1394-25 -Downloading package: libmplex2-2.1-0t64 -Downloading package: liba52-0.7.4 -Downloading package: libnice10 -Downloading package: libmpeg2encpp-2.1-0t64 -Downloading package: libharfbuzz0b -Downloading package: fonts-dejavu-core -Downloading package: libinstpatch-1.0-2 -Downloading package: libsoundtouch1 -Downloading package: libavformat60 -Downloading package: libaa1 -Downloading package: liblilv-0-0 -Downloading package: libmpg123-0t64 -Downloading package: gstreamer1.0-plugins-bad -Downloading package: libslang2 -Downloading package: libegl-mesa0 -Downloading package: session-migration -Downloading package: libva-drm2 -Downloading package: libxcb-shm0 -Downloading package: libgtk-3-0t64 -Downloading package: gnome-themes-extra -Downloading package: dconf-service -Downloading package: perl-modules-5.38 -Downloading package: libgl1 -Downloading package: libzbar0t64 -Downloading package: libegl1 -Downloading package: libx11-6 -Downloading package: libgstreamer-plugins-base1.0-0 -Downloading package: libtag1v5-vanilla -Downloading package: libwayland-client0 -Downloading package: gstreamer1.0-libav -Downloading package: liblapack3 -Downloading package: libopenmpt0t64 -Downloading package: libperl5.38t64 -Downloading package: libxkbcommon-x11-0 -Downloading package: liblcms2-2 -Downloading package: git-man -Downloading package: libatk-bridge2.0-0t64 -Downloading package: libde265-0 -Downloading package: libepoxy0 -Downloading package: libpgm-5.3-0t64 -Downloading package: libxcb-sync1 -Downloading package: libicu74 -Downloading package: libneon27t64 -Downloading package: at-spi2-common -Downloading package: libavahi-client3 -Downloading package: glib-networking -Downloading package: librav1e0 -Downloading package: libva2 -Downloading package: libdrm-intel1 -Downloading package: libxfixes3 -Downloading package: libxdmcp6 -Downloading package: libncurses6 -Downloading package: libxi6 -Downloading package: iso-codes -Downloading package: libxcb-xfixes0 -Downloading package: libavfilter9 -Downloading package: libnspr4 -Downloading package: libsratom-0-0 -Downloading package: libgdk-pixbuf2.0-common -Extracting stage package: fontconfig -Extracting stage package: libvulkan1 -Extracting stage package: libsvtav1enc1d1 -Extracting stage package: libhwy1t64 -Extracting stage package: libxcb-present0 -Extracting stage package: yaru-theme-icon -Extracting stage package: libyajl2 -Extracting stage package: libv4lconvert0t64 -Extracting stage package: libgomp1 -Extracting stage package: libzxing3 -Extracting stage package: libpulse0 -Extracting stage package: libwebpmux3 -Extracting stage package: libopenal-data -Extracting stage package: libltc11 -Extracting stage package: libvpl2 -Extracting stage package: libserd-0-0 -Extracting stage package: libvpx9 -Extracting stage package: libxxf86vm1 -Extracting stage package: libcodec2-1.2 -Extracting stage package: librubberband2 -Extracting stage package: libsharpyuv0 -Extracting stage package: libnghttp2-14 -Extracting stage package: openssh-client -Extracting stage package: libglx-mesa0 -Extracting stage package: libtwolame0 -Extracting stage package: gstreamer1.0-plugins-ugly -Extracting stage package: libzvbi-common -Extracting stage package: libjack-jackd2-0 -Extracting stage package: libfreeaptx0 -Extracting stage package: libdatrie1 -Extracting stage package: libthai0 -Extracting stage package: libssh-4 -Extracting stage package: libxrender1 -Extracting stage package: libldap2 -Extracting stage package: libglvnd0 -Extracting stage package: libproxy1v5 -Extracting stage package: libgdbm-compat4t64 -Extracting stage package: libraptor2-0 -Extracting stage package: libsensors-config -Extracting stage package: hicolor-icon-theme -Extracting stage package: git -Extracting stage package: libglib2.0-bin -Extracting stage package: perl -Extracting stage package: libx11-xcb1 -Extracting stage package: libxshmfence1 -Extracting stage package: libfluidsynth3 -Extracting stage package: libunwind8 -Extracting stage package: libdecor-0-0 -Extracting stage package: libpango-1.0-0 -Extracting stage package: libvo-aacenc0 -Extracting stage package: libwavpack1 -Extracting stage package: libavtp0 -Extracting stage package: libsrt1.5-gnutls -Extracting stage package: libwayland-cursor0 -Extracting stage package: libx264-164 -Extracting stage package: libshine3 -Extracting stage package: libaom3 -Extracting stage package: lsb-base -Extracting stage package: libjpeg-turbo8 -Extracting stage package: libv4l-0t64 -Extracting stage package: libavahi-common-data -Extracting stage package: libcolord2 -Extracting stage package: libpsl5t64 -Extracting stage package: libx265-199 -Extracting stage package: libass9 -Extracting stage package: libsasl2-2 -Extracting stage package: libxcb-dri3-0 -Extracting stage package: libcairo2 -Extracting stage package: libgbm1 -Extracting stage package: libxcursor1 -Extracting stage package: libbluray2 -Extracting stage package: libvorbisfile3 -Extracting stage package: libdv4t64 -Extracting stage package: libblas3 -Extracting stage package: libdeflate0 -Extracting stage package: libqrencode4 -Extracting stage package: libjpeg8 -Extracting stage package: x11-common -Extracting stage package: libiec61883-0 -Extracting stage package: libsphinxbase3t64 -Extracting stage package: libbs2b0 -Extracting stage package: libfftw3-double3 -Extracting stage package: libglx0 -Extracting stage package: libgme0 -Extracting stage package: libdav1d7 -Extracting stage package: libcaca0 -Extracting stage package: libfribidi0 -Extracting stage package: mesa-libgallium -Extracting stage package: libraw1394-11 -Extracting stage package: librtmp1 -Extracting stage package: adwaita-icon-theme -Extracting stage package: libgpm2 -Extracting stage package: libtiff6 -Extracting stage package: libgfortran5 -Extracting stage package: libpixman-1-0 -Extracting stage package: libtag1v5 -Extracting stage package: libvidstab1.1 -Extracting stage package: libva-x11-2 -Extracting stage package: librist4 -Extracting stage package: libgsm1 -Extracting stage package: libgupnp-1.6-0 -Extracting stage package: libcjson1 -Extracting stage package: libshout3 -Extracting stage package: libxau6 -Extracting stage package: libgtk2.0-0t64 -Extracting stage package: libxcb1 -Extracting stage package: libgstreamer-gl1.0-0 -Extracting stage package: libssh-gcrypt-4 -Extracting stage package: libllvm20 -Extracting stage package: libxcomposite1 -Extracting stage package: libmfx1 -Extracting stage package: libmpcdec6 -Extracting stage package: libnuma1 -Extracting stage package: libcdio19t64 -Extracting stage package: libdirectfb-1.7-7t64 -Extracting stage package: libxdamage1 -Extracting stage package: libgdk-pixbuf-2.0-0 -Extracting stage package: libsasl2-modules-db -Extracting stage package: libfaad2 -Extracting stage package: timgm6mb-soundfont -Extracting stage package: libcairo-gobject2 -Extracting stage package: fonts-noto-mono -Extracting stage package: liblerc4 -Extracting stage package: ubuntu-mono -Extracting stage package: libgupnp-igd-1.6-0 -Extracting stage package: libgdbm6t64 -Extracting stage package: libxml2 -Extracting stage package: libglib2.0-data -Extracting stage package: humanity-icon-theme -Extracting stage package: libgtk2.0-common -Extracting stage package: libgraphite2-3 -Extracting stage package: util-linux -Extracting stage package: libdconf1 -Extracting stage package: libfontconfig1 -Extracting stage package: libcups2t64 -Extracting stage package: libvdpau1 -Extracting stage package: libsbc1 -Extracting stage package: libmodplug1 -Extracting stage package: libopenexr-3-1-30 -Extracting stage package: libopenh264-7 -Extracting stage package: libpostproc57 -Extracting stage package: libxss1 -Extracting stage package: shared-mime-info -Extracting stage package: libatspi2.0-0t64 -Extracting stage package: glib-networking-common -Extracting stage package: libgles2 -Extracting stage package: libgl1-mesa-dri -Extracting stage package: libcurl3t64-gnutls -Extracting stage package: libasound2t64 -Extracting stage package: libxrandr2 -Extracting stage package: libjxl0.7 -Extracting stage package: fontconfig-config -Extracting stage package: gtk2-engines-murrine -Extracting stage package: libmp3lame0 -Extracting stage package: libsoxr0 -Extracting stage package: libx11-data -Extracting stage package: libsoup-3.0-0 -Extracting stage package: libgudev-1.0-0 -Extracting stage package: libgstreamer-plugins-good1.0-0 -Extracting stage package: libavc1394-0 -Extracting stage package: libsodium23 -Extracting stage package: libudfread0 -Extracting stage package: libjson-glib-1.0-common -Extracting stage package: libmjpegutils-2.1-0t64 -Extracting stage package: gnome-themes-extra-data -Extracting stage package: libmbedcrypto7t64 -Extracting stage package: libsnappy1v5 -Extracting stage package: libsndio7.0 -Extracting stage package: libopus0 -Extracting stage package: libpangocairo-1.0-0 -Extracting stage package: libnorm1t64 -Extracting stage package: libxtst6 -Extracting stage package: glib-networking-services -Extracting stage package: libmysofa1 -Extracting stage package: yaru-theme-gtk -Extracting stage package: libavcodec60 -Extracting stage package: libzimg2 -Extracting stage package: libgstreamer-plugins-bad1.0-0 -Extracting stage package: libxcb-render0 -Extracting stage package: libusb-1.0-0 -Extracting stage package: libvisual-0.4-0 -Extracting stage package: libgssdp-1.6-0 -Extracting stage package: libimath-3-1-29t64 -Extracting stage package: libzvbi0t64 -Extracting stage package: gsettings-desktop-schemas -Extracting stage package: fonts-noto-core -Extracting stage package: libdvdread8t64 -Extracting stage package: gstreamer1.0-plugins-good -Extracting stage package: libwebrtc-audio-processing1 -Extracting stage package: libopenni2-0 -Extracting stage package: gstreamer1.0-plugins-base -Extracting stage package: libopenal1 -Extracting stage package: libvorbisenc2 -Extracting stage package: libasyncns0 -Extracting stage package: libunibreak5 -Extracting stage package: libnss3 -Extracting stage package: libpangoft2-1.0-0 -Extracting stage package: libtheora0 -Extracting stage package: libxvidcore4 -Extracting stage package: libpocketsphinx3 -Extracting stage package: libspandsp2t64 -Extracting stage package: libsndfile1 -Extracting stage package: libavutil58 -Extracting stage package: liborc-0.4-0t64 -Extracting stage package: libwebp7 -Extracting stage package: libsidplay1v5 -Extracting stage package: libwildmidi2 -Extracting stage package: libxslt1.1 -Extracting stage package: libswscale7 -Extracting stage package: fonts-dejavu-mono -Extracting stage package: liblc3-1 -Extracting stage package: libatk1.0-0t64 -Extracting stage package: libspeex1 -Extracting stage package: libmpeg2-4 -Extracting stage package: libasound2-data -Extracting stage package: adduser -Extracting stage package: libflac12t64 -Extracting stage package: libthai-data -Extracting stage package: libgstreamer1.0-0 -Extracting stage package: libdca0 -Extracting stage package: libavahi-common3 -Extracting stage package: liblrdf0 -Extracting stage package: librsvg2-2 -Extracting stage package: libsamplerate0 -Extracting stage package: liberror-perl -Extracting stage package: ocl-icd-libopencl1 -Extracting stage package: libxcb-glx0 -Extracting stage package: libldacbt-enc2 -Extracting stage package: libogg0 -Extracting stage package: libxinerama1 -Extracting stage package: libsord-0-0 -Extracting stage package: libjbig0 -Extracting stage package: libflite1 -Extracting stage package: libopenjp2-7 -Extracting stage package: libwayland-egl1 -Extracting stage package: libcdparanoia0 -Extracting stage package: libplacebo338 -Extracting stage package: libzix-0-0 -Extracting stage package: libvorbis0a -Extracting stage package: libsdl2-2.0-0 -Extracting stage package: libdw1t64 -Extracting stage package: libjson-glib-1.0-0 -Extracting stage package: perl-base -Extracting stage package: libspa-0.2-modules -Extracting stage package: libzmq5 -Extracting stage package: libdrm-amdgpu1 -Extracting stage package: gtk2-engines-pixbuf -Extracting stage package: dconf-gsettings-backend -Extracting stage package: libchromaprint1 -Extracting stage package: libsensors5 -Extracting stage package: libxcb-randr0 -Extracting stage package: libvo-amrwbenc0 -Extracting stage package: libswresample4 -Extracting stage package: librabbitmq4 -Extracting stage package: libpipewire-0.3-0t64 -Extracting stage package: gtk-update-icon-cache -Extracting stage package: libxcb-xkb1 -Extracting stage package: libsrtp2-1 -Extracting stage package: libxext6 -Extracting stage package: libsoup-3.0-common -Extracting stage package: libgtk-3-common -Extracting stage package: libdvdnav4 -Extracting stage package: libdc1394-25 -Extracting stage package: libmplex2-2.1-0t64 -Extracting stage package: liba52-0.7.4 -Extracting stage package: libnice10 -Extracting stage package: libmpeg2encpp-2.1-0t64 -Extracting stage package: libharfbuzz0b -Extracting stage package: fonts-dejavu-core -Extracting stage package: libinstpatch-1.0-2 -Extracting stage package: libsoundtouch1 -Extracting stage package: libavformat60 -Extracting stage package: libaa1 -Extracting stage package: liblilv-0-0 -Extracting stage package: libmpg123-0t64 -Extracting stage package: gstreamer1.0-plugins-bad -Extracting stage package: libslang2 -Extracting stage package: libegl-mesa0 -Extracting stage package: session-migration -Extracting stage package: libva-drm2 -Extracting stage package: libxcb-shm0 -Extracting stage package: libgtk-3-0t64 -Extracting stage package: gnome-themes-extra -Extracting stage package: dconf-service -Extracting stage package: perl-modules-5.38 -Extracting stage package: libgl1 -Extracting stage package: libzbar0t64 -Extracting stage package: libegl1 -Extracting stage package: libx11-6 -Extracting stage package: libgstreamer-plugins-base1.0-0 -Extracting stage package: libtag1v5-vanilla -Extracting stage package: libwayland-client0 -Extracting stage package: gstreamer1.0-libav -Extracting stage package: liblapack3 -Extracting stage package: libopenmpt0t64 -Extracting stage package: libperl5.38t64 -Extracting stage package: libxkbcommon-x11-0 -Extracting stage package: liblcms2-2 -Extracting stage package: git-man -Extracting stage package: libatk-bridge2.0-0t64 -Extracting stage package: libde265-0 -Extracting stage package: libepoxy0 -Extracting stage package: libpgm-5.3-0t64 -Extracting stage package: libxcb-sync1 -Extracting stage package: libicu74 -Extracting stage package: libneon27t64 -Extracting stage package: at-spi2-common -Extracting stage package: libavahi-client3 -Extracting stage package: glib-networking -Extracting stage package: librav1e0 -Extracting stage package: libva2 -Extracting stage package: libdrm-intel1 -Extracting stage package: libxfixes3 -Extracting stage package: libxdmcp6 -Extracting stage package: libncurses6 -Extracting stage package: libxi6 -Extracting stage package: iso-codes -Extracting stage package: libxcb-xfixes0 -Extracting stage package: libavfilter9 -Extracting stage package: libnspr4 -Extracting stage package: libsratom-0-0 -Extracting stage package: libgdk-pixbuf2.0-common -Pulling desktop-integration -Pulling gnome/sdk -Building busymark -Removing suid/guid from /project/parts/busymark/install/usr/bin/su -Removing suid/guid from /project/parts/busymark/install/usr/lib/openssh/ssh-keysign -:: + rm -rf /project/parts/busymark/build/build -:: + rm -rf /project/parts/busymark/build/.dart_tool -:: + rm -rf /project/parts/busymark/build/linux/flutter/ephemeral -:: + flutter_sdk=/project/parts/busymark/build/flutter-distro -:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD -:: ++ true -:: + flutter_sdk_version= -:: + '[' '!' -x /project/parts/busymark/build/flutter-distro/bin/flutter ']' -:: + rm -rf /project/parts/busymark/build/flutter-distro -:: + git clone --depth 1 --branch 3.47.5 https://github.com/flutter/flutter.git /project/parts/busymark/build/flutter-distro -:: Cloning into '/project/parts/busymark/build/flutter-distro'... -:: Note: switching to '6a19cca56475dbfba1478ee68d7bd0c2ef891da1'. -:: -:: You are in 'detached HEAD' state. You can look around, make experimental -:: changes and commit them, and you can discard any commits you make in this -:: state without impacting any branches by switching back to a branch. -:: -:: If you want to create a new branch to retain commits you create, you may -:: do so (now or later) by using -c with the switch command. Example: -:: -:: git switch -c -:: -:: Or undo this operation with: -:: -:: git switch - -:: -:: Turn off this advice by setting config variable advice.detachedHead to false -:: -:: Updating files: 78% (12539/16074) Updating files: 79% (12699/16074) Updating files: 80% (12860/16074) Updating files: 81% (13020/16074) Updating files: 82% (13181/16074) Updating files: 83% (13342/16074) Updating files: 84% (13503/16074) Updating files: 85% (13663/16074) Updating files: 86% (13824/16074) Updating files: 87% (13985/16074) Updating files: 88% (14146/16074) Updating files: 89% (14306/16074) Updating files: 90% (14467/16074) Updating files: 91% (14628/16074) Updating files: 92% (14789/16074) Updating files: 93% (14949/16074) Updating files: 94% (15110/16074) Updating files: 95% (15271/16074) Updating files: 96% (15432/16074) Updating files: 97% (15592/16074) Updating files: 98% (15753/16074) Updating files: 99% (15914/16074) Updating files: 100% (16074/16074) Updating files: 100% (16074/16074), done. -:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD -:: + test 3.47.5 = 3.47.5 -:: + export CI=true -:: + CI=true -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check precache --linux -:: Downloading Linux x64 Dart SDK from Flutter engine af7e796e161ae0bb1ff0758c71a7105418bd9ded... -:: % Total % Received % Xferd Average Speed Time Time Time Current -:: Dload Upload Total Spent Left Speed -:: 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 5 227M 5 12.2M 0 0 10.4M 0 0:00:21 0:00:01 0:00:20 10.4M 13 227M 13 30.0M 0 0 11.7M 0 0:00:19 0:00:02 0:00:17 11.7M 21 227M 21 48.9M 0 0 15.4M 0 0:00:14 0:00:03 0:00:11 15.4M 37 227M 37 84.7M 0 0 20.3M 0 0:00:11 0:00:04 0:00:07 20.3M 50 227M 50 114M 0 0 22.2M 0 0:00:10 0:00:05 0:00:05 23.2M 60 227M 60 136M 0 0 22.1M 0 0:00:10 0:00:06 0:00:04 24.9M 66 227M 66 151M 0 0 18.0M 0 0:00:12 0:00:08 0:00:04 20.7M 76 227M 76 173M 0 0 18.9M 0 0:00:12 0:00:09 0:00:03 20.7M 89 227M 89 203M 0 0 20.0M 0 0:00:11 0:00:10 0:00:01 19.8M 100 227M 100 227M 0 0 20.5M 0 0:00:11 0:00:11 --:--:-- 19.1M -:: Building flutter tool... -:: Resolving dependencies... -:: Downloading packages... -:: + _fe_analyzer_shared 95.0.0 (109.0.0 available) -:: + analyzer 10.1.0 (14.5.0 available) -:: + archive 3.6.1 (4.3.0 available) -:: + args 2.7.0 -:: + async 2.13.1 -:: + boolean_selector 2.1.2 -:: + browser_launcher 1.1.3 (1.2.0 available) -:: + built_collection 5.1.1 (5.1.2 available) -:: + built_value 8.12.6 (8.13.0 available) -:: + checked_yaml 2.0.4 -:: + cli_config 0.2.0 -:: + clock 1.1.2 (1.1.3 available) -:: + code_assets 1.2.1 (2.1.0 available) -:: + code_builder 4.11.1 (4.12.0 available) -:: + collection 1.19.1 -:: + completion 1.0.2 -:: + convert 3.1.2 -:: + coverage 1.15.1 -:: + crypto 3.0.7 -:: + csslib 1.0.2 -:: + dap 1.4.0 -:: + dart_service_protocol_shared 0.0.3 -:: + dart_style 3.1.7 (3.1.13 available) -:: + data_assets 0.20.0 -:: + dds 5.4.0 -:: + dds_service_extensions 2.1.0 -:: + devtools_shared 13.1.0 (14.0.0 available) -:: + dtd 4.0.0 -:: + dwds 27.1.2 (27.1.4 available) -:: + extension_discovery 2.1.0 -:: + fake_async 1.3.3 -:: + ffi 2.2.0 -:: + file 7.0.1 -:: + file_testing 3.0.2 (3.1.0 available) -:: + fixnum 1.1.1 -:: + flutter_template_images 5.0.0 (5.0.1 available) -:: + frontend_server_client 4.0.0 (4.1.0 available) -:: + glob 2.1.3 (2.2.0 available) -:: + graphs 2.3.2 -:: + hooks 2.0.2 (2.2.0 available) -:: + hooks_runner 1.5.0 (1.6.4 available) -:: + html 0.15.6 (0.15.7 available) -:: + http 1.6.0 -:: + http_multi_server 3.2.2 -:: + http_parser 4.1.2 -:: + intl 0.20.3 -:: + io 1.0.5 (1.1.0 available) -:: + js 0.7.2 (discontinued) -:: + json_annotation 4.12.0 -:: + json_rpc_2 4.1.0 -:: + logging 1.3.0 -:: + matcher 0.12.20 -:: + meta 1.18.3 (1.19.0 available) -:: + mime 2.0.0 (2.1.0 available) -:: + multicast_dns 0.3.3+1 -:: + mustache_template 2.0.5 (2.0.6 available) -:: + native_stack_traces 0.6.1 (0.7.0 available) -:: + node_preamble 2.0.2 -:: + package_config 2.2.0 (3.0.0 available) -:: + path 1.9.1 -:: + petitparser 7.0.2 (7.1.0 available) -:: + platform 3.1.6 (3.2.0 available) -:: + pool 1.5.2 (1.5.3 available) -:: + process 5.0.5 (5.0.6 available) -:: + pub_semver 2.2.0 (2.2.1 available) -:: + pubspec_parse 1.5.0 (1.6.0 available) -:: + record_use 0.6.0 (1.1.1 available) -:: + shelf 1.4.2 -:: + shelf_packages_handler 3.0.2 -:: + shelf_proxy 1.0.5 -:: + shelf_static 1.1.3 -:: + shelf_web_socket 3.0.0 -:: + source_map_stack_trace 2.1.2 -:: + source_maps 0.10.13 (0.10.14 available) -:: + source_span 1.10.2 -:: + sprintf 7.0.0 -:: + sse 4.2.0 -:: + stack_trace 1.12.1 (1.12.2 available) -:: + standard_message_codec 0.0.1+5 -:: + stream_channel 2.1.4 -:: + string_scanner 1.4.1 -:: + sync_http 0.3.1 -:: + term_glyph 1.2.2 -:: + test 1.31.1 (1.32.0 available) -:: + test_api 0.7.12 (0.7.14 available) -:: + test_core 0.6.18 (0.6.20 available) -:: + typed_data 1.4.0 -:: + unified_analytics 8.0.15 (8.0.18 available) -:: + uuid 4.5.3 (4.6.0 available) -:: + vm_service 15.2.0 (15.3.0 available) -:: + vm_service_interface 2.0.1 -:: + vm_snapshot_analysis 0.7.6 -:: + watcher 1.2.1 -:: + web 1.1.1 -:: + web_socket 1.0.1 -:: + web_socket_channel 3.0.3 -:: + webdriver 3.1.0 (3.2.0 available) -:: + webkit_inspection_protocol 1.2.1 -:: + xml 6.6.1 (7.1.0 available) -:: + yaml 3.1.3 (3.1.4 available) -:: + yaml_edit 2.2.4 -:: Changed 101 dependencies! -:: 1 package is discontinued. -:: 43 packages have newer versions incompatible with dependency constraints. -:: Try `dart pub outdated` for more information. -:: [1/11] Material Fonts 5.5s -:: [2/11] Gradle Wrapper 196ms -:: [3/11] Flutter SDK -:: ├─ [1/5] sky_engine 171ms -:: ├─ [2/5] flutter_gpu 51ms -:: ├─ [3/5] flutter_patched_sdk 192ms -:: ├─ [4/5] flutter_patched_sdk_product 156ms -:: └─ [5/5] linux-x64 2,451ms -:: [4/11] Linux SDK -:: ├─ [1/3] linux-x64-debug/linux-x64-flutter-gtk 615ms -:: ├─ [2/3] linux-x64-profile/linux-x64-flutter-gtk 453ms -:: └─ [3/3] linux-x64-release/linux-x64-flutter-gtk 496ms -:: [11/11] linux-x64/font-subset 127ms -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get -:: Resolving dependencies... -:: Downloading packages... -:: _fe_analyzer_shared 99.0.0 (109.0.0 available) -:: analyzer 12.1.0 (14.5.0 available) -:: animated_vector 0.2.2 (0.2.3 available) -:: animated_vector_annotations 0.2.2 (0.3.0 available) -:: archive 4.0.9 (4.3.0 available) -:: assorted_layout_widgets 11.0.0 (13.1.0 available) -:: clock 1.1.2 (1.1.3 available) -:: code_assets 1.2.1 (2.1.0 available) -:: cross_file 0.3.5+4 (0.4.0 available) -:: dbus 0.7.13 (0.8.0 available) -:: file_selector_android 0.5.2+8 (0.5.2+11 available) -:: file_selector_ios 0.5.3+5 (0.5.3+6 available) -:: file_selector_linux 0.9.4 (0.9.4+1 available) -:: file_selector_macos 0.9.5 (0.9.5+1 available) -:: file_selector_windows 0.9.3+5 (0.9.3+6 available) -:: flutter_riverpod 3.3.2 (3.4.3 available) -:: frontend_server_client 4.0.0 (4.1.0 available) -:: glob 2.1.3 (2.2.0 available) -:: go_router 17.3.0 (18.0.2 available) -:: gsettings 0.2.8 (0.2.9 available) -:: html 0.15.6 (0.15.7 available) -:: image 4.9.1 (4.10.1 available) -:: io 1.0.5 (1.1.0 available) -:: jni 1.0.0 (1.1.0 available) -:: jni_flutter 1.0.1 (1.0.4+1 available) -:: material_color_utilities 0.13.0 (0.13.1 available) -:: mime 2.0.0 (2.1.0 available) -:: native_toolchain_c 0.19.3 (0.19.5 available) -:: objective_c 9.4.1 (9.6.2 available) -:: package_config 2.2.0 (3.0.0 available) -:: package_info_plus 10.2.1 (10.2.2 available) -:: petitparser 7.0.2 (7.1.0 available) -:: platform 3.1.6 (3.2.0 available) -:: pool 1.5.2 (1.5.3 available) -:: posix 6.5.0 (6.5.2 available) -:: pub_semver 2.2.0 (2.2.1 available) -:: riverpod 3.3.2 (3.4.3 available) -:: source_maps 0.10.13 (0.10.14 available) -:: stack_trace 1.12.1 (1.12.2 available) -:: test 1.31.1 (1.32.0 available) -:: test_api 0.7.12 (0.7.14 available) -:: test_core 0.6.18 (0.6.20 available) -:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) -:: unorm_dart 0.3.2 (0.3.3 available) -:: url_launcher 6.3.2 (6.3.3 available) -:: url_launcher_android 6.3.32 (6.3.33 available) -:: url_launcher_ios 6.4.1 (6.4.2 available) -:: url_launcher_linux 3.2.2 (3.2.3 available) -:: url_launcher_macos 3.2.5 (3.2.6 available) -:: url_launcher_windows 3.1.5 (3.1.6 available) -:: vector_graphics 1.2.2 (1.2.3 available) -:: vector_graphics_compiler 1.2.6 (1.3.0 available) -:: vector_math 2.4.2 (2.4.3 available) -:: vm_service 15.2.0 (15.3.0 available) -:: win32 6.3.0 (6.4.0 available) -:: xml 7.0.1 (7.1.0 available) -:: yaml 3.1.3 (3.1.4 available) -:: yaru 10.2.0 (11.0.0 available) -:: Got dependencies! -:: 58 packages have newer versions incompatible with dependency constraints. -:: Try `flutter pub outdated` for more information. -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart -:: [ +11 ms] Unable to locate an Android SDK. -:: [ +7 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ +30 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ +16 ms] executing: [/project/parts/busymark/build/] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart pub --suppress-analytics --directory . get --example -:: Resolving dependencies... -:: Downloading packages... -:: _fe_analyzer_shared 99.0.0 (109.0.0 available) -:: analyzer 12.1.0 (14.5.0 available) -:: animated_vector 0.2.2 (0.2.3 available) -:: animated_vector_annotations 0.2.2 (0.3.0 available) -:: archive 4.0.9 (4.3.0 available) -:: assorted_layout_widgets 11.0.0 (13.1.0 available) -:: clock 1.1.2 (1.1.3 available) -:: code_assets 1.2.1 (2.1.0 available) -:: cross_file 0.3.5+4 (0.4.0 available) -:: dbus 0.7.13 (0.8.0 available) -:: file_selector_android 0.5.2+8 (0.5.2+11 available) -:: file_selector_ios 0.5.3+5 (0.5.3+6 available) -:: file_selector_linux 0.9.4 (0.9.4+1 available) -:: file_selector_macos 0.9.5 (0.9.5+1 available) -:: file_selector_windows 0.9.3+5 (0.9.3+6 available) -:: flutter_riverpod 3.3.2 (3.4.3 available) -:: frontend_server_client 4.0.0 (4.1.0 available) -:: glob 2.1.3 (2.2.0 available) -:: go_router 17.3.0 (18.0.2 available) -:: gsettings 0.2.8 (0.2.9 available) -:: html 0.15.6 (0.15.7 available) -:: image 4.9.1 (4.10.1 available) -:: io 1.0.5 (1.1.0 available) -:: jni 1.0.0 (1.1.0 available) -:: jni_flutter 1.0.1 (1.0.4+1 available) -:: material_color_utilities 0.13.0 (0.13.1 available) -:: mime 2.0.0 (2.1.0 available) -:: native_toolchain_c 0.19.3 (0.19.5 available) -:: objective_c 9.4.1 (9.6.2 available) -:: package_config 2.2.0 (3.0.0 available) -:: package_info_plus 10.2.1 (10.2.2 available) -:: petitparser 7.0.2 (7.1.0 available) -:: platform 3.1.6 (3.2.0 available) -:: pool 1.5.2 (1.5.3 available) -:: posix 6.5.0 (6.5.2 available) -:: pub_semver 2.2.0 (2.2.1 available) -:: riverpod 3.3.2 (3.4.3 available) -:: source_maps 0.10.13 (0.10.14 available) -:: stack_trace 1.12.1 (1.12.2 available) -:: test 1.31.1 (1.32.0 available) -:: test_api 0.7.12 (0.7.14 available) -:: test_core 0.6.18 (0.6.20 available) -:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) -:: unorm_dart 0.3.2 (0.3.3 available) -:: url_launcher 6.3.2 (6.3.3 available) -:: url_launcher_android 6.3.32 (6.3.33 available) -:: url_launcher_ios 6.4.1 (6.4.2 available) -:: url_launcher_linux 3.2.2 (3.2.3 available) -:: url_launcher_macos 3.2.5 (3.2.6 available) -:: url_launcher_windows 3.1.5 (3.1.6 available) -:: vector_graphics 1.2.2 (1.2.3 available) -:: vector_graphics_compiler 1.2.6 (1.3.0 available) -:: vector_math 2.4.2 (2.4.3 available) -:: vm_service 15.2.0 (15.3.0 available) -:: win32 6.3.0 (6.4.0 available) -:: xml 7.0.1 (7.1.0 available) -:: yaml 3.1.3 (3.1.4 available) -:: yaru 10.2.0 (11.0.0 available) -:: Got dependencies! -:: 58 packages have newer versions incompatible with dependency constraints. -:: Try `flutter pub outdated` for more information. -:: [ +518 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ +5 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ +4 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ +2 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ +2 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +21 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ +12 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ +1 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ +20 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ +23 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ ] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ +1 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ +1 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ ] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ ] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ ] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ +1 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +8 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ ] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ ] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ ] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ ] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ ] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ ] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ +5 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ ] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ ] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ ] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ +16 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ +7 ms] Skipping generating generated_plugin_registrant.h because it is up-to-date. -:: [ +2 ms] Skipping generating generated_plugin_registrant.cc because it is up-to-date. -:: [ +1 ms] Skipping generating generated_plugins.cmake because it is up-to-date. -:: [ +17 ms] Building Linux application... -:: [ +2 ms] executing: [/project/parts/busymark/build/build/linux/x64/release/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DFLUTTER_TARGET_PLATFORM=linux-x64 /project/parts/busymark/build/linux -:: [ +651 ms] -- The CXX compiler identification is Clang 18.1.3 -:: [ +37 ms] -- Detecting CXX compiler ABI info -:: [ +148 ms] -- Detecting CXX compiler ABI info - done -:: [ +5 ms] -- Check for working CXX compiler: /usr/bin/clang++ - skipped -:: [ +1 ms] -- Detecting CXX compile features -:: [ ] -- Detecting CXX compile features - done -:: [ +7 ms] -- Found PkgConfig: /snap/gnome-46-2404-sdk/current/usr/bin/pkg-config (found version "1.8.1") -:: [ ] -- Checking for module 'gtk+-3.0' -:: [ +32 ms] -- Found gtk+-3.0, version 3.24.50 -:: [ +178 ms] -- Checking for module 'glib-2.0' -:: [ +8 ms] -- Found glib-2.0, version 2.84.4 -:: [ +18 ms] -- Checking for module 'gio-2.0' -:: [ +8 ms] -- Found gio-2.0, version 2.84.4 -:: [ +28 ms] -- Checking for module 'libhandy-1' -:: [ +15 ms] -- Found libhandy-1, version 1.8.3 -:: [ +175 ms] -- Checking for module 'libsecret-1' -:: [ +11 ms] -- Found libsecret-1, version 0.21.7 -:: [ +26 ms] -- Checking for module 'webkit2gtk-4.1' -:: [ +19 ms] -- Found webkit2gtk-4.1, version 2.52.6 -:: [ +321 ms] -- The C compiler identification is Clang 18.1.3 -:: [ +30 ms] -- Detecting C compiler ABI info -:: [ +95 ms] -- Detecting C compiler ABI info - done -:: [ +7 ms] -- Check for working C compiler: /usr/bin/clang - skipped -:: [ ] -- Detecting C compile features -:: [ ] -- Detecting C compile features - done -:: [ +14 ms] -- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JVM) -:: [ +1 ms] -- Configuring done (1.8s) -:: [ +51 ms] -- Generating done (0.0s) -:: [ +6 ms] -- Build files have been written to: /project/parts/busymark/build/build/linux/x64/release -:: [ +7 ms] executing: ninja -C /project/parts/busymark/build/build/linux/x64/release install -:: [ +4 ms] ninja: Entering directory `/project/parts/busymark/build/build/linux/x64/release' -:: [+2772 ms] [1/34] Preparing checksum-pinned D2 renderer -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 47 20.2M 47 9855k 0 0 6156k 0 0:00:03 0:00:01 0:00:02 6156k -:: [ ] 100 20.2M 100 20.2M 0 0 9444k 0 0:00:02 0:00:02 --:--:-- 17.9M -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] Prepared D2 0.7.1 in /project/parts/busymark/build/build/linux/x64/release/d2/linux-x86_64 -:: [+1279 ms] [2/34] Preparing pinned Typst compiler for PDF export -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 31 16.6M 31 5324k 0 0 3326k 0 0:00:05 0:00:01 0:00:04 5389k -:: [ ] 100 16.6M 100 16.6M 0 0 6723k 0 0:00:02 0:00:02 --:--:-- 8868k -:: [ ] Prepared Typst 0.15.1 in /project/parts/busymark/build/build/linux/x64/release/typst/linux-x86_64 -:: [+15373 ms] [3/34] Preparing pinned offline visualization web engines -:: [ ] npm warn deprecated nomnom@1.5.2: Package no longer supported. Contact support@npmjs.com for more info. -:: [ ] added 435 packages in 9s -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 90353 0 90353 0 0 48986 0 --:--:-- 0:00:01 --:--:-- 48986 -:: [ ] 100 5395k 0 5395k 0 0 2155k 0 --:--:-- 0:00:02 --:--:-- 8066k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 2584k 100 2584k 0 0 3952k 0 --:--:-- --:--:-- --:--:-- 3952k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 109k 100 109k 0 0 484k 0 --:--:-- --:--:-- --:--:-- 485k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 1 2862k 1 56149 0 0 304k 0 0:00:09 --:--:-- 0:00:09 302k -:: [ ] 100 2862k 100 2862k 0 0 6621k 0 --:--:-- --:--:-- --:--:-- 6610k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 50065 100 50065 0 0 196k 0 --:--:-- --:--:-- --:--:-- 197k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 109k 100 109k 0 0 486k 0 --:--:-- --:--:-- --:--:-- 488k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 7334k 100 7334k 0 0 10.9M 0 --:--:-- --:--:-- --:--:-- 10.9M -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 13.2M 100 13.2M 0 0 15.7M 0 --:--:-- --:--:-- --:--:-- 15.7M -:: [ ] ▲ [WARNING] Cannot find base config file "../../tsconfig.json" [tsconfig.json] -:: [ ] ../../../../../../../../tmp/tmp.sxEkIqD9Dv/tool/mermaid-source/tsconfig.json:2:13: -:: [ ] 2 │ "extends": "../../tsconfig.json", -:: [ ] ╵ ~~~~~~~~~~~~~~~~~~~~~ -:: [ ] Prepared offline visualization web assets in /project/parts/busymark/build/build/linux/x64/release/visualization/web -:: [+70404 ms] [4/34] Generating /project/parts/busymark/build/linux/flutter/ephemeral/libflutter_linux_gtk.so, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_value.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_view.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_ -:: [ ] [ +13 ms] Unable to locate an Android SDK. -:: [ ] [ +9 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ ] [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ +39 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ ] [ +10 ms] Initializing file store -:: [ ] [ +28 ms] build_hooks: Starting due to {} -:: [ ] [ +1 ms] gen_localizations: Starting due to {} -:: [ ] [ +658 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/package_config.json} -:: [ ] [ +2 ms] unpack_linux: Starting due to {} -:: [ ] [ +149 ms] unpack_linux: Complete -:: [ ] [ +295 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ ] [ +6 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ ] [ +8 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ ] [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ ] [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ ] [ +2 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ ] [ +3 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ ] [ +4 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ ] [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ ] [ +3 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ ] [ +41 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ ] [ +2 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ ] [ +4 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ ] [ +4 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ ] [ +3 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ ] [ +2 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ ] [ +3 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ ] [ +25 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ ] [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ ] [ +3 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ ] [ +2 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ ] [ +4 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ ] [ +2 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ ] [ +2 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ ] [ +3 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ ] [ +28 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ ] [ +2 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] [ +1 ms] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] [ +1 ms] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] [ +1 ms] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] [ +1 ms] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ ] [ +18 ms] gen_dart_plugin_registrant: Complete -:: [ ] [ +100 ms] Running build hooks for linux_x64. -:: [ +1 ms] [ +50 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/hook/build.dart`. -:: [ ] [ +762 ms] gen_localizations: Complete -:: [ ] [ +66 ms] kernel_snapshot_program: Starting due to {} -:: [ +39 ms] [ +12 ms] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dartaotruntime /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/snapshots/frontend_server_aot.dart.snapshot --sdk-root /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/common/flutter_patched_sdk_product/ --target=flutter --no-print-incremental-dependencies -DFLUTTER_BUILD_NAME=0.6.1 -DFLUTTER_VERSION=3.47.5 -DFLUTTER_CHANNEL=[user-branch] -DFLUTTER_GIT_URL=https://github.com/flutter/flutter.git -DFLUTTER_FRAMEWORK_REVISION=6a19cca564 -DFLUTTER_ENGINE_REVISION=af7e796e16 -DFLUTTER_DART_VERSION=3.13.4 -Ddart.vm.profile=false -Ddart.vm.product=true --delete-tostring-package-uri=dart:ui --delete-tostring-package-uri=package:flutter --aot --tfa --target-os linux --packages /project/parts/busymark/build/.dart_tool/package_config.json --output-dill /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --depfile /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/kernel_snapshot_program.d --source file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --source package:flutter/src/dart_plugin_registrant.dart -Dflutter.dart_plugin_registrant=file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --verbosity=error --recorded-uses=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/recorded_uses.json package:busymark/main.dart -:: [ +1 ms] [ +251 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/objective_c/build/", -:: [ +1 ms] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/output.json", -:: [ +11 ms] "package_name": "objective_c", -:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +9 ms] [ +3 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/input.json )`. -:: [ +4 ms] [ +177 ms] output.json contents: -:: [ ] { -:: [ ] "assets_for_linking": {}, -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 13:10:53.000" -:: [ ] } -:: [ +3 ms] [ +36 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill.d /project/parts/busymark/build/packages/busymark_spellcheck_native/hook/build.dart`. -:: [ +1 ms] [+1377 ms] input.json contents: -:: [ +4 ms] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ +5 ms] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/output.json", -:: [ ] "package_name": "busymark_spellcheck_native", -:: [ ] "package_root": "/project/parts/busymark/build/packages/busymark_spellcheck_native/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +9 ms] [ +1 ms] Running `(cd /project/parts/busymark/build/packages/busymark_spellcheck_native/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/input.json )`. -:: [ +3 ms] [+26703 ms] output.json contents: -:: [ ] { -:: [ ] "assets": [ -:: [ ] { -:: [ ] "encoding": { -:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/cd73a1e2e2/libbusymark_spellcheck_native.so", -:: [ ] "id": "package:busymark_spellcheck_native/busymark_spellcheck_native_bindings_generated.dart", -:: [ ] "link_mode": { -:: [ ] "type": "dynamic_loading_bundle" -:: [ +3 ms] } -:: [ ] }, -:: [ ] "type": "code_assets/code" -:: [ ] } -:: [ ] ], -:: [ ] "assets_for_linking": {}, -:: [ ] "dependencies": [ -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx", -:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx", -:: [ +3 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx", -:: [ +3 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx", -:: [ +2 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am", -:: [ +2 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx" -:: [ +4 ms] ], -:: [ +4 ms] "status": "success", -:: [ ] "timestamp": "2026-10-07 13:10:55.000" -:: [ ] } -:: [ +1 ms] [ +72 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/hook/build.dart`. -:: [ ] [ +760 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ +3 ms] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/output.json", -:: [ ] "package_name": "sqlite3", -:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +8 ms] [ ] Running `(cd /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/input.json )`. -:: [ +2 ms] [ +867 ms] output.json contents: -:: [ ] { -:: [ ] "assets": [ -:: [ ] { -:: [ ] "encoding": { -:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/download-0f947ebe/libsqlite3.so", -:: [ ] "id": "package:sqlite3/src/ffi/libsqlite3.g.dart", -:: [ ] "link_mode": { -:: [ +1 ms] "type": "dynamic_loading_bundle" -:: [ ] } -:: [ ] }, -:: [ ] "type": "code_assets/code" -:: [ ] } -:: [ ] ], -:: [ ] "assets_for_linking": {}, -:: [ ] "status": "success", -:: [ +2 ms] "timestamp": "2026-10-07 13:11:22.000" -:: [ ] } -:: [ ] [ +28 ms] Running build hooks for linux_x64 done. -:: [ ] [ +2 ms] build_hooks: Complete -:: [ ] [+8521 ms] kernel_snapshot_program: Complete -:: [ ] [+1195 ms] link_hooks: Starting due to {} -:: [ +10 ms] [ +1 ms] aot_elf_release: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/flutter-distro/packages/flutter_tools/lib/src/build_system/targets/common.dart,/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so} -:: [ ] [ +1 ms] targetingApplePlatform = false -:: [ ] [ ] extractAppleDebugSymbols = true -:: [ ] [ ] targetingAndroidPlatform = false -:: [ ] [ ] Will strip AOT snapshot during build. -:: [ +8 ms] [ +1 ms] executing: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64-release/gen_snapshot --deterministic --snapshot_kind=app-aot-elf --elf=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so --strip /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill -:: [ ] [ +25 ms] Running link hooks for linux_x64. -:: [ +3 ms] [ +24 ms] Running link hooks for linux_x64 done. -:: [ ] [ +5 ms] link_hooks: Complete -:: [ ] [ +1 ms] install_code_assets: Starting due to {} -:: [ ] [ +12 ms] Copying native assets to /project/parts/busymark/build/build/native_assets/linux/. -:: [ ] [ +4 ms] Copying native assets done. -:: [ ] [ ] Writing native assets json to file:///project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json. -:: [ ] [ +2 ms] Writing /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json done. -:: [ ] [ ] install_code_assets: Complete -:: [ ] [+33583 ms] aot_elf_release: Complete -:: [ +2 ms] [ +127 ms] linux_aot_bundle: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/build/lib/libapp.so} -:: [ +1 ms] [ +15 ms] linux_aot_bundle: Complete -:: [ +1 ms] [ +118 ms] release_bundle_linux-x64_assets: Starting due to {} -:: [ +9 ms] [+6974 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders/ink_sparkle.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] -:: [ +13 ms] [ ] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders/stretch_effect.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] -:: [ +10 ms] [ +54 ms] Running command: /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/const_finder.dart.snapshot --kernel-file /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --class-library-uri package:flutter/src/widgets/icon_data.dart --class-name IconData --annotation-class-name _StaticIconProvider --annotation-class-library-uri package:flutter/src/widgets/icon_data.dart -:: [ +1 ms] [+1824 ms] Expected to find fontFamily for constant IconData with codepoint: 128842, but found fontFamily: null. This usually means you are relying on the system font. Alternatively, font families in an IconData class can be provided in the assets section of your pubspec.yaml, or you are missing "uses-material-design: true". -:: [ +8 ms] [ +2 ms] Expected to find fonts for (packages/yaru/YaruIcons, MaterialIcons, packages/cupertino_icons/CupertinoIcons), but found (MaterialIcons, packages/yaru/YaruIcons). This usually means you are referring to font families in an IconData class but not including them in the assets section of your pubspec.yaml, are missing the package that would include them, or are missing "uses-material-design: true". -:: [ +3 ms] [ +1 ms] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/fonts/MaterialIcons-Regular.otf /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/material_fonts/MaterialIcons-Regular.otf, using codepoints 58061 984332 57490 62832 57706 58332 57502 57501 57496 58372 -:: [ +14 ms] [ +1 ms] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/packages/yaru/assets/yaru_icons.otf /root/.pub-cache/hosted/pub.dev/yaru-10.2.0/assets/yaru_icons.otf, using codepoints 57724 57723 57952 58031 58004 58087 57763 57862 57935 57945 57958 57799 57778 57937 57907 57846 57850 57890 57848 57564 58100 57845 58015 57647 57786 57547 57732 58149 57607 57622 57556 58143 58041 58094 57785 57936 57932 57668 58081 57756 57631 57853 57873 57869 58146 57666 57660 57743 57685 57688 57542 57684 58009 57614 57686 57483 57573 57802 57502 58104 57820 57485 57960 57777 57891 57581 57803 57828 57844 57822 58034 57623 57830 58011 57956 57541 58089 57562 57490 57492 57871 57868 57721 57722 57747 58086 57507 57832 57906 57880 58090 57717 -:: [ ] [ +30 ms] Font asset "MaterialIcons-Regular.otf" was tree-shaken, reducing it from 1645184 to 1748 bytes (99.9% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. -:: [ +1 ms] [ +573 ms] Font asset "yaru_icons.otf" was tree-shaken, reducing it from 203588 to 18772 bytes (90.8% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. -:: [ ] [+3639 ms] release_bundle_linux-x64_assets: Complete -:: [ ] [ +51 ms] Persisting file store -:: [ ] [ +12 ms] Done persisting file store -:: [ ] [ +28 ms] build succeeded. -:: [ ] [ ] "flutter assemble" took 89,515ms. -:: [ ] [ +1 ms] Running 1 shutdown hook -:: [ ] [ ] Shutdown hooks complete -:: [ ] [ ] exiting with code 0 -:: [+1189 ms] [5/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window.cc.o -:: [ +41 ms] [6/34] Building CXX object runner/CMakeFiles/busymark.dir/main.cc.o -:: [ +30 ms] [7/34] Building CXX object plugins/screen_retriever_linux/CMakeFiles/screen_retriever_linux_plugin.dir/screen_retriever_linux_plugin.cc.o -:: [ +47 ms] [8/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/messages.g.cc.o -:: [ +11 ms] [9/34] Building CXX object runner/CMakeFiles/busymark.dir/secure_credential_host.cc.o -:: [ +10 ms] [10/34] Building CXX object plugins/gtk/CMakeFiles/gtk_plugin.dir/gtk_plugin.cc.o -:: [ +128 ms] [11/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/file_selector_plugin.cc.o -:: [ +6 ms] [12/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/url_launcher_plugin.cc.o -:: [ +141 ms] [13/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window_linux_plugin.cc.o -:: [ +148 ms] [14/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/messages.g.cc.o -:: [ +8 ms] [15/34] Linking CXX shared library plugins/gtk/libgtk_plugin.so -:: [ +32 ms] [16/34] Linking CXX shared library plugins/file_selector_linux/libfile_selector_linux_plugin.so -:: [ +57 ms] [17/34] Linking CXX shared library plugins/screen_retriever_linux/libscreen_retriever_linux_plugin.so -:: [ +112 ms] [18/34] Linking CXX shared library plugins/yaru_window_linux/libyaru_window_linux_plugin.so -:: [ +86 ms] [19/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_window_preferences.cc.o -:: [ +35 ms] [20/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent_host.cc.o -:: [ +1 ms] [21/34] Linking CXX shared library plugins/url_launcher_linux/liburl_launcher_linux_plugin.so -:: [ +14 ms] [22/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent.cc.o -:: [ +8 ms] [23/34] Building CXX object runner/CMakeFiles/busymark.dir/rich_clipboard_host.cc.o -:: [ +55 ms] [24/34] Building CXX object plugins/window_manager/CMakeFiles/window_manager_plugin.dir/window_manager_plugin.cc.o -:: [ +12 ms] [25/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_header_icons.cc.o -:: [ +195 ms] [26/34] Linking CXX shared library plugins/window_manager/libwindow_manager_plugin.so -:: [ +146 ms] [27/34] Building CXX object runner/CMakeFiles/busymark.dir/linux_chrome_host.cc.o -:: [ +46 ms] [28/34] Building CXX object runner/CMakeFiles/busymark.dir/__/flutter/generated_plugin_registrant.cc.o -:: [ +27 ms] [29/34] Building CXX object runner/CMakeFiles/busymark.dir/my_application.cc.o -:: [ +78 ms] [30/34] Building CXX object runner/CMakeFiles/busymark.dir/writerside_dialog_host.cc.o -:: [ +190 ms] [31/34] Building CXX object runner/CMakeFiles/busymark.dir/web_render_host.cc.o -:: [ +35 ms] [32/34] Building CXX object runner/CMakeFiles/busymark.dir/video_player_host.cc.o -:: [ +321 ms] [33/34] Linking CXX executable intermediates_do_not_run/busymark -:: [ ] [33/34] Install the project... -:: [ +7 ms] -- Install configuration: "Release" -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/typst -:: [ +29 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMarchen-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMusic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPersian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansShavian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNushu-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansChakma-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsage-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMono-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansUgaritic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinagh-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLepcha-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeroitic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiLe-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElbasan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGrantha-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsmanya-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifAhom-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuginese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOgham-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDogra-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCuneiform-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTangut-Regular.ttf -:: [ +10 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBatak-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLydian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAvestan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansManichaean-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMongolian-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSiddham-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBalinese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansYi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGothic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSogdian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhoenician-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTirhuta-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoyombo-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMultani-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLimbu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRejang-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRunic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDeseret-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMro-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCypriot-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHatran-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearA-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansVai-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhojki-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuhid-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSignWriting-Regular.ttf -:: [ +14 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMahajani-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCarian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearB-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBrahmi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols2-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSyriac-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewa-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPermic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElymaic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansModi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMandaic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldItalic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWancho-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMath-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagalog-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSharada-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTakri-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGrantha-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDuployan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBassaVah-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLycian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNKo-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSamaritan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMiao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNabataean-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKaithi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanunoo-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiViet-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCoptic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-core/copyright -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-mono/copyright -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/d2 -:: [ +28 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/package-lock.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/THIRD_PARTY_NOTICES.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/license -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/license -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/LICENSE.md -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/LICENSE.BSD -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/license -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/license.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.BSD -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.source-map -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/render-engines.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/scalar.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/harness.html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/viz-global.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/bootstrap.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/dictionaries.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_NO.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_hyph_NO.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_hyph_et_EE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_et_EE.txt -:: [ +51 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB.txt -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB_thes.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_GB.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_lightproof_en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/WordNet_license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_US.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_AU.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_ZA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_CA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_US.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/README_fa_IR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/license-thes.readme -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_hyph_pt_BR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_pt_BR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-thes -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-dict.adoc -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-thes -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-dict -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-vi.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/README.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl_PL.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_ru_RU.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/README.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_th_uk_UA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_hyph_uk_UA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_uk_UA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hyph_es.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_th_es.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hunspell_es.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_it_IT.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_hyph_it_IT.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.1st -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_README -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_th_it_IT.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_de_DE_frami.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.1.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv3 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.0.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_OASIS.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_thesaurus.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv2 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_hyph_de.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_extension_owner.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/README_ar.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/COPYING.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR/README_ko_KR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/README_hi_IN.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/CHECKSUMS.sha256 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/DEPENDENCIES.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/Apache-2.0.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.MPL -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.myspell -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.hunspell -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.LESSER -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/busymark -:: [ ] -- Set non-toolchain portion of runtime path of "/project/parts/busymark/build/build/linux/x64/release/bundle/busymark" to "$ORIGIN/lib" -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/applications/io.busystack.busymark.desktop -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/metainfo/io.busystack.busymark.metainfo.xml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/icudtl.dat -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libflutter_linux_gtk.so -:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libfile_selector_linux_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libgtk_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libscreen_retriever_linux_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/liburl_launcher_linux_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libwindow_manager_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libyaru_window_linux_plugin.so -:: [ ] -- Up-to-date: /project/parts/busymark/build/build/linux/x64/release/bundle/lib -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libbusymark_spellcheck_native.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libsqlite3.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts/MaterialIcons-Regular.otf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/html.css -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/markdown.typ -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling/dictionaries.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding/busymark_logo.svg -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside/templates.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/stretch_effect.frag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/ink_sparkle.frag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/UbuntuMono-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-R.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-RI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-M.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-MI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-B.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-LI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-BI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-L.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/yaru_icons.otf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NativeAssetsManifest.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/version.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NOTICES.Z -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/AssetManifest.bin -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/FontManifest.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libapp.so -:: [ +16 ms] Building Linux application... (completed in 96.1s) -:: [ +5 ms] ✓ Built build/linux/x64/release/bundle/busymark -:: [ ] "flutter linux" took 96,876ms. -:: [ +1 ms] Running 1 shutdown hook -:: [ ] Shutdown hooks complete -:: [ ] exiting with code 0 -:: + cp -r build/linux/x64/release/bundle/busymark build/linux/x64/release/bundle/data build/linux/x64/release/bundle/lib build/linux/x64/release/bundle/libexec build/linux/x64/release/bundle/share /project/parts/busymark/install/ -Skipping pull for busymark (already ran) -Skipping build for busymark (already ran) -Staging busymark (required to build 'desktop-integration') -Building desktop-integration -Building gnome/sdk -:: + make -j16 GPU_WRAPPER=gpu-2404-wrapper -:: make: 'Makefile' is up to date. -:: + make -j16 install GPU_WRAPPER=gpu-2404-wrapper DESTDIR=/project/parts/gnome/sdk/install -:: install -D -m755 "hooks-configure-fonts" "/project/parts/gnome/sdk/install/snap/command-chain"/"hooks-configure-fonts" -:: install -D -m755 "desktop-launch" "/project/parts/gnome/sdk/install/snap/command-chain"/"desktop-launch" -:: install -D -m755 "run" "/project/parts/gnome/sdk/install/snap/command-chain"/"run" -:: install -D -m755 "gpu-2404-wrapper" "/project/parts/gnome/sdk/install/snap/command-chain"/"gpu-2404-wrapper" -Skipping stage for busymark (already ran) -Staging desktop-integration -Staging gnome/sdk -Priming busymark -Patch ELF file: 'busymark' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=['$ORIGIN/lib'] - Proposed rpath=['$ORIGIN/usr/lib/x86_64-linux-gnu', '$ORIGIN/lib', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libbusymark_spellcheck_native.so' - Current rpath=['$ORIGIN'] - Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libfile_selector_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libflutter_linux_gtk.so' - Current rpath=['$ORIGIN'] - Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libgtk_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libscreen_retriever_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libsqlite3.so' - Current rpath=['$ORIGIN'] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/liburl_launcher_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libwindow_manager_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libyaru_window_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/addpart' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/choom' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/chrt' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/delpart' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/dmesg' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fallocate' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-cache' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-cat' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-conflist' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-list' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-match' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-pattern' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-query' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-scan' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-validate' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/findmnt' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/flock' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gapplication' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gdbus' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/getopt' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gio' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/git' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/git-shell' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gresource' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gsettings' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gtk-update-icon-cache' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/hardlink' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ionice' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ipcmk' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ipcrm' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ipcs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/last' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsblk' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lscpu' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsipc' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lslocks' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lslogins' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsmem' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsns' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/mcookie' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/mesg' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/more' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/mountpoint' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/namei' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/nsenter' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/partx' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/perl' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/perl5.38-x86_64-linux-gnu' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/perl5.38.2' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/prlimit' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/rename.ul' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/resizepart' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/rev' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/scalar' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/scp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/session-migration' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setarch' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setpriv' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setsid' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setterm' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/sftp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-add' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-agent' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-keygen' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-keyscan' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/su' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/taskset' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/uclampset' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/unshare' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/update-mime-database' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/utmpdump' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/wdctl' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/whereis' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-daemon' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-http-backend' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-http-fetch' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-http-push' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-imap-send' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-remote-http' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-sh-i18n--envsubst' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-shell' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/scalar' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/openssh/ssh-keysign' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/openssh/ssh-pkcs11-helper' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/openssh/ssh-sk-helper' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libDummyDevice.so.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libOniFile.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPS1080.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPSLink.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/blas/libblas.so.3.12.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libx11_plugin.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ati128.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ep9x.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gl.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gles2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i810.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i830.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_mach64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_matrox.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_neomagic.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nsc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nvidia.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_pxa3xx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_sis315.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_tdfx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_input_hub.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_joystick.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_keyboard.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_linux_input.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_lirc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_mutouch.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_penmount.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_ps2mouse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_serialmouse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_sonypi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_wm97xx_ts.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_zytronic.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBFont/libidirectfbfont_dgiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_dfiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_gif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_v4l.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBWindows/libidirectfbwindows_default.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IWater/libiwater_default.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_devmem.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_dummy.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_fbdev.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/wm/libdirectfbwm_default.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/dri/libdril_dri.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gbm/dri_gbm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ani.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-gif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-icns.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pnm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tga.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xbm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognomeproxy.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '$ORIGIN/../../libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsta52dec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaccurip.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaes.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstanalyticsoverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaom.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasfmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstassrender.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiobuffersplit.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofxbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiolatency.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixmatrix.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiovisualizers.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautoconvert.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavtp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbayer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbluez.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbs2b.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbz2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstchromaprint.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstclosedcaption.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodec2json.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodecalpha.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodectimestamper.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoloreffects.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcolormanagement.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcurl.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdash.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdc1394.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstde265.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebugutilsbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdecklink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdirectfb.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtls.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtsdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvb.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsubenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsuboverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdlpcmdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdread.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdspu.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdsub.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaceoverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfbdevsink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfestival.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfieldanalysis.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflite.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfluidsynthmidi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfreeverb.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfrei0r.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgaudieffects.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgeometrictransform.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgme.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgsm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgtkwayland.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsthls.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3tag.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinsertbin.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinter.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterlace.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstipcpipeline.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivfparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivtc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjp2kdecimator.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstkms.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstladspa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlc3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstldac.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlegacyrawparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibav.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../lapack', '$ORIGIN/../blas', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlv2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmidi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmodplug.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2dec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2enc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsdemux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsdemux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmplex.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmsdk.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmusepack.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmxf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstneonhttpsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnetsim.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnvcodec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenal.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenaptx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenexr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenh264.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenjpeg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenmpt.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenni2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopusparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpcapparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpnm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstproxy.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqroverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqsv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrealmedia.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstremovesilence.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstresindvd.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrfbsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrist.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrsvg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanagerbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtponvif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsbc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsctp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsdpelem.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsegmentclip.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsid.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsiren.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmooth.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmoothstreaming.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsndfile.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoundtouch.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspandsp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeed.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrt.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrtp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsvtav1.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstswitchbin.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstteletext.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttimecode.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttranscode.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstttmlsubs.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstunixfd.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvcgadget.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvch264.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstv4l2codecs.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstva.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofiltersbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoframe_audiolevel.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideosignal.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvmnc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoaacenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoamrwbenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvulkan.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwaylandsink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebrtc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwildmidi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx264.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx265.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4mdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzbar.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzxing.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libadwaita.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libmurrine.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libpixmap.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-am-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cedilla.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cyrillic-translit.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-inuktitut.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ipa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-multipress.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-thai.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-er.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-viqr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-xim.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-lpr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-test.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../blas', '$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL.so.1.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libFLAC.so.12.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGL.so.1.7.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLESv2.so.2.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIex-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIlmThread-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libImath-3_1.so.29.8.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLLVM.so.20.1' - Current rpath=['$ORIGIN/../lib'] - Proposed rpath=['$ORIGIN/../lib', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLerc.so.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXR-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRCore-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenNI2.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.3000.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouch.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSvtAv1Enc.so.1.7.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libWildMidi.so.2.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libX11.so.6.4.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXau.so.6.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXext.so.6.4.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXi.so.6.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXss.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libZXing.so.2.2.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liba52-0.7.4.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaom.so.3.8.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasound.so.2.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libass.so.9.2.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasyncns.so.0.3.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.25209.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatspi.so.0.0.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-client.so.3.2.9' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-common.so.3.5.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavcodec.so.60.31.102' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavfilter.so.9.12.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/lapack', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavformat.so.60.16.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavutil.so.58.29.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbluray.so.2.4.3' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbs2b.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca.so.0.99.20' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo-gobject.so.2.11800.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo.so.2.11800.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_interface.so.0.10.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdio.so.19.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libchromaprint.so.1.5.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson.so.1.7.17' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcodec2.so.1.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcups.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.8.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdatrie.so.1.4.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdav1d.so.7.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdc1394.so.25.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdca.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libde265.so.0.1.8' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdecor-0.so.0.200.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdeflate.so.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirect-1.7.so.7.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirectfb-1.7.so.7.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.125.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.125.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdnav.so.4.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdread.so.8.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdw-0.190.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libepoxy.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad.so.2.11.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3.so.3.6.10' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lang.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_awb.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal16.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_rms.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_slt.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmulex.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_usenglish.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfluidsynth.so.3.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfontconfig.so.1.12.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libform.so.6.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeaptx.so.0.1.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreebl3.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfribidi.so.0.4.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfusion-1.7.so.7.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm.so.6.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm_compat.so.4.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.33' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.4200.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgme.so.0.6.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgpm.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgraphite2.so.3.2.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsm.so.1.0.19' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgssdp-1.6.so.0.106.3' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstadaptivedemux-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstanalytics-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbadaudio-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecparsers-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecs-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcuda-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstgl-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstinsertbin-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstisoff-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmpegts-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmse-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplay-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsctp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsturidownloader-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstva-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvulkan-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwayland-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtc-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtcnice-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.33' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk2.0-0t64/gtk-query-immodules-2.0' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgudev-1.0.so.0.3.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-1.6.so.0.106.6' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-igd-1.6.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.60830.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy.so.1.0.7' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicui18n.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutu.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuuc.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2.2.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjack.so.0.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjbig.so.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjpeg.so.8.2.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.800.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl.so.0.7.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl_threads.so.0.7.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblber.so.2.0.200' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblc3.so.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblcms2.so.2.0.14' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldacBT_enc.so.2.0.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldap.so.2.0.200' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblilv-0.so.0.24.22' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblrdf.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libltc.so.11.2.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmbedcrypto.so.2.28.8' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx.so.1.35' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmjpegutils-2.1.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmodplug.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmp3lame.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpcdec.so.6.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2.so.0.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2encpp-2.1.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpg123.so.0.48.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmplex2-2.1.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmysofa.so.1.3.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libncurses.so.6.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libneon.so.27.6.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnghttp2.so.14.26.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnice.so.10.13.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnorm.so.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnspr4.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnss3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssckbi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssdbm3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssutil3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnuma.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libogg.so.0.8.5' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenal.so.1.23.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenh264.so.2.4.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenjp2.so.2.5.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenmpt.so.0.4.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopus.so.0.9.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.38.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libperl.so.5.38.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpgm-5.3.so.0.0.128' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpipewire-0.3.so.0.1005.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpixman-1.so.0.42.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplacebo.so.338' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplc4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplds4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpocketsphinx.so.3.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/blas', '$ORIGIN/lapack', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpostproc.so.57.3.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy/libpxbackend-1.0.so' - Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy.so.0.5.4' - Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] - Proposed rpath=['$ORIGIN', '$ORIGIN/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpsl.so.5.3.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse-simple.so.0.1.1' - Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] - Proposed rpath=['$ORIGIN/pulseaudio', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse.so.0.24.2' - Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libqrencode.so.4.1.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librabbitmq.so.4.5.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraptor2.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librav1e.so.0.7.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraw1394.so.11.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librist.so.4.3.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librtmp.so.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librubberband.so.2.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsamplerate.so.0.2.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsbc.so.1.3.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsensors.so.5.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libserd-0.so.0.32.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsharpyuv.so.0.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshine.so.3.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsidplay.so.1.0.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libslang.so.2.3.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsmime3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsnappy.so.1.1.10' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndfile.so.1.0.37' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndio.so.7.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsodium.so.23.3.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoftokn3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsord-0.so.0.16.16' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoup-3.0.so.0.7.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoxr.so.0.1.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspandsp.so.2.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspeex.so.1.5.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/lapack', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsratom-0.so.0.6.16' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrt-gnutls.so.1.5.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrtp2.so.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh-gcrypt.so.4.9.6' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh.so.4.9.6' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssl3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswresample.so.4.12.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswscale.so.7.5.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libthai.so.0.3.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheora.so.0.3.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoradec.so.1.1.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoraenc.so.1.1.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtiff.so.6.0.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtwolame.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libudfread.so.0.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunibreak.so.5.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind.so.8.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libusb-1.0.so.0.4.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/plugins/libv4l-mplane.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l2convert.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l1.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l2.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov511-decomp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov518-decomp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-drm.so.2.2000.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-x11.so.2.2000.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva.so.2.2000.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvdpau.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvidstab.so.1.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-aacenc.so.0.0.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-amrwbenc.so.0.0.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbis.so.0.4.9' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisenc.so.2.0.12' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisfile.so.3.3.8' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpl.so.2.9' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpx.so.9.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvulkan.so.1.3.275' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebp.so.7.1.8' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebpmux.so.3.0.13' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebrtc_audio_processing.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx264.so.164' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx265.so.199' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xkb.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxml2.so.2.9.14' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxslt.so.1.1.39' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxvidcore.so.4.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libyajl.so.2.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzbar.so.0.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzimg.so.2.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzix-0.so.0.4.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzmq.so.5.2.5' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi.so.0.13.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_h264la_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevc_fei_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevcd_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevce_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp8d_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9d_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9e_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/B/B.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Bzip2/Bzip2.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Zlib/Zlib.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Cwd/Cwd.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/DB_File/DB_File.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Data/Dumper/Dumper.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Devel/Peek/Peek.so' -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/MD5/MD5.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/SHA/SHA.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Byte/Byte.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/CN/CN.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/EBCDIC/EBCDIC.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Encode.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/JP/JP.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/KR/KR.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Symbol/Symbol.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/TW/TW.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Unicode/Unicode.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/File/Glob/Glob.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Filter/Util/Call/Call.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/GDBM_File/GDBM_File.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/FieldHash/FieldHash.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/I18N/Langinfo/Langinfo.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IO/IO.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IPC/SysV/SysV.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/List/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/MIME/Base64/Base64.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Math/BigInt/FastCalc/FastCalc.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/NDBM_File/NDBM_File.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/ODBM_File/ODBM_File.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Opcode/Opcode.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/POSIX/POSIX.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/encoding/encoding.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/mmap/mmap.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/scalar/scalar.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/via/via.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/SDBM_File/SDBM_File.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Socket/Socket.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Storable/Storable.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Hostname/Hostname.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Syslog/Syslog.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/HiRes/HiRes.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/Piece/Piece.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Collate/Collate.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Normalize/Normalize.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/attributes/attributes.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/mro/mro.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/re/re.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/shared/shared.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/threads.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Cwd/Cwd.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/File/Glob/Glob.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Hash/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/IO/IO.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/List/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/POSIX/POSIX.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Socket/Socket.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/attributes/attributes.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/re/re.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-16.1.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/sasl2/libsasldb.so.2.0.25' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-null.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-webrtc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/alsa/libspa-alsa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audioconvert/libspa-audioconvert.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiomixer/libspa-audiomixer.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiotestsrc/libspa-audiotestsrc.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/avb/libspa-avb.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/control/libspa-control.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-dbus.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-journal.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/test/libspa-test.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/v4l2/libspa-v4l2.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videoconvert/libspa-videoconvert.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videotestsrc/libspa-videotestsrc.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/vdpau/libvdpau_trace.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/vpl/libvpl_wayland.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/libexec/dconf-service' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/libexec/glib-pacrunner' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '$ORIGIN/../lib/x86_64-linux-gnu/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/agetty' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blkdiscard' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blkid' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blkzone' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blockdev' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/chcpu' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/chmem' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/ctrlaltdel' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/findfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsck' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsck.cramfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsck.minix' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsfreeze' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fstrim' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/isosize' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/ldattach' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs.bfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs.cramfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs.minix' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkswap' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/pivot_root' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/readprofile' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/rtcwake' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/runuser' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/sulogin' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/swaplabel' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/switch_root' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/wipefs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/zramctl' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Priming desktop-integration -:: + craftctl default -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/busymark -:: + existing_rpath='$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/busymark -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libapp.so -:: + existing_rpath= -:: + '[' -n '' ']' -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libbusymark_spellcheck_native.so -:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libbusymark_spellcheck_native.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libfile_selector_linux_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libfile_selector_linux_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libflutter_linux_gtk.so -:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libflutter_linux_gtk.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libgtk_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libgtk_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libscreen_retriever_linux_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libscreen_retriever_linux_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libsqlite3.so -:: + existing_rpath='$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libsqlite3.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/liburl_launcher_linux_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/liburl_launcher_linux_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libwindow_manager_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libwindow_manager_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libyaru_window_linux_plugin.so -:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libyaru_window_linux_plugin.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs -:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs ']' -:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs -:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs ']' -:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs -:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs ']' -:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs -:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs ']' -:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs -:: + IFS= -:: + read -r runtime_path -:: + patchelf --set-rpath '$ORIGIN/lapack:$ORIGIN/blas:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0 -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0 /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0 -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/librsvg-2.so.2 /project/prime/usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0 -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoKufiArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoKufiArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoMono-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoMusic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoNaskhArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoNaskhArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoRashiHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoRashiHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArmenian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArmenian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAvestan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBalinese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBalinese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBamum-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBamum-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBassaVah-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBatak-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBengali-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBengali-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBrahmi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBuginese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBuhid-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCarian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansChakma-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCham-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCherokee-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCherokee-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCoptic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCuneiform-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCypriot-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDeseret-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDevanagari-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDevanagari-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDuployan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansElbasan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansElymaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEthiopic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEthiopic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGeorgian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGeorgian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGothic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGrantha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGujarati-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGujarati-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanunoo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHatran-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansJavanese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansJavanese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKaithi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKannada-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKannada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKayahLi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKayahLi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhmer-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhmer-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhojki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLepcha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLimbu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLinearA-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLinearB-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLisu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLisu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLycian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLydian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMahajani-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMalayalam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMalayalam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMandaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansManichaean-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMarchen-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMath-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeroitic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMiao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansModi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMongolian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMono-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMono-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMro-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMultani-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMyanmar-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMyanmar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNKo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNabataean-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNewa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNushu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOgham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOlChiki-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOlChiki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldItalic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldPermic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldPersian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOriya-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOriya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOsage-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOsmanya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPhoenician-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansRejang-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansRunic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSamaritan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSharada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansShavian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSiddham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSignWriting-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSinhala-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSinhala-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSogdian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoyombo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSundanese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSundanese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols2-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSyriac-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTagalog-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiLe-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiTham-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiTham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiViet-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTakri-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamil-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamil-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTelugu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTelugu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThaana-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThaana-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinagh-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTirhuta-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansUgaritic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansVai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansWancho-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansYi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifAhom-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifArmenian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifArmenian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBalinese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBengali-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBengali-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDogra-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGrantha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGujarati-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGujarati-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKannada-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKannada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhmer-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhmer-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhojki-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhojki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifSinhala-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifSinhala-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamil-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamil-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTangut-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTelugu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTelugu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTibetan-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTibetan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifYezidi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifYezidi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf -:: + rm -rf /project/prime/share/busymark/fonts -:: + ln -s ../../usr/share/fonts/truetype/noto /project/prime/share/busymark/fonts -:: + mkdir -p /project/prime/share/themes /project/prime/share/icons -:: + for resource_kind in themes icons -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru -:: + resource_name=Yaru -:: + linked_resource=/project/prime/share/themes/Yaru -:: + rm -rf /project/prime/share/themes/Yaru -:: + ln -s ../../usr/share/themes/Yaru /project/prime/share/themes/Yaru -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-bark -:: + resource_name=Yaru-bark -:: + linked_resource=/project/prime/share/themes/Yaru-bark -:: + rm -rf /project/prime/share/themes/Yaru-bark -:: + ln -s ../../usr/share/themes/Yaru-bark /project/prime/share/themes/Yaru-bark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-bark-dark -:: + resource_name=Yaru-bark-dark -:: + linked_resource=/project/prime/share/themes/Yaru-bark-dark -:: + rm -rf /project/prime/share/themes/Yaru-bark-dark -:: + ln -s ../../usr/share/themes/Yaru-bark-dark /project/prime/share/themes/Yaru-bark-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-blue -:: + resource_name=Yaru-blue -:: + linked_resource=/project/prime/share/themes/Yaru-blue -:: + rm -rf /project/prime/share/themes/Yaru-blue -:: + ln -s ../../usr/share/themes/Yaru-blue /project/prime/share/themes/Yaru-blue -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-blue-dark -:: + resource_name=Yaru-blue-dark -:: + linked_resource=/project/prime/share/themes/Yaru-blue-dark -:: + rm -rf /project/prime/share/themes/Yaru-blue-dark -:: + ln -s ../../usr/share/themes/Yaru-blue-dark /project/prime/share/themes/Yaru-blue-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-dark -:: + resource_name=Yaru-dark -:: + linked_resource=/project/prime/share/themes/Yaru-dark -:: + rm -rf /project/prime/share/themes/Yaru-dark -:: + ln -s ../../usr/share/themes/Yaru-dark /project/prime/share/themes/Yaru-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-dark-hdpi -:: + resource_name=Yaru-dark-hdpi -:: + linked_resource=/project/prime/share/themes/Yaru-dark-hdpi -:: + rm -rf /project/prime/share/themes/Yaru-dark-hdpi -:: + ln -s ../../usr/share/themes/Yaru-dark-hdpi /project/prime/share/themes/Yaru-dark-hdpi -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-dark-xhdpi -:: + resource_name=Yaru-dark-xhdpi -:: + linked_resource=/project/prime/share/themes/Yaru-dark-xhdpi -:: + rm -rf /project/prime/share/themes/Yaru-dark-xhdpi -:: + ln -s ../../usr/share/themes/Yaru-dark-xhdpi /project/prime/share/themes/Yaru-dark-xhdpi -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-hdpi -:: + resource_name=Yaru-hdpi -:: + linked_resource=/project/prime/share/themes/Yaru-hdpi -:: + rm -rf /project/prime/share/themes/Yaru-hdpi -:: + ln -s ../../usr/share/themes/Yaru-hdpi /project/prime/share/themes/Yaru-hdpi -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-magenta -:: + resource_name=Yaru-magenta -:: + linked_resource=/project/prime/share/themes/Yaru-magenta -:: + rm -rf /project/prime/share/themes/Yaru-magenta -:: + ln -s ../../usr/share/themes/Yaru-magenta /project/prime/share/themes/Yaru-magenta -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-magenta-dark -:: + resource_name=Yaru-magenta-dark -:: + linked_resource=/project/prime/share/themes/Yaru-magenta-dark -:: + rm -rf /project/prime/share/themes/Yaru-magenta-dark -:: + ln -s ../../usr/share/themes/Yaru-magenta-dark /project/prime/share/themes/Yaru-magenta-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-olive -:: + resource_name=Yaru-olive -:: + linked_resource=/project/prime/share/themes/Yaru-olive -:: + rm -rf /project/prime/share/themes/Yaru-olive -:: + ln -s ../../usr/share/themes/Yaru-olive /project/prime/share/themes/Yaru-olive -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-olive-dark -:: + resource_name=Yaru-olive-dark -:: + linked_resource=/project/prime/share/themes/Yaru-olive-dark -:: + rm -rf /project/prime/share/themes/Yaru-olive-dark -:: + ln -s ../../usr/share/themes/Yaru-olive-dark /project/prime/share/themes/Yaru-olive-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-prussiangreen -:: + resource_name=Yaru-prussiangreen -:: + linked_resource=/project/prime/share/themes/Yaru-prussiangreen -:: + rm -rf /project/prime/share/themes/Yaru-prussiangreen -:: + ln -s ../../usr/share/themes/Yaru-prussiangreen /project/prime/share/themes/Yaru-prussiangreen -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-prussiangreen-dark -:: + resource_name=Yaru-prussiangreen-dark -:: + linked_resource=/project/prime/share/themes/Yaru-prussiangreen-dark -:: + rm -rf /project/prime/share/themes/Yaru-prussiangreen-dark -:: + ln -s ../../usr/share/themes/Yaru-prussiangreen-dark /project/prime/share/themes/Yaru-prussiangreen-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-purple -:: + resource_name=Yaru-purple -:: + linked_resource=/project/prime/share/themes/Yaru-purple -:: + rm -rf /project/prime/share/themes/Yaru-purple -:: + ln -s ../../usr/share/themes/Yaru-purple /project/prime/share/themes/Yaru-purple -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-purple-dark -:: + resource_name=Yaru-purple-dark -:: + linked_resource=/project/prime/share/themes/Yaru-purple-dark -:: + rm -rf /project/prime/share/themes/Yaru-purple-dark -:: + ln -s ../../usr/share/themes/Yaru-purple-dark /project/prime/share/themes/Yaru-purple-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-red -:: + resource_name=Yaru-red -:: + linked_resource=/project/prime/share/themes/Yaru-red -:: + rm -rf /project/prime/share/themes/Yaru-red -:: + ln -s ../../usr/share/themes/Yaru-red /project/prime/share/themes/Yaru-red -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-red-dark -:: + resource_name=Yaru-red-dark -:: + linked_resource=/project/prime/share/themes/Yaru-red-dark -:: + rm -rf /project/prime/share/themes/Yaru-red-dark -:: + ln -s ../../usr/share/themes/Yaru-red-dark /project/prime/share/themes/Yaru-red-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-sage -:: + resource_name=Yaru-sage -:: + linked_resource=/project/prime/share/themes/Yaru-sage -:: + rm -rf /project/prime/share/themes/Yaru-sage -:: + ln -s ../../usr/share/themes/Yaru-sage /project/prime/share/themes/Yaru-sage -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-sage-dark -:: + resource_name=Yaru-sage-dark -:: + linked_resource=/project/prime/share/themes/Yaru-sage-dark -:: + rm -rf /project/prime/share/themes/Yaru-sage-dark -:: + ln -s ../../usr/share/themes/Yaru-sage-dark /project/prime/share/themes/Yaru-sage-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-viridian -:: + resource_name=Yaru-viridian -:: + linked_resource=/project/prime/share/themes/Yaru-viridian -:: + rm -rf /project/prime/share/themes/Yaru-viridian -:: + ln -s ../../usr/share/themes/Yaru-viridian /project/prime/share/themes/Yaru-viridian -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-viridian-dark -:: + resource_name=Yaru-viridian-dark -:: + linked_resource=/project/prime/share/themes/Yaru-viridian-dark -:: + rm -rf /project/prime/share/themes/Yaru-viridian-dark -:: + ln -s ../../usr/share/themes/Yaru-viridian-dark /project/prime/share/themes/Yaru-viridian-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-xhdpi -:: + resource_name=Yaru-xhdpi -:: + linked_resource=/project/prime/share/themes/Yaru-xhdpi -:: + rm -rf /project/prime/share/themes/Yaru-xhdpi -:: + ln -s ../../usr/share/themes/Yaru-xhdpi /project/prime/share/themes/Yaru-xhdpi -:: + for resource_kind in themes icons -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru -:: + resource_name=Yaru -:: + linked_resource=/project/prime/share/icons/Yaru -:: + rm -rf /project/prime/share/icons/Yaru -:: + ln -s ../../usr/share/icons/Yaru /project/prime/share/icons/Yaru -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-bark -:: + resource_name=Yaru-bark -:: + linked_resource=/project/prime/share/icons/Yaru-bark -:: + rm -rf /project/prime/share/icons/Yaru-bark -:: + ln -s ../../usr/share/icons/Yaru-bark /project/prime/share/icons/Yaru-bark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-bark-dark -:: + resource_name=Yaru-bark-dark -:: + linked_resource=/project/prime/share/icons/Yaru-bark-dark -:: + rm -rf /project/prime/share/icons/Yaru-bark-dark -:: + ln -s ../../usr/share/icons/Yaru-bark-dark /project/prime/share/icons/Yaru-bark-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-blue -:: + resource_name=Yaru-blue -:: + linked_resource=/project/prime/share/icons/Yaru-blue -:: + rm -rf /project/prime/share/icons/Yaru-blue -:: + ln -s ../../usr/share/icons/Yaru-blue /project/prime/share/icons/Yaru-blue -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-blue-dark -:: + resource_name=Yaru-blue-dark -:: + linked_resource=/project/prime/share/icons/Yaru-blue-dark -:: + rm -rf /project/prime/share/icons/Yaru-blue-dark -:: + ln -s ../../usr/share/icons/Yaru-blue-dark /project/prime/share/icons/Yaru-blue-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-dark -:: + resource_name=Yaru-dark -:: + linked_resource=/project/prime/share/icons/Yaru-dark -:: + rm -rf /project/prime/share/icons/Yaru-dark -:: + ln -s ../../usr/share/icons/Yaru-dark /project/prime/share/icons/Yaru-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-magenta -:: + resource_name=Yaru-magenta -:: + linked_resource=/project/prime/share/icons/Yaru-magenta -:: + rm -rf /project/prime/share/icons/Yaru-magenta -:: + ln -s ../../usr/share/icons/Yaru-magenta /project/prime/share/icons/Yaru-magenta -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-magenta-dark -:: + resource_name=Yaru-magenta-dark -:: + linked_resource=/project/prime/share/icons/Yaru-magenta-dark -:: + rm -rf /project/prime/share/icons/Yaru-magenta-dark -:: + ln -s ../../usr/share/icons/Yaru-magenta-dark /project/prime/share/icons/Yaru-magenta-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-olive -:: + resource_name=Yaru-olive -:: + linked_resource=/project/prime/share/icons/Yaru-olive -:: + rm -rf /project/prime/share/icons/Yaru-olive -:: + ln -s ../../usr/share/icons/Yaru-olive /project/prime/share/icons/Yaru-olive -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-olive-dark -:: + resource_name=Yaru-olive-dark -:: + linked_resource=/project/prime/share/icons/Yaru-olive-dark -:: + rm -rf /project/prime/share/icons/Yaru-olive-dark -:: + ln -s ../../usr/share/icons/Yaru-olive-dark /project/prime/share/icons/Yaru-olive-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-prussiangreen -:: + resource_name=Yaru-prussiangreen -:: + linked_resource=/project/prime/share/icons/Yaru-prussiangreen -:: + rm -rf /project/prime/share/icons/Yaru-prussiangreen -:: + ln -s ../../usr/share/icons/Yaru-prussiangreen /project/prime/share/icons/Yaru-prussiangreen -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-prussiangreen-dark -:: + resource_name=Yaru-prussiangreen-dark -:: + linked_resource=/project/prime/share/icons/Yaru-prussiangreen-dark -:: + rm -rf /project/prime/share/icons/Yaru-prussiangreen-dark -:: + ln -s ../../usr/share/icons/Yaru-prussiangreen-dark /project/prime/share/icons/Yaru-prussiangreen-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-purple -:: + resource_name=Yaru-purple -:: + linked_resource=/project/prime/share/icons/Yaru-purple -:: + rm -rf /project/prime/share/icons/Yaru-purple -:: + ln -s ../../usr/share/icons/Yaru-purple /project/prime/share/icons/Yaru-purple -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-purple-dark -:: + resource_name=Yaru-purple-dark -:: + linked_resource=/project/prime/share/icons/Yaru-purple-dark -:: + rm -rf /project/prime/share/icons/Yaru-purple-dark -:: + ln -s ../../usr/share/icons/Yaru-purple-dark /project/prime/share/icons/Yaru-purple-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-red -:: + resource_name=Yaru-red -:: + linked_resource=/project/prime/share/icons/Yaru-red -:: + rm -rf /project/prime/share/icons/Yaru-red -:: + ln -s ../../usr/share/icons/Yaru-red /project/prime/share/icons/Yaru-red -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-red-dark -:: + resource_name=Yaru-red-dark -:: + linked_resource=/project/prime/share/icons/Yaru-red-dark -:: + rm -rf /project/prime/share/icons/Yaru-red-dark -:: + ln -s ../../usr/share/icons/Yaru-red-dark /project/prime/share/icons/Yaru-red-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-sage -:: + resource_name=Yaru-sage -:: + linked_resource=/project/prime/share/icons/Yaru-sage -:: + rm -rf /project/prime/share/icons/Yaru-sage -:: + ln -s ../../usr/share/icons/Yaru-sage /project/prime/share/icons/Yaru-sage -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-sage-dark -:: + resource_name=Yaru-sage-dark -:: + linked_resource=/project/prime/share/icons/Yaru-sage-dark -:: + rm -rf /project/prime/share/icons/Yaru-sage-dark -:: + ln -s ../../usr/share/icons/Yaru-sage-dark /project/prime/share/icons/Yaru-sage-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-viridian -:: + resource_name=Yaru-viridian -:: + linked_resource=/project/prime/share/icons/Yaru-viridian -:: + rm -rf /project/prime/share/icons/Yaru-viridian -:: + ln -s ../../usr/share/icons/Yaru-viridian /project/prime/share/icons/Yaru-viridian -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-viridian-dark -:: + resource_name=Yaru-viridian-dark -:: + linked_resource=/project/prime/share/icons/Yaru-viridian-dark -:: + rm -rf /project/prime/share/icons/Yaru-viridian-dark -:: + ln -s ../../usr/share/icons/Yaru-viridian-dark /project/prime/share/icons/Yaru-viridian-dark -:: + install -Dm644 /project/linux/io.busystack.busymark.desktop /project/prime/share/applications/io.busystack.busymark.desktop -:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/meta/gui/io.busystack.busymark.svg -:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/meta/gui/icon.svg -:: + install -Dm644 /project/linux/io.busystack.busymark.metainfo.xml /project/prime/share/metainfo/io.busystack.busymark.metainfo.xml -:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg -Priming gnome/sdk -Packing... -Reading snap metadata... -Running linters... -Running linter: classic -Running linter: library -Lint warnings: -- library: libEGL_mesa.so.0: unused library 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libGLX_mesa.so.0: unused library 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libOpenEXRUtil-3_1.so.30: unused library 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libSoundTouchDll.so.1: unused library 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libXtst.so.6: unused library 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libaa.so.1: unused library 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libavc1394.so.0: unused library 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcaca++.so.0: unused library 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcdda_paranoia.so.0: unused library 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcjson_utils.so.1: unused library 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcolord.so.2: unused library 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcolordprivate.so.2: unused library 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libdconf.so.1: unused library 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libdv.so.4: unused library 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libexslt.so.0: unused library 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfaad_drm.so.2: unused library 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfftw3_omp.so.3: unused library 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfftw3_threads.so.3: unused library 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libflite_cmu_grapheme_lang.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libflite_cmu_grapheme_lex.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libflite_cmu_indic_lex.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libflite_cmu_time_awb.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libform.so.6: unused library 'usr/lib/x86_64-linux-gnu/libform.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfreebl3.so: unused library 'usr/lib/x86_64-linux-gnu/libfreebl3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfreeblpriv3.so: unused library 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libgstdxva-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libgstplayer-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libgsttranscoder-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libhwy_contrib.so.1: unused library 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libhwy_test.so.1: unused library 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libicuio.so.74: unused library 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libicutest.so.74: unused library 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libiec61883.so.0: unused library 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libjacknet.so.0: unused library 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libjackserver.so.0: unused library 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libmenu.so.6: unused library 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libmfx-tracer.so.1: unused library 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libmfxhw64.so.1: unused library 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libmpeg2convert.so.0: unused library 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libnssckbi.so: unused library 'usr/lib/x86_64-linux-gnu/libnssckbi.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libnssdbm3.so: unused library 'usr/lib/x86_64-linux-gnu/libnssdbm3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: liborc-test-0.4.so.0: unused library 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libpanel.so.6: unused library 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: librom1394.so.0: unused library 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libshout.so.3: unused library 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libsmime3.so: unused library 'usr/lib/x86_64-linux-gnu/libsmime3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libsoftokn3.so: unused library 'usr/lib/x86_64-linux-gnu/libsoftokn3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libsphinxad.so.3: unused library 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libssl3.so: unused library 'usr/lib/x86_64-linux-gnu/libssl3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libtag.so.1: unused library 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libunwind-coredump.so.0: unused library 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libunwind-ptrace.so.0: unused library 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libunwind-x86_64.so.8: unused library 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libvisual-0.4.so.0: unused library 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libwavpack.so.1: unused library 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libzvbi-chains.so.0: unused library 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -Creating snap package... -Packed busymark_0.6.1_amd64.snap diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.json b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.json deleted file mode 100644 index f63de1c9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":false,"checks":{},"error":"PlatformException(visualization.webRenderFailed, Unsupported result type, null, null)","stackTrace":"#0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:653)\n#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:366)\n\n#2 Future.timeout. (dart:async/future_impl.dart:1061)\n\n#3 PlatformWebRenderHost._invokeCancellable (package:busymark/src/visualization/web_render_host.dart:292)\n\n#4 PlatformWebRenderHost._invokeMap (package:busymark/src/visualization/web_render_host.dart:261)\n\n#5 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:74)\n\n#6 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.log deleted file mode 100644 index 2d2ddf28..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render-retry.log +++ /dev/null @@ -1,13 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:36321): IBUS-WARNING **: 13:33:47.737: Failed to mkdir /home/tester/snap/busymark/x4/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:36321): WARNING **: 13:33:48.383: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:36321): WARNING **: 13:33:48.385: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:36426): GLib-GIO-WARNING **: 13:33:55.365: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:36441): GLib-GIO-WARNING **: 13:33:56.938: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:36583): GLib-GIO-WARNING **: 13:34:19.442: Error releasing name io.busystack.busymark.Sandboxed.WebProcess-21fbd502-7ce7-4477-9638-98f3a384e64b: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.62" (uid=1000 pid=36583 comm="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitWeb" label="snap.busymark.busymark (enforce)") interface="org.freedesktop.DBus" member="ReleaseName" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.json b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.json deleted file mode 100644 index 11ab939f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":false,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true},"error":"Bad state: MathJax did not recover with the WebKit process.","stackTrace":"#0 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:203)\n\n#1 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.log b/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.log deleted file mode 100644 index c6cdd122..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/historical/renderer-experiment/snap-visualization-x11-render.log +++ /dev/null @@ -1,18 +0,0 @@ -busymark 0.6.1 installed -Warning: Schema “org.gnome.system.locale” has path “/system/locale/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy” has path “/system/proxy/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.http” has path “/system/proxy/http/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.https” has path “/system/proxy/https/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.ftp” has path “/system/proxy/ftp/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.socks” has path “/system/proxy/socks/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:35579): IBUS-WARNING **: 13:30:43.835: Failed to mkdir /home/tester/snap/busymark/x4/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:35579): WARNING **: 13:30:44.499: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:35579): WARNING **: 13:30:44.499: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:35974): GLib-GIO-WARNING **: 13:30:49.923: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:35997): GLib-GIO-WARNING **: 13:30:52.547: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/01-verify-gtk-svg-icon-loader.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/01-verify-gtk-svg-icon-loader.sh deleted file mode 100644 index 77917cef..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/01-verify-gtk-svg-icon-loader.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -set -euo pipefail -export RUNNER_TEMP=/home/tester/acceptance -mkdir -p "$RUNNER_TEMP" -snap run --shell busymark -c ' - test ! -e \ - "$SNAP/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/librsvg-2.so.2" - query="$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders" - loader="$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader_svg.so" - "$query" "$loader" | grep -q "\"svg\" 6 \"gdk-pixbuf\"" -' - diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/02-verify-shared-runtimes-packaged-tools-media-and-resources.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/02-verify-shared-runtimes-packaged-tools-media-and-resources.sh deleted file mode 100644 index a39453d5..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/02-verify-shared-runtimes-packaged-tools-media-and-resources.sh +++ /dev/null @@ -1,100 +0,0 @@ -#!/bin/bash -set -euo pipefail -export RUNNER_TEMP=/home/tester/acceptance -mkdir -p "$RUNNER_TEMP" -snap run --shell busymark -c ' - set -eu - inspect_dependencies() { - dependency_object="$1" - if dependency_output="$(ldd "$dependency_object" 2>&1)"; then - : - else - printf "Dependency inspection failed: %s\n%s\n" \ - "$dependency_object" "$dependency_output" >&2 - exit 1 - fi - case "$dependency_output" in - *"not found"*) - printf "Unresolved dependencies: %s\n%s\n" \ - "$dependency_object" "$dependency_output" >&2 - exit 1 - ;; - esac - } - require_resolution() { - required_library="$1" - required_path="$2" - resolved_path="$(printf "%s\n" "$dependency_output" | \ - awk -v name="$required_library" \ - "\$1 == name && \$2 == \"=>\" { print \$3; exit }")" - if [ -z "$resolved_path" ] || \ - ! expected_real="$(readlink -e "$required_path")" || \ - ! resolved_real="$(readlink -e "$resolved_path")" || \ - [ "$resolved_real" != "$expected_real" ]; then - printf "Unexpected resolution for %s in %s; expected %s\n%s\n" \ - "$required_library" "$dependency_object" \ - "$required_path" "$dependency_output" >&2 - exit 1 - fi - } - app_lib="$SNAP/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET" - inspect_dependencies "$SNAP/busymark" - for library in \ - libhandy-1.so.0 libsecret-1.so.0 libwebkit2gtk-4.1.so.0 \ - libgtk-3.so.0 libglib-2.0.so.0 libpango-1.0.so.0; do - test ! -e "$app_lib/$library" - require_resolution "$library" \ - "$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/$library" - done - graphics_lib="$SNAP/gpu-2404/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET" - for library in \ - libX11.so.6 libXdamage.so.1 libXext.so.6 libXfixes.so.3 \ - libxcb-shm.so.0 libxcb.so.1 libwayland-client.so.0 \ - libwayland-cursor.so.0 libwayland-egl.so.1; do - test ! -e "$app_lib/$library" - test -e "$graphics_lib/$library" - require_resolution "$library" "$graphics_lib/$library" - done - for helper in WebKitWebProcess WebKitNetworkProcess WebKitGPUProcess; do - test -x "$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/webkit2gtk-4.1/$helper" - done - test -x "$SNAP/usr/bin/git" - test -x "$SNAP/usr/bin/ssh" - test -x "$SNAP/usr/bin/setsid" - inspect_dependencies "$SNAP/usr/lib/git-core/git-remote-http" - require_resolution libcurl-gnutls.so.4 \ - "$app_lib/libcurl-gnutls.so.4" - GIT_EXEC_PATH="$SNAP/usr/lib/git-core" \ - "$SNAP/usr/bin/git" --exec-path | grep -Fx "$SNAP/usr/lib/git-core" - "$SNAP/usr/bin/ssh" -V - provider_plugins="$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/gstreamer-1.0" - for plugin in libgstavi.so libgstisomp4.so libgstmatroska.so \ - libgstogg.so libgsttheora.so libgstvpx.so; do - test -f "$provider_plugins/$plugin" - inspect_dependencies "$provider_plugins/$plugin" - done - private_plugins="$SNAP/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/gstreamer-1.0" - for plugin in libgstavi.so libgstisomp4.so libgstmatroska.so \ - libgstogg.so libgsttheora.so libgstvpx.so; do - test ! -e "$private_plugins/$plugin" - done - for plugin in libgstlibav.so libgstvideoparsersbad.so \ - libgstmpeg2dec.so; do - test -f "$private_plugins/$plugin" - inspect_dependencies "$private_plugins/$plugin" - done - test -L "$SNAP/share/busymark/fonts" - test "$(readlink "$SNAP/share/busymark/fonts")" = \ - ../../usr/share/fonts/truetype/noto - test -f "$SNAP/share/busymark/fonts/NotoSans-Regular.ttf" - test -f "$SNAP/usr/share/doc/fonts-noto-core/copyright" - test -f "$SNAP/usr/share/doc/fonts-noto-mono/copyright" - for resource_kind in themes icons; do - for resource_name in Yaru Yaru-dark; do - resource="$SNAP/share/$resource_kind/$resource_name" - test -L "$resource" - test -e "$resource" - done - done -' - diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh deleted file mode 100644 index 254f159f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -set -euo pipefail -export RUNNER_TEMP=/home/tester/acceptance -mkdir -p "$RUNNER_TEMP" -report="$HOME/snap/busymark/common/spelling-release.json" -rm -f "$report" -xvfb-run -a -s '-screen 0 1280x1024x24' \ - env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ - LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ - --spelling-release-smoke="$report" -python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert report["checks"]["bundledDictionaryFileCount"] == 0, report; assert report["checks"]["dictionaryInstalledDuringRun"], report; assert report["checks"]["installedDictionaryCount"] == 1, report' "$report" -test -d "$HOME/snap/busymark/common/spelling/dictionaries/downloaded/en-US" -before_revision="$(snap list busymark | awk 'NR == 2 {print $3}')" -sudo snap install --dangerous \ - "/home/tester/package.snap" -after_revision="$(snap list busymark | awk 'NR == 2 {print $3}')" -test -n "$before_revision" -test -n "$after_revision" -test "$before_revision" != "$after_revision" -sudo snap disconnect busymark:network -trap 'sudo snap connect busymark:network >/dev/null' EXIT -xvfb-run -a -s '-screen 0 1280x1024x24' \ - env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ - LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ - --spelling-release-smoke="$report" -python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert not report["checks"]["dictionaryInstalledDuringRun"], report; assert report["checks"]["installedDictionaryCount"] == 1, report; assert report["checks"]["personalWordPresentBeforeRun"], report' "$report" -sudo snap connect busymark:network -trap - EXIT - diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh deleted file mode 100644 index 6c9ff71c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash -set -euo pipefail -export RUNNER_TEMP=/home/tester/acceptance -mkdir -p "$RUNNER_TEMP" -report="$HOME/snap/busymark/common/visualization-release-x11.json" -mkdir -p "$(dirname "$report")" -timeout --signal=TERM 300s \ - xvfb-run -a -s '-screen 0 1280x1024x24' \ - env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ - LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ - --visualization-release-smoke="$report" -python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report' "$report" -test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" - diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh deleted file mode 100644 index a665db7a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -set -euo pipefail -export RUNNER_TEMP=/home/tester/acceptance -mkdir -p "$RUNNER_TEMP" -runtime_dir="/run/user/$(id -u)" -sudo install -d -m 700 -o "$(id -u)" -g "$(id -g)" "$runtime_dir" -XDG_RUNTIME_DIR="$runtime_dir" \ - weston --backend=headless-backend.so --socket=wayland-99 \ - --idle-time=0 --log="${RUNNER_TEMP}/weston-snap.log" & -weston_pid=$! -sudo snap disconnect busymark:network -trap 'sudo snap connect busymark:network >/dev/null; kill "$weston_pid" 2>/dev/null || true' EXIT -for attempt in {1..40}; do - if [ -S "$runtime_dir/wayland-99" ]; then - break - fi - if ! kill -0 "$weston_pid" 2>/dev/null; then - cat "${RUNNER_TEMP}/weston-snap.log" - exit 1 - fi - sleep 0.25 -done -test -S "$runtime_dir/wayland-99" -spelling_report="$HOME/snap/busymark/common/spelling-release-wayland.json" -XDG_RUNTIME_DIR="$runtime_dir" WAYLAND_DISPLAY=wayland-99 \ - GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 \ - LIBGL_ALWAYS_SOFTWARE=1 \ - timeout --signal=TERM 300s snap run busymark \ - --spelling-release-smoke="$spelling_report" -python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert report["checks"]["sourceEditorTransaction"], report; assert report["checks"]["formattedRichEditorTransaction"], report; assert report["checks"]["tableCellEditorTransaction"], report' "$spelling_report" -report="$HOME/snap/busymark/common/visualization-release-wayland.json" -XDG_RUNTIME_DIR="$runtime_dir" WAYLAND_DISPLAY=wayland-99 \ - GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 \ - LIBGL_ALWAYS_SOFTWARE=1 \ - timeout --signal=TERM 300s snap run busymark \ - --visualization-release-smoke="$report" -python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report' "$report" -test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" -sudo snap connect busymark:network -trap 'kill "$weston_pid" 2>/dev/null || true' EXIT diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/README.md b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/README.md deleted file mode 100644 index ac36a41b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/README.md +++ /dev/null @@ -1,72 +0,0 @@ -# Installed strict-Snap acceptance: final KVM run - -The unchanged recipe-built Snap passed all 23 visualization checks on X11 and -Wayland twice after configuring a functioning disposable desktop session. -Spelling passed 20 checks for online installation, refresh/offline X11 restart, -and offline Wayland restart. Wayland visualization also ran with the Snap's -network interface disconnected. `results.json` indexes the successful reports; -`acceptance/installed-identity-final.log` proves the installed bytes, recipe, -runtime revisions, interfaces, and enforced AppArmor profile. - -The guest was Ubuntu 24.04.5, kernel 6.8.0-142, KVM with 4 CPUs/4 GiB. The official -cloud image checksum is in `results.json`. The disposable user was `tester`. -No Nextcloud account or production profile was used in this additional VM. -Browser Login Flow, libsecret/restart, actual uncertain-creation confirmation, -attachment publication and denied-network recovery already passed on this exact -Snap, recorded in the parent evidence directory. - -The numbered shell scripts are the existing `.github/workflows/flutter-linux.yml` -Snap checks. Only its runner temporary directory and selected Snap path are -substituted. They retain every assertion and timeout. The exact installed package -SHA-256 is `2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce`. - -After normal Ubuntu cloud-init setup: - -```sh -sudo snap install --dangerous /home/tester/package.snap -sudo snap connect busymark:password-manager-service -# Use the normal systemd user session, with /run/user/1000/bus. -bash 01-verify-gtk-svg-icon-loader.sh -bash 02-verify-shared-runtimes-packaged-tools-media-and-resources.sh -bash 03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh -``` - -The initial bare VM lacked a desktop activation environment. A private -`dbus-run-session` failed Snap cgroup creation (`acceptance-session-fixture/`). -The normal user session fixed that. Its GTK portal then could not start on a -display and waited repeatedly for service timeouts; the initial X11 render -timed out (`acceptance/04-*/`). The desktop setup was completed with: - -```sh -Xvfb :97 -screen 0 1280x1024x24 -nolisten tcp & -dbus-update-activation-environment --systemd DISPLAY=:97 XDG_CURRENT_DESKTOP=GNOME -mkdir -p ~/.config/xdg-desktop-portal -cp acceptance/portals.conf ~/.config/xdg-desktop-portal/portals.conf -systemctl --user restart xdg-desktop-portal-gtk.service xdg-desktop-portal.service -gdbus call --session --dest org.freedesktop.portal.Desktop \ - --object-path /org/freedesktop/portal/desktop \ - --method org.freedesktop.portal.Settings.Read org.gnome.desktop.interface color-scheme -bash 04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh -bash 05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh -bash repeat-acceptance.sh -``` - -The copied configuration is `acceptance/portals.conf`; the Settings result and -activation environment are beside it. The numbered scripts create their own -X11/Wayland displays. Display :97 keeps the desktop portal available. No AppArmor -rule, application timeout or assertion was relaxed. The experimental -`NO_AT_BRIDGE=1` run is retained separately; both final runs and repeats omit it. -The new fixture failures do not establish the cause of every older TCG error. -`snap-acceptance-before-kvm.json` preserves that earlier incomplete status. - -`acceptance/rendered-exports.tar.gz` contains the resulting HTML/PDF exports; -each successful backend directory also contains its PDF. `status.tsv` retains -both initial failed and subsequent successful exit statuses. The configured X11 -run is recorded by its successful report and command log; the repeat took 10s. -The configured Wayland sequence took 16s and its repeat took 18s. - -Public CI publication was approved but the GitHub connector returned 403 and -existing SSH authentication failed. `public-ci-access.json` records that -unavailable route; no remote branch, PR, upload or CI success is claimed. -The authorized VM completed acceptance. Private VM keys, disks and Snap cookies -are excluded, and the VM is destroyed after evidence collection. diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log deleted file mode 100644 index 2c007245..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log +++ /dev/null @@ -1 +0,0 @@ -/user.slice/user-1000.slice/session-14.scope is not a snap cgroup for tag snap.busymark.busymark diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/status.tsv b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/status.tsv deleted file mode 100644 index 520bb357..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance-session-fixture/status.tsv +++ /dev/null @@ -1 +0,0 @@ -01-verify-gtk-svg-icon-loader 1 0 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log deleted file mode 100644 index 77cd5475..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log +++ /dev/null @@ -1,6 +0,0 @@ -Warning: Schema “org.gnome.system.locale” has path “/system/locale/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy” has path “/system/proxy/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.http” has path “/system/proxy/http/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.https” has path “/system/proxy/https/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.ftp” has path “/system/proxy/ftp/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.socks” has path “/system/proxy/socks/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log deleted file mode 100644 index cf9a5ee6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log +++ /dev/null @@ -1,2 +0,0 @@ -/snap/busymark/x1/usr/lib/git-core -OpenSSH_9.6p1 Ubuntu-3ubuntu13.19, OpenSSL 3.0.13 30 Jan 2024 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log deleted file mode 100644 index 56314a09..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log +++ /dev/null @@ -1,35 +0,0 @@ - -(io.busystack.busymark:8399): dbind-WARNING **: 18:42:59.218: AT-SPI: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.7" (uid=1000 pid=8399 comm="/snap/busymark/x1/busymark --spelling-release-smok" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) - -(io.busystack.busymark:8399): Atk-CRITICAL **: 18:43:24.845: atk_socket_embed: assertion 'plug_id != NULL' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:8399): IBUS-WARNING **: 18:43:50.686: Failed to mkdir /home/tester/snap/busymark/x1/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:8399): WARNING **: 18:43:50.771: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:8399): WARNING **: 18:43:50.771: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied -Can't find a11y bus: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.6" (uid=1000 pid=8399 comm="/snap/busymark/x1/busymark --spelling-release-smok" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) - -** (process:8593): ERROR **: 18:44:32.833: WebProcess didn't exit as expected after the UI process connection was closed -busymark 0.6.1 installed -Warning: Schema “org.gnome.system.locale” has path “/system/locale/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy” has path “/system/proxy/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.http” has path “/system/proxy/http/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.https” has path “/system/proxy/https/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.ftp” has path “/system/proxy/ftp/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.socks” has path “/system/proxy/socks/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. - -(io.busystack.busymark:9265): dbind-WARNING **: 18:44:48.412: AT-SPI: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.14" (uid=1000 pid=9265 comm="/snap/busymark/x2/busymark --spelling-release-smok" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) - -(io.busystack.busymark:9265): Atk-CRITICAL **: 18:44:59.561: atk_socket_embed: assertion 'plug_id != NULL' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:9265): IBUS-WARNING **: 18:45:25.166: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:9265): WARNING **: 18:45:25.220: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:9265): WARNING **: 18:45:25.220: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied -Can't find a11y bus: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.13" (uid=1000 pid=9265 comm="/snap/busymark/x2/busymark --spelling-release-smok" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) - -** (process:9704): ERROR **: 18:46:04.611: WebProcess didn't exit as expected after the UI process connection was closed diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/spelling-release.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/spelling-release.json deleted file mode 100644 index 325a720e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/spelling-release.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/snap/busymark/x2/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": false, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": true - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log deleted file mode 100644 index 92500754..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log +++ /dev/null @@ -1,12 +0,0 @@ - -(io.busystack.busymark:9929): dbind-WARNING **: 18:45:55.634: AT-SPI: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.21" (uid=1000 pid=9929 comm="/snap/busymark/x2/busymark --visualization-release" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) - -(io.busystack.busymark:9929): Atk-CRITICAL **: 18:46:20.793: atk_socket_embed: assertion 'plug_id != NULL' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:9929): IBUS-WARNING **: 18:46:45.933: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:9929): WARNING **: 18:46:45.963: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:9929): WARNING **: 18:46:45.963: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied -Can't find a11y bus: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.20" (uid=1000 pid=9929 comm="/snap/busymark/x2/busymark --visualization-release" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/spelling-release.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/spelling-release.json deleted file mode 100644 index 325a720e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/spelling-release.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/snap/busymark/x2/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": false, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": true - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/visualization-release-x11.json deleted file mode 100644 index 4db394ed..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/visualization-release-x11.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":false,"checks":{},"error":"TimeoutException after 0:00:45.000000: Future not completed","stackTrace":"#0 Future.timeout. (dart:async/future_impl.dart:1042)\n\n#1 PlatformWebRenderHost._invokeCancellable (package:busymark/src/visualization/web_render_host.dart:292)\n\n#2 PlatformWebRenderHost._invokeMap (package:busymark/src/visualization/web_render_host.dart:261)\n\n#3 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:74)\n\n#4 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-environment.txt b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-environment.txt deleted file mode 100644 index 3a178107..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-environment.txt +++ /dev/null @@ -1,2 +0,0 @@ -DISPLAY=:97 -XDG_CURRENT_DESKTOP=GNOME diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-xvfb.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-xvfb.log deleted file mode 100644 index d1c38491..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/desktop-xvfb.log +++ /dev/null @@ -1,19 +0,0 @@ -The XKEYBOARD keymap compiler (xkbcomp) reports: -> Warning: Could not resolve keysym XF86CameraAccessEnable -> Warning: Could not resolve keysym XF86CameraAccessDisable -> Warning: Could not resolve keysym XF86CameraAccessToggle -> Warning: Could not resolve keysym XF86NextElement -> Warning: Could not resolve keysym XF86PreviousElement -> Warning: Could not resolve keysym XF86AutopilotEngageToggle -> Warning: Could not resolve keysym XF86MarkWaypoint -> Warning: Could not resolve keysym XF86Sos -> Warning: Could not resolve keysym XF86NavChart -> Warning: Could not resolve keysym XF86FishingChart -> Warning: Could not resolve keysym XF86SingleRangeRadar -> Warning: Could not resolve keysym XF86DualRangeRadar -> Warning: Could not resolve keysym XF86RadarOverlay -> Warning: Could not resolve keysym XF86TraditionalSonar -> Warning: Could not resolve keysym XF86ClearvuSonar -> Warning: Could not resolve keysym XF86SidevuSonar -> Warning: Could not resolve keysym XF86NavInfo -Errors from xkbcomp are not fatal to the X server diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity-final.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity-final.log deleted file mode 100644 index b97c545a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity-final.log +++ /dev/null @@ -1,59 +0,0 @@ -2026-10-07T18:56:34+00:00 -PRETTY_NAME="Ubuntu 24.04.5 LTS" -NAME="Ubuntu" -VERSION_ID="24.04" -VERSION="24.04.5 LTS (Noble Numbat)" -VERSION_CODENAME=noble -ID=ubuntu -ID_LIKE=debian -HOME_URL="https://www.ubuntu.com/" -SUPPORT_URL="https://help.ubuntu.com/" -BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" -PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" -UBUNTU_CODENAME=noble -LOGO=ubuntu-logo -Linux busymark-adoption-kvm 6.8.0-142-generic #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux -kvm -CPU(s): 4 -Model name: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz -Hypervisor vendor: KVM -Virtualization type: full -snap 2.77.1 -snapd 2.77.1 -series 16 -ubuntu 24.04 -kernel 6.8.0-142-generic -architecture amd64 -Name Version Rev Tracking Publisher Notes -bare 1.0 5 latest/stable canonical** base -busymark 0.6.1 x2 - - - -core24 20260824 2124 latest/stable canonical** base -gnome-46-2404 0+git.b31ceab-sdk0+git.f80dd8b 168 latest/stable canonical** - -gtk-common-themes 0.1-81-g442e511 1535 latest/stable canonical** - -mesa-2404 25.2.8-snap288 1839 latest/stable canonical** - -snapd 2.77.1 28254 latest/stable canonical** snapd -Interface Plug Slot Notes -audio-playback busymark:audio-playback :audio-playback - -browser-support busymark:browser-support :browser-support - -content[gnome-46-2404] busymark:gnome-46-2404 gnome-46-2404:gnome-46-2404 - -content[gpu-2404] busymark:gpu-2404 mesa-2404:gpu-2404 - -content[gtk-3-themes] busymark:gtk-3-themes gtk-common-themes:gtk-3-themes - -content[icon-themes] busymark:icon-themes gtk-common-themes:icon-themes - -content[sound-themes] busymark:sound-themes gtk-common-themes:sound-themes - -desktop busymark:desktop :desktop - -desktop-legacy busymark:desktop-legacy :desktop-legacy - -gsettings busymark:gsettings :gsettings - -home busymark:home :home - -network busymark:network :network manual -opengl busymark:opengl :opengl - -password-manager-service busymark:password-manager-service :password-manager-service manual -removable-media busymark:removable-media - - -ssh-keys busymark:ssh-keys - - -wayland busymark:wayland :wayland - -x11 busymark:x11 :x11 - -/var/lib/snapd/snaps/busymark_x2.snap: OK -snap.busymark.busymark (enforce) -Installed embedded recipe SHA-256: c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d -/snap/busymark/x2/gnome-platform/usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.1.so.0.21.10 -82f152048842ffcd0a70d08d12df10bf9b24da4b230f971c692ec781019dbef9 /snap/busymark/x2/busymark -87acd7e0dc6ebe33a6c06a9d57d22954cfb5db18e7e99a2537908055ee7e8013 /snap/busymark/x2/lib/libapp.so diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity.log deleted file mode 100644 index faef690c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/installed-identity.log +++ /dev/null @@ -1,59 +0,0 @@ -2026-10-07T18:46:53+00:00 -PRETTY_NAME="Ubuntu 24.04.5 LTS" -NAME="Ubuntu" -VERSION_ID="24.04" -VERSION="24.04.5 LTS (Noble Numbat)" -VERSION_CODENAME=noble -ID=ubuntu -ID_LIKE=debian -HOME_URL="https://www.ubuntu.com/" -SUPPORT_URL="https://help.ubuntu.com/" -BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" -PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" -UBUNTU_CODENAME=noble -LOGO=ubuntu-logo -Linux busymark-adoption-kvm 6.8.0-142-generic #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux -kvm -CPU(s): 4 -Model name: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz -Hypervisor vendor: KVM -Virtualization type: full -snap 2.77.1 -snapd 2.77.1 -series 16 -ubuntu 24.04 -kernel 6.8.0-142-generic -architecture amd64 -Name Version Rev Tracking Publisher Notes -bare 1.0 5 latest/stable canonical** base -busymark 0.6.1 x2 - - - -core24 20260824 2124 latest/stable canonical** base -gnome-46-2404 0+git.b31ceab-sdk0+git.f80dd8b 168 latest/stable canonical** - -gtk-common-themes 0.1-81-g442e511 1535 latest/stable canonical** - -mesa-2404 25.2.8-snap288 1839 latest/stable canonical** - -snapd 2.77.1 28254 latest/stable canonical** snapd -Interface Plug Slot Notes -audio-playback busymark:audio-playback :audio-playback - -browser-support busymark:browser-support :browser-support - -content[gnome-46-2404] busymark:gnome-46-2404 gnome-46-2404:gnome-46-2404 - -content[gpu-2404] busymark:gpu-2404 mesa-2404:gpu-2404 - -content[gtk-3-themes] busymark:gtk-3-themes gtk-common-themes:gtk-3-themes - -content[icon-themes] busymark:icon-themes gtk-common-themes:icon-themes - -content[sound-themes] busymark:sound-themes gtk-common-themes:sound-themes - -desktop busymark:desktop :desktop - -desktop-legacy busymark:desktop-legacy :desktop-legacy - -gsettings busymark:gsettings :gsettings - -home busymark:home :home - -network busymark:network :network manual -opengl busymark:opengl :opengl - -password-manager-service busymark:password-manager-service :password-manager-service manual -removable-media busymark:removable-media - - -ssh-keys busymark:ssh-keys - - -wayland busymark:wayland :wayland - -x11 busymark:x11 :x11 - -/var/lib/snapd/snaps/busymark_x2.snap: OK -snap.busymark.busymark (enforce) -Installed embedded recipe SHA-256: c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d -/snap/busymark/x2/gnome-platform/usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.1.so.0.21.10 -82f152048842ffcd0a70d08d12df10bf9b24da4b230f971c692ec781019dbef9 /snap/busymark/x2/busymark -87acd7e0dc6ebe33a6c06a9d57d22954cfb5db18e7e99a2537908055ee7e8013 /snap/busymark/x2/lib/libapp.so diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/kernel-audit.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/kernel-audit.log deleted file mode 100644 index b9ffdb0a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/kernel-audit.log +++ /dev/null @@ -1,1009 +0,0 @@ -Oct 07 18:36:06 ubuntu kernel: Linux version 6.8.0-142-generic (buildd@lcy02-amd64-049) (x86_64-linux-gnu-gcc-13 (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0, GNU ld (GNU Binutils for Ubuntu) 2.42) #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026 (Ubuntu 6.8.0-142.142-generic 6.8.12) -Oct 07 18:36:06 ubuntu kernel: Command line: BOOT_IMAGE=/vmlinuz-6.8.0-142-generic root=LABEL=cloudimg-rootfs ro console=tty1 console=ttyS0 -Oct 07 18:36:06 ubuntu kernel: KERNEL supported cpus: -Oct 07 18:36:06 ubuntu kernel: Intel GenuineIntel -Oct 07 18:36:06 ubuntu kernel: AMD AuthenticAMD -Oct 07 18:36:06 ubuntu kernel: Hygon HygonGenuine -Oct 07 18:36:06 ubuntu kernel: Centaur CentaurHauls -Oct 07 18:36:06 ubuntu kernel: zhaoxin Shanghai -Oct 07 18:36:06 ubuntu kernel: BIOS-provided physical RAM map: -Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable -Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reserved -Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved -Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x0000000000100000-0x00000000bffdcfff] usable -Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x00000000bffdd000-0x00000000bfffffff] reserved -Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x00000000feffc000-0x00000000feffffff] reserved -Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved -Oct 07 18:36:06 ubuntu kernel: BIOS-e820: [mem 0x0000000100000000-0x000000013fffffff] usable -Oct 07 18:36:06 ubuntu kernel: NX (Execute Disable) protection: active -Oct 07 18:36:06 ubuntu kernel: APIC: Static calls initialized -Oct 07 18:36:06 ubuntu kernel: SMBIOS 3.0.0 present. -Oct 07 18:36:06 ubuntu kernel: DMI: QEMU Ubuntu 24.04 PC v2 (i440FX + PIIX, arch_caps fix, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 -Oct 07 18:36:06 ubuntu kernel: Hypervisor detected: KVM -Oct 07 18:36:06 ubuntu kernel: kvm-clock: Using msrs 4b564d01 and 4b564d00 -Oct 07 18:36:06 ubuntu kernel: kvm-clock: using sched offset of 2005542894 cycles -Oct 07 18:36:06 ubuntu kernel: clocksource: kvm-clock: mask: 0xffffffffffffffff max_cycles: 0x1cd42e4dffb, max_idle_ns: 881590591483 ns -Oct 07 18:36:06 ubuntu kernel: tsc: Detected 3599.892 MHz processor -Oct 07 18:36:06 ubuntu kernel: e820: update [mem 0x00000000-0x00000fff] usable ==> reserved -Oct 07 18:36:06 ubuntu kernel: e820: remove [mem 0x000a0000-0x000fffff] usable -Oct 07 18:36:06 ubuntu kernel: last_pfn = 0x140000 max_arch_pfn = 0x400000000 -Oct 07 18:36:06 ubuntu kernel: MTRR map: 4 entries (3 fixed + 1 variable; max 19), built from 8 variable MTRRs -Oct 07 18:36:06 ubuntu kernel: x86/PAT: Configuration [0-7]: WB WC UC- UC WB WP UC- WT -Oct 07 18:36:06 ubuntu kernel: last_pfn = 0xbffdd max_arch_pfn = 0x400000000 -Oct 07 18:36:06 ubuntu kernel: found SMP MP-table at [mem 0x000f5470-0x000f547f] -Oct 07 18:36:06 ubuntu kernel: Using GB pages for direct mapping -Oct 07 18:36:06 ubuntu kernel: RAMDISK: [mem 0x3455f000-0x362a6fff] -Oct 07 18:36:06 ubuntu kernel: ACPI: Early table checksum verification disabled -Oct 07 18:36:06 ubuntu kernel: ACPI: RSDP 0x00000000000F5260 000014 (v00 BOCHS ) -Oct 07 18:36:06 ubuntu kernel: ACPI: RSDT 0x00000000BFFE1D6F 000034 (v01 BOCHS BXPC 00000001 BXPC 00000001) -Oct 07 18:36:06 ubuntu kernel: ACPI: FACP 0x00000000BFFE1C0B 000074 (v01 BOCHS BXPC 00000001 BXPC 00000001) -Oct 07 18:36:06 ubuntu kernel: ACPI: DSDT 0x00000000BFFE0040 001BCB (v01 BOCHS BXPC 00000001 BXPC 00000001) -Oct 07 18:36:06 ubuntu kernel: ACPI: FACS 0x00000000BFFE0000 000040 -Oct 07 18:36:06 ubuntu kernel: ACPI: APIC 0x00000000BFFE1C7F 000090 (v03 BOCHS BXPC 00000001 BXPC 00000001) -Oct 07 18:36:06 ubuntu kernel: ACPI: HPET 0x00000000BFFE1D0F 000038 (v01 BOCHS BXPC 00000001 BXPC 00000001) -Oct 07 18:36:06 ubuntu kernel: ACPI: WAET 0x00000000BFFE1D47 000028 (v01 BOCHS BXPC 00000001 BXPC 00000001) -Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving FACP table memory at [mem 0xbffe1c0b-0xbffe1c7e] -Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving DSDT table memory at [mem 0xbffe0040-0xbffe1c0a] -Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving FACS table memory at [mem 0xbffe0000-0xbffe003f] -Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving APIC table memory at [mem 0xbffe1c7f-0xbffe1d0e] -Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving HPET table memory at [mem 0xbffe1d0f-0xbffe1d46] -Oct 07 18:36:06 ubuntu kernel: ACPI: Reserving WAET table memory at [mem 0xbffe1d47-0xbffe1d6e] -Oct 07 18:36:06 ubuntu kernel: No NUMA configuration found -Oct 07 18:36:06 ubuntu kernel: Faking a node at [mem 0x0000000000000000-0x000000013fffffff] -Oct 07 18:36:06 ubuntu kernel: NODE_DATA(0) allocated [mem 0x13ffd3000-0x13fffdfff] -Oct 07 18:36:06 ubuntu kernel: Zone ranges: -Oct 07 18:36:06 ubuntu kernel: DMA [mem 0x0000000000001000-0x0000000000ffffff] -Oct 07 18:36:06 ubuntu kernel: DMA32 [mem 0x0000000001000000-0x00000000ffffffff] -Oct 07 18:36:06 ubuntu kernel: Normal [mem 0x0000000100000000-0x000000013fffffff] -Oct 07 18:36:06 ubuntu kernel: Device empty -Oct 07 18:36:06 ubuntu kernel: Movable zone start for each node -Oct 07 18:36:06 ubuntu kernel: Early memory node ranges -Oct 07 18:36:06 ubuntu kernel: node 0: [mem 0x0000000000001000-0x000000000009efff] -Oct 07 18:36:06 ubuntu kernel: node 0: [mem 0x0000000000100000-0x00000000bffdcfff] -Oct 07 18:36:06 ubuntu kernel: node 0: [mem 0x0000000100000000-0x000000013fffffff] -Oct 07 18:36:06 ubuntu kernel: Initmem setup node 0 [mem 0x0000000000001000-0x000000013fffffff] -Oct 07 18:36:06 ubuntu kernel: On node 0, zone DMA: 1 pages in unavailable ranges -Oct 07 18:36:06 ubuntu kernel: On node 0, zone DMA: 97 pages in unavailable ranges -Oct 07 18:36:06 ubuntu kernel: On node 0, zone Normal: 35 pages in unavailable ranges -Oct 07 18:36:06 ubuntu kernel: ACPI: PM-Timer IO Port: 0x608 -Oct 07 18:36:06 ubuntu kernel: ACPI: LAPIC_NMI (acpi_id[0xff] dfl dfl lint[0x1]) -Oct 07 18:36:06 ubuntu kernel: IOAPIC[0]: apic_id 0, version 17, address 0xfec00000, GSI 0-23 -Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) -Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level) -Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level) -Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level) -Oct 07 18:36:06 ubuntu kernel: ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level) -Oct 07 18:36:06 ubuntu kernel: ACPI: Using ACPI (MADT) for SMP configuration information -Oct 07 18:36:06 ubuntu kernel: ACPI: HPET id: 0x8086a201 base: 0xfed00000 -Oct 07 18:36:06 ubuntu kernel: TSC deadline timer available -Oct 07 18:36:06 ubuntu kernel: smpboot: Allowing 4 CPUs, 0 hotplug CPUs -Oct 07 18:36:06 ubuntu kernel: kvm-guest: APIC: eoi() replaced with kvm_guest_apic_eoi_write() -Oct 07 18:36:06 ubuntu kernel: kvm-guest: KVM setup pv remote TLB flush -Oct 07 18:36:06 ubuntu kernel: kvm-guest: setup PV sched yield -Oct 07 18:36:06 ubuntu kernel: PM: hibernation: Registered nosave memory: [mem 0x00000000-0x00000fff] -Oct 07 18:36:06 ubuntu kernel: PM: hibernation: Registered nosave memory: [mem 0x0009f000-0x000fffff] -Oct 07 18:36:06 ubuntu kernel: PM: hibernation: Registered nosave memory: [mem 0xbffdd000-0xffffffff] -Oct 07 18:36:06 ubuntu kernel: [mem 0xc0000000-0xfeffbfff] available for PCI devices -Oct 07 18:36:06 ubuntu kernel: Booting paravirtualized kernel on KVM -Oct 07 18:36:06 ubuntu kernel: clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1910969940391419 ns -Oct 07 18:36:06 ubuntu kernel: setup_percpu: NR_CPUS:8192 nr_cpumask_bits:4 nr_cpu_ids:4 nr_node_ids:1 -Oct 07 18:36:06 ubuntu kernel: percpu: Embedded 86 pages/cpu s229376 r8192 d114688 u524288 -Oct 07 18:36:06 ubuntu kernel: pcpu-alloc: s229376 r8192 d114688 u524288 alloc=1*2097152 -Oct 07 18:36:06 ubuntu kernel: pcpu-alloc: [0] 0 1 2 3 -Oct 07 18:36:06 ubuntu kernel: kvm-guest: PV spinlocks enabled -Oct 07 18:36:06 ubuntu kernel: PV qspinlock hash table entries: 256 (order: 0, 4096 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: Kernel command line: BOOT_IMAGE=/vmlinuz-6.8.0-142-generic root=LABEL=cloudimg-rootfs ro console=tty1 console=ttyS0 -Oct 07 18:36:06 ubuntu kernel: random: crng init done -Oct 07 18:36:06 ubuntu kernel: Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: Fallback order for Node 0: 0 -Oct 07 18:36:06 ubuntu kernel: Built 1 zonelists, mobility grouping on. Total pages: 1031901 -Oct 07 18:36:06 ubuntu kernel: Policy zone: Normal -Oct 07 18:36:06 ubuntu kernel: mem auto-init: stack:all(zero), heap alloc:on, heap free:off -Oct 07 18:36:06 ubuntu kernel: software IO TLB: area num 4. -Oct 07 18:36:06 ubuntu kernel: Memory: 3969952K/4193772K available (22528K kernel code, 4441K rwdata, 14428K rodata, 4932K init, 4776K bss, 223560K reserved, 0K cma-reserved) -Oct 07 18:36:06 ubuntu kernel: SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 -Oct 07 18:36:06 ubuntu kernel: ftrace: allocating 58336 entries in 228 pages -Oct 07 18:36:06 ubuntu kernel: ftrace: allocated 228 pages with 4 groups -Oct 07 18:36:06 ubuntu kernel: Dynamic Preempt: voluntary -Oct 07 18:36:06 ubuntu kernel: rcu: Preemptible hierarchical RCU implementation. -Oct 07 18:36:06 ubuntu kernel: rcu: RCU restricting CPUs from NR_CPUS=8192 to nr_cpu_ids=4. -Oct 07 18:36:06 ubuntu kernel: Trampoline variant of Tasks RCU enabled. -Oct 07 18:36:06 ubuntu kernel: Rude variant of Tasks RCU enabled. -Oct 07 18:36:06 ubuntu kernel: Tracing variant of Tasks RCU enabled. -Oct 07 18:36:06 ubuntu kernel: rcu: RCU calculated value of scheduler-enlistment delay is 100 jiffies. -Oct 07 18:36:06 ubuntu kernel: rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4 -Oct 07 18:36:06 ubuntu kernel: RCU Tasks: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4. -Oct 07 18:36:06 ubuntu kernel: RCU Tasks Rude: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4. -Oct 07 18:36:06 ubuntu kernel: RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4. -Oct 07 18:36:06 ubuntu kernel: NR_IRQS: 524544, nr_irqs: 456, preallocated irqs: 16 -Oct 07 18:36:06 ubuntu kernel: rcu: srcu_init: Setting srcu_struct sizes based on contention. -Oct 07 18:36:06 ubuntu kernel: Console: colour VGA+ 80x25 -Oct 07 18:36:06 ubuntu kernel: printk: legacy console [tty1] enabled -Oct 07 18:36:06 ubuntu kernel: printk: legacy console [ttyS0] enabled -Oct 07 18:36:06 ubuntu kernel: ACPI: Core revision 20230628 -Oct 07 18:36:06 ubuntu kernel: clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604467 ns -Oct 07 18:36:06 ubuntu kernel: APIC: Switch to symmetric I/O mode setup -Oct 07 18:36:06 ubuntu kernel: x2apic enabled -Oct 07 18:36:06 ubuntu kernel: APIC: Switched APIC routing to: physical x2apic -Oct 07 18:36:06 ubuntu kernel: kvm-guest: APIC: send_IPI_mask() replaced with kvm_send_ipi_mask() -Oct 07 18:36:06 ubuntu kernel: kvm-guest: APIC: send_IPI_mask_allbutself() replaced with kvm_send_ipi_mask_allbutself() -Oct 07 18:36:06 ubuntu kernel: kvm-guest: setup PV IPIs -Oct 07 18:36:06 ubuntu kernel: ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1 -Oct 07 18:36:06 ubuntu kernel: clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles: 0x33e3ed16497, max_idle_ns: 440795313184 ns -Oct 07 18:36:06 ubuntu kernel: Calibrating delay loop (skipped) preset value.. 7199.78 BogoMIPS (lpj=3599892) -Oct 07 18:36:06 ubuntu kernel: x86/cpu: User Mode Instruction Prevention (UMIP) activated -Oct 07 18:36:06 ubuntu kernel: Last level iTLB entries: 4KB 0, 2MB 0, 4MB 0 -Oct 07 18:36:06 ubuntu kernel: Last level dTLB entries: 4KB 0, 2MB 0, 4MB 0, 1GB 0 -Oct 07 18:36:06 ubuntu kernel: Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization -Oct 07 18:36:06 ubuntu kernel: Spectre V2 : Spectre BHI mitigation: SW BHB clearing on vm exit -Oct 07 18:36:06 ubuntu kernel: Spectre V2 : Spectre BHI mitigation: SW BHB clearing on syscall -Oct 07 18:36:06 ubuntu kernel: Spectre V2 : Mitigation: IBRS -Oct 07 18:36:06 ubuntu kernel: Spectre V2 : Spectre v2 / SpectreRSB: Filling RSB on context switch and VMEXIT -Oct 07 18:36:06 ubuntu kernel: RETBleed: Mitigation: IBRS -Oct 07 18:36:06 ubuntu kernel: Spectre V2 : mitigation: Enabling conditional Indirect Branch Prediction Barrier -Oct 07 18:36:06 ubuntu kernel: Speculative Store Bypass: Mitigation: Speculative Store Bypass disabled via prctl -Oct 07 18:36:06 ubuntu kernel: MDS: Mitigation: Clear CPU buffers -Oct 07 18:36:06 ubuntu kernel: MMIO Stale Data: Mitigation: Clear CPU buffers -Oct 07 18:36:06 ubuntu kernel: SRBDS: Unknown: Dependent on hypervisor status -Oct 07 18:36:06 ubuntu kernel: GDS: Unknown: Dependent on hypervisor status -Oct 07 18:36:06 ubuntu kernel: active return thunk: its_return_thunk -Oct 07 18:36:06 ubuntu kernel: ITS: Mitigation: Aligned branch/return thunks -Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers' -Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers' -Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers' -Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x008: 'MPX bounds registers' -Oct 07 18:36:06 ubuntu kernel: x86/fpu: Supporting XSAVE feature 0x010: 'MPX CSR' -Oct 07 18:36:06 ubuntu kernel: x86/fpu: xstate_offset[2]: 576, xstate_sizes[2]: 256 -Oct 07 18:36:06 ubuntu kernel: x86/fpu: xstate_offset[3]: 832, xstate_sizes[3]: 64 -Oct 07 18:36:06 ubuntu kernel: x86/fpu: xstate_offset[4]: 896, xstate_sizes[4]: 64 -Oct 07 18:36:06 ubuntu kernel: x86/fpu: Enabled xstate features 0x1f, context size is 960 bytes, using 'compacted' format. -Oct 07 18:36:06 ubuntu kernel: Freeing SMP alternatives memory: 48K -Oct 07 18:36:06 ubuntu kernel: pid_max: default: 32768 minimum: 301 -Oct 07 18:36:06 ubuntu kernel: LSM: initializing lsm=lockdown,capability,landlock,yama,apparmor,integrity -Oct 07 18:36:06 ubuntu kernel: landlock: Up and running. -Oct 07 18:36:06 ubuntu kernel: Yama: becoming mindful. -Oct 07 18:36:06 ubuntu kernel: AppArmor: AppArmor initialized -Oct 07 18:36:06 ubuntu kernel: Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: smpboot: CPU0: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz (family: 0x6, model: 0x9e, stepping: 0xc) -Oct 07 18:36:06 ubuntu kernel: Performance Events: Skylake events, full-width counters, Intel PMU driver. -Oct 07 18:36:06 ubuntu kernel: ... version: 2 -Oct 07 18:36:06 ubuntu kernel: ... bit width: 48 -Oct 07 18:36:06 ubuntu kernel: ... generic registers: 4 -Oct 07 18:36:06 ubuntu kernel: ... value mask: 0000ffffffffffff -Oct 07 18:36:06 ubuntu kernel: ... max period: 00007fffffffffff -Oct 07 18:36:06 ubuntu kernel: ... fixed-purpose events: 3 -Oct 07 18:36:06 ubuntu kernel: ... event mask: 000000070000000f -Oct 07 18:36:06 ubuntu kernel: signal: max sigframe size: 2032 -Oct 07 18:36:06 ubuntu kernel: rcu: Hierarchical SRCU implementation. -Oct 07 18:36:06 ubuntu kernel: rcu: Max phase no-delay instances is 400. -Oct 07 18:36:06 ubuntu kernel: smp: Bringing up secondary CPUs ... -Oct 07 18:36:06 ubuntu kernel: smpboot: x86: Booting SMP configuration: -Oct 07 18:36:06 ubuntu kernel: .... node #0, CPUs: #1 #2 #3 -Oct 07 18:36:06 ubuntu kernel: smp: Brought up 1 node, 4 CPUs -Oct 07 18:36:06 ubuntu kernel: smpboot: Max logical packages: 1 -Oct 07 18:36:06 ubuntu kernel: smpboot: Total of 4 processors activated (28799.13 BogoMIPS) -Oct 07 18:36:06 ubuntu kernel: devtmpfs: initialized -Oct 07 18:36:06 ubuntu kernel: x86/mm: Memory block size: 128MB -Oct 07 18:36:06 ubuntu kernel: clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns -Oct 07 18:36:06 ubuntu kernel: futex hash table entries: 1024 (order: 4, 65536 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: pinctrl core: initialized pinctrl subsystem -Oct 07 18:36:06 ubuntu kernel: PM: RTC time: 18:36:02, date: 2026-10-07 -Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_NETLINK/PF_ROUTE protocol family -Oct 07 18:36:06 ubuntu kernel: DMA: preallocated 512 KiB GFP_KERNEL pool for atomic allocations -Oct 07 18:36:06 ubuntu kernel: DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations -Oct 07 18:36:06 ubuntu kernel: DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations -Oct 07 18:36:06 ubuntu kernel: audit: initializing netlink subsys (disabled) -Oct 07 18:36:06 ubuntu kernel: audit: type=2000 audit(1791398163.503:1): state=initialized audit_enabled=0 res=1 -Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'fair_share' -Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'bang_bang' -Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'step_wise' -Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'user_space' -Oct 07 18:36:06 ubuntu kernel: thermal_sys: Registered thermal governor 'power_allocator' -Oct 07 18:36:06 ubuntu kernel: cpuidle: using governor ladder -Oct 07 18:36:06 ubuntu kernel: cpuidle: using governor menu -Oct 07 18:36:06 ubuntu kernel: acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 -Oct 07 18:36:06 ubuntu kernel: PCI: Using configuration type 1 for base access -Oct 07 18:36:06 ubuntu kernel: kprobes: kprobe jump-optimization is enabled. All kprobes are optimized if possible. -Oct 07 18:36:06 ubuntu kernel: HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages -Oct 07 18:36:06 ubuntu kernel: HugeTLB: 16380 KiB vmemmap can be freed for a 1.00 GiB page -Oct 07 18:36:06 ubuntu kernel: HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages -Oct 07 18:36:06 ubuntu kernel: HugeTLB: 28 KiB vmemmap can be freed for a 2.00 MiB page -Oct 07 18:36:06 ubuntu kernel: ACPI: Added _OSI(Module Device) -Oct 07 18:36:06 ubuntu kernel: ACPI: Added _OSI(Processor Device) -Oct 07 18:36:06 ubuntu kernel: ACPI: Added _OSI(Processor Aggregator Device) -Oct 07 18:36:06 ubuntu kernel: ACPI: 1 ACPI AML tables successfully acquired and loaded -Oct 07 18:36:06 ubuntu kernel: ACPI: _OSC evaluation for CPUs failed, trying _PDC -Oct 07 18:36:06 ubuntu kernel: ACPI: Interpreter enabled -Oct 07 18:36:06 ubuntu kernel: ACPI: PM: (supports S0 S3 S4 S5) -Oct 07 18:36:06 ubuntu kernel: ACPI: Using IOAPIC for interrupt routing -Oct 07 18:36:06 ubuntu kernel: PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug -Oct 07 18:36:06 ubuntu kernel: PCI: Using E820 reservations for host bridge windows -Oct 07 18:36:06 ubuntu kernel: ACPI: Enabled 2 GPEs in block 00 to 0F -Oct 07 18:36:06 ubuntu kernel: ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) -Oct 07 18:36:06 ubuntu kernel: acpi PNP0A03:00: _OSC: OS supports [ASPM ClockPM Segments MSI EDR HPX-Type3] -Oct 07 18:36:06 ubuntu kernel: acpi PNP0A03:00: _OSC: not requesting OS control; OS requires [ExtendedConfig ASPM ClockPM MSI] -Oct 07 18:36:06 ubuntu kernel: acpi PNP0A03:00: fail to add MMCONFIG information, can't access extended configuration space under this bridge -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [3] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [4] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [5] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [6] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [7] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [8] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [9] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [10] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [11] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [12] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [13] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [14] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [15] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [16] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [17] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [18] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [19] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [20] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [21] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [22] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [23] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [24] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [25] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [26] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [27] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [28] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [29] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [30] registered -Oct 07 18:36:06 ubuntu kernel: acpiphp: Slot [31] registered -Oct 07 18:36:06 ubuntu kernel: PCI host bridge to bus 0000:00 -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7 window] -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [io 0x0d00-0xffff window] -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window] -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [mem 0xc0000000-0xfebfffff window] -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [mem 0x7000000000-0x707fffffff window] -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: root bus resource [bus 00-ff] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:00.0: [8086:1237] type 00 class 0x060000 conventional PCI endpoint -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.0: [8086:7000] type 00 class 0x060100 conventional PCI endpoint -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: [8086:7010] type 00 class 0x010180 conventional PCI endpoint -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 4 [io 0xc0a0-0xc0af] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 0 [io 0x01f0-0x01f7]: legacy IDE quirk -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 1 [io 0x03f6]: legacy IDE quirk -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 2 [io 0x0170-0x0177]: legacy IDE quirk -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.1: BAR 3 [io 0x0376]: legacy IDE quirk -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.3: [8086:7113] type 00 class 0x068000 conventional PCI endpoint -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.3: quirk: [io 0x0600-0x063f] claimed by PIIX4 ACPI -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.3: quirk: [io 0x0700-0x070f] claimed by PIIX4 SMB -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: [1234:1111] type 00 class 0x030000 conventional PCI endpoint -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: BAR 0 [mem 0xfd000000-0xfdffffff pref] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: BAR 2 [mem 0xfeb90000-0xfeb90fff] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: ROM [mem 0xfeb80000-0xfeb8ffff pref] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: Video device with shadowed ROM at [mem 0x000c0000-0x000dffff] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: [1af4:1000] type 00 class 0x020000 conventional PCI endpoint -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: BAR 0 [io 0xc080-0xc09f] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: BAR 1 [mem 0xfeb91000-0xfeb91fff] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: BAR 4 [mem 0x7000000000-0x7000003fff 64bit pref] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:03.0: ROM [mem 0xfeb00000-0xfeb7ffff pref] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:04.0: [1af4:1001] type 00 class 0x010000 conventional PCI endpoint -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:04.0: BAR 0 [io 0xc000-0xc07f] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:04.0: BAR 1 [mem 0xfeb92000-0xfeb92fff] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:04.0: BAR 4 [mem 0x7000004000-0x7000007fff 64bit pref] -Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKA configured for IRQ 10 -Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKB configured for IRQ 10 -Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKC configured for IRQ 11 -Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKD configured for IRQ 11 -Oct 07 18:36:06 ubuntu kernel: ACPI: PCI: Interrupt link LNKS configured for IRQ 9 -Oct 07 18:36:06 ubuntu kernel: iommu: Default domain type: Translated -Oct 07 18:36:06 ubuntu kernel: iommu: DMA domain TLB invalidation policy: lazy mode -Oct 07 18:36:06 ubuntu kernel: SCSI subsystem initialized -Oct 07 18:36:06 ubuntu kernel: libata version 3.00 loaded. -Oct 07 18:36:06 ubuntu kernel: ACPI: bus type USB registered -Oct 07 18:36:06 ubuntu kernel: usbcore: registered new interface driver usbfs -Oct 07 18:36:06 ubuntu kernel: usbcore: registered new interface driver hub -Oct 07 18:36:06 ubuntu kernel: usbcore: registered new device driver usb -Oct 07 18:36:06 ubuntu kernel: pps_core: LinuxPPS API ver. 1 registered -Oct 07 18:36:06 ubuntu kernel: pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti -Oct 07 18:36:06 ubuntu kernel: PTP clock support registered -Oct 07 18:36:06 ubuntu kernel: EDAC MC: Ver: 3.0.0 -Oct 07 18:36:06 ubuntu kernel: NetLabel: Initializing -Oct 07 18:36:06 ubuntu kernel: NetLabel: domain hash size = 128 -Oct 07 18:36:06 ubuntu kernel: NetLabel: protocols = UNLABELED CIPSOv4 CALIPSO -Oct 07 18:36:06 ubuntu kernel: NetLabel: unlabeled traffic allowed by default -Oct 07 18:36:06 ubuntu kernel: mctp: management component transport protocol core -Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_MCTP protocol family -Oct 07 18:36:06 ubuntu kernel: PCI: Using ACPI for IRQ routing -Oct 07 18:36:06 ubuntu kernel: PCI: pci_cache_line_size set to 64 bytes -Oct 07 18:36:06 ubuntu kernel: e820: reserve RAM buffer [mem 0x0009fc00-0x0009ffff] -Oct 07 18:36:06 ubuntu kernel: e820: reserve RAM buffer [mem 0xbffdd000-0xbfffffff] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: vgaarb: setting as boot VGA device -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: vgaarb: bridge control possible -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:02.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none -Oct 07 18:36:06 ubuntu kernel: vgaarb: loaded -Oct 07 18:36:06 ubuntu kernel: hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0 -Oct 07 18:36:06 ubuntu kernel: hpet0: 3 comparators, 64-bit 100.000000 MHz counter -Oct 07 18:36:06 ubuntu kernel: clocksource: Switched to clocksource kvm-clock -Oct 07 18:36:06 ubuntu kernel: VFS: Disk quotas dquot_6.6.0 -Oct 07 18:36:06 ubuntu kernel: VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes) -Oct 07 18:36:06 ubuntu kernel: AppArmor: AppArmor Filesystem Enabled -Oct 07 18:36:06 ubuntu kernel: pnp: PnP ACPI init -Oct 07 18:36:06 ubuntu kernel: pnp 00:02: [dma 2] -Oct 07 18:36:06 ubuntu kernel: pnp: PnP ACPI: found 6 devices -Oct 07 18:36:06 ubuntu kernel: clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns -Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_INET protocol family -Oct 07 18:36:06 ubuntu kernel: IP idents hash table entries: 65536 (order: 7, 524288 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: tcp_listen_portaddr_hash hash table entries: 2048 (order: 3, 32768 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: TCP bind hash table entries: 32768 (order: 8, 1048576 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: TCP: Hash tables configured (established 32768 bind 32768) -Oct 07 18:36:06 ubuntu kernel: MPTCP token hash table entries: 4096 (order: 5, 98304 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: UDP hash table entries: 2048 (order: 4, 65536 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes, linear) -Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_UNIX/PF_LOCAL protocol family -Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_XDP protocol family -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 4 [io 0x0000-0x0cf7 window] -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 5 [io 0x0d00-0xffff window] -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff window] -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 7 [mem 0xc0000000-0xfebfffff window] -Oct 07 18:36:06 ubuntu kernel: pci_bus 0000:00: resource 8 [mem 0x7000000000-0x707fffffff window] -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:01.0: PIIX3: Enabling Passive Release -Oct 07 18:36:06 ubuntu kernel: pci 0000:00:00.0: Limiting direct PCI/PCI transfers -Oct 07 18:36:06 ubuntu kernel: PCI: CLS 0 bytes, default 64 -Oct 07 18:36:06 ubuntu kernel: PCI-DMA: Using software bounce buffering for IO (SWIOTLB) -Oct 07 18:36:06 ubuntu kernel: Trying to unpack rootfs image as initramfs... -Oct 07 18:36:06 ubuntu kernel: software IO TLB: mapped [mem 0x00000000bbfdd000-0x00000000bffdd000] (64MB) -Oct 07 18:36:06 ubuntu kernel: clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x33e3ed16497, max_idle_ns: 440795313184 ns -Oct 07 18:36:06 ubuntu kernel: sgx: There are zero EPC sections. -Oct 07 18:36:06 ubuntu kernel: Initialise system trusted keyrings -Oct 07 18:36:06 ubuntu kernel: Key type blacklist registered -Oct 07 18:36:06 ubuntu kernel: workingset: timestamp_bits=36 max_order=20 bucket_order=0 -Oct 07 18:36:06 ubuntu kernel: zbud: loaded -Oct 07 18:36:06 ubuntu kernel: squashfs: version 4.0 (2009/01/31) Phillip Lougher -Oct 07 18:36:06 ubuntu kernel: fuse: init (API version 7.39) -Oct 07 18:36:06 ubuntu kernel: integrity: Platform Keyring initialized -Oct 07 18:36:06 ubuntu kernel: integrity: Machine keyring initialized -Oct 07 18:36:06 ubuntu kernel: Key type asymmetric registered -Oct 07 18:36:06 ubuntu kernel: Asymmetric key parser 'x509' registered -Oct 07 18:36:06 ubuntu kernel: Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243) -Oct 07 18:36:06 ubuntu kernel: io scheduler mq-deadline registered -Oct 07 18:36:06 ubuntu kernel: shpchp: Standard Hot Plug PCI Controller Driver version: 0.4 -Oct 07 18:36:06 ubuntu kernel: input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input0 -Oct 07 18:36:06 ubuntu kernel: ACPI: button: Power Button [PWRF] -Oct 07 18:36:06 ubuntu kernel: ACPI: \_SB_.LNKC: Enabled at IRQ 11 -Oct 07 18:36:06 ubuntu kernel: ACPI: \_SB_.LNKD: Enabled at IRQ 10 -Oct 07 18:36:06 ubuntu kernel: Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled -Oct 07 18:36:06 ubuntu kernel: 00:04: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A -Oct 07 18:36:06 ubuntu kernel: Linux agpgart interface v0.103 -Oct 07 18:36:06 ubuntu kernel: loop: module loaded -Oct 07 18:36:06 ubuntu kernel: virtio_blk virtio1: 4/0/0 default/read/poll queues -Oct 07 18:36:06 ubuntu kernel: virtio_blk virtio1: [vda] 33554432 512-byte logical blocks (17.2 GB/16.0 GiB) -Oct 07 18:36:06 ubuntu kernel: GPT:Primary header thinks Alt. header is not at the end of the disk. -Oct 07 18:36:06 ubuntu kernel: GPT:7340031 != 33554431 -Oct 07 18:36:06 ubuntu kernel: GPT:Alternate GPT header not at the end of the disk. -Oct 07 18:36:06 ubuntu kernel: GPT:7340031 != 33554431 -Oct 07 18:36:06 ubuntu kernel: GPT: Use GNU Parted to correct GPT errors. -Oct 07 18:36:06 ubuntu kernel: vda: vda1 vda14 vda15 vda16 -Oct 07 18:36:06 ubuntu kernel: ata_piix 0000:00:01.1: version 2.13 -Oct 07 18:36:06 ubuntu kernel: scsi host0: ata_piix -Oct 07 18:36:06 ubuntu kernel: scsi host1: ata_piix -Oct 07 18:36:06 ubuntu kernel: ata1: PATA max MWDMA2 cmd 0x1f0 ctl 0x3f6 bmdma 0xc0a0 irq 14 lpm-pol 0 -Oct 07 18:36:06 ubuntu kernel: ata2: PATA max MWDMA2 cmd 0x170 ctl 0x376 bmdma 0xc0a8 irq 15 lpm-pol 0 -Oct 07 18:36:06 ubuntu kernel: ACPI: bus type drm_connector registered -Oct 07 18:36:06 ubuntu kernel: tun: Universal TUN/TAP device driver, 1.6 -Oct 07 18:36:06 ubuntu kernel: PPP generic driver version 2.4.2 -Oct 07 18:36:06 ubuntu kernel: i8042: PNP: PS/2 Controller [PNP0303:KBD,PNP0f13:MOU] at 0x60,0x64 irq 1,12 -Oct 07 18:36:06 ubuntu kernel: serio: i8042 KBD port at 0x60,0x64 irq 1 -Oct 07 18:36:06 ubuntu kernel: serio: i8042 AUX port at 0x60,0x64 irq 12 -Oct 07 18:36:06 ubuntu kernel: mousedev: PS/2 mouse device common for all mice -Oct 07 18:36:06 ubuntu kernel: rtc_cmos 00:05: RTC can wake from S4 -Oct 07 18:36:06 ubuntu kernel: rtc_cmos 00:05: registered as rtc0 -Oct 07 18:36:06 ubuntu kernel: input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input1 -Oct 07 18:36:06 ubuntu kernel: rtc_cmos 00:05: setting system clock to 2026-10-07T18:36:03 UTC (1791398163) -Oct 07 18:36:06 ubuntu kernel: rtc_cmos 00:05: alarms up to one day, y3k, 242 bytes nvram, hpet irqs -Oct 07 18:36:06 ubuntu kernel: i2c_dev: i2c /dev entries driver -Oct 07 18:36:06 ubuntu kernel: device-mapper: core: CONFIG_IMA_DISABLE_HTABLE is disabled. Duplicate IMA measurements will not be recorded in the IMA log. -Oct 07 18:36:06 ubuntu kernel: device-mapper: uevent: version 1.0.3 -Oct 07 18:36:06 ubuntu kernel: device-mapper: ioctl: 4.48.0-ioctl (2023-03-01) initialised: dm-devel@redhat.com -Oct 07 18:36:06 ubuntu kernel: intel_pstate: CPU model not supported -Oct 07 18:36:06 ubuntu kernel: ledtrig-cpu: registered to indicate activity on CPUs -Oct 07 18:36:06 ubuntu kernel: drop_monitor: Initializing network drop monitor service -Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_INET6 protocol family -Oct 07 18:36:06 ubuntu kernel: Freeing initrd memory: 29984K -Oct 07 18:36:06 ubuntu kernel: Segment Routing with IPv6 -Oct 07 18:36:06 ubuntu kernel: In-situ OAM (IOAM) with IPv6 -Oct 07 18:36:06 ubuntu kernel: NET: Registered PF_PACKET protocol family -Oct 07 18:36:06 ubuntu kernel: Key type dns_resolver registered -Oct 07 18:36:06 ubuntu kernel: IPI shorthand broadcast: enabled -Oct 07 18:36:06 ubuntu kernel: sched_clock: Marking stable (1249007917, 195137836)->(1493930758, -49785005) -Oct 07 18:36:06 ubuntu kernel: registered taskstats version 1 -Oct 07 18:36:06 ubuntu kernel: Loading compiled-in X.509 certificates -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Build time autogenerated kernel key: aaf6cface807121d2b25f83f2288de5f0eb7acff' -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Live Patch Signing 2025 Kmod: d541cef61dc7e793b7eb7e899970a2eef0b5dc8c' -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Live Patch Signing: 14df34d1a87cf37625abec039ef2bf521249b969' -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Kernel Module Signing 2025 Kmod: 4627603d2357a2a3f81006370894c221175893e9' -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Kernel Module Signing: 88f752e560a1e0737e31163a466ad7b70a850c19' -Oct 07 18:36:06 ubuntu kernel: blacklist: Loading compiled-in revocation X.509 certificates -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing: 61482aa2830d0ab2ad5af10b7250da9033ddcef0' -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2017): 242ade75ac4a15e50d50c84b0d45ff3eae707a03' -Oct 07 18:36:06 ubuntu kernel: ata1: found unknown device (class 0) -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (ESM 2018): 365188c1d374d6b07c3c8f240f8ef722433d6a8b' -Oct 07 18:36:06 ubuntu kernel: ata2: found unknown device (class 0) -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2019): c0746fd6c5da3ae827864651ad66ae47fe24b3e8' -Oct 07 18:36:06 ubuntu kernel: ata1.00: ATAPI: QEMU DVD-ROM, 2.5+, max UDMA/100 -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2021 v1): a8d54bbb3825cfb94fa13c9f8a594a195c107b8d' -Oct 07 18:36:06 ubuntu kernel: ata2.00: ATAPI: QEMU DVD-ROM, 2.5+, max UDMA/100 -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2021 v2): 4cf046892d6fd3c9a5b03f98d845f90851dc6a8c' -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (2021 v3): 100437bb6de6e469b581e61cd66bce3ef4ed53af' -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Canonical Ltd. Secure Boot Signing (Ubuntu Core 2019): c1d57b8f6b743f23ee41f4f7ee292f06eecadfb9' -Oct 07 18:36:06 ubuntu kernel: scsi 0:0:0:0: CD-ROM QEMU QEMU DVD-ROM 2.5+ PQ: 0 ANSI: 5 -Oct 07 18:36:06 ubuntu kernel: Key type .fscrypt registered -Oct 07 18:36:06 ubuntu kernel: Key type fscrypt-provisioning registered -Oct 07 18:36:06 ubuntu kernel: sr 0:0:0:0: [sr0] scsi3-mmc drive: 4x/4x cd/rw xa/form2 tray -Oct 07 18:36:06 ubuntu kernel: cryptd: max_cpu_qlen set to 1000 -Oct 07 18:36:06 ubuntu kernel: cdrom: Uniform CD-ROM driver Revision: 3.20 -Oct 07 18:36:06 ubuntu kernel: sr 0:0:0:0: Attached scsi CD-ROM sr0 -Oct 07 18:36:06 ubuntu kernel: sr 0:0:0:0: Attached scsi generic sg0 type 5 -Oct 07 18:36:06 ubuntu kernel: scsi 1:0:0:0: CD-ROM QEMU QEMU DVD-ROM 2.5+ PQ: 0 ANSI: 5 -Oct 07 18:36:06 ubuntu kernel: sr 1:0:0:0: [sr1] scsi3-mmc drive: 4x/4x cd/rw xa/form2 tray -Oct 07 18:36:06 ubuntu kernel: sr 1:0:0:0: Attached scsi CD-ROM sr1 -Oct 07 18:36:06 ubuntu kernel: sr 1:0:0:0: Attached scsi generic sg1 type 5 -Oct 07 18:36:06 ubuntu kernel: AVX2 version of gcm_enc/dec engaged. -Oct 07 18:36:06 ubuntu kernel: AES CTR mode by8 optimization enabled -Oct 07 18:36:06 ubuntu kernel: Key type encrypted registered -Oct 07 18:36:06 ubuntu kernel: AppArmor: AppArmor sha256 policy hashing enabled -Oct 07 18:36:06 ubuntu kernel: ima: No TPM chip found, activating TPM-bypass! -Oct 07 18:36:06 ubuntu kernel: Loading compiled-in module X.509 certificates -Oct 07 18:36:06 ubuntu kernel: Loaded X.509 cert 'Build time autogenerated kernel key: aaf6cface807121d2b25f83f2288de5f0eb7acff' -Oct 07 18:36:06 ubuntu kernel: ima: Allocated hash algorithm: sha256 -Oct 07 18:36:06 ubuntu kernel: ima: No architecture policies found -Oct 07 18:36:06 ubuntu kernel: evm: Initialising EVM extended attributes: -Oct 07 18:36:06 ubuntu kernel: evm: security.selinux -Oct 07 18:36:06 ubuntu kernel: evm: security.SMACK64 -Oct 07 18:36:06 ubuntu kernel: evm: security.SMACK64EXEC -Oct 07 18:36:06 ubuntu kernel: evm: security.SMACK64TRANSMUTE -Oct 07 18:36:06 ubuntu kernel: evm: security.SMACK64MMAP -Oct 07 18:36:06 ubuntu kernel: evm: security.apparmor -Oct 07 18:36:06 ubuntu kernel: evm: security.ima -Oct 07 18:36:06 ubuntu kernel: evm: security.capability -Oct 07 18:36:06 ubuntu kernel: evm: HMAC attrs: 0x1 -Oct 07 18:36:06 ubuntu kernel: PM: Magic number: 14:42:645 -Oct 07 18:36:06 ubuntu kernel: RAS: Correctable Errors collector initialized. -Oct 07 18:36:06 ubuntu kernel: clk: Disabling unused clocks -Oct 07 18:36:06 ubuntu kernel: Freeing unused decrypted memory: 2028K -Oct 07 18:36:06 ubuntu kernel: Freeing unused kernel image (initmem) memory: 4932K -Oct 07 18:36:06 ubuntu kernel: Write protecting the kernel read-only data: 38912k -Oct 07 18:36:06 ubuntu kernel: Freeing unused kernel image (rodata/data gap) memory: 1956K -Oct 07 18:36:06 ubuntu kernel: x86/mm: Checked W+X mappings: passed, no W+X pages found. -Oct 07 18:36:06 ubuntu kernel: Run /init as init process -Oct 07 18:36:06 ubuntu kernel: with arguments: -Oct 07 18:36:06 ubuntu kernel: /init -Oct 07 18:36:06 ubuntu kernel: with environment: -Oct 07 18:36:06 ubuntu kernel: HOME=/ -Oct 07 18:36:06 ubuntu kernel: TERM=linux -Oct 07 18:36:06 ubuntu kernel: virtio_net virtio0 ens3: renamed from eth0 -Oct 07 18:36:06 ubuntu kernel: Floppy drive(s): fd0 is 2.88M AMI BIOS -Oct 07 18:36:06 ubuntu kernel: input: VirtualPS/2 VMware VMMouse as /devices/platform/i8042/serio1/input/input4 -Oct 07 18:36:06 ubuntu kernel: input: VirtualPS/2 VMware VMMouse as /devices/platform/i8042/serio1/input/input3 -Oct 07 18:36:06 ubuntu kernel: FDC 0 is a S82078B -Oct 07 18:36:06 ubuntu kernel: raid6: avx2x4 gen() 24651 MB/s -Oct 07 18:36:06 ubuntu kernel: raid6: avx2x2 gen() 24761 MB/s -Oct 07 18:36:06 ubuntu kernel: raid6: avx2x1 gen() 22417 MB/s -Oct 07 18:36:06 ubuntu kernel: raid6: using algorithm avx2x2 gen() 24761 MB/s -Oct 07 18:36:06 ubuntu kernel: raid6: .... xor() 15663 MB/s, rmw enabled -Oct 07 18:36:06 ubuntu kernel: raid6: using avx2x2 recovery algorithm -Oct 07 18:36:06 ubuntu kernel: xor: automatically using best checksumming function avx -Oct 07 18:36:06 ubuntu kernel: async_tx: api initialized (async) -Oct 07 18:36:06 ubuntu kernel: Btrfs loaded, zoned=yes, fsverity=yes -Oct 07 18:36:06 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 -Oct 07 18:36:06 ubuntu kernel: floppy: error 10 while reading block 0 -Oct 07 18:36:06 ubuntu kernel: EXT4-fs (vda1): mounted filesystem 1bfefdfb-34c9-46c7-854f-399d0a1dea04 ro with ordered data mode. Quota mode: none. -Oct 07 18:36:06 ubuntu systemd[1]: Inserted module 'autofs4' -Oct 07 18:36:06 ubuntu systemd[1]: systemd 255.4-1ubuntu8.17 running in system mode (+PAM +AUDIT +SELINUX +APPARMOR +IMA +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSETUP +LIBFDISK +PCRE2 -PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=unified) -Oct 07 18:36:06 ubuntu systemd[1]: Detected virtualization kvm. -Oct 07 18:36:06 ubuntu systemd[1]: Detected architecture x86-64. -Oct 07 18:36:06 ubuntu systemd[1]: Hostname set to . -Oct 07 18:36:06 ubuntu systemd[1]: Initializing machine ID from random generator. -Oct 07 18:36:06 ubuntu systemd[1]: Installed transient /etc/machine-id file. -Oct 07 18:36:06 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 -Oct 07 18:36:06 ubuntu kernel: floppy: error 10 while reading block 0 -Oct 07 18:36:06 ubuntu systemd[1]: Queued start job for default target graphical.target. -Oct 07 18:36:06 ubuntu systemd[1]: Created slice system-modprobe.slice - Slice /system/modprobe. -Oct 07 18:36:06 ubuntu systemd[1]: Created slice system-serial\x2dgetty.slice - Slice /system/serial-getty. -Oct 07 18:36:06 ubuntu systemd[1]: Created slice system-systemd\x2dfsck.slice - Slice /system/systemd-fsck. -Oct 07 18:36:06 ubuntu systemd[1]: Created slice user.slice - User and Session Slice. -Oct 07 18:36:06 ubuntu systemd[1]: Started systemd-ask-password-wall.path - Forward Password Requests to Wall Directory Watch. -Oct 07 18:36:06 ubuntu systemd[1]: Set up automount proc-sys-fs-binfmt_misc.automount - Arbitrary Executable File Formats File System Automount Point. -Oct 07 18:36:06 ubuntu systemd[1]: Expecting device dev-disk-by\x2dlabel-BOOT.device - /dev/disk/by-label/BOOT... -Oct 07 18:36:06 ubuntu systemd[1]: Expecting device dev-disk-by\x2dlabel-UEFI.device - /dev/disk/by-label/UEFI... -Oct 07 18:36:06 ubuntu systemd[1]: Expecting device dev-ttyS0.device - /dev/ttyS0... -Oct 07 18:36:06 ubuntu systemd[1]: Reached target integritysetup.target - Local Integrity Protected Volumes. -Oct 07 18:36:06 ubuntu systemd[1]: Reached target slices.target - Slice Units. -Oct 07 18:36:06 ubuntu systemd[1]: Reached target snapd.mounts-pre.target - Mounting snaps. -Oct 07 18:36:06 ubuntu systemd[1]: Reached target snapd.mounts.target - Mounted snaps. -Oct 07 18:36:06 ubuntu systemd[1]: Reached target swap.target - Swaps. -Oct 07 18:36:06 ubuntu systemd[1]: Reached target veritysetup.target - Local Verity Protected Volumes. -Oct 07 18:36:06 ubuntu systemd[1]: Listening on dm-event.socket - Device-mapper event daemon FIFOs. -Oct 07 18:36:06 ubuntu systemd[1]: Listening on lvm2-lvmpolld.socket - LVM2 poll daemon socket. -Oct 07 18:36:06 ubuntu systemd[1]: Listening on multipathd.socket - multipathd control socket. -Oct 07 18:36:06 ubuntu systemd[1]: Listening on syslog.socket - Syslog Socket. -Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-fsckd.socket - fsck to fsckd communication Socket. -Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-initctl.socket - initctl Compatibility Named Pipe. -Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-journald-dev-log.socket - Journal Socket (/dev/log). -Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-journald.socket - Journal Socket. -Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-networkd.socket - Network Service Netlink Socket. -Oct 07 18:36:06 ubuntu systemd[1]: systemd-pcrextend.socket - TPM2 PCR Extension (Varlink) was skipped because of an unmet condition check (ConditionSecurity=measured-uki). -Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-udevd-control.socket - udev Control Socket. -Oct 07 18:36:06 ubuntu systemd[1]: Listening on systemd-udevd-kernel.socket - udev Kernel Socket. -Oct 07 18:36:06 ubuntu systemd[1]: Mounting dev-hugepages.mount - Huge Pages File System... -Oct 07 18:36:06 ubuntu systemd[1]: Mounting dev-mqueue.mount - POSIX Message Queue File System... -Oct 07 18:36:06 ubuntu systemd[1]: Mounting sys-kernel-debug.mount - Kernel Debug File System... -Oct 07 18:36:06 ubuntu systemd[1]: Mounting sys-kernel-tracing.mount - Kernel Trace File System... -Oct 07 18:36:06 ubuntu systemd[1]: Starting systemd-journald.service - Journal Service... -Oct 07 18:36:06 ubuntu systemd[1]: Starting keyboard-setup.service - Set the console keyboard layout... -Oct 07 18:36:06 ubuntu systemd[1]: Starting kmod-static-nodes.service - Create List of Static Device Nodes... -Oct 07 18:36:06 ubuntu systemd[1]: Starting lvm2-monitor.service - Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling... -Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@configfs.service - Load Kernel Module configfs... -Oct 07 18:36:06 ubuntu systemd-journald[325]: Collecting audit messages is disabled. -Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@dm_mod.service - Load Kernel Module dm_mod... -Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@drm.service - Load Kernel Module drm... -Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@efi_pstore.service - Load Kernel Module efi_pstore... -Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@fuse.service - Load Kernel Module fuse... -Oct 07 18:36:06 ubuntu systemd[1]: Starting modprobe@loop.service - Load Kernel Module loop... -Oct 07 18:36:06 ubuntu systemd[1]: netplan-ovs-cleanup.service - OpenVSwitch configuration for cleanup was skipped because of an unmet condition check (ConditionFileIsExecutable=/usr/bin/ovs-vsctl). -Oct 07 18:36:06 ubuntu systemd[1]: Starting systemd-fsck-root.service - File System Check on Root Device... -Oct 07 18:36:06 ubuntu systemd[1]: Starting systemd-modules-load.service - Load Kernel Modules... -Oct 07 18:36:06 ubuntu systemd[1]: systemd-pcrmachine.service - TPM2 PCR Machine ID Measurement was skipped because of an unmet condition check (ConditionSecurity=measured-uki). -Oct 07 18:36:06 ubuntu systemd[1]: systemd-tpm2-setup-early.service - TPM2 SRK Setup (Early) was skipped because of an unmet condition check (ConditionSecurity=measured-uki). -Oct 07 18:36:06 ubuntu systemd[1]: Starting systemd-udev-trigger.service - Coldplug All udev Devices... -Oct 07 18:36:06 ubuntu systemd[1]: Started systemd-journald.service - Journal Service. -Oct 07 18:36:06 ubuntu kernel: EXT4-fs (vda1): re-mounted 1bfefdfb-34c9-46c7-854f-399d0a1dea04 r/w. -Oct 07 18:36:06 ubuntu systemd-journald[325]: Received client request to flush runtime journal. -Oct 07 18:36:07 ubuntu kernel: parport_pc 00:03: reported by Plug and Play ACPI -Oct 07 18:36:07 ubuntu kernel: parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] -Oct 07 18:36:07 ubuntu kernel: EXT4-fs (vda16): mounted filesystem fb8b4264-587e-4a60-a103-a1d39552f189 r/w with ordered data mode. Quota mode: none. -Oct 07 18:36:07 ubuntu kernel: ppdev: user-space parallel port driver -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.464:2): apparmor="STATUS" operation="profile_load" profile="unconfined" name=4D6F6E676F444220436F6D70617373 pid=518 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.464:3): apparmor="STATUS" operation="profile_load" profile="unconfined" name="Discord" pid=517 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.465:4): apparmor="STATUS" operation="profile_load" profile="unconfined" name="QtWebEngineProcess" pid=519 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.465:5): apparmor="STATUS" operation="profile_load" profile="unconfined" name="1password" pid=516 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.467:6): apparmor="STATUS" operation="profile_load" profile="unconfined" name="balena-etcher" pid=524 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.467:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="brave" pid=525 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.469:8): apparmor="STATUS" operation="profile_load" profile="unconfined" name="buildah" pid=526 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.470:9): apparmor="STATUS" operation="profile_load" profile="unconfined" name="ch-checkns" pid=528 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.470:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="cam" pid=527 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: kauditd_printk_skb: 81 callbacks suppressed -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.855:92): apparmor="STATUS" operation="profile_load" profile="unconfined" name="ubuntu_pro_apt_news" pid=615 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.899:93): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/man" pid=620 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.899:94): apparmor="STATUS" operation="profile_load" profile="unconfined" name="man_filter" pid=620 comm="apparmor_parser" -Oct 07 18:36:07 ubuntu kernel: audit: type=1400 audit(1791398167.901:95): apparmor="STATUS" operation="profile_load" profile="unconfined" name="man_groff" pid=620 comm="apparmor_parser" -Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.032:96): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/lib/snapd/snap-confine" pid=622 comm="apparmor_parser" -Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.083:97): apparmor="STATUS" operation="profile_load" profile="unconfined" name="tcpdump" pid=621 comm="apparmor_parser" -Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.085:98): apparmor="STATUS" operation="profile_load" profile="unconfined" name="rsyslogd" pid=624 comm="apparmor_parser" -Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.088:99): apparmor="STATUS" operation="profile_load" profile="unconfined" name="uwsgi-core" pid=625 comm="apparmor_parser" -Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.090:100): apparmor="STATUS" operation="profile_load" profile="unconfined" name="vdens" pid=626 comm="apparmor_parser" -Oct 07 18:36:08 ubuntu kernel: audit: type=1400 audit(1791398168.094:101): apparmor="STATUS" operation="profile_load" profile="unconfined" name="virtiofsd" pid=627 comm="apparmor_parser" -Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 -Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 -Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 -Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 -Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 -Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 -Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 -Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 -Oct 07 18:36:09 ubuntu kernel: I/O error, dev fd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2 -Oct 07 18:36:09 ubuntu kernel: floppy: error 10 while reading block 0 -Oct 07 18:36:09 ubuntu kernel: ISO 9660 Extensions: Microsoft Joliet Level 3 -Oct 07 18:36:09 ubuntu kernel: ISO 9660 Extensions: RRIP_1991A -Oct 07 18:36:22 busymark-adoption-kvm kernel: EXT4-fs (vda1): resizing filesystem from 655099 to 3931899 blocks -Oct 07 18:36:22 busymark-adoption-kvm kernel: EXT4-fs (vda1): resized filesystem to 3931899 -Oct 07 18:36:24 busymark-adoption-kvm kernel: kauditd_printk_skb: 17 callbacks suppressed -Oct 07 18:36:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398184.050:119): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="rsyslogd" pid=831 comm="apparmor_parser" -Oct 07 18:36:24 busymark-adoption-kvm kernel: loop0: detected capacity change from 0 to 8 -Oct 07 18:36:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398184.732:120): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/lib/snapd/snap-confine" pid=995 comm="apparmor_parser" -Oct 07 18:37:34 busymark-adoption-kvm kernel: clocksource: Long readout interval, skipping watchdog check: cs_nsec: 1194682541 wd_nsec: 1194682058 -Oct 07 18:37:44 busymark-adoption-kvm kernel: clocksource: Long readout interval, skipping watchdog check: cs_nsec: 10083645115 wd_nsec: 10083641487 -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.139:121): apparmor="STATUS" operation="profile_load" profile="unconfined" name="ping" pid=4873 comm="apparmor_parser" -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.175:122): apparmor="STATUS" operation="profile_load" profile="unconfined" name="php-fpm" pid=4879 comm="apparmor_parser" -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.216:123): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-bgqd" pid=4885 comm="apparmor_parser" -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.250:124): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-dcerpcd" pid=4891 comm="apparmor_parser" -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.287:125): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-rpcd" pid=4897 comm="apparmor_parser" -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.324:126): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-rpcd-classic" pid=4903 comm="apparmor_parser" -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.358:127): apparmor="STATUS" operation="profile_load" profile="unconfined" name="samba-rpcd-spoolss" pid=4911 comm="apparmor_parser" -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.374:128): apparmor="STATUS" operation="profile_load" profile="unconfined" name="klogd" pid=4917 comm="apparmor_parser" -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.426:129): apparmor="STATUS" operation="profile_load" profile="unconfined" name="syslog-ng" pid=4923 comm="apparmor_parser" -Oct 07 18:38:36 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398316.465:130): apparmor="STATUS" operation="profile_load" profile="unconfined" name="syslogd" pid=4929 comm="apparmor_parser" -Oct 07 18:38:52 busymark-adoption-kvm kernel: loop0: detected capacity change from 0 to 8 -Oct 07 18:38:52 busymark-adoption-kvm kernel: kauditd_printk_skb: 11 callbacks suppressed -Oct 07 18:38:52 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398332.733:142): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/usr/lib/snapd/snap-confine" pid=5739 comm="apparmor_parser" -Oct 07 18:39:22 busymark-adoption-kvm kernel: loop0: detected capacity change from 0 to 91568 -Oct 07 18:39:23 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398363.365:143): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=5920 comm="apparmor_parser" -Oct 07 18:39:28 busymark-adoption-kvm kernel: loop1: detected capacity change from 0 to 8 -Oct 07 18:39:28 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398368.912:144): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=6077 comm="apparmor_parser" -Oct 07 18:39:29 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398369.387:145): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=6090 comm="apparmor_parser" -Oct 07 18:39:38 busymark-adoption-kvm kernel: loop1: detected capacity change from 0 to 136784 -Oct 07 18:39:41 busymark-adoption-kvm kernel: loop2: detected capacity change from 0 to 604976 -Oct 07 18:39:43 busymark-adoption-kvm kernel: loop3: detected capacity change from 0 to 8 -Oct 07 18:40:09 busymark-adoption-kvm kernel: loop4: detected capacity change from 0 to 823256 -Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.143:146): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap-update-ns.mesa-2404" pid=6688 comm="apparmor_parser" -Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.304:147): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.hook.connect-plug-kernel-gpu-2404" pid=6690 comm="apparmor_parser" -Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.324:148): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.component-monitor" pid=6689 comm="apparmor_parser" -Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.429:149): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.hook.disconnect-plug-kernel-gpu-2404" pid=6691 comm="apparmor_parser" -Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.438:150): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.hook.install" pid=6692 comm="apparmor_parser" -Oct 07 18:40:11 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398411.525:151): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.mesa-2404.hook.post-refresh" pid=6693 comm="apparmor_parser" -Oct 07 18:40:24 busymark-adoption-kvm kernel: loop5: detected capacity change from 0 to 187776 -Oct 07 18:41:02 busymark-adoption-kvm kernel: loop6: detected capacity change from 0 to 1260056 -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.395:152): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=7203 comm="apparmor_parser" -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.669:153): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap-update-ns.busymark" pid=7205 comm="apparmor_parser" -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.727:154): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.busymark.busymark" pid=7206 comm="apparmor_parser" -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.808:155): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.component-monitor" pid=7208 comm="apparmor_parser" -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.809:156): apparmor="STATUS" operation="profile_load" profile="unconfined" name="snap.busymark.hook.configure" pid=7207 comm="apparmor_parser" -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.888:157): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.connect-plug-kernel-gpu-2404" pid=7209 comm="apparmor_parser" -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.895:158): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.disconnect-plug-kernel-gpu-2404" pid=7210 comm="apparmor_parser" -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.967:159): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.install" pid=7211 comm="apparmor_parser" -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.978:160): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.post-refresh" pid=7212 comm="apparmor_parser" -Oct 07 18:41:18 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398478.982:161): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.mesa-2404" pid=7214 comm="apparmor_parser" -Oct 07 18:42:47 busymark-adoption-kvm kernel: kauditd_printk_skb: 12 callbacks suppressed -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.000:174): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.0" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.008:175): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libc.so.6" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.009:176): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.11.2" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.009:177): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.009:178): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.009:179): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.8000.0" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.010:180): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.0" pid=7883 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.010:181): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.8000.0" pid=7875 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.010:182): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libc.so.6" pid=7883 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398567.010:183): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.11.2" pid=7883 comm="gtk-update-icon" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: kauditd_printk_skb: 782 callbacks suppressed -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.071:966): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpng16.so.16.43.0" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.071:967): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libfreetype.so.6.20.1" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:968): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/liblzma.so.5.4.5" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:969): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libexpat.so.1.9.1" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:970): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libexpat.so.1.9.1" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:971): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbz2.so.1.0.4" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.072:972): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.073:973): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.33" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.073:974): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.33" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:42:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398574.073:975): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=8081 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:24 busymark-adoption-kvm kernel: kauditd_printk_skb: 295 callbacks suppressed -Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.418:1271): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.418:1272): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.418:1273): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.419:1274): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398604.482:1275): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=8399 comm="busymark" exe="/snap/busymark/x1/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x725696ed47d1 code=0x50000 -Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398604.856:1276): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=8399 comm="busymark" exe="/snap/busymark/x1/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x725696ed47d1 code=0x50000 -Oct 07 18:43:24 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398604.972:1277): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/sys/vm/max_map_count" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398630.746:1278): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=8399 comm="busymark" exe="/snap/busymark/x1/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x725696ed47d1 code=0x50000 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.770:1279): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/devices/virtual/dmi/id/chassis_type" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.770:1280): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/firmware/acpi/pm_profile" pid=8399 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.779:1281): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=8582 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.783:1282): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=8593 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.784:1283): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=8593 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.784:1284): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=8582 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.785:1285): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=8593 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.785:1286): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=8582 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398630.786:1287): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=8582 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:55 busymark-adoption-kvm kernel: kauditd_printk_skb: 50 callbacks suppressed -Oct 07 18:43:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398635.767:1338): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:43:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398635.767:1339): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-c5c9f0d1-8d60-4656-a511-3e3cbbe52535.scope/memory.current" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:43:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398635.767:1340): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-c5c9f0d1-8d60-4656-a511-3e3cbbe52535.scope/memory.max" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:43:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398635.767:1341): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-c5c9f0d1-8d60-4656-a511-3e3cbbe52535.scope/memory.high" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:44:00 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398640.768:1342): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:05 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398645.770:1343): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:10 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398650.770:1344): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:15 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398655.771:1345): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398660.772:1346): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=8399 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:32 busymark-adoption-kvm kernel: traps: WatchDogQueue[8800] trap int3 ip:7b9830a1b6b7 sp:7b97cd7f9600 error:0 in libglib-2.0.so.0.8400.4[7b98309cc000+be000] -Oct 07 18:44:34 busymark-adoption-kvm kernel: loop7: detected capacity change from 0 to 604976 -Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.382:1347): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=9059 comm="apparmor_parser" -Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.715:1348): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap-update-ns.busymark" pid=9061 comm="apparmor_parser" -Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.763:1349): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=9062 comm="apparmor_parser" -Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.851:1350): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.hook.configure" pid=9075 comm="apparmor_parser" -Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.856:1351): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.mesa-2404" pid=9081 comm="apparmor_parser" -Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.857:1352): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.component-monitor" pid=9082 comm="apparmor_parser" -Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.859:1353): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.connect-plug-kernel-gpu-2404" pid=9083 comm="apparmor_parser" -Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.860:1354): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.disconnect-plug-kernel-gpu-2404" pid=9084 comm="apparmor_parser" -Oct 07 18:44:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398675.863:1355): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.mesa-2404.hook.install" pid=9085 comm="apparmor_parser" -Oct 07 18:44:37 busymark-adoption-kvm kernel: kauditd_printk_skb: 10 callbacks suppressed -Oct 07 18:44:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398677.837:1366): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=9231 comm="apparmor_parser" -Oct 07 18:44:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398677.844:1367): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=9245 comm="apparmor_parser" -Oct 07 18:44:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398677.850:1368): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=9247 comm="apparmor_parser" -Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.193:1369): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.194:1370): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpng16.so.16.43.0" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.206:1371): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.206:1372): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpng16.so.16.43.0" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.207:1373): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libm.so.6" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.207:1374): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpng16.so.16.43.0" pid=9350 comm="gdk-pixbuf-quer" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398678.212:1375): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libduktape.so.207" pid=9360 comm="gio-querymodule" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: kauditd_printk_skb: 724 callbacks suppressed -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.527:2100): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.564:2101): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.564:2102): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.590:2103): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2104): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2105): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2106): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2107): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2108): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398685.591:2109): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:59 busymark-adoption-kvm kernel: kauditd_printk_skb: 21 callbacks suppressed -Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.309:2131): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.309:2132): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.309:2133): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.309:2134): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398699.371:2135): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9265 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x75cfe9d747d1 code=0x50000 -Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398699.571:2136): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9265 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x75cfe9d747d1 code=0x50000 -Oct 07 18:44:59 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398699.673:2137): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/sys/vm/max_map_count" pid=9265 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2138): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2139): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2140): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2141): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.178:2142): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2143): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2144): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2145): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2146): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398725.179:2147): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=9677 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:30 busymark-adoption-kvm kernel: kauditd_printk_skb: 50 callbacks suppressed -Oct 07 18:45:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398730.218:2198): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398730.218:2199): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-4e697578-41cb-4322-8c77-692e7c21794b.scope/memory.current" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:45:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398730.218:2200): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-4e697578-41cb-4322-8c77-692e7c21794b.scope/memory.max" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:45:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398730.218:2201): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-4e697578-41cb-4322-8c77-692e7c21794b.scope/memory.high" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:45:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398735.220:2202): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:40 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398740.220:2203): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398745.221:2204): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398750.221:2205): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9265 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398750.248:2206): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9677 comm="WebKitNetworkPr" exe="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitNetworkProcess" sig=0 arch=c000003e syscall=41 compat=0 ip=0x70ecdd02b57b code=0x50000 -Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398750.248:2207): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9677 comm="WebKitNetworkPr" exe="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitNetworkProcess" sig=0 arch=c000003e syscall=41 compat=0 ip=0x70ecdd02b57b code=0x50000 -Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398750.275:2208): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9709 comm="WebKitNetworkPr" exe="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitNetworkProcess" sig=0 arch=c000003e syscall=41 compat=0 ip=0x7c1daf60f57b code=0x50000 -Oct 07 18:45:50 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398750.275:2209): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9709 comm="WebKitNetworkPr" exe="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitNetworkProcess" sig=0 arch=c000003e syscall=41 compat=0 ip=0x7c1daf60f57b code=0x50000 -Oct 07 18:45:54 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398754.754:2210): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=9863 comm="apparmor_parser" -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.175:2211): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.busymark" pid=9885 comm="apparmor_parser" -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.244:2212): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=9886 comm="apparmor_parser" -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.252:2213): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=9900 comm="apparmor_parser" -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.563:2214): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.567:2215): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.567:2216): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2217): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2218): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2219): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2220): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:45:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398755.569:2221): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:04 busymark-adoption-kvm kernel: show_signal: 23 callbacks suppressed -Oct 07 18:46:04 busymark-adoption-kvm kernel: traps: WatchDogQueue[9828] trap int3 ip:734c6df686b7 sp:734c07ffe600 error:0 in libglib-2.0.so.0.8400.4[734c6df19000+be000] -Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.722:2245): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.722:2246): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.722:2247): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.722:2248): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398780.761:2249): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9929 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x7c283ed667d1 code=0x50000 -Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398780.798:2250): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9929 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x7c283ed667d1 code=0x50000 -Oct 07 18:46:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398780.826:2251): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/sys/vm/max_map_count" pid=9929 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398805.941:2252): auid=1000 uid=1000 gid=1000 ses=18 subj=snap.busymark.busymark pid=9929 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x7c283ed667d1 code=0x50000 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.944:2253): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.944:2254): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2255): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2256): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2257): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2258): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2259): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2260): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:45 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398805.945:2261): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=10117 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:50 busymark-adoption-kvm kernel: kauditd_printk_skb: 50 callbacks suppressed -Oct 07 18:46:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398810.961:2312): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:46:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398810.961:2313): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-72a32545-d3e1-4200-83d3-30f840a7c951.scope/memory.current" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:46:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398810.961:2314): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-72a32545-d3e1-4200-83d3-30f840a7c951.scope/memory.max" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:46:50 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398810.961:2315): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-72a32545-d3e1-4200-83d3-30f840a7c951.scope/memory.high" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:46:55 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398815.962:2316): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:00 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398820.962:2317): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:05 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398825.963:2318): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:10 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398830.964:2319): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:15 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398835.964:2320): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:20 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398840.966:2321): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.215:2322): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.215:2323): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.215:2324): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2325): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2326): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2327): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2328): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2329): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.216:2330): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=10128 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:25 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398845.967:2331): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398850.967:2332): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:35 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398855.968:2333): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:47:40 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398860.969:2334): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=9929 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.411:2335): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.432:2336): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.432:2337): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.440:2338): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2339): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2340): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2341): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2342): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2343): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398972.442:2344): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:57 busymark-adoption-kvm kernel: kauditd_printk_skb: 21 callbacks suppressed -Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.593:2366): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.593:2367): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.593:2368): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.593:2369): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398997.623:2370): auid=1000 uid=1000 gid=1000 ses=34 subj=snap.busymark.busymark pid=10926 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x73d0a904c7d1 code=0x50000 -Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1326 audit(1791398997.657:2371): auid=1000 uid=1000 gid=1000 ses=34 subj=snap.busymark.busymark pid=10926 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x73d0a904c7d1 code=0x50000 -Oct 07 18:49:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791398997.684:2372): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/sys/vm/max_map_count" pid=10926 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1326 audit(1791399022.801:2373): auid=1000 uid=1000 gid=1000 ses=34 subj=snap.busymark.busymark pid=10926 comm="busymark" exe="/snap/busymark/x2/busymark" sig=0 arch=c000003e syscall=203 compat=0 ip=0x73d0a904c7d1 code=0x50000 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.804:2374): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.804:2375): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2376): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2377): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2378): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2379): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2380): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2381): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399022.805:2382): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11130 comm="WebKitNetworkPr" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:27 busymark-adoption-kvm kernel: kauditd_printk_skb: 50 callbacks suppressed -Oct 07 18:50:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399027.820:2433): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399027.820:2434): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-0ba8df11-b35a-4cb5-8682-dfe7b93bacc6.scope/memory.current" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:50:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399027.820:2435): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-0ba8df11-b35a-4cb5-8682-dfe7b93bacc6.scope/memory.max" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:50:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399027.820:2436): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-0ba8df11-b35a-4cb5-8682-dfe7b93bacc6.scope/memory.high" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:50:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399032.821:2437): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399037.823:2438): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399042.824:2439): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:47 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399047.825:2440): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:52 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399052.826:2441): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:50:57 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399057.826:2442): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:02 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399062.829:2443): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:07 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399067.831:2444): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399072.832:2445): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.401:2446): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.401:2447): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.401:2448): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2449): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2450): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2451): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2452): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2453): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399073.402:2454): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11142 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399077.833:2455): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399082.834:2456): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399087.834:2457): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.503:2458): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.514:2459): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.515:2460): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libelf-0.190.so" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.516:2461): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.516:2462): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.517:2463): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.517:2464): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.517:2465): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.517:2466): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: kauditd_printk_skb: 10 callbacks suppressed -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.835:2477): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.967:2478): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.967:2479): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.967:2480): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.970:2481): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.970:2482): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.970:2483): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.971:2484): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.971:2485): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399092.971:2486): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libtinfo.so.6.4" pid=11427 comm="WebKitWebProces" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:37 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399097.835:2487): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=10926 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399098.969:2488): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=11512 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:51:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399098.969:2489): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=11512 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399098.969:2490): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=11512 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:38 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399098.969:2491): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=11512 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:39 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399099.508:2492): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=11517 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:51:39 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399099.508:2493): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=11517 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:39 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399099.508:2494): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=11517 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:51:39 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399099.508:2495): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=11517 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.591:2496): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.595:2497): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.595:2498): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2499): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2500): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2501): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2502): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2503): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2504): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:42 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399162.597:2505): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=11688 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:48 busymark-adoption-kvm kernel: kauditd_printk_skb: 125 callbacks suppressed -Oct 07 18:52:48 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399168.038:2631): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=11688 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:48 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399168.038:2632): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-b605a2b5-9061-45f4-aa0d-ab731e23b43a.scope/memory.current" pid=11688 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:52:48 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399168.038:2633): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-b605a2b5-9061-45f4-aa0d-ab731e23b43a.scope/memory.max" pid=11688 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:52:48 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399168.038:2634): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-b605a2b5-9061-45f4-aa0d-ab731e23b43a.scope/memory.high" pid=11688 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.362:2635): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=12076 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.362:2636): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=12076 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.362:2637): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=12076 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.362:2638): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=12076 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.686:2639): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=12081 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:52:49 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399169.686:2640): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=12081 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:21 busymark-adoption-kvm kernel: kauditd_printk_skb: 2 callbacks suppressed -Oct 07 18:54:21 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399261.870:2643): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=12273 comm="apparmor_parser" -Oct 07 18:54:21 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399261.878:2644): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=12292 comm="apparmor_parser" -Oct 07 18:54:21 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399261.879:2645): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.busymark" pid=12291 comm="apparmor_parser" -Oct 07 18:54:21 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399261.886:2646): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=12294 comm="apparmor_parser" -Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.127:2647): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.133:2648): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.133:2649): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.135:2650): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.135:2651): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399262.135:2652): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=12300 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: kauditd_printk_skb: 100 callbacks suppressed -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.250:2753): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.255:2754): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.255:2755): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2756): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2757): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2758): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2759): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2760): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2761): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399267.257:2762): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=12611 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:32 busymark-adoption-kvm kernel: kauditd_printk_skb: 124 callbacks suppressed -Oct 07 18:54:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399272.671:2887): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=12611 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399272.671:2888): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-01ad018c-0d51-47cb-b2ed-e5243f03226f.scope/memory.current" pid=12611 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:54:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399272.672:2889): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-01ad018c-0d51-47cb-b2ed-e5243f03226f.scope/memory.max" pid=12611 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:54:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399272.672:2890): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-01ad018c-0d51-47cb-b2ed-e5243f03226f.scope/memory.high" pid=12611 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.516:2891): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=12986 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.516:2892): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=12986 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.516:2893): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=12986 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.516:2894): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=12986 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.826:2895): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=12991 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:54:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399273.826:2896): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=12991 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: kauditd_printk_skb: 6 callbacks suppressed -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.734:2903): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.797:2904): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.797:2905): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.829:2906): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2907): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2908): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2909): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2910): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libidn2.so.0.4.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2911): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlicommon.so.1.1.0" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:06 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399366.831:2912): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libkrb5.so.3.3" pid=13272 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:12 busymark-adoption-kvm kernel: kauditd_printk_skb: 125 callbacks suppressed -Oct 07 18:56:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399372.378:3038): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=13272 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399372.378:3039): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-47628d0f-cf4c-493a-b393-bbec38f0d427.scope/memory.current" pid=13272 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399372.378:3040): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-47628d0f-cf4c-493a-b393-bbec38f0d427.scope/memory.max" pid=13272 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:12 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399372.378:3041): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-47628d0f-cf4c-493a-b393-bbec38f0d427.scope/memory.high" pid=13272 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399373.921:3042): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=13660 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399373.921:3043): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=13660 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399373.921:3044): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=13660 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:13 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399373.921:3045): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=13660 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:14 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399374.262:3046): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=13665 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:14 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399374.262:3047): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=13665 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:17 busymark-adoption-kvm kernel: kauditd_printk_skb: 2 callbacks suppressed -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.395:3050): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.busymark" pid=13751 comm="apparmor_parser" -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.432:3051): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=13752 comm="apparmor_parser" -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.439:3052): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=13766 comm="apparmor_parser" -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.445:3053): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=13768 comm="apparmor_parser" -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.680:3054): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgcc_s.so.1" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.684:3055): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libbrotlidec.so.1.1.0" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.684:3056): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.686:3057): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libdbus-1.so.3.32.4" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.686:3058): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:17 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399377.686:3059): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libunistring.so.5.0.0" pid=13774 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:22 busymark-adoption-kvm kernel: kauditd_printk_skb: 122 callbacks suppressed -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.565:3182): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.565:3183): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.565:3184): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.565:3185): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3186): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3187): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3188): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libedit.so.2.0.72" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3189): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3190): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:22 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399382.601:3191): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/snap/core24/2124/usr/lib/x86_64-linux-gnu/libpciaccess.so.0.11.1" pid=14086 comm="busymark" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:27 busymark-adoption-kvm kernel: kauditd_printk_skb: 102 callbacks suppressed -Oct 07 18:56:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399387.959:3294): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399387.959:3295): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-e48b261d-c893-444d-ac17-bcc668dcb18f.scope/memory.current" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399387.959:3296): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-e48b261d-c893-444d-ac17-bcc668dcb18f.scope/memory.max" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:27 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399387.959:3297): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/snap.busymark.busymark-e48b261d-c893-444d-ac17-bcc668dcb18f.scope/memory.high" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.107:3298): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=14462 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.107:3299): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=14462 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.107:3300): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/cpu.max" pid=14462 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.107:3301): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/cpu.max" pid=14462 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.469:3302): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/app.slice/cpu.max" pid=14467 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000 -Oct 07 18:56:30 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399390.469:3303): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/cpu.max" pid=14467 comm="typst" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:32 busymark-adoption-kvm kernel: kauditd_printk_skb: 2 callbacks suppressed -Oct 07 18:56:32 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399392.960:3306): apparmor="DENIED" operation="open" class="file" profile="snap.busymark.busymark" name="/proc/zoneinfo" pid=14086 comm="PressureMonitor" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0 -Oct 07 18:56:33 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399393.571:3307): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/snapd/28254/usr/lib/snapd/snap-confine" pid=14517 comm="apparmor_parser" -Oct 07 18:56:34 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399394.381:3308): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.busymark.busymark" pid=14539 comm="apparmor_parser" -Oct 07 18:56:34 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399394.457:3309): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.busymark" pid=14538 comm="apparmor_parser" -Oct 07 18:56:34 busymark-adoption-kvm kernel: audit: type=1400 audit(1791399394.467:3310): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.busymark.hook.configure" pid=14569 comm="apparmor_parser" diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portal-settings.txt b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portal-settings.txt deleted file mode 100644 index 7b7b424c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portal-settings.txt +++ /dev/null @@ -1 +0,0 @@ -(<<'default'>>,) diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portals.conf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portals.conf deleted file mode 100644 index 1d575940..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/portals.conf +++ /dev/null @@ -1,3 +0,0 @@ -[preferred] -default=gtk -org.freedesktop.impl.portal.Secret=gnome-keyring diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/rendered-exports.tar.gz b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/rendered-exports.tar.gz deleted file mode 100644 index 157f49cc80b038bf368600123aef9c9e8c840b07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 118776 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 WPBv|=~06}!2Fd+)GtnnTZrO~vyT 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 N{ZFc-5%&PV0{}@V%76d> diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/spelling-online-install.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/spelling-online-install.json deleted file mode 100644 index eb845573..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/spelling-online-install.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/snap/busymark/x1/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": true, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": false - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/status.tsv b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/status.tsv deleted file mode 100644 index 39fe3fa0..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/status.tsv +++ /dev/null @@ -1,7 +0,0 @@ -01-verify-gtk-svg-icon-loader 0 8 -02-verify-shared-runtimes-packaged-tools-media-and-resources 0 1 -03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use 0 180 -04-exercise-strict-snap-visualization-and-pdf-paths-under-x11 1 110 -wayland-configured-desktop 0 16 -x11-repeat 0 10 -wayland-repeat 0 18 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/run.log deleted file mode 100644 index 528f51b3..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/run.log +++ /dev/null @@ -1,52 +0,0 @@ -could not load cursor 'dnd-move' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-none' -could not load cursor 'dnd-move' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-none' - -(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:22.285: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:22.451: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:22.572: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:12300): IBUS-WARNING **: 18:54:22.574: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory -Gdk-Message: 18:54:22.575: Unable to load from the cursor theme - -(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:22.621: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (io.busystack.busymark:12300): WARNING **: 18:54:22.622: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:12300): WARNING **: 18:54:22.622: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:12432): GLib-GIO-WARNING **: 18:54:22.727: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:12458): GLib-GIO-WARNING **: 18:54:22.764: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(io.busystack.busymark:12300): Gdk-CRITICAL **: 18:54:23.146: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:27.373: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:27.522: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:27.627: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:12611): IBUS-WARNING **: 18:54:27.628: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory -Gdk-Message: 18:54:27.628: Unable to load from the cursor theme - -(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:27.673: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (io.busystack.busymark:12611): WARNING **: 18:54:27.674: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:12611): WARNING **: 18:54:27.674: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:12740): GLib-GIO-WARNING **: 18:54:27.783: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:12765): GLib-GIO-WARNING **: 18:54:27.815: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:28.187: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:12611): Gdk-CRITICAL **: 18:54:29.770: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/spelling-release-wayland.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/spelling-release-wayland.json deleted file mode 100644 index 325a720e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/spelling-release-wayland.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/snap/busymark/x2/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": false, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": true - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json deleted file mode 100644 index 1a76cd88..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-configured-desktop/visualization-smoke.pdf deleted file mode 100644 index 7ae4d8cd92295b074b153d37351409496754dcec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71212 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�HUr>Fn9K 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/run.log deleted file mode 100644 index 36226cb2..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/run.log +++ /dev/null @@ -1,52 +0,0 @@ -could not load cursor 'dnd-move' -could not load cursor 'dnd-move' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-none' -could not load cursor 'dnd-none' - -(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:17.807: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:17.949: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:18.056: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:13774): IBUS-WARNING **: 18:56:18.058: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory -Gdk-Message: 18:56:18.058: Unable to load from the cursor theme - -(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:18.102: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (io.busystack.busymark:13774): WARNING **: 18:56:18.103: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:13774): WARNING **: 18:56:18.103: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:13907): GLib-GIO-WARNING **: 18:56:18.214: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:13932): GLib-GIO-WARNING **: 18:56:18.243: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(io.busystack.busymark:13774): Gdk-CRITICAL **: 18:56:18.621: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:22.477: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:22.701: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:22.869: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:14086): IBUS-WARNING **: 18:56:22.871: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory -Gdk-Message: 18:56:22.872: Unable to load from the cursor theme - -(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:22.961: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (io.busystack.busymark:14086): WARNING **: 18:56:22.963: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:14086): WARNING **: 18:56:22.963: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:14215): GLib-GIO-WARNING **: 18:56:23.131: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:14240): GLib-GIO-WARNING **: 18:56:23.184: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:23.492: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:14086): Gdk-CRITICAL **: 18:56:25.816: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/spelling-release-wayland.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/spelling-release-wayland.json deleted file mode 100644 index 325a720e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/spelling-release-wayland.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/snap/busymark/x2/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": false, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": true - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json deleted file mode 100644 index 1a76cd88..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/wayland-repeat/visualization-smoke.pdf deleted file mode 100644 index 7ae4d8cd92295b074b153d37351409496754dcec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71212 zcmc$`1whoxw>S<83ZkNdN(d~SvgFbz-64&X#L}?D(kUni5&}v{sdP)1fP{n~-3UlX zD&6_}>@HrpzI*-N``-KiA3MO#erC=&bLP~{IY6x_Dt?=lnd<_zH}G}g0xO6G1T!$d zz|Rj>aj}7d74=P^_Fxg1gEbt)4wf-9ve)8<0ArLu++3(%+=yQ~f`S*I)<%e#Y(F6= z>f1pP^AIDzDrRs?D4i12-UeoE54EQUi$d+;ATH#?pR*C&6Z|K$Igqo(&Fp~D2-r$s zS^YoWq6oXqdIDWSOa%nChwH-~{(z61{u4f;`)Bx^r{JR~MZ!nD{RO^)4b)B_ZU!vi z2l>d^Kfxoqe+G|a78pf7YAHzYsJFj>7k03Bk<+)c0NFt;q5Aevki8Ym0tymRlmaP1 zjiCTD4WT~}BjNr;jOhLuF>-rO5Tn+JM2vd-3t}}hdk1|>Ggsu={*3(xJ|ydZ;zK|` z!H1L+1qZmLnKd9PsFk8tjYNogi$ciy697VNP5{U|SlMf_fFLM=Vg*5vA_Z(Vga;UO zTDB1V(^!?^b`FMc6+0+Y2?m3Mm0*@oIei;Ic188!P`H^D6s&BcZw*#~+F98HqHG68 z$q85y49tXCo1h+xSs{N53W8;{AV_j`5Q72HML-6ioe;>%f*=RP3SvcQi4s5{E0QaK z@Pnm9e~i_)g4%1*sj@n=xUkT(A@>>4V@33k!0A-kkk2@g;1E5;GfpHZM2`*8JDJDk z%#P@xhyu|3BugIZ43~krfY^Vs6iFX~JzA_t=>@T#a1;sbj~-G2{^%h=|ItHno)yV= z5F3&}oga#gTs0Cr+sXQoB!k#c$kanA*00tNQnsuWerbl0)p9pi$L7W#K8`*swWHw3t7VHoORjg!9rSqoGAdN z%?0KF2P<0Y8$zuB0R#(M!VE101$6+?WczD;h}HfpeA?Q^cKU{H`W|iu9{&h2$6q5x zY{;h!y!`>#nr2=KomK@PBU z`esHTBQt#yJAJEvw7EQgi5sc<{|YxCves}_IoW@Oob|7D2x(vb6?Rd!e}(r1Ez*|! zR9&_o#^y)x^Cx+dWcw*lDs=zMRRe;DV(+h*erttJe3K#w%4?BVZiN zPK$+^hl7)ahnoe!&dkHf#>0W|g3LS+7A|fMb{()V%nksf40l1mhgq5#omelVaXuX< z{?>5)($gVi0A;{X zF~n&YzqM2RPgd6&_M(=tn6F>Qf6)zb{;mwiGi6L@evy*V1H4ARZPtcEr6R3 zd*B)8NvwksAe6&6EkM7uDU$5KivKu#p1x}Ozt>oJ2^!^5C~elmE&CgpU88@c?xlbD9UgH5fm6fQn3H zv`#{_UwQERzyfjH`I8(V?$Q45cz|>Sr+M((kme^35GFzikb{%>?pGfC)`I+3IY8VV z{@?Kc8Izpm!Efyq^0>o^TrjYHlu-bou0=tp`%usy7ok7y2a&`7R=a*2ejrFf5I~W3 z;xt9SwNS`F6N22yKQr-X$c{2M0K|WA_&JG}f7w#x1?Ar_0TEUFClda-M?Z;me-s?G?+gIww#*%GcFI(2#ol1V>@{1E?>lqy(5 z^FG3baq)04b8{o${T%v3Vzs!DX#N<=!O6_d$%6<{e~$g(Cx0Ca;bw;Lu>1+^53&1o z=wDFqLlCr3S8zWlVB>-ScYhEbU@bo>IJHZPb}&O_C|nB+B$|OloHHCOWd-b+2&z;Nl-K5vUA6?vV~y1*U3k1`LOSc#!+@b1#r1{+19CDNzI<1U+p3 zi5_6AvWq<&Y9(cD3^uT&;Y=Ar;q9lRk zWWx|EursrP!|XuZ2yIjXi>iZIzyNR+n1qxlkWBt#yw9)0ICn%M*|H4SZ!cIK;r@oCvX!A9MB;EHsC@JXlwv4fRr!LI02f0 zLp#v8fK>wdU!Xw%y9_J>ax{3;tiHwdZi@<4VS{MQ01ZmDl#4{(eX$U`8< z3Jb%Wfi1hu2HgDs*$EIA7m)Umf&+C9hCFnr2l=zLq+HR zN%0^ofN}sYc0iC2iiZ$EgyI1kj#NB$K+KVfhY&H~g-|Ah;sMzzq~dV`K^H>t5DIys zc)&=M;&C9945@e=z~L38cpQLB1GElkY=0;o8*nN)Q9Q&Wq~akzLnK!0s2<#$&Y6Hf>99XgUm{1@rGJN{)6wno*;>!{awF3hZ0*8u15pExt z0k~qQzSRZixcy_`iwy1ZGR7ui_f9@PsTD+q2PY=~1R#)FM%hadg!BEcu)*qbh`<7H z;6HI#MaaP>S+4jk?_MwTm)v;Yc$vHii(CkF&EGR!rE>NPt|ir^Xo&rn@w{&XMSbSD z-lQEtCZvWEY=cyi~};$r$v!g|f~+j>NYFTS`cvR*E+Na8*+{q`b?qxQ^h%-k!Dk;XAeeo@f0ib?x$@%h7IoZUO+*<)aU6KfC7i2yMtC56 z(Q`MchG61c8RMjG-E4fegrSDk@s$Hicxg`8!S0*ATqo6|sl>@cRX*3-$7gh((A)oo zOd&Mr&oafu&BF2*qI6n>a@=riVw*f>VcTx#U+@~9Qr%tKU%85g?T$w812PK;2YDxx zx<7Fp^47zkQtI`+W+q+owZZl)w<8H}$O7c%?Bu)Do3vGn#f8tNL_d8^t>7r%d#-Jg zJKMft7xS4j24conEkol(q}N0NbG-A60@@CmfD<}Af!ArZ`>fPF$@>fFJH2(20c$;S9Ueq)3A_XBzsksjC#_n& zcg6Mgtai6v!pq2WKx?`3sswynw~X$v>R{P>gT?!C%GdIg`Kn7^7n8kkK^KmAJay|W z27^a8&fSfDSS-G`H7rM@Sy|ri>}LHvRYf9pm*5ab$SH6a`~|0(LdFRV4*x#$U62fY z?y_KoBiRfqF3t^}$2B_p-S?AB?^O1ev5pDxmaME=zrZ`Xeg7-;M&T0*>8(7EhjDeG z9|R@(b*X2w+*D`hx0~%Z(u!nxZ5~&PB&05PDko#A6EMY3Xy_NEFHQ|8dYQ&$NRTqU zJpwHkcKQcUY5-~#?Oo@#%R6} zCaFti=Q7i>n4**`T(zrBP4SiR6IoSq;r)m%_iFyu>3JD-`jlOz5JG!$-%#D0?J#Xg z6Asu+uIm$8y^k>$dmfihs@|Dsri!>tLmds)`!a5LkrC z1D&!2&bbJR5B0d$FZN*N;=>^VIxHF`1ieF7()Uz1&S{q4;_C_7558@|T|bq!{EA7;)5@uhSA-zDdx?Gx(r*_Y1ehtjfOg z?tMymn+8tIrl%iB)0eTf5_JnnVJ%&&yu3OX%u#sS`-4xW2%ONbel(d>z37tCXa^jXtl*d5NXs~d0ZNQuj{C>h-6Z;6X+ zFVE>nETfq!Yj=7uq!cD1P3fZ*<9Z{^ri)x6vDY_QzcIu--mlqIhNkp&q)%U@D8Z z49`OfhSns*IqwHOhsSeH<8V&RDG8kGE{@5AEekVkGEy`7jkwnvLkE3@k_KD&4L)0_c0RwOmd?TXm5_cm zny*$Qq)Rfl`~9(ba@Z|OPh}G&qYA}|1w%Wk(t=%&LK_oM(A0>&LftpbTF;#z=jdEEQ)oAsVe@M zUv}Wf5lGgX)soRnZs!qw)wp+Z8Z#9~G53k?+-KRurwm;&m148#N%k^aV|8OIH)E?{ zEw@xyxS=63nPA7JgyGWjpx--X&B;^`|4_2FWo*B=yH=zYYw#OkWe(t2Gb5XKCSIIV;s_Ql|}+1 zTj}YotQOiCHKo*C+`Nm_Lm@dV0?_3q7537Qe$9Z{=igq}5f|jn)pAXzci(SYm0kR} z$e603AMzslWevNw4FAYbT6i4z(@WWwD3dfC+4d-3;GJ`7rM=uxuLF(5r~Ea=PNUod zf;;)zE~_uXJxfEQ9pzQmsjV+kD;a;>cZAwKXTLfjD;d^p$r&+rq{iCfH{kGkkyrVR zs!nvhh*XKaVPJW~L3DYP*K;k~0ly37EG4OgAvcuv-kLpGFX2tMug*+;VE%|c>@e2i z=ExJL^{vce*`>8gF57TDF7<$$+)jb-tS7Uf3-q}kSZ_4nO!f7Dis?}now;!hM$xim z86$8jZj3Fqa&Z{OG@n+5~EYm60wZ621;xiQ7m8RcxQFry@4qou@qTI*0X ziy6zVa^IJGZxh)3GxtL^uSeZ#$pP<5RBViSF@tB=R{0^8mobCojtua#+?R?O1`{*} zJ_=^}kYM|c1hLv^4v#V5mHleGwS!X6U-_|;Z%V~V827cPz z4teP+O{T@#x;Xr@piHE&MKqkGDEEwE099;Bu8+;+Glv&X!s`1~Da1o;+Qxu~UkT)I zO%cd{?qH2`e(!qru3(rE=Hew?Uh42{(<-5F`R8-Eo(ODRX}T&e&}Qr7`e+JcldcKd z+|SFNBg}~UNKXFwE*Fn&oL2-MEw`~AMT;?yAD;cK`hW=F+og6ulA=W(yPDhK{>q08 zb|0{O{B?I*b0MH(kLcV4I$fC$oa?=1-ZT{iP`S0yY*U3>#xUw^*ac8kK2VjsZr?@2 zGh_RZT(u2P4U><{(L-sYAy5X=qRtPExOGIHC7kJvJ3@7y-zwtP%GE3%9pZffO4l<- z#E_PWD68=L#A1fz3p?p@cJJ*WE$C#041-nq~@~2Jyt;{E0wye zkuP=GxuxPhC4*M#xx9}mM7N{GJLzuNW6wkzD$Q=BY}WH)2O6U7@>HQ?6HN{gpalrO zJWu^d5KX!zNEVCwJi45!k>s<_fkcwYqken_WxQ3GDk?zyaAIn4R>j~Zie;jY{uRVRo;2iaHCLrUB{i+J?!r}>l~h5k?qAUY%#8( zSs(KEJdT~;LOCQ|Erv;~ooMi6N3T7`d`t{FPaQ}^F!*Bh^;PfZLd|PbR8k2KnG$1F zuu>L+e6g%8EU?Xk?~A}-R%TmVy=E88C4&pw6IUK3#T-3^CyvjmrpQ*n9)PBnZq_A_ z>ek$e-#YZ1EwPF><~>}tAP%})cu#MC`=O1;Z5;?@mkl=&E6js!>f&Qb*xSA^O%D!y zJL5;BBLmjqi$!=h9F6=zjG|#J&?}i&_AcU!F^GgS%lariS3Se;M}HpBy7-qdmbIqz- z;f+0vouNy<6V3wgs7R=%Rx zFPfpI@*gtjqlCWnK3V6Wd(ryrD^3LGiQZdInrFrCnK&oQ_FwTo z3mvHFCF#NvdczkUn0hh3b$J`oJ5a%a8J}F}SU>6Ot3C5}A#1p%V|hJCMo-~v@?~CJhxxK=Qd1vwUuji z?!J?oF^6fzcBmCuRPz40rBW+qgTQJWGJ_#`oArm?kEH_8)`EnMcC-00-=Eh@<1(73Vr@1&u5m znr_0n^+@B(M1tW<#00lwE##=SMvi8P9Lgf!_SG1DC-<)qnWw24?;ky=4Cp)m2K!Ks zJPG!l#wF78LQdIp2h1nZFR@ja4NWVa1q+3z%w8967B8WA6ls+p$~1Izt<4Wp$!KGe z=D=8yb&+z#g@|}z(cD7x4U9S`B$KiHlkE8WFYg}=M{UJ8a$nk0*^Jtqw-p%e?6R3& z`+B*@0s>ib3cfB0867sAP9W8+3JYRfBh6`PFBJd;5iR)DIdrN*Tghh(Wfo^0(D|w|`!sYF@>s)azXgev=-l5OER0f1@G^GGG}+%$30+Ky($m#++5H;j z2u|Rsd~37SMuGJX%_CC$N>lr{E#5cR*z%WRgfaW5GF$K!jpO*`I~YF8Og-8EM5CA7 zVp6s+Y^Cruj$f}ra|v~PgQxILQv$zk-FOO4K7y(FkOB-d z@SMW<(xMk@dqs{fOAfPe6oMb+MO_kYHQlj37xY*lUQV!HbHFj}6~AqEBHkukN0dJ9 z31Ro8yh)NV7xFvbtStJ7`*Ixxdb&mG)a;EJV)&m+J2mmKpIy51_K~S7nN1ItJC?qa z+`3_rEuG2hk z@B`e-(6ogovW?_;=fg;1i<;Nps;FTN80ILyK+93ln+<=&jQ*`QVYJfkT(?J+fN?~J z_(__e)^TY7%W8X-}yq9||rR==9&X^YnXw$F>Kv$*k2L zhsRCAZ!JsG)DGC)-{~}?r_ZR{`-!A@t2y$_SF{ltRqP*FJ7w`1_hz?N@FZm|lnCk8 z$HWwc($;xPt{QWT8M1zIGO0`JX17*9cAE$rT$ z)x+7^bkN#AGF0bCD&yl5?D9-^y(@`@9b^59@Z6;H)+d@bE&P$gX*fe~Bbqxw7HMMb z(@F_3aNDkA!t-Ith21JFv6GJ@g(J~bmGYS)(+eDl0)=I^F1*Pk#t9sHMrdt?UST*< zMmR8{6{L3d6BfbMq|{vKQ(OXyC^JD_Tf*@8ZrQ{%=`xYgqpiz&T=VaMKj}2xc-Tiq zY&c&V)~@ZD?ggisQh0XU)fY$4|B~2D>GOxfaq>hWQo@#lnm(^8i^=zc3*#$$ZaHBy zX6&x{Yr%Jun1qbNRsivP^D(?ABX_d#QR;2;1MZ-J2<7m86V;e8l9%7nCIkzzKW;$W z@!n{(K{iqi!sL58gK4~yl5#n(&Jhz3Jb%+Qm`Zf#!N5-4ogL9(lgvz-KABX)TYUWk zJHcWQ%T7kJ~BM^t4&=eh2Dy&8E)9#U=x7=-UH1^B2qehwnNX5qX4oPZ4+N z=H=<_hh&Y;J4ML)!QpucpN}OQY25`dBomXkt~A+fRm&&I(>3LCQrG1y^x|VHnwV=} zmcl>U((JsxzDBGN!DrArcD38D$xz1VW|W@*bximu?gx+W->bR1YSzTA1?`UvAFTE* zGFMGCHhTrfm^Y4yc@BSV%`OQ`G&%_Av#CpLai*9ivp$sJtr>o{qHdpdu~V;;xGvVe zAcnwpC87--^YT~xos>XgU$?i)Np+Oy>=)09_rl8LLMQHbeD_T#YVwNhIx=N44itVC zDmAacL8PoImwQQ^=y;^*SVknd+-!3(-|rbiOpRp(3Axj|ui}k;lQt#&#==s(wu`~e zZZtj9S(mttm-9Hy1;#GU@7e97XOOW8iQS5vyHr%y;Pc(kFCzWfE9tc2k%=Z8G-zYK zF6_hI^whAgm*_Zhh#a+^eaOCpk5T8^c`?RREQ^qp!cPWY*XdlG`Ab!DE{fYru&Gq3 znvFUSG99eN>UdnzL4oMdRnWd|6u8jceWy18?BK#~`9MHKhO0x8cUX{1B+KrHFa~vuYQNS$>z;(S@ZO?$+}L>SgxIA&fd%9WR3bf z1!Fn$VRDt-ZL8R8@auZfj+)w;i9J%=Qb6_An%_08d^Za^ci!HYGONaIpSh>dG2(zE z_`T@vCkTbIwax&bXy+JOuIW_kFo{IoQ|rgscXZROc6YkVx=4dn;v7q~5KmM?sGc<+ zya>X@*1CB0@SWc^U#b!>v+aZrU2Ac$^cqNScO=%u?@Ng`1O1L<_Rs|0@|B6B_(*WS zf%S6Gi>1WaMQn@Po44m}I3aV~RSzNWtZ}aTisDn;7I}C z78m3RaT>Dux|Y}Q6z_gy3mcVY7*~!rlX{g~tB(Qe;<-*gNY8i3=u-3kf-B{NM(3eP z`Tfjx?N6f|xk2=H*;7xK-}Nkw7cUhLxK_6H9al}c5%cgCJ4Sd$SL2Y}&~@vPQn{LT z5byvkQ^Y=f7^=wd>2CN9nh6^fs~L)yeg%_7i9(OiF+a)09ld(|3<^CLXjfA4*nV`$ zO5gVtqq&BDR@H5MOS3K4&%rOx#LsaOFQ0vb6>RNEJLF6>Tf67EY%71H@LvxAq zRt=Wu;aaJP{P9sENn~*nILt=iSS#;cG>3@cC*RTPww&4F5uKQf+_Ba2T|ATawuHE| zAHEFB?TPH&G`(xHJ_<8i9PJpDyt2Z1Zd51@a7i})r58Fr+Z}6Z9&POGWVPbt$&(yx zluOXkkh;LlKW?t5-?&+G&?%A!X0AS3NdW7VuYCaPmakDO_U3SQ@0$^@Ca=co;r1(A z)pOJ9E=2CmdxbDM#ZU8IS6~g5Tk}>ji4#@5*_ZL4e;A%W$#upyzvAY*=u2=Xbb*#! zxDyd;!?pN$InSh2=I2 zgX${J;ExRvqi^kC|2$7(VtiP6q7Mna?^AF#VlUfUV>3QT?aQ6r<2`QTMXX1 zz2nkE$*#p7q=GeJbU@mOS{&4attj;(-IXv?9A8saejM_0rE>xAmXOI{C*SbPL%HBh z2l-2*$s@bfOogk>&B|@51KNoSsx9h?N9z6|o|__MyOP%1Hd~)5ztZwwbxPBeC>d~g zRHA1maIiO7w-`EI8sou7D|q~oF;8l38SY@j<~rG0`^B}IM*{Zhte3%TY_DszZMwHe zGD*{Z&y&I;Pr*U6G$+dM+$!mpwU1sb7SubXlKE$5T>j4XiigwEea8{vlWN5T9;TH$ z&&w~)No*Cz;bcTq=%sI53b@*A0- z`Z10EhBn@o1NsJ!>sg_;!M!f1FgBLXj1yUyQv2s!?*}U6W$xghLz^q2ogAaqq2;?1 z4-Shh1fl}@_lC-9tau3{i{A;~eDRLPKcdI6Smf+I!-3M8s@5lCds=*9Yx}J@qG`** z!ZQ5|*yt_~kF)NqybL@(BbqZzvgaTVE$S~a{$%f+ND zsj9fV|7&NbjBD{H&&pMegg06T&Wjf1(zibBmW_==c-|Ryge4jJfBH5#xVsx)>7Jo6 z5Yq3lyDNMolG{Kk@Oc!T{g&~?*mdg>fpV)^UyofYV;EiRf|Q@Do6lwH;}X*wT=%b9J&9iYEM9vXE&KgAb9WB7W~=w+atHFX zcN=m(es{MItG?trZXo<-u)Hu(b6Dxal_Cs&>oDz$2JdPfm0RH_$bMjaCaqh(GZc`~ zA?P@f|4kkSb2mPC{lUs`WyZyD3x?vK z8OcQ!1c57dE}8`_hcysHQVH(e}l$;^Ct5n;aL1 zy~yG{{Q*8ZE-aPKg&Mc7dFw5G$CrC|tTjt@9jXkE&%t^W9)(O09MasCwuwl59bfII zwuct}PGQuP;`odpuRrM?(Yr_EDi&W-_&O;M(RBAXK5xiib@79AM4lX-Ve>dgzIH)) zL*WWVUY!VWr$`66=$(+~)3qQEQip56PeSrNHf_=KbLd4qoR8*aStRwQN`!AIOm#dF z6BJ3>(BCsrswtwXqOPLGZ6;GrFL-qj?<(b?wb&<^byz<2c50-Zc~)K9Bljt1I(^^4 zyREz5Ex&6yh&X_I1Gw-+-|Iac^TowataWoH1d-+CeZ>_+TUhmfcGrm3TSAOl2g^~QvV>V0v(BdZr`?`@K#v#`P(g8Z(o%`<$z8+Y(Zny*XjD}#=&PH$#+ zF+r+HCY?^dZL@?wI78DZWs`=b>`oEs?orIgXKI4Ui4j3 z`nf@0Os2a{6TzxCMPZk3viL*!AM&(OJf>%wq`2{V>IuP};D~1Zt2ohOWJ+^l;Jy5_ zZnjs>=ilUmsC{mv#pPkR<;m)Zo|gY)T{v)Lf3fVzQ|j~; zlVO>6lV~0qiT)!mIVlC4PirL1287TygUhpujco10O>cJkM{_vnxxei5Kc;3a)XN4? zbv!+Ci7R8Y6V(VGiIjok+tW?Oy!ySwlUGFmSw6JrP zyB(*>)- zGSit5u#6wr$r^HarhYr2em>K&EMdk5TgGP}$7frN)s<-WEft4lQz=P+{V`S5 z0=MRR?t{Hf?O}*gCmd4Ix*pp(97`TW_8;kF0-IaM8Wr zxEqY+eBr6H_R5O$3tGN6%tu6Oa-$PnH*JJ99HorvpMSAJrzfA{cYQQND>_Q!*)Ql{ zU3pYPeHCq6|IBuh_tjesl+I}WwpiCf^vP0LA7hb4f}7V!l#~3aaZXH zyqcL7lt`O_tEPF%RAn<~*gI<^L^jPia=w0&(fB#xrA>*z$V;p0rOGjQ)vD`v2a_A} zy$y_}E#EUHj`dneymqF^gwBXF#7}<^!Ho3Cf4^Ty`GR?@X2x50^Ga zzsO$ys0jutTmDsv#W}RgP8c440q|5E+6h1o9^n5aAqqeL`z02g!SQ$Lu*kdaQe8e& z%y8@=Cmob*2)Q=p7PY>F`!C6!MrA&obhbd2 zSj1e<(gI2>24WE<7M_&@K#7HO-ePO|P9#ubVIs)2$5`9<%HUSE8Bk(j`Ry^X#3I2o z4=AzFl|q(S?7wD3mRQ8AJvP&^7kU1O==r~aopn9#7luJw7_Q<> znAcxjED|$*6`y8#mf;?WhqM!#@N_z8BC1ZZ4lDw`=Gk+1B^FU;k>L9!Dhjj%CCBq* zhtv4#J;AIw@U*@bqS@>>#ia6ZibDlEg!>Y96CvH>DfbC5&*#)iYp%ZS-OQ$H6RShT zeSN!#9@FZYkaoCr)bWmqgWKznv5z(Ru4EQ}Awj3A2Tvpj!p+I^p9(5mFWG1z3o1Om z_+m&s!?=45V~3O!UFrQ?1183ZAtK><*6&eg7=m7;oX`^ic=)a;y!S>M)a9-ujs;Ga{oQcJ#bb zum5PP+x*GTzNR9?gyToI3w)LXJmf8FMATM1^3|aUNAxa_Jw;`bFV)E2p#b-U&as&_ zg4v^q>RS#pgnDSKlV)}>lojGW7V6$vWWw(-)1qAu@{?H}(r>EsvF*=Wyol+S9af3$ zW66qV(qMFdRXgrpPv<3pb}D79chsD&&sqxnvelT3KNhjZ()*_{B@LA?5@kUMJ{ikA zl}#x3j8J-c+c>(qH*>u!mXkExtdHOmQB3TmWOA)Gf{X0CDRpw-iDvEyIhqgAw6U|Z ztT2cc`cAP}aMhjq>E?{s_=XoGS_Fm*8oDM*Wh`#IdBhc7jCuJnG4I;DF>4yn@o;L; znL=@N?i$e&VEY}$E8Mx?7pSHzvvOVTjmbH>K zv@0u0XVr3~>97>{8ww868^8&|pOU>kX{;ox#Wd1x%pus4w^%wj>lKs4UGn~UdM>M* z+DLZ^LBNX$>FAcQsolw-8V;>yV$7;n`5OWJl&p86WFEiZE{tgl3m(NN?zQBKsc$AA z@(rVBb=|r}2|$mzO=NOedFpe&(M{`C?yOZ3jS7t~&kW>k7CB(N=Fdo4MK^WoGuX%= z$>tU}udx#p$X>o#oPRs1;RVB^OLx?faUL)-Mduk zMQPuvddbX^CU5^z)s?=f?0zO?-o_g;<=k29g!JY_S)T+yaCK_rgwem{9gF>Bku5*h zYGs}+k0n-l+fcuij@79o-Re5$41`TQt}hnPez)LVG-DC_K)9_yJ5gJ})NTM?|0_Lk zQQjP^ zM@(oH)JH%#!xo(s-4%FTkrD7d_?!_NA@f6V%6iF+&!(aI;HHDu!f`I2*!c6g*JGe{ zBQ%AwE+dwa)MF*l(3n!s!t9ljKBla9m!hG>Fkj=L_7O;`gbbZRClj8c?GVsXFHP5P;yI!K{g|i3B7Vph-u<0xg-wLmG?&(Sa)hXwnGA2ITr{@xg!H3uTK)T(&9`; z3b-|_OGWD{FXF{*$D}`KB)t<6Hi+jkF|~5U7#3ll)cBx0%6Ug;U(QN{Zw>o^-AKmQ z7V?0`z1|kG6Dma5!hErD$g@y(;*tgScPw1&Ait*4k`Mxkpzz2$i?jCznm^y7YUm*d zE+mhrZFLv-Ytg6i$IR9azL@o~F|y>EU+N{;rN*I${`&XphC?&NjnC)gQ-spbPwi?I zq?#US*@>Fb8#yOC7#H6b$!58HGv=j7ug+8cVNFe`_8T`Zr5edRWp|-5k?~A5ddlA| zP?2h6N)$oaIMMxT{6YIS{e=8DO9w`9 zMZ3?NT%WXbmbmdUm6cj4>@h1pfeB@$avS{&F0sVUYwf2=l@!xa`Ba}+q7+Q){g~IR zpo&xOsw%a;EXs9LZWcFX0u&0i0!uDhubtnv2_L`VAMfFBvYtw2V;`?O# zNZEv2Ua`Y2?p4ARx6r3`_9g>cwP_Q(Hw_)r4Vs=bv^ThCOqtqm0JRh{04PK~1+-S3 z`GyH2P&JWr0jQ_Y1xhGz5FJEu#XX=SgXqLUFD^6Kh-_%^-Y|)}y{5?2o@?{^sV>b8 z6ZKDQ84n=0!wqw>FJ?SQ;A$lp8r{U~!eh+UqS9M^BWAZ_(#Dp7rduF+*?EY9=gZAD zHgTuz{p>mH9q@fB|M9nymyhE#X|BJYy&Zm5H(&Ddj*n(z?dYNIbpiBa#Plep@OnM= z*5otJqZB+3S^*HPGoKjl4YBokDW`U8jCCHmzJ3QV*d%wEYLS~R;cTqYjovP#O-A=~}^Zwg= zZgUi9K3I1f=lxgo^>`_+3eWM=3EZK^yBnh(@J3rP6@BLm&bpN)vsZRnURq^M$0#vt zkl?7{BbCs~u92RpfHL70qh_&-S-}veu$u4YA>y%>OQmp5i4QJ0XgVq6-|8h@o5fy* zOQ~G0;>J{cA^j{lOBoWgwoc+$QU6}>+d9!^!j^035*(9k@^#Zd&-i%H_f2OE;&Wt| zGR#v(%yFqJ;a?NWpO<7z=hsy~Tl>^2`L1Iig)y#PsF2>(z0=uoce&zaQnJmQ=|RSz z7sTV z`|`O1IY9-(oYvG=fhs)OV;UlK-2;q9o$1n{?5lio6=Tylk3E}G(v<jD&VwQCcE? zSF#*l^O}6;N<;0&+gQoxvcpf#FwnyZ3z)d8KJti3 zQNM@EuHUbuAH=t`%5YHSvAW>iVB+Lr_>tM3bae6i{1VxUonYU&*R;fDl{?)tyWM+- zTJTBJW#_6KUN#c>OSnOF?WKapjbI%wa$8&SnWzPwVC?vyPtWD=SPg}3KrT&y8hiYS zb?{57{HCcOu`1!%Tqz8d6zB`@vWCgA>CYTgwKm&$!5CWP7}~5d8~e6IWA{{gTzk8< zUq@%i)XXdS-~~*>eFdEPSvTQKR33#Erg|R@ujZ4&q@%Vp#;TX9`b)tByXv6?Z#pHm zw{*=!R!Ec z=-_J>Z6@Eg7_Uy3hB?Gx25up_rxZWhGc>?r$KkQ|%-+?}SSiwP6U%f-GY51x+RSd)Y6@Gf!t_- z5$knIeDuR>PVueLTWKO^=qU{JaXrE5&$g~O6OTF+bLN^~r8{hZZUD`> z%$4|Yv8&3ae}rMgrg8j;h0MD(X$}>#Z2L{#rUaUv_~NC#v1Xb5Wv?t+dYRM(3?YHL zv-3?)^g*NhAZz#g@TcT6tP27p3W3(2Rh0xnwe(ZeVYBFsp0P^Q`5PO+zrW20>pB}5 z7T~--x);*lgDcB)tU_HqkG5O#He+_&;i@Ki1YWi^P2$p{?7Lxk->};PmGt8)E3C%k zElY4p%)DF^F+T)*;cH0_pg#e1Up2ot;0E_+TuHAFR$}xfJaFYKvb&=*xgFtIC1i_P z`RQS`hLiFu&Pj*VjeZjFeJscG6yjR5)o){naSu|za$u}}ubd{yqzpMbFVuYDp3xGc z3i(DMZW%^O<<%fiGUnM&)eQb}VsQ;tmAYNyl$H-G#U*@}8t>NvJGrsv)7z7Nlop^o zcGqD*a@0Mfo)YCYfB&%WZWKEylVx%BFSU_;M6T?Q<`t6Scc;fLy^_T-xToO3Gf_*&Tg ze9!ddut-hcwaca7cBx_KDM=pQm7sF=vh|;|eFiG?xa<|w@%plZnK}twBRYRgXqh{! zo|oP-Y2TpF`j|J@=i$g`I?E!G^qefSHB6sX(>?d6FUIF?9THeQ(WepUTX@CL0eUXI z{w%qee$W#4QFfciJ!V-REL=)QnXwA-&a3?fu5IJp(-xLC14H;lVUXFeN3)9oqI-K= z#s*3CimIf-P8a-M5c6A!^?=%;QL&eM$27u8=al`ZAXXg>f?K~da@22p&Xyq zx+h!!L(I^XsH>x;si!C4mC$Mg->2OXalfo;Dz$$XOB&up!_*~HX>1uVbCbcKM1X1J z;@zW{M}+Q@DR_Mh)Su_DFsaMP1M4Ih$;jOOwqJjgPz_d0&a3fy@XBu70P;L22%{>e z)^fpymr#23)wJ|Q%-C=D%eKb`vVD95skYG%uL!{(a97pD4@wC<6sFbpKT}z7Mz~!e zgY5;H*_eJ(I9%xExgrS0Rm<%;>m(tkiZl86CPuGbr`0n0Na!gz>A{kdL`pLf8WTuE zdwZ@1z|%8x$giXyFZYaRnd6i#9lz&dYK`Cax@K$SUcDULUp#1~>%t}XXs#^6AiV*L>G}RWhPmAyM_!5V3&{QVl7u`VFy`!PVXJsqNzw=vlVAJw@2$@YH&T z%b7m14A-J6oGZQvG6$xgtE!fB8W_=js3AgCSNQzuq<-h@=3d#}{=Tc&(j;brk*s>L z*&T;Vt#-MoA5u+olR|>N*QlI7vsvTt@?Dw>6ZY}FotPUPvipfPJQBVw`yZr9q~ke? z@GM9h1WBQalV>V}Xd7RiS2dZczdTT~wT2UG0j{xu8W_P142*iqH)n|RYK|IXwW`#) z8fF>jI!K;(^QAxbS}rHXO?}W$HstDx-X(7Fxwd3)sMtko@$?IlQ*zDcxjKlJb-F0oJ-0!@@Vj`vz z*Ocee?rW>y=ioA6R#t`kx`Z(>474iq$7ihb_vU8xgt0sjuWymO_T3a_4Ri9}WKg$g z+fGia5hr!yy|^qN)B9FpMJ;T4FH(7ngd`I~JEr?N^QQ6Ea)&(brNd|EQ{@>e?vr!b zq`z)Hq%5d*)ql~XwM6FWZ7l^!wlVZMo??vm&Q=sl<#OaGfPBTz&AaB=1enz`-_~=@ z%}e#(D(v^nESoBRfSG?Ei6TqE-(ip zHpd|K#b>E2kYS&rnMPNqoSs~UIqIsA^QjCB_>4ieTa5R!`9m~rs#*!P^k|42drmy> zdPz9nCN5+D(wH^bKcKjR32rjq#@k=}y_-S5|6U5}GG+&-%X^ zlJ_z)U28CMf0HL|KF8lH;7;)s^H>*iPJQ0r)IVly)=}`ral87YUgc}dvpGk`qa+38 zFU2kv>H4jJ1|MM7`W^WveTh@XDU&>_0EsfMa;z*}3ePrjzhjPtG3q5K5B`Qxx9|0! zy|}c4rrET(BOy@yY=+zT^btpyN7NDNVS5K3jgG)^V?((xIW z!w%+GNC|+y9a3n#-pz>ypSu*cozS5+F;)8sc zJN|&BoeJUcgN+SKgX4+7j|vK;o|`duBrz7eaQS!+2Il;+C?DP&&!G*BAAgc&mlUXx z(o`@d#Gp=np_w`@IFRVc9kiW{W3#e8{>>?_- zG4GZwS6Ef}(jK_N;zzFs?E;bCc`E%iwXyA8pN-WbJxW4xs%=@XQMcT?clTa%SduwG zdZi$V?2FBkUgVfQOL;|9xYO(*xUM+9(>nLe%ZXuo=PE`Yc73rXw=q7DRY+QqlkVM~ zp07#BBROKV?A|Uf^;AEMz22o(Rp<_zJd$ZAYvwn~RFeZPrkYpxy)ac=mgGLWHSL~l zZQXW+-a%1q+rF@hihzKMfRaUW&N(PqkeqXp z(Bzzhh=>v;OIDx($)U+f$i0!EMH{!o_s6;Jk5%3}cI8!S;gLbeyhk526KH1jI0xk(Cvhio zCte&sYJ2XjY@V<;D2h2coKA6I{BEMvUhY$xs~KvJok?xLR!iD-{C@j<^^AN(jX9LK zdtpOXV3~I5W{>_pu^$Ot<+M&0(@618;b&p}L~lFPD}LRM^{bH4o>)?jNabN^x9J5v zMK+p#BjpKdkO305!fX&i(VE&0YR$t?HV95Oq)tZPGI@i|OYp<*O?F816$Q3|wE1q^ zAXSY)-(9nA(lV>3>@)8_xG*Hh&o$rk4_ zTdLcgQER+tB@2q3nQk$GtOu*5BFq}l#t(wYZg&=x=sqz7xZhB8yWi(_8`o!A(ttGd z%|epT6wOZwPTLAA(w#S=QSImh_(PMS3pqkUscX(LB~zx};u$NUQc zx=LB7+E45(mJd}LS$N35TAF5^y+NwtNu5b?TgeW^M5jPyZb9=x@d(uAHr{_|8o{(} zRK0)1g^zW$!javQAvb#$(D`L{@yJIV(@LGne4{rCE-@B;M-6niGwkbK% z$N!{{DsJV8nw8oyu_alp$a~O`C6%=ml6Oc(maLB_Hp_sQ%ieLXYJUgx_^aiuRUlhy z*6AQGW}>Fj7)SUMtNZh!`H5+dywg2A;}BQ>b=Y;9iC|XgZgVZV#GsZ=;@xvj#7cdD z>P$J9Ag<|Mv`nfvMRm}7$61(k?!w~`j782IYrMX`8)zEGtXr%CkETM`uSUY*==x>p zCq<5PHnR7&!g9&4?=4P!e&B1OkoNgTmHJ8_ zJIJnouZIc=e=!|R9I z-s!Ts-@JGh5?uliM$DoF}k~^2#vw?XOArax{aWt1Jsmcm`Q83@9EgUUnEl#I@8{1h5r=^BbghMwd4+U`Fxrk)Hy8V{vrEPR=+C#A(W?VmeULCWO`d-rIh z2u*{$4`|7`xvwlhDzkxd)TZ@f*TGi?sPg&R7F`sXQFjHT6bl8JtNT_JisYw;uRU>?x+dWxy zxHi^uQNVyB!v>`n-K}&#up#S9mBGlkLYl}nlbStz=+ZcSw#cSoarbkrO=Y4Yv|Qz= zySOPHi-w&9zUT4`+6kLcjKUR8Ho`l|cM{1=8IajYjOa@1#T#~NB4W25$WPgGEI9F2 zWcM9S9`R9zf#i<8#S-xG(H|MbF65VIii~}ns8WsBueQioXY1sh$=Zx~9EsQyd{77es)Q+kQWhWnm~ST9<|UD5eTG}kFS*&Hiae>64tnO%T0PqnnoP*pFVZqTBL#b#x* zC)!1khO-am0o8Lb^6)o+>UkQ(xsVdS);+Wr#YlCkWDHvhia@ejCaako7l+%FtXi2k zON@J{ys78iL7(!wr{wS-b~zEgu5x4_cN=1G-I%DlX}A(l?xzIBs;P*G`*@WE_M)Z7p zL+{NT(3!SJbcJfehOm(&3YwjM=f{|x(p6vm(5t;@>5c&^PS@bK^=(t-r`rW_d&XQz zKUyeTrD!?YF)Ue#+0~+-N4w8*bDcTQFB=+aCN&+j?;jgtL+&Mu-X;-NA%S!gafZB0 zt&t`0eZyWp7_Hyx`Lp(`4Zda^nduV}XM;w$B*%J7Nsi{Z+g>&6blu7v{N~*Ew^Wbt zO+SyT_rJp>XMe-$rSFruRI~%OP?0@>}Y za`Suz%d3nceru9iew#Ezt3i*piV10JlrhpvAbHs$psbY)zj7XqUEQb zCn+!AKw*_AuXUA$FtmMM2{Fm!)9veAn-bsT`hjuc&FcEiYIQSn>}l;BDn|-?o=F}W zaDKc~X_mzZ5pA$v+ccXa%i)(Iv5A&R6eTpvCDs}o(xq$jzZCH6pi*}G%73wS8sLU* zdH3;iz}$<3E~3vllmxUYvGzVco~72bR8KT&H`&mEQ}UV(Je$y~SI5TFJXw zbaGdl+sZm6s!fW2JS2PDb7S(>4Q#gDp+nZ(x3lr3$KfUz}Zt3yCj3r;Rd+BMbe3U)y_wyyZ>%JCCa?((J z)!(XYEUS{J(GnIEgpz4I3fIY|NTWGkayv3RIe9ZToJ3KidZER(=h z^dM^P=W|>ClY+QeR(AumcloRONDj?xSH%mQP9dFLO?Eo^Ht zj0{&Vr|)b;gi|$JQMtlrrP~s9c0V^!a*V7Pe9p!(jWA7b;q%@q_7jXPU7r-qZiTNO z>JFX%px$eBAM?YA-oK}z$@udwU37}x9W2`ulHdX!vuH18wFj!QcNJrO#13^UIpMfy zO*vh7Fed{!D7jG9vg?=Di#I1}Q~^U1ixV3pCU#MseC}E)k>h;B;zo9Ng7kB!ALFdG zJV3wYqjzLS44i%;8wHYbNmm99nZ~b~f`^a>oN=mxabr-fi$weca1Ylsk*UpMK~7IT zQ{5*vPODE|h0K)BmH}e;obTyXlsOXYdC>B?r!K>Svbckzj(eh?gMhb-6E7I>U%4e0 z{b;LO97|(jW>3+LVwYGH{Y`xDx2WRY!L=rU1iZPd*2RY_I-48wi@387d`%vh4=5xKPQFj3mTAd)>`)kR z!;5yy*SaYcx5pJ4aY)PC&3Tr+wW&k`eKKXw=2yp*&#!CEwdKGXKY9w z>^J*Id9s5hxQa9TR?X&)tlOKvh^-Tdu9peEoQrB!&z?}wi;3QnWFz3$9~g?k{Jv8m z3}v4PYqYg|-z%V1KX-nAiW9=jrkbYzY}&d&d6Ln~y<&Ay_&(DhD&5Xf>S}xfdJhj#y60S$aQ9(_ zO3Ar`@zH$;Ir(e0ua-XLuRbb#(=aQ$;_(Z%2Q2;bCoZoz6^saWAa9HJPQx(?xRM*Gn`iA#3Zv^w4=mvv_9dTQ zw)|}Hw2EQ#e3AcNK&f55N`yjK$6|m@f;v|hGeT89_LX(&CZ||P>0o-$jc@zz3olix za-NzdO%#gaQMTRod_3)oX;%I?dHb0GsO-~|+c-H zu0oR@&nm1Va2X#x`DUcN@px!!P85;gm16N!=7t!ufI$9+n@m|LzLRtC7dt!w+pXow zs|UIF?d_7{FN{PyTot_=O5*W;LlS5|6?wW${uXNO8_&I!Lo>1}0h>A8UFv@B9%9x& z$ZZ_h>ZbBrr!iQ%S#HFb*oYUkQ;_?9w9O_+eNNdB1uZzWfnD(ZzW)9?O364Uf@$ia z?21Horr7v4f@3l1v?K8FstQkP^7i%R>`rDWxj8(IyCUTJe0yU8%k|uKap!zzDhno* z_^zA;W=uVfV|OMrYgf5=B7HB>_ImPU5;_-peTirfJ?GodJEOdd<&~KYaF!1Roj8Z^ zU-VVFnoD$uEry&eulF@H==W9T1Y_o)>Shaz?ai2lb=RxS=sD>S?CxQ%d0TTZ`uq^@ zyb`$k%K9WSTA!QtY7)v}tRAF^uC6m<57j=K4zb-o8oeKSlV_B!_-}&9e`#U&R}d*I z05q=r-!@YlPBV3d^F025I$|GTG#L`zJY!GQ0F#Mk%Av~JAoK85;CNr{T?c!$%{)jcw* zu6_IV>lofJ)vI4*GY-#U-SI!v?vu;7J`5rl;cl^Xw=g1>E4?Z8tE5Peex)A>>OS%W z-FjcNEFnU9qtoJP+{6A(i`L&MAAatZc*lO6?*AgMBc+T`ld5r@E)^MZcoUo)F$E4C zPj+Y)*sGb~&W){+8VEQRvM${YHd9oG2JHBQTJ5(xyyF z?h>!XvfcI%Mew;-(t13#SlhMUX$BmC7~9>H^P@Gu^22Hmix|U&wD_=mrC0n_$~=k` z4+{O$%QQwhAM_4BQ-T$m^b;Cyge7(B`uVO;Th5RUNM+>lUa7+C z#cb#LLM~_3%4`monYp~^py=j$vxQTGSFuG`B;NVT-sSA`ox@*rLULT7W)jnc#N!jl zv17#kbnQdEL5JecIvLaqba^^>I;1CklvdkKoC%9ie_B{9%Q#q3pd*2*Vx*a}--V}xEgclPzrKjq|y?hCf( z4z0ea`GV4@(eBKX!=u8pu1l@wEfkO+LS)S#UjL22{7c)#|0qM||L+8*Crwp-?gh{p z@QQRi9!JzmQv8CqMeF_TFy->E4y1^;;jc)((i0IXkY3Z2x8c3AE~0;x5^dL7vubB+ zXNxGnMz(JGj2|tgk^JcDT1_%Lq-3C@3re(j@+FoooapYV*IORH+wc2cCQ#YE{j56v z@SRTQ3!#8u&M!_u?rxtxrWNZznrp_l#kQ5WTTgRVwe8sgsZqr>Hr|{o8QUf{=1Jom zn1rmHQ<%Kh>_-<3dvw`!HS}axkd%#*b6QW2_vd{lykOA>SXV!X_snD?FnH^#kxvZ) zCgA2%jc>c3|fr z+chE7YZ1Ts92t@3Ldo|$A}@oZS^QaP^Q}AIMRh8PSvvc`D>v3P{1b)zEI-9WgrF$j zOJQ&*MxN8YXkYRa0gx zyjoqU=r4XY2Ep;rJ~7%f7ca(RO&$w)N-3?X+5V{EdE*qt!cAP^x(B*V@AM}9by6`) zK4(Ytk~zuiZ-P?LxfM_zKPh#lbvGm8Zz#;LX+oNBl9jh>8(9oK>1UGESj|iHlZ|Uz zvDr$|4T81dX9R!4!vE5|^Dh?W6BOZAqvPe)vUIVt0lF0fyI1}1O@McNwQ`rn69x5{ zI^7Z?pRxyXS&!vtUldrFn!xcDigr{Tqh5V%O3=!c3BsY?-e#Hs$GN;)Du`}uW@%Jv z^4QVosl9}X?uS}n!tPHN<5(s$tq(T0tnP`;k~`tY@b{E`W?L+AnYfW`&zjD3Q#MG- zD*d8rExLbaad)#hyYzQU(#FZlO{C8ZR<^g49q;(9|5Ikxef*(1n8+P=+{Xpn5>-(@ zRxHc4ZaI>;buP_7?jF5tr*YQ5IsRBP`IY_kY7Al4BgWL9PFHR6f_nNPC6^R$a_X)O z-tMvKkdKR3PL~ec0XK_l z#@&(D<2p0n^HO;7gM5kqHT14LPOnNmt3Td8#ZCZ4vIvh&56LSHbV07;!KXEyXl_R1 zF}EAZ6kpfHL?(YmT-LX;Gj^Q5iK@Q$3pa-T9!cl5Vqrr%-UExfZ_GOaAIvt*PNmvC z49KC{bbe$K`AftjYgD@rlofV*@^bF#kte zZ;^j(@QIv%8Kt9tBVyU;1CG3X!5!R0xpzx+>~3o_oNsWRo=`k;V~FzdV(R{UXN$}v z)}q-(L#}!5?eSW>@n#TWKPD;=vwRR$vOsj>Z$4-3t0Y7}^A|k!T!NWM<0?HEiE$&B zMi)G2T!Fu7%+{4Bf}Tv6C=ZAI`|v+N1EF&Nn1hW?S3SYeuNyCnrzOy#3$2h6|GR>? z@YW4psY`ckXUWFX2`c-rj6M|NNy9c!PHldu;QMQ)=@=IBco}leF2PCjDN)f#~?^jqLTsC-lYd z$X`mspJo2|hD`;+XmTKS8lGR*7vCY(Lo-A1BY;U%XGlwk9uiJI2Bx4l%q@-0P#)$l z7X76x*wJ+D|Bw5>9=>jGJo;-g%ER2QL8g-u;TbsP8b`B!7fbX1SWZNS`L&=n`|v+Og9@Fa1H8zkF&9za2B{?cK4WwKzmfkN zyF{I#7nc5;f2RijYdhjUwoCb+RfB(RPVzS@kXu{T($f)Wc>f<8as0C}H!}NFpL9C! zEsEBCI&fz(m*erxmvVB|Ry{5PPvm3qi;KHI^e$R|O0*ZK@18NX`ovgYTriub5X<-3D%c)lOkg&S9aPv}=1*E&9|Z%duX zxS#27QzH=)AMK;AGmV(kPLhS_+g-HaA7nt!^P0e>fkumK&K=L_Q}tW8{kOyxG~tD5 zKH=%7kWlewRED<9n_~ah7)D?^ru4L3)C;~omdo97jw9l^TrcuAcf=MH`tlbCtMm9b$U{w5aO}qU z!Ac4#+j-OOlj)O5+8<{FwcR(5m6WEg-hDOvPsScjfhpvJA*zwE-o(I@Dc80n+&lW^ zWa9-r6u&I=q zNy~UVnQLTZX!DYLWO6+Tt24)^KP9xC(>aZl9TT67Tn;`pLB~p#wpcKqX9_J^m<#o%6L?YdbN3~Om}*9^y{~- zK9Ka4{_3~Y^lz3AE9@je@JM((ZZH?vdGAxHb&<=;=*wr8`mR{Li8h-}Nxb-v9>`}U zK5biKgse#V|6H3ED3FpYG2Q!meBE3i*4gZxnOE69Aw3rjJKjV*7dqpoYS?N{PHw7X zm)xML?8WNLO`J$qc)j%Ivi7OJMs^x{nS@;W%PA=WoHrAg4=*0N#`d@ulEv?=LK28N`YS? z!DjF#%xFemJt^@gRO(XuOBvMTX*)_`N7hgY{++8KV)A+rEjfkJ!hr6?*seG2-g z^=2Rg!(4~eq@&z$ddKk;_PSa6GMdvodie6P)T9O5a-<>)=(S<<*1@ZNxVN8*lZ4O8 z#iE(RbUYNe6FBaR#w_=*jV4HNK8a@+TnV%TrmIRy3}iy@q$kfm=f%i-FrVy9wKQ}| zYQVvoa7mJLLoODepvGZ2VI`chevhEiY#htsb=EC^Dw);xW!(3N2FBUM7ZHW}9ddrY zyd~nuE@%9TxX4Kvl=cZ0a)o#YQ%epMZwj;uU8i9| z!dQ@t1L57W0MFL3BJoMFCi*F9WoI%{1JGvkriHrek9|zO4a#m?8s4jmR4SVr%&<0BR0F56$?4!$mC|YwkKmgqV%PmlPFNVXk2OQGTQ?~ zh9%uUfuF6r(*>UsyVvBdCF>k~J`OJeI3~NvZ4M)dyuu-HHTq6QGh3&K0#wVWY1MAh zdT!CMVe-so_KzPH{;mV8-_@=}iK)cSdl&kKjUh?2#%&5Z`GuT$J3{+Ml{Iby8F{H_ zv?T7Wg7DwzzeZQrt>eJ;6Xu}at+W_ z6l7!k-^>Btw`LwudU{-8Q=k|T72>@k>=W;d@p8trby*d0Npgtazjwbr9sdwYjfmpJ z2`@1kDLzz@3_51O*gHr7Z37V{R0tF^~BLK21S#y;|DbJ+1*zx^tSph`OBvAcqGYTKlIW*43$7|t4Oe1`JG zZY=b$BNJ&ayT8+Z9Ibbl8{2RkR?0+~p@h;7E9Qe3%!sO?$174sj15o?-{YP1%Os%Mt6woVG8|iRFuR zM3=goIBY<^$g#kg;!pGheXqZ8bzG-ppLRcT8iXxgcMY)p{AQKeIN~~YsT_i~iZhV< zvA%UMK3^I6#&#jCPeq&+nSDV7oi?VYcjPp$UEgTCHV_g|ao2ADvPu!-{FF%G1lzPy zo2t2!+F|7$CRXTP*1+GoJM)RZ+xB3ABt^g9G%eEyDZO%FQ;Deh)VlsoUElFiU)vT8 zIa#5|;f$Xm!>JEcrsZyI&;B*NO2guun}&{UiC;IY>Q&3KG>1D1?LL?jb{%tBC^S8M zwRkwrv%1|zA(-D|y(4J9d*GAE?Hj}%A6rIhs!mgq=6;fMiOx-W)v@kC2q>8iu@9=C zi?tq8b1Gl^ zyC@_5;HqRTxvNAnDp}OyFfSN%fqR>^L)LcKjKS4a`UmPH8OGHGMmD#bE*)XKd-1nqKhML1Gz&Xrr8|B-G>PLS{Drup8( z+!8>Z(xARh=%a;%+QV8gASbz0gjIz>A<(0p-BOJkr6rgL##}_2zP-Q&c%*)NCk0 zKlKk`xp-?A9i3L57H`?NC_7l$etv{hQ#NkLSs!j_7WX$hL}&tfuyo2bNt%7sjL%~? zaF4jd{nXuU(xHMdL%`Lh$)p2yL9$0|*x}z0WKx&a+;b5`QJ}KDu_)T?s5U?p}GWt-^I9VUg2}ZiBG24L` zhEIMDm0j?v8uc&uu{}3#V#oNR0qM_vo$4ogksy)wu@Basg)I##KdVilq>>WEoWB5+ zV4JD4TLh$M*gW{T&=Y>k=5@kZJQTP|n!$Tb4%4o4kp|z8RGiIBa;15?IS_6mP|4tPb=OBN#t1>t6n??BAu(Y1K zM^?)8D#GIe7^?IGX?vJ`6Rml>y%Yc1Di9jc=Wl=H+~hLQYlWegf6_|1YlfWg)$SS7 z1d3khyKnnYkIqJmT3rYsS9h67ijA*(ObA&DAW&6M5v_#oOjJUhWSl_@@IVdfC@P$R z!TN>yQx!l^{ouCj7aU;D-dJ%>sh3R^>2{lvAVhWTnT4NRa?+$HV7CQbrnDqV5aL}_ zG;bwTqxxW}`O^b%-p*ls#Ma%{8)ytr59+R&3Rl78 zqzO{`%ydlLF+Wz$NwRxpj@BGmI2TLvSz21H2*W>PDl!TeXqYgH{VjB=6!h~Y-X4Q;}Qm&?sKa& zr|!5b1d9f9P76hA!e{-}>ya2s1^8tM>b~QJLQ(Iq5ug;lKQt7luSr$G_&P*_kr^Jp zz8&HX3Vv@7a;|qUXzb$Ga=EJg@wH?n4CF~B8l;nZCA+I)oI_j!oIEOGLcq497|SGt zdLQ)yG7#l!QF=QvDp&8Y*aK?5*QC-k7}2(tCMLkqxm^44W7)bJ8a3Std46|~(+Kq~ z-YYk-dp17@!3Vg)Wwc=ADvSt^Fqc2{`*0#|D$Iv3xpS4LCr?boJ7!osUb}Gg;LLkH zAyAU!B5+>85H2Nsmi!V0fA5~?l^OqqLBovO<9A7HYUD>_Cg(kxfNU@XsttlB2?Yl2 zsL}*^?;cND0lO3sG(-~7GDkwRBEjWU8c5`AAo?y?U+hv)H8$xuDoVn>*_2G6Z3OfO z5wXR@%y%?c(*NA4`sM5Vjgj1pR)_|mM^cUDaEsztCDhx+&8{ZeQR;psv@fL|L4%kM z>1bW~%LcjYzVw^2f}Od+&h{Yb-1LH_j^RXd4R|{n@|-Yp2=HD)+9ui|oXjs=U1l++ zc-E8HjmH=nWk9#icWj-Ahqim+TucQ6CLx!$RU+rtVfd>Y8(skpnO4!O$!XlS$p{I} zS2i6lGShL)jRBph1Me_te_j~p8=AkZqfq~Z|FSpJlq25T46dT@$_1lHkY{tw1ncgq zYn0EmgABR)R(0>i=XB_aH0D{Houj=Xap^Wo`(R|_;p}O6RUM|-AJz9=!&fM}1yZC1 zU0|;dzB97pM;?J`MSeRQvH8a|H?Z>`svzAbh2pi~Xug2%*0JZKcGo2FR>w*SfIC>^ zg4d>Pf>xtR=CkkKA4`Hs8MV5MSB$4OWTW)BoTtlKl&71^mGur`^#G%Xun%Ssig(+U zPJcWU!uwVO2@cs$W&Ad3I(X9f-tams0*AHsDCgrXVtl-$J~W4Eo1sLvB~Xw(%8S2PwjHuXDWxeeEZ9gkIlOJp3%`zY61W{$`_U z2JNP%Nr~ho|BeS#ph~9JxAv++g{ZTn>s*PlQ;7%o(ue+tohUg+O;|3UF_OKi)DeBr zF2)egc0hbDaau6CV(!K6V9i&9gDC>T+2SWhHQYY=% zehve?wafm2Xw{5{N3?hqM#!z-?C6Uoz>8`nITe>{Wvz7DsfMhx4-r~th=w`7)i;&g%xpIp|3OX&-p8Ho_ z6k+XUx)waM9+?(jpp^E@IhlEisM1VZD%7m;>P1f0HsIAQ`s7Kpr1t)V3NH{p6{_EV zH-vy{+||RY_If8V!UI^A_-ThIucFDF=U~$jllng*WR9T( z%& z2Zx(pgnH%b8n>@bVqN!*My@}Zvy?k-7ax}P2Zf^zHXN|-SukW&E^ zovl;6)v#4tC!cY<5~4C!LlFpAk9M37gMns8J^Df|+W@F{>ZWVdq85AsYxg)x2!h5O z2|BFfQEK0f_d+ZI5wY$&*&ZRlK?Sf``iix{7LcY{q%d}AbQEzGSgjEVs9)w0f2{o5 zKll<^FRk6ZbW!|O|lP$9r=z_*J>_mc*+?r z=)3H3&_O$N0r3MnKOHJ-9p48gyZlg-Lgiv`Sn-5HfQ<6Ce!0)(kRWr5N2Ax-sdSEK z4MmHHufMS=bm2H$THG+lY-Hn)5Nwo-4~PV5Xz4q?i8`X`{nxoKBH92D15jz&VC<>I zZdz{?1H=8QSsbvl1_y+M zM)&0ohzFg3krduch$NUqeR+d-A790M3b)khZ)rKqn*|(DsGrI{7>w``5lt>Z>ixfCCI&rRG9&3xbjCtVljBI5)72c7cF`Kp9#9q;U>c zz9_0SJWN(~hWGim+-xl#Byns}VC(e`nS(91XIt|xE&k-SmN9~qQU$0G!^HU)*s-dl#zxX5rj6J zlRL)7lW}(aL-_?&dwm1#CF3ZGR+~by%`jawYWPfPv3!SGES?7NH?Ou=iqyRpo@8R9 zJG%F`1({pZHry<^0eqtX2)~;hu$S~`sD6FYx#;|#kHy$U<-5jMrSBnKrXV5$z}jsM z#fNOIkj3y5E}PBh2u_EI7(FgB)c)@FQTQmJxU=$PWlN!v?rf`t4b*Wo=6=Kpm+ZX& z6k>khoA&b0b#ZReFZViMC~LtFgUA6`k&sq$0Be2@$QaY>SDp*sIO2Dvbm6HNWb1f) z^X4}(d2P9&DW}rFdljeMHM4bd9ivK_+~zm*ugH$N#yk((m;ucX`U7j9tk4dfXao_Yl^Hg^8HN}hHJ@&?r^eqedsK7UlG}}@P!Z?fX=l-zR%Kt@ zxMA4p)V3~9Kp4F>9@-D29<=R7s729jBL{8W{3R4*Qb%18YRclm*R$KB4aTVxKt^O+ z++wTo6+aN9UF>ZQ0J#+-p<=+>Z)J#0Dy8BAuqyBN^MbCw#yl_{{&Oy1Fn9LPWc z;qjiPV3}KlmpflPD(4HI-x`o$(!Sev;ZwN=pzZ4v8?-3abaeJWxjvqWRjK_fA`qc?EUF!zKVI z@P~X64lmW4t3K5Lbg2+>1(N3TvvT>j^q^hNOe(Uq4J8zMz{af3BLF$yJI+7U$wPyY zVx&+zi$LQ#;>>qe+odk~ry|QTj_shUY=u^;9_FoSf$Z!c&KulNn)-u<#i#eR3 z-Ec1BhT!pmgU7#jx97ssT%*Wo#BxBP_f!4bg2dBQngD#D5{wLKI0Q0&X{``~iqz1P z*uav3dZ+Q1Lkql46Wui$@Kj9_8vPN{y_rBIGaJ}~@Z#m!3d|R=*=hAV=I1b7N&theG%X6TNclV%687!eWM*%Dh+Tj2AAvA}6*D_X2!Nfg z(r2aCCc=@W6^M}iX@FCK2+$eUs_Q4G10K8yI2(XkD!5P6!D@y(o?RBk|N%(0nZdjRUQ-H19C=B9#PQfwwPVSW#fY5%<4B(Tx-2& z)yqtILil*jwCeLwQ7hS|!QT7%y=p1Ma|1j6tl|idqC`hh%3~%VEnY0IJmdz&;ZFVT31~}Q_@@c z*Igu%7XgXmW0;G`P7d0YS&k!9K^@AT2}sLX22f061_;N0lvDg!;^Pj+j!v|O7H!bc zw@Y0)&QLEDnXwRE^IyiHU1{V5dO`~~eoKLF{@*HN`kVV)uGXzw-_+hgTKrwP*?-+X zfKQ13|E%hkU+|w*xBNmp|7TUV3!zREC)9lh#2OAyNbi);kv;Bxkr2ykz%z3D4cY2^ z;!0H&5soMQ2ilvPRy8&_C9i)JKjG=EGF}m)60vycW*I@4S>3-)mv?9#^W*M48xcKF z^sfNl%5~#CeNDH0%>|LY@k{WU+^l&peTYFwYs3c2;o(ol}tC zA|`;Rhq!N4M;R~Q{KiI(kINzXL>igsUWT{-e%gd32sX8!&mX6Y3~S?gtBt|kvvWl6 zlRVulIr!l+GZqHG6*@B%lE(_YO%BV1v*t%{_=l&qzLm2Lfjgbph6?{*IHVFx|DZfy zH}$J2ACslzAE|>;vR4bOQ_tLQ5DaV-TQ%Wd!V^E@cH)|)Xs2H_$X~j%Ov?4Rg24Ys zw3~!LNSM&;n_Clj*?g2wzjF1Zf&QM1g>_CfZ@|7qypt#40&Yv^u(m0l(-0rQ__X)h z^66s>NAeGJRc#$AVX;p=%d|t29~fKRFD_nygh ze}Nlm?-#E4teXD!B&Yx9=c?eS>;K0y`p54>1lQ(jOZJ{VXwo`7d5Q>KQdxLC>VLEm zym)A#|LL$TO?q*EdL#vA4uP18n(N)QP@bcX5*C~`aSR;1CB%L{(0UZZD@+}4B5J=9 zkxlG-9fss>tJuofy!OlEo$<4}IIQ#r`9hcUmR6wrn^MhK{hdL#tsgZv5DLLHFQ`w8VpZ zR5zsDD{cpvSMP(zVqfed6h|AVF+DU?tC`uPl4vAm2D5w76vAfWb<>aAX2){r^_o=+ zb{`5l?Ly+`Ka6Axd^&D3&vk>6-nYH(rikwB!WXVp;v41p!8&IIH>L`lu!L_ZJvd@~ zpH~(}pWgb}kBQ=Z5&T9q1~&eKhL*IQ8z~wge`9Z`+Rabrn1=XPW01(1{Eh18J$*N0 zPSlr`Z^Rcknci4xry@YbEwm87jhy3>#GUYsb=f0W>bqjyrNS+$=sU6xYO20&*$3*? zKsPrUOwTB*xY{u~=!mZsd7auO*FX$f`ouaT-+b;q)hyNc?aQCi5h&FbTC@8WCUFrc zbA~Pn~7e4;v%@s9rVu%lRN9KSm(=m7j~9IZxqD@MqI3&&Fd*e zRPLUF;(qVl*k>mv@O8YYN7)g;Fzo*+?S{mXm1Qk$F@MP9QOA#-Z>*bBaX#L)`wn!; zmoEZNUFxz!RgLZ7M`8nftxxZ;AE%Q99 zQ?DrVhlegAt69t+5cruDwIm4cgXQo~4NW>T_u*Olxij`bMfNKMp<=U-9mJ}wXHAia zqg6diYXvUs(d^Wylqdul{P5vH_;2K5JAFlF_)%pH&z+&2YoX8=Nk@GCr$dhT z=*y~Uf>WOnAyL;yMv|9Nr<%*HCLPiNtqqO=?&mGVRmPv(_aY#hiMlgjYWd9Uac$Js zPRus-HRoM7pB~Ov4W(7kPY)M)!7K;1q&||o8rQY`ltR>OyL;oNa`wg%M<{A4wxL(| zgLHyDUp~&MEuiC&PRe*Pb3A;DC2J!s|1;I~?^w3i-X3E&D#^K$+vI|q+cVoWZv^6L zSB-iV;jg4uym%8-$MpV(U5={A%7X?RW?I4MmatK&w4e>e!-) zdeEpRX=>-}iH+6K_5rUd{nJB-uXl!M>T#O_NH4{;T2bNw`Y9hjo-JLvF)d0-m;JX^ zi{qb4bVc2Dv*t@`pH44X@+m#(-dj8Z^99Y!(hnc9Iw1A+J_~t+XSb*^?3vX;o2n4vmG8xjeM~A#W9;*H9fSmi2r}F_a0zPZQa_a9m`e}3nBuFBE2`M*)~8U zM0zLErS}qAR6wMOf`krAN2GU15m1UWrPle%rQrK$5?aufAUa1`OoaP15QJ&^xqlqVp56GKU#2UV#E1LCB`oU5)Zi% z)SHG!fSpSOcFs^c9vVEP6|ee#!Y@JQ!e`R!ZFMUah8ZDJR>^i*(mG}iU*(Ef9PKup zJ(_B)KArWPh7TH*O8VVvDp9IG(ZFxSW5m2R?e>!Ug1zIV+1o!{p^dmy%R-apz~aKu z;7?8R=H~0;_3T5_mueY3gOhSn9r>lWNQbMCyIdj5t_ zR@KiJ9{X*LAGuVe-z(9`)VY^;f%*4)mfzE#WSN}yI(~f47+tBmeHK5nw4T~|Hu~zr z8=(o?0jWgBM47S_7R3Y^>*>3kb7Fk45AypoaAz)FymA1#b^}&2nCRfRpFh`LzkURPKzunq zzkV%}qUJT%?U6$)ZRzP=;}mnf`{>c@yT5;n%WG}rRVy-ipIu$OTcz_H>#6X{2cszH zP|)LbLG;oHKc6EY_^Pqm>;^WFff2Db30EsJ+|SL$)%RFrkn&=+Gv!7Ok@q&YqGCOP z0OvgS{Q1sLlSX`v&xUeXdarFo$|=r!>eQVLuN_Cu>v?%L`}gl>y7lh+6P~c0=_F0H zB5l*0ijA!LaXTFJQGt$}qfv5?*V(JBor>cv%YqDg>9sqRJ$BkFptfJIG{vO$=AafsX2}CtE~|gS-zwuUtL=eaTmRsNrgHQ11Vjubc+Z z2v%lTC26h)E_dN3qEvtRUE{B1XV1WuTyX}zpYKKDT51*p>JvK%;(?EN#jEwLKVM_WcAWBc%#L) zv99$*qWAUHJKU-d+FM!#`0IxIH@})HpF|aNIXDy@IPkn>9*?lT9EG|l=P9qCE#!ss zSinv&Mk*YDIu{4&KM%Z9R>pX9I=7ywa&l|ct-bGlR`*C1$C_p6&d&7YWUyuq7CGOG zXy#y+JB%7{W0HvB#*r6?kW2o(kB=EfzZU7Rh~(D|Xo}-H#G==537VOmeV!S9UB+X6 z_suoJ(vX|;Q0aP0%k1)4ow&65m$1G~Mcd*-GZIpYF>O=pVK*Me-=#MaAfLXnD(N-! zm85ZPF3PlMl$NfA)CXQu`C)>QPfVma3}hUEI;&Yt6SZ?5dB?^LypCmu1au}2nI6+^ z)<=n48ezR;@b;@>rr)jlV0FP86|NqxQPS#Gtla+?`Oi2UOO^7jm+J%RS6j;Qu+!GFrt ztH!9XZ(b?#Qc^FNp5>>_CQu*8Wz|LF=Y?x&*;YQZTWG^k9ZDoA-35kK9t)Lv=Al1-hWlWOu6406 zSA2fOCS!5_@Zoz_X^jGc1*KKshEnNsu*P@_D+>$8N>#@MU((PZE+eyjf;m9Ue$Y8j z%XV|v3P_oSQgDMEki62;{K&|zWxT(EfkA9^Y5N$4oA-4Jl}lKg0lH!q%D@2kvs3w6w$uA-5hRl;$FbS_WmeQLc$8kL1sCu5 z)D&3qO^adk3rQS`yF-(WCz!Eu53<(L&z|`g!EqxlP2Jsmj8S-Zmf(i`!sU`BK<1!h zs4saK2+_z~4}}|sdc(~>I_Ar+=+|vu!Y1dcB3d(w$<9t4V_NT4OXd-+E02iS$kZd^ zQ@xfYLVK9bpRa0Ji-}=Qd>9$FW1N$k8paKySwf%^66GyZ%j;TsT0YB0_u@9q+T$*PhTjoocKxB%?yi*M==ZtdI6)})l-%Yc5kVmFUv>;#L+`GUarEm_&_x3L_X}9h zC95*a8?b<=w|RwyWiec6G{4G5yf`ah zzPkF5M#R*s=*iwZQs(aZT$!GLX@}||k`E=xNiDR4DKklrFV?^|LB@4bu5>>K68)JS z^~By!>BdP8#q@k%(I?+di`Cu!@gC{-J(9g}vHd9AVlh%nG4PY2N%TN{ZG%tO~I_a+Eu^7BHzl`?^4-xga zQkCn*4G$0H_>9LM$Mk+~AU@204rS87H!E-V!04uG8>{NwG48T~v8=x*=23Td^$Ew8 zGOxBhvG3{9EhE=Nj`J^M`aZ7OYaWTZLqUPT3l6Q=5JkFqxS`R)BgijW{TH#~WO367)+Ryn+W zkYxq0Ed9a+p=|{{yd-L7p-bkvc{3ul%9p%+DuC@gYWzD>JHw)?tXM-MLr)qsOJnmD zRQBXaK?`+t_3r|xVylZ7)g;g8wUH|1Rd#3u2S?Xh{M}{&6ZCU`iK~VJ-}^Vi(D*Mu ze4f@!7H*~wU(|c93>7fiI+kELRO&vRc|V4!HFIsP6E={ZuAvby-Oi{l@O_SwqhwAQ zt>JjHru@o}n+ZBv({nwh^`oCsaAzcIUnihmw~Y}A*1k>IALgZaN2{EWCVb6Y0^h+0pJ(js z7&)wrB`*Te+=6ny{OPL_w6|B{bNUd^1#aCBXcO1TB?9~jiq^OPYx~`AN1;=-VjY~ z7A&-jz8`STKYYuQzW1*04wm%X;6TM{i-(w{id!qT)!C4VRSx*w8p*1v6yS}GF#&g~ zwA53SbqBs@Ja^Y&+)?Ww@D_hw*kos*ww;ocJSh-vd1~v^ZSwM%KD+%D z)XSIN6HSpy1v&$B2bcv7I-wQSL0s_)xFo5i$>Kv|(Sfa5N8uAD{R7h6H^4KFT+C;I zb1K*o@bm65l6AP?878rJ`KlaN2cavL$7)9X@#w>BN!Mhvi&uWL(G!OPL3>5cv=S6W z284Yd44`b@nNDiBv9-nHwLIDkO{os!YB3aFURJ0%$ZfyPoX73A`=@>B4VpJK0fD8aHBUYHAP�HUr>Fn9K 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/weston-snap.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/weston-snap.log deleted file mode 100644 index f8c9d222..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/weston-snap.log +++ /dev/null @@ -1,62 +0,0 @@ -Date: 2026-10-07 UTC -[18:54:21.109] weston 13.0.0 - https://wayland.freedesktop.org - Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/ - Build: 13.0.0 -[18:54:21.109] Command line: weston --backend=headless-backend.so --socket=wayland-99 --idle-time=0 --log=/home/tester/acceptance/weston-snap.log -[18:54:21.109] OS: Linux, 6.8.0-142-generic, #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026, x86_64 -[18:54:21.109] Flight recorder: enabled -[18:54:21.110] Starting with no config file. -[18:54:21.110] Output repaint window is 7 ms maximum. -[18:54:21.110] Loading module '/usr/lib/x86_64-linux-gnu/libweston-13/headless-backend.so' -[18:54:21.119] Registered plugin API 'weston_windowed_output_api_v2' of size 16 -[18:54:21.119] Color manager: no-op -[18:54:21.119] Output 'headless' attempts EOTF mode: SDR -[18:54:21.119] Output 'headless' using color profile: stock sRGB color profile -[18:54:21.119] Output 'headless' enabled with head(s) headless -[18:54:21.119] Compositor capabilities: - arbitrary surface rotation: no - screen capture uses y-flip: no - cursor planes: no - arbitrary resolutions: no - view mask clipping: no - explicit sync: no - color operations: no - presentation clock: CLOCK_MONOTONIC_RAW, id 4 - presentation clock resolution: 0.000000001 s -[18:54:21.120] Loading module '/usr/lib/x86_64-linux-gnu/weston/desktop-shell.so' -[18:54:21.120] launching '/usr/libexec/weston-keyboard' -[18:54:21.121] launching '/usr/libexec/weston-desktop-shell' -[18:54:37.465] caught signal 15 -[18:54:37.466] no-op renderer SHM seed: 77 -Date: 2026-10-07 UTC -[18:56:16.863] weston 13.0.0 - https://wayland.freedesktop.org - Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/ - Build: 13.0.0 -[18:56:16.863] Command line: weston --backend=headless-backend.so --socket=wayland-99 --idle-time=0 --log=/home/tester/acceptance/weston-snap.log -[18:56:16.863] OS: Linux, 6.8.0-142-generic, #142-Ubuntu SMP PREEMPT_DYNAMIC Wed Sep 2 14:24:27 UTC 2026, x86_64 -[18:56:16.863] Flight recorder: enabled -[18:56:16.863] Starting with no config file. -[18:56:16.863] Output repaint window is 7 ms maximum. -[18:56:16.863] Loading module '/usr/lib/x86_64-linux-gnu/libweston-13/headless-backend.so' -[18:56:16.867] Registered plugin API 'weston_windowed_output_api_v2' of size 16 -[18:56:16.867] Color manager: no-op -[18:56:16.867] Output 'headless' attempts EOTF mode: SDR -[18:56:16.867] Output 'headless' using color profile: stock sRGB color profile -[18:56:16.867] Output 'headless' enabled with head(s) headless -[18:56:16.867] Compositor capabilities: - arbitrary surface rotation: no - screen capture uses y-flip: no - cursor planes: no - arbitrary resolutions: no - view mask clipping: no - explicit sync: no - color operations: no - presentation clock: CLOCK_MONOTONIC_RAW, id 4 - presentation clock resolution: 0.000000001 s -[18:56:16.867] Loading module '/usr/lib/x86_64-linux-gnu/weston/desktop-shell.so' -[18:56:16.867] launching '/usr/libexec/weston-keyboard' -[18:56:16.867] launching '/usr/libexec/weston-desktop-shell' -[18:56:34.537] caught signal 15 -[18:56:34.537] no-op renderer SHM seed: 77 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/run.log deleted file mode 100644 index 7ede4206..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/run.log +++ /dev/null @@ -1,11 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:11688): IBUS-WARNING **: 18:52:43.011: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:11688): WARNING **: 18:52:43.041: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:11688): WARNING **: 18:52:43.041: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:11827): GLib-GIO-WARNING **: 18:52:43.160: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:11841): GLib-GIO-WARNING **: 18:52:43.205: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json deleted file mode 100644 index 1a76cd88..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-configured-desktop/visualization-smoke.pdf deleted file mode 100644 index 5303e9deb5412c3be4882a9e65966a30d84ea8f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66398 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 CqiY`k diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/run.log deleted file mode 100644 index 4082ac28..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/run.log +++ /dev/null @@ -1,10 +0,0 @@ - -(io.busystack.busymark:10926): Atk-CRITICAL **: 18:49:57.651: atk_socket_embed: assertion 'plug_id != NULL' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:10926): IBUS-WARNING **: 18:50:22.793: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:10926): WARNING **: 18:50:22.823: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:10926): WARNING **: 18:50:22.824: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied -Can't find a11y bus: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.4" (uid=1000 pid=10926 comm="/snap/busymark/x2/busymark --visualization-release" label="snap.busymark.busymark (enforce)") interface="org.a11y.Bus" member="GetAddress" error name="(unset)" requested_reply="0" destination="org.a11y.Bus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/visualization-release-x11.json deleted file mode 100644 index 1a76cd88..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-no-at-bridge/visualization-release-x11.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/run.log deleted file mode 100644 index 0c1c398f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/run.log +++ /dev/null @@ -1,11 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:13272): IBUS-WARNING **: 18:56:07.334: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:13272): WARNING **: 18:56:07.381: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:13272): WARNING **: 18:56:07.381: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:13412): GLib-GIO-WARNING **: 18:56:07.526: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:13428): GLib-GIO-WARNING **: 18:56:07.592: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-release-x11.json deleted file mode 100644 index 1a76cd88..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-release-x11.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":true,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true,"typstPdf":true,"pdfEmbeddedImages":5,"pdfPath":"/home/tester/snap/busymark/common/visualization-smoke.pdf","customPdfPath":"/home/tester/snap/busymark/common/customized.pdf","markdownHtml":"/home/tester/snap/busymark/common/offline.html","writersideHtml":"/home/tester/snap/busymark/common/writerside/index.html","customHtml":"/home/tester/snap/busymark/common/automatic-single.html","embeddedWritersideHtml":"/home/tester/snap/busymark/common/writerside-embedded/index.html","htmlPages":9,"htmlWarnings":0}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/acceptance/x11-repeat/visualization-smoke.pdf deleted file mode 100644 index 5303e9deb5412c3be4882a9e65966a30d84ea8f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66398 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 CqiY`k diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/cleanup.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/cleanup.json deleted file mode 100644 index b167f41c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/cleanup.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "vmStopped": true, - "privateDiskRemoved": true, - "privateSshKeyRemoved": true, - "seedConfigurationRemoved": true, - "productionProfilesModified": false, - "additionalNextcloudAccountsCreated": false, - "sanitizedEvidenceRetained": true -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/collect-identity.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/collect-identity.sh deleted file mode 100644 index 1ff01993..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/collect-identity.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -set -euo pipefail -date -u --iso-8601=seconds -cat /etc/os-release -uname -a -systemd-detect-virt -lscpu | grep -E '^CPU\(s\)|^Model name|^Hypervisor vendor|^Virtualization type' -snap version -snap list -snap connections busymark -revision=$(snap list busymark | awk 'NR == 2 {print $3}') -installed="/var/lib/snapd/snaps/busymark_${revision}.snap" -expected=2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce -printf '%s %s\n' "$expected" "$installed" | sudo sha256sum --check -sudo cat /sys/kernel/security/apparmor/profiles | grep -Fx 'snap.busymark.busymark (enforce)' -recipe_sha=$(unsquashfs -cat /home/tester/package.snap snap/snapcraft.yaml | sha256sum | cut -d' ' -f1) -test "$recipe_sha" = c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d -printf 'Installed embedded recipe SHA-256: %s\n' "$recipe_sha" -snap run --shell busymark -c 'readlink -f "$SNAP_DESKTOP_RUNTIME/usr/lib/$SNAP_LAUNCHER_ARCH_TRIPLET/libwebkit2gtk-4.1.so.0"; sha256sum "$SNAP/busymark" "$SNAP/lib/libapp.so"' diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/install.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/install.log deleted file mode 100644 index 9e0eeeb2..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/install.log +++ /dev/null @@ -1,34 +0,0 @@ -........................................................................................................................................................................................................status: done -package.snap: OK -2026-10-07T18:39:23Z INFO Waiting for automatic snapd restart... -2026-10-07T18:39:24Z INFO Waiting for automatic snapd restart... -2026-10-07T18:39:25Z INFO Waiting for automatic snapd restart... -2026-10-07T18:39:26Z INFO Waiting for automatic snapd restart... -busymark 0.6.1 installed -Name Version Rev Tracking Publisher Notes -bare 1.0 5 latest/stable canonical** base -busymark 0.6.1 x1 - - - -core24 20260824 2124 latest/stable canonical** base -gnome-46-2404 0+git.b31ceab-sdk0+git.f80dd8b 168 latest/stable canonical** - -gtk-common-themes 0.1-81-g442e511 1535 latest/stable canonical** - -mesa-2404 25.2.8-snap288 1839 latest/stable canonical** - -snapd 2.77.1 28254 latest/stable canonical** snapd -Interface Plug Slot Notes -audio-playback busymark:audio-playback :audio-playback - -browser-support busymark:browser-support :browser-support - -content[gnome-46-2404] busymark:gnome-46-2404 gnome-46-2404:gnome-46-2404 - -content[gpu-2404] busymark:gpu-2404 mesa-2404:gpu-2404 - -content[gtk-3-themes] busymark:gtk-3-themes gtk-common-themes:gtk-3-themes - -content[icon-themes] busymark:icon-themes gtk-common-themes:icon-themes - -content[sound-themes] busymark:sound-themes gtk-common-themes:sound-themes - -desktop busymark:desktop :desktop - -desktop-legacy busymark:desktop-legacy :desktop-legacy - -gsettings busymark:gsettings :gsettings - -home busymark:home :home - -network busymark:network :network - -opengl busymark:opengl :opengl - -password-manager-service busymark:password-manager-service :password-manager-service manual -removable-media busymark:removable-media - - -ssh-keys busymark:ssh-keys - - -wayland busymark:wayland :wayland - -x11 busymark:x11 :x11 - diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/portal-setup.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/portal-setup.log deleted file mode 100644 index 7115e127..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/portal-setup.log +++ /dev/null @@ -1 +0,0 @@ -Error: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/public-ci-access.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/public-ci-access.json deleted file mode 100644 index bac67d4b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/public-ci-access.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "approved": true, - "approvedSourceCommit": "d55b41ddf47ef716d5113c89da8a3a2f3b80e819", - "repository": "https://github.com/busystack/busymark", - "blobUploadSucceeded": false, - "apiStatus": 403, - "apiMessage": "Resource not accessible by integration", - "sshAuthenticationAvailable": false, - "branchCreated": false, - "pullRequestCreated": false, - "fallback": "Disposable Ubuntu KVM VM running the repository installed-Snap workflow commands" -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/repeat-acceptance.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/repeat-acceptance.sh deleted file mode 100644 index e13fbfa2..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/repeat-acceptance.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash -set -euo pipefail -cd /home/tester -for pair in x11:04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh wayland:05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh; do - backend=${pair%%:*} - script=${pair#*:} - destination="acceptance/$backend-repeat" - mkdir -p "$destination" - started=$(date +%s) - bash "$script" > "$destination/run.log" 2>&1 - printf '%s-repeat\t0\t%s\n' "$backend" "$(( $(date +%s) - started ))" >> acceptance/status.tsv - cp "snap/busymark/common/visualization-release-$backend.json" snap/busymark/common/visualization-smoke.pdf "$destination/" - if [ "$backend" = wayland ]; then cp snap/busymark/common/spelling-release-wayland.json "$destination/"; fi -done -bash collect-identity.sh > acceptance/installed-identity-final.log 2>&1 -sudo journalctl -k --since '2026-10-07 18:35:00 UTC' --no-pager > acceptance/kernel-audit.log diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/results.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/results.json deleted file mode 100644 index 5805c177..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/results.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "complete": true, - "sourceCodeCommit": "d55b41ddf47ef716d5113c89da8a3a2f3b80e819", - "snapSha256": "2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce", - "environment": { - "distribution": "Ubuntu 24.04.5", - "kernel": "6.8.0-142-generic", - "virtualization": "KVM", - "cpus": 4, - "memoryGiB": 4, - "snapd": "2.77.1", - "core24Revision": 2124, - "gnomeRevision": 168, - "mesaRevision": 1839, - "cloudImageSha256": "6a81c37564db9b1ee84e141922625e1d7c5b389b99bb3c572e0243607d5bb4d2" - }, - "reports": { - "x11-configured-desktop": { - "passed": true, - "checks": 23, - "report": "acceptance/x11-configured-desktop/visualization-release-x11.json" - }, - "x11-repeat": { - "passed": true, - "checks": 23, - "report": "acceptance/x11-repeat/visualization-release-x11.json" - }, - "wayland-configured-desktop": { - "passed": true, - "checks": 23, - "report": "acceptance/wayland-configured-desktop/visualization-release-wayland.json" - }, - "wayland-repeat": { - "passed": true, - "checks": 23, - "report": "acceptance/wayland-repeat/visualization-release-wayland.json" - }, - "spellingChecksPerRun": 20 - }, - "confinement": "strict; enforced AppArmor profile verified; network disconnected for offline spelling and Wayland visualization", - "installedIdentity": "acceptance/installed-identity-final.log", - "headlessDesktop": "Normal systemd user session, persistent Xvfb display for GTK portal; portal activation environment and preferred backend configured. Final tests use no NO_AT_BRIDGE override.", - "historicalFailures": "Original TCG failures remain retained. Initial KVM session/cgroup and portal failures are retained and are not passing checks. Their causes do not prove the cause of every historical TCG WebKit error." -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/run-acceptance.sh b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/run-acceptance.sh deleted file mode 100644 index f4dc0b4b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/run-acceptance.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -set -uo pipefail -mkdir -p /home/tester/acceptance -cd /home/tester -for script in 0[1-5]-*.sh; do - name="${script%.sh}" - mkdir -p "acceptance/$name" - started=$(date +%s) - bash "$script" > "acceptance/$name/run.log" 2>&1 - result=$? - elapsed=$(( $(date +%s) - started )) - printf '%s\t%s\t%s\n' "$name" "$result" "$elapsed" | tee -a acceptance/status.tsv - for report in /home/tester/snap/busymark/common/*.json /home/tester/snap/busymark/common/visualization-smoke*; do - if [ -f "$report" ]; then cp "$report" "acceptance/$name/"; fi - done - if [ "$result" -ne 0 ]; then exit "$result"; fi - done diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/snap-acceptance-before-kvm.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/snap-acceptance-before-kvm.json deleted file mode 100644 index ea68520a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/snap-acceptance-before-kvm.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "complete": false, - "snapSha256": "2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce", - "strictInstalled": true, - "installedPayloadPassed": true, - "installedPayloadLog": "snap-installed-restored.log", - "browserLoginLibsecretRestart": true, - "explicitAdoptionAttachmentAndDeniedNetworkRecovery": true, - "spelling": { - "x11OnlineInstallChecks": 20, - "x11DeniedNetworkChecks": 20, - "waylandDeniedNetworkChecks": 20 - }, - "visualization": { - "x11Passed": false, - "x11Failure": "Unsupported result type; historical retry also failed MathJax recovery", - "waylandPassed": false, - "waylandCompletedChecks": 13, - "waylandFailure": "Typst visualization export failed: mermaid at line 9", - "waylandReport": "snap-visualization-wayland-final.json", - "x11Report": "visualization-release-x11.json" - }, - "outstanding": "Passing installed visualization acceptance. Public CI source upload was rejected by automatic approval review; explicit user approval requested.", - "installedSha256Verified": true, - "embeddedRecipeSha256": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", - "enforcedAppArmorVerified": true, - "installedIdentityLog": "snap-installed-identity-final.log" -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-run.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-run.log deleted file mode 100644 index d78110de..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-run.log +++ /dev/null @@ -1,8 +0,0 @@ -dbus-daemon[7530]: [session uid=1000 pid=7530] Activating service name='org.freedesktop.portal.Documents' requested by ':1.0' (uid=1000 pid=7537 comm="snap run --shell busymark -c ? test ! -e \? "$" label="unconfined") -dbus-daemon[7530]: [session uid=1000 pid=7530] Activating service name='org.freedesktop.impl.portal.PermissionStore' requested by ':1.1' (uid=1000 pid=7560 comm="/usr/libexec/xdg-document-portal" label="unconfined") -dbus-daemon[7530]: [session uid=1000 pid=7530] Successfully activated service 'org.freedesktop.impl.portal.PermissionStore' -dbus-daemon[7530]: [session uid=1000 pid=7530] Successfully activated service 'org.freedesktop.portal.Documents' -Ignoring invalid max threads value 4294967295 > max (100000). -dbus-daemon[7530]: [session uid=1000 pid=7530] Activating service name='org.freedesktop.systemd1' requested by ':1.0' (uid=1000 pid=7537 comm="snap run --shell busymark -c ? test ! -e \? "$" label="unconfined") -dbus-daemon[7530]: [session uid=1000 pid=7530] Activated service 'org.freedesktop.systemd1' failed: Process org.freedesktop.systemd1 exited with status 1 -01-verify-gtk-svg-icon-loader 1 0 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-steps.json b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-steps.json deleted file mode 100644 index 170c3ef3..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-steps.json +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "name": "Verify GTK SVG icon loader", - "script": "01-verify-gtk-svg-icon-loader.sh" - }, - { - "name": "Verify shared runtimes, packaged tools, media, and resources", - "script": "02-verify-shared-runtimes-packaged-tools-media-and-resources.sh" - }, - { - "name": "Install one strict-Snap dictionary and verify refresh/offline use", - "script": "03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use.sh" - }, - { - "name": "Exercise strict Snap visualization and PDF paths under X11", - "script": "04-exercise-strict-snap-visualization-and-pdf-paths-under-x11.sh" - }, - { - "name": "Exercise strict Snap spelling and visualization under Wayland", - "script": "05-exercise-strict-snap-spelling-and-visualization-under-wayland.sh" - } -] diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-user-session.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-user-session.log deleted file mode 100644 index b04d6d5f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/workflow-user-session.log +++ /dev/null @@ -1,4 +0,0 @@ -01-verify-gtk-svg-icon-loader 0 8 -02-verify-shared-runtimes-packaged-tools-media-and-resources 0 1 -03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use 0 180 -04-exercise-strict-snap-visualization-and-pdf-paths-under-x11 1 110 diff --git a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/x11-configured-desktop.log b/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/x11-configured-desktop.log deleted file mode 100644 index 7b7b424c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/installed-kvm/x11-configured-desktop.log +++ /dev/null @@ -1 +0,0 @@ -(<<'default'>>,) diff --git a/delivery/nextcloud-explicit-adoption/evidence/libsecret.log b/delivery/nextcloud-explicit-adoption/evidence/libsecret.log deleted file mode 100644 index e69de29b..00000000 diff --git a/delivery/nextcloud-explicit-adoption/evidence/linux-build-final.log b/delivery/nextcloud-explicit-adoption/evidence/linux-build-final.log deleted file mode 100644 index d49ba3aa..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/linux-build-final.log +++ /dev/null @@ -1,2 +0,0 @@ -Building Linux application... -✓ Built build/linux/x64/release/bundle/busymark diff --git a/delivery/nextcloud-explicit-adoption/evidence/linux-build.log b/delivery/nextcloud-explicit-adoption/evidence/linux-build.log deleted file mode 100644 index d49ba3aa..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/linux-build.log +++ /dev/null @@ -1,2 +0,0 @@ -Building Linux application... -✓ Built build/linux/x64/release/bundle/busymark diff --git a/delivery/nextcloud-explicit-adoption/evidence/linux-release-hashes.txt b/delivery/nextcloud-explicit-adoption/evidence/linux-release-hashes.txt deleted file mode 100644 index 364a9c5b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/linux-release-hashes.txt +++ /dev/null @@ -1,3 +0,0 @@ -ddd5b6fc361e697cab18f195b6afd47f4bae64ff19dfdd49a6495a341528f32b build/linux/x64/release/bundle/busymark -9e0ccfd3e1f8164c5d218dd0b5bfbbf8b8b1c07bbf86b5295dd5a9c2f7b5815d build/linux/x64/release/bundle/lib/libapp.so -6da9cfe58839eab6a70aad4f15cdc824dab9418f7f22d0deb02b5f1f50ff8118 delivery/nextcloud-explicit-adoption/artifacts/busymark-linux-release.tar.gz diff --git a/delivery/nextcloud-explicit-adoption/evidence/linux-source-identity.json b/delivery/nextcloud-explicit-adoption/evidence/linux-source-identity.json deleted file mode 100644 index b3175eb4..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/linux-source-identity.json +++ /dev/null @@ -1,578 +0,0 @@ -{ - "ok": true, - "compiledInputs": { - "lib/main.dart": "f7bb63a6768713a00033b93c91f80327ead164aa9f52058b1c4bc1bf0309a0f9", - "lib/l10n/generated/app_localizations_zh.dart": "2cf6059c3922729f1e46e80414247938afc77f7b6a7b5b7e11b861151f30be5f", - "lib/l10n/generated/app_localizations_vi.dart": "c110fd1e4ed46d432e0fb8c2b0cc762cebba9313a2766a05ed04d164a7ae8909", - "lib/l10n/generated/app_localizations_fr.dart": "00400058186b9ed58239cb556c447007a64b4eaeb19de3057569e5c272cd9df4", - "lib/l10n/generated/app_localizations_et.dart": "10313057337bbaaa7b89235bf3607e9640e5dceb8f77de9d906ed2eb514ab752", - "lib/l10n/generated/app_localizations_es.dart": "78e60f93f9ad461a0f243bf0536a5214f5628adce4936260f04afcf46bd85913", - "lib/l10n/generated/app_localizations_pt.dart": "c6ec16a359c7989a80a83194c787fe5e3c1a5e0ed96f0c771216efc6b39b5a9d", - "lib/l10n/generated/app_localizations.dart": "ad73e41dcc9acd860871b70703286e601e24cbfacb5851c55e0d33dc1faa2ab1", - "lib/l10n/generated/app_localizations_de.dart": "e76b9869523b23f187b8b1f5b988f72baddd71752cc23d16f93a8e3168c15b81", - "lib/l10n/generated/app_localizations_hi.dart": "a2449c0cc26fcde6ae975884e53cc7d708c8db1733be7e8a04736d86ff84036c", - "lib/l10n/generated/app_localizations_ko.dart": "961b04bab3e2775d85641d2a80b378a8ff57162852c195299d08baeb56b4783e", - "lib/l10n/generated/app_localizations_tr.dart": "ef69f4062b38801dc56c73f70ed189104812ffa7ff9457e08182f648ba54da0b", - "lib/l10n/generated/app_localizations_fa.dart": "693e8b9f77f44dcd60e6639e83617d22497462a1fea1112be0162c87c75ef362", - "lib/l10n/generated/app_localizations_uk.dart": "9de3a293fe201fe94472c8488435a274ade0e8ae9f839f7cf828ff83a476aa9c", - "lib/l10n/generated/app_localizations_en.dart": "bd3434b9b442747b87d77ed20513324e181dcb915b0d3df8a0cd77a8ab2e87b4", - "lib/l10n/generated/app_localizations_pl.dart": "068a2007ebd70c532bf2e464eb7c838db9b479cfa5b0e4a6a85d7df0b2dc7133", - "lib/l10n/generated/app_localizations_it.dart": "e15c0ce91901a010343281c0e47de725d84358ab64978ffe51e5d4d1af495708", - "lib/l10n/generated/app_localizations_ja.dart": "5e54f2c792c0cdae2bb3559118977aaa5091f3e6056dddac112930a6d4a6da9e", - "lib/l10n/generated/app_localizations_nb.dart": "b3a2dd2be808d7c9cbce22ccc74f646dbc06fde373862d066840c1e39bf34f5e", - "lib/l10n/generated/app_localizations_ru.dart": "43a664251ddf725025500771e1c1bb4a1b6610c489b3c319fa136cfd2812d10e", - "lib/l10n/generated/app_localizations_nl.dart": "2887454a3434d801c2437371427f0f7fee1b07f1aa1169d6510031d379f3a720", - "lib/l10n/generated/app_localizations_ar.dart": "3e56395c16a3e433271ad1924f1acb15f05d06b8ed1c6992a7089c078947d5de", - "lib/l10n/generated/app_localizations_id.dart": "a6404e286b789f16b8e16f54fba8d66f6a34f72621fabb7684930e743347e255", - "lib/src/comparison/source_comparison.dart": "2aa99d0a5c9927f89c031f43fab3b219d46a8e83b565379d1fb4273e01262dab", - "lib/src/assets/asset_limits.dart": "fe4c11a909e26e8a15d49fe6bdfab419dcdddd93abca220ea757275716a52ea1", - "lib/src/assets/asset_ingestion_service.dart": "13979a6362239563c7544453f660b2527ad533d8168fcc60726d652edb4d261e", - "lib/src/assets/document_media_context.dart": "9036a4d4cb94209d1df5c86d1c457185ab6f82bffaace3fa8341c87349e405f8", - "lib/src/assets/provider_asset_ingestion_service.dart": "1c43cf37fc15c7fe80ce3ef4358ccfd41e394526dfea813f396c26bb0601cf83", - "lib/src/assets/asset_input_service.dart": "33b7c943cc32579d2fdf2edb8fc5a0ca23e64d15c09a87bc183f9a7abd7a57a1", - "lib/src/core/diagnostic.dart": "d27354413aa4d067ae25e359da29c9510cc4d3bcb4b9b7e82a5637fadca74e4a", - "lib/src/core/path_utils.dart": "47878599a28bc4d77a337ce6add6f8a5c38b652b82ee8cf871ed72b712fe2339", - "lib/src/core/atomic_file_writer.dart": "7e1d69d059556cb7a0957ede9c51073c7cdcbc3cfd96c080805f55861f6c28fd", - "lib/src/core/source_span.dart": "13328190cd80041b0414e7a875c4a6c6123c52c7440d2dcbc97b9ea778f62127", - "lib/src/core/input_observer.dart": "81960f8b740427c7ff7ea703c5a8e0aa1ae34cee792e4420414837cca9d07edd", - "lib/src/core/busymark_temporary_path.dart": "236bfbfe1f30cf1d73d0932535a1404f09dc9f1ebb75fd1eba4b555b7ec9c004", - "lib/src/core/local_image_resolver.dart": "1120f3887a407b5a054f81167dc3df4cc0cdebf81915c20476ea5f3cf87bb012", - "lib/src/core/uri_utils.dart": "9ea653086c87ac05af78409e1d73ae2e227b86b3c802163847e85008f059447d", - "lib/src/core/busymark_exception.dart": "580cb56cd470c0355308d2287f59c40700ebebef4c80e51b5b769fa7c8d580ee", - "lib/src/core/diagnostic_localizations.dart": "0d27de95e04d9588ff03d32738a7d59eeba54d1d94e6fea61857af493ac789ba", - "lib/src/core/debug_log.dart": "36007a0bdbaca4e570d8926b5146f2d041932993ba8fb005cc3de4c6d7b6a37a", - "lib/src/core/anchored_path_guard.dart": "f2adf63e49142b58cc315700314feb45349b771af4eb845c166db18f787a4d3d", - "lib/src/core/linux_atomic_file_api.dart": "07b323c55cbe312d34065287eea3fed359b6ef22f3b0bebde7448bded384ea6b", - "lib/src/markdown/writerside_variable_syntax.dart": "fd58ffef14df11a7b2e93a94045cdba9d95fe1ddf7a9a927bc11816ad0fd0824", - "lib/src/markdown/markdown_fence.dart": "f2cb8956737b64546684f23f2a1227906c0549d5d3c646801770894d12427726", - "lib/src/markdown/markdown_source_map.dart": "d67f6350cddda46b337fbfc3884e5325eff0060f4bb6cac0c96f53b5df1558e3", - "lib/src/markdown/markdown_model.dart": "a3c2e3fcbb6c5cc11d62353607e80572aef60de0f175b4bedd755b74201c38a7", - "lib/src/markdown/markdown_parser.dart": "511242d5f489cab3d3512a775836883d3e532816f17b242295ed22f787ad1d46", - "lib/src/markdown/busymark_markdown_serializer.dart": "b8d722297052e284b98a9428ae1f43db25df0017ba7327418257153f001ec585", - "lib/src/markdown/math_syntax.dart": "89ca9433768024d7ccb5ca198a7c291ca72cf619a26fe4596e26947402f65b7b", - "lib/src/markdown/authored_html_diagnostics.dart": "a75b1a14e8d11fd2d1ab3c9451c45284faa917dc738bc73f8b904762f2285ecd", - "lib/src/markdown/markdown_front_matter.dart": "e169c6be40614e7b9922956072427adeb39c48ae6ccbf3f4ad6df7710029004f", - "lib/src/markdown/busymark_document.dart": "55bd5d92597bfc72e4c805712a35717678dac848e3782944328c1fc728a115fa", - "lib/src/markdown/raw_html_adapter.dart": "50e65d4988326c8ddde9c3795a1925988b24cdb94de54f1d52d40c98e5d11caf", - "lib/src/markdown/markdown_source_structure.dart": "7adf1adb47174c61f3f6339b7999878870a49bb859399e069da334baba4f113c", - "lib/src/markdown/markdown_source_annotation.dart": "f6049e32798ef15b5c0b26b95d2bb889daabf4bf91581f46c2061497d35a1e7b", - "lib/src/markdown/markdown_section_editor.dart": "54bebed32db9268db56186cff0e4de9f414bda21ea58ff46f8422948b5e48a03", - "lib/src/markdown/document_outline.dart": "836789d9b985c988ae6cf1926e2f526ea1d0cfebc4a69cd16ca7301d280409cc", - "lib/src/markdown/table_grid.dart": "0fbbcbb6031fd28da05a2a11ccf9b0b0ccba6a9e8c83a15ad3975ba901a6c9a5", - "lib/src/markdown/busymark_preview_builder.dart": "dde16b9dc67b7daa9573420f8c5896a3659c51d76f67a9cc36e26134f59320a2", - "lib/src/markdown/markdown_ast_adapter.dart": "b26b7664398acb29bcc169e5a5939705835acc0d2dc4772c7f5eca6617e6274d", - "lib/src/markdown/raw_html_policy.dart": "6fdbac58be1f2a22e52c08cd0550a4b0e4b528ad4ba81d59d86829009edfb7c9", - "lib/src/markdown/preview_model.dart": "8a00ceb7e143ead23603d558600932a358a63b1afe8c1255646408018e218e56", - "lib/src/spellcheck/spelling_text_patterns.dart": "c80b1418c0acfadd8f6fdbfd772657e6df48b3086e0351a7fcbd9dfe7af3bf93", - "lib/src/spellcheck/markdown_spelling_projection.dart": "17753741d3484ee3f11db511db9825005e33706842ea0e735e1fa7627ee3314f", - "lib/src/spellcheck/wysiwyg_spelling_projection.dart": "fd57482a5c47b6310383abcbaa44b91c498c362ae6e880558941a9e2407232e0", - "lib/src/spellcheck/spelling_dictionary_importer.dart": "07d6bd25411abf39108a1de8e9ab9befbe2013ed2ec1bf24d2aa34d0ce4f3eb3", - "lib/src/spellcheck/spelling_replacement.dart": "e4b5b0a40e640569521b1dc7c36eff3faf66d8ad9da254b061975d3f5e67f003", - "lib/src/spellcheck/spelling_language.dart": "99c7760139bfe007599d6b9f897d750ee86696253857f42d2354027f297d19a0", - "lib/src/spellcheck/spelling_projection.dart": "7f6ceedb9e79abcfd3679acb4cc56087d1bd85fd61704f54ab6a02613660784e", - "lib/src/spellcheck/spelling_session_controller.dart": "5b679e0b2b595d9ca3446550a214d75fa169545fa90e1d19dd8d4465e6467b1d", - "lib/src/spellcheck/spelling_word_store.dart": "08fa43855823c9795eb99e662346cf29cb2530d09e0953f258395414e6f20655", - "lib/src/spellcheck/spelling_dictionary_installer.dart": "eb983f196de5dd4fccfb00b99e49569bb5e27ee9bca722267317f43fd0afec29", - "lib/src/spellcheck/spelling_coordinator.dart": "d5ed439d82e66232613bba9f6c10127dfda3b0dc26d48728bfd8de215239d048", - "lib/src/spellcheck/writerside_spelling_projection.dart": "9c4da13ec0f1de24343abd5028d12441e0798e71b097f5c23eeff0c485a908b2", - "lib/src/spellcheck/spelling_catalog.dart": "47ece3d3be98dfe94fba93571958bc2192b8cdaf97f466051fbc96bf3e736872", - "lib/src/spellcheck/spelling_inline_projection.dart": "bf8b0f92a67658eecd0c716b54118d9677c4c7722dcbb2d434d0f3bb1cdc9d33", - "lib/src/spellcheck/spelling_worker.dart": "cbc1363b897ccc4106903d9bd3b3fbd907a3c343e9c38fd07a9307d13d823bbc", - "lib/src/spellcheck/spelling_release_smoke.dart": "2ab365412bc2acf4ec0ed4416527be913abae10666884c49e3ab5a7994af5250", - "lib/src/spellcheck/spelling_dictionary_downloader.dart": "aeaabe2efaa08cdbb2f79601cafda63385b3096344c0ee1ed79a912603c3d4bf", - "lib/src/export/html_export_links.dart": "8fd6a1abbbfeadfbaa19501c81a2b1f4c3f2397db0d65c8d947ca83dc8b198b9", - "lib/src/export/writerside_pdf_export_ui.dart": "494784364d607ba81f0e88d7f44346312fe16bb16507359da96bbbf60d0c55a1", - "lib/src/export/html_export_ui.dart": "83252c2a909bb3f80793933068e8cbb3c577991d2a8783447d556119288dbf31", - "lib/src/export/html_export_models.dart": "cf884d4cb723a7b403a5b22eace862f9d007f4153cea936dbb49555112480eb9", - "lib/src/export/html_export_service.dart": "ecdf33cd8e2008bf49da3b9f3f68806cfbd77a690e9f29cb5105563acc586f1e", - "lib/src/export/html_release_smoke.dart": "46b30032287c5f3969690bbf79e40232804942ee5446e46d0a2d2e5b7aa89462", - "lib/src/export/markdown_export_document.dart": "aef4f811f4411ab91dacc5a46b4aaf0f01c2629b1b1f535263db81054328e3df", - "lib/src/export/html_export_styles.dart": "e74e813e387ff325e2aa2fcba38e9f6e5b666ccd1a0a4a002ecd4d9d96c51a6b", - "lib/src/export/markdown_pdf_models.dart": "af44b9119c4c6ad0bd96938ffc9d97486c6dbfc76f1d004b96e8cfa6e6550fc0", - "lib/src/export/openapi_static_export_mapper.dart": "9d35f48697570755680a1997c21cbe2b8c102efe0afa5450c7f09849f282c3d4", - "lib/src/export/html_export_assets.dart": "268614a658c58332859ccd1bff93a385ad5c5d577a8dd906e7c6f3adbd41aa69", - "lib/src/export/workspace_export_ui.dart": "b499f480f25ced3a60eee0a39ef1c47916b4adea721038fb079e3c44c5ede29f", - "lib/src/export/markdown_export_assets.dart": "821ac8858d59aa5c78db544666b0b272f0f961e91e8f2d4bf30c90523a80f9d8", - "lib/src/export/typst_compiler.dart": "0ccd531689d2385ed67c9c52d296219385021a28fadad4721cadd3b92cdbb870", - "lib/src/export/markdown_math_export.dart": "92f6d2922d21b644d751076936f6b380ccc4ad130334facaec19e25a27d3bf4d", - "lib/src/export/html_export_publisher.dart": "49ca4c59a8d2e4cb6c0e4f1da8699e512525bd03652c99dc621bd265e7c8cd92", - "lib/src/export/markdown_visualization_export.dart": "4e3707331306bacbd043f90ba0a9f1d22d06072554d4d0fa1cfb5d688635ffd3", - "lib/src/export/markdown_export_mapper.dart": "ce1ba649532ccebb769f207f3873530a9bc2b997a0ed8da2255fa705ea452fb3", - "lib/src/export/typst_payload_builder.dart": "86ea4f6763dcf7293e8e20d77e4e76514b6e7deff8960d63844acd5e005d0a8e", - "lib/src/export/markdown_copy_export_service.dart": "4cdcd9054699042de0e9e8dd06ba111618d00eef9de4228ccaf093ddc985a8ae", - "lib/src/export/writerside_pdf_models.dart": "7ce9195b1278f5fe88a0aab01ba2789fbce669ca1c7e8f8cf2262c60f7828c73", - "lib/src/export/html_publication_plan.dart": "fbbe63664a77bee1353e3bc47407b9cd78cfaf9d25ce7a225d9f74fff4482a55", - "lib/src/export/html_document_writer.dart": "4cfcb1872794e57114cbe1908562bf6c7ff73d6b8c7023e33618b8c60574b3d3", - "lib/src/export/export_options.dart": "f1f9968c89b5efee87ddab5a9a38ef89fd065be342e8f8575e4bbb9ed8bb1d20", - "lib/src/export/export_metadata_mapper.dart": "59d2da61ed86663ff892c9853a317e3e9c234d3360169689c40e94d617b7cda7", - "lib/src/export/pdf_title_page.dart": "3f41ff4a2333d7fa3a91405f995c1d6ac80bf960d39122a1c6e97c7241583274", - "lib/src/export/markdown_pdf_export_ui.dart": "c9a2aae40c7396132e016bc345c79de96a62826709d03700eff9608805547b21", - "lib/src/export/pdf_footnotes.dart": "c9db428963e62bbc598e2ea8b3e8524fd4a5bcc0b9748953887e4c59b3d56a53", - "lib/src/export/html_rich_content.dart": "259bd86ffbe2dfd7498e6c969e9a3a3f0bae53bd4ffa8fce2178dc7939cea42b", - "lib/src/export/export_options_editor.dart": "84714b2535be481250437524fbadb3b7ed799f29caee5d01f62d283e7b084c87", - "lib/src/export/writerside_pdf_export_service.dart": "a18cf74c528d067559a84c76ebca2553d4994550e6865704b23dec4a74e3cb2a", - "lib/src/export/markdown_pdf_export_service.dart": "9707c181f70ac43bea769f514d078c8a6ab437e50ae239597cd65de72ff5fad6", - "lib/src/clipboard/clipboard_models.dart": "c47e0106cdb6ab4a7b83e4128d9b98580a3607c54e525191c09a65bc82a9d3f2", - "lib/src/clipboard/clipboard_history_controller.dart": "da28f2520aa8a6de74beb65738e7a4d353860b8a704ed9aa396fbd329b9e0622", - "lib/src/clipboard/clipboard_history_panel.dart": "1f9e23546822674c89dd92d6b9fba059e86dbc3463fb5c0641663edc84dd6cd5", - "lib/src/clipboard/clipboard_insertion.dart": "164399691117dffb735bedc74bfee7890c9f7e89a911ca217d80ce1dfc37adea", - "lib/src/search/workspace_search_scope.dart": "c596d38f63a27f008c0423a3262192d740ae0268dbe6b88e4bdf8a5af00f91c1", - "lib/src/search/search_replace_service.dart": "cb9789c2353f6939247e4d5667e19d88804c1a2a47abeac90c307db584ddde7d", - "lib/src/editor/writerside_video_view.dart": "c3ea77a26e0a1273e06c45d7ff2d36744eba3bbde53ee4aa44b82f37bf306839", - "lib/src/editor/document_collapsible.dart": "19a6f7356948a7df91fd06de18760182a464db6cd54d42444ed23ce2658a11ea", - "lib/src/editor/clipboard_paste_resolver.dart": "de2f78b1d5c4c7c84cae2c11aec4d68981eaaea7c8ffabf756fb667765f199ca", - "lib/src/editor/document_surface.dart": "0673bb8461fdfefbaa0d74ba0d417b718bba5c98e6c65724f9451ca322233f12", - "lib/src/editor/document_text_direction.dart": "f5dc44f084d8713585853372041803ea9476656e5a9aa5c76c6bae457f453ee5", - "lib/src/editor/document_text_geometry.dart": "aee3c4df5a8f6c0714e64c0cd4bdb26d144f52eab7190082dbc8ada765b34fbd", - "lib/src/editor/source_highlighter.dart": "3861da06bc30dce0391269015253672539fd7d7c6b1120d28c6951bd149fee31", - "lib/src/editor/document_layout.dart": "6a4d6ffe1f06cd60dae42a1d35d89c788a3f22f8c89f2066640de53d782cc22e", - "lib/src/editor/source_folding.dart": "99e8174cea0a8c76fd28f69a9101fc54783fea37b18ec188acafc804db7c0196", - "lib/src/editor/document_list_marker.dart": "5dd78498e9146a1f17d1d46f62d3c67ca605d8a0d4c6934883c6e68a1375869a", - "lib/src/editor/editor_text_context_menu.dart": "1980e9bc0e9be96700f337d3a7397bb92eb7f7a7e5250f192efbd09fbd631e00", - "lib/src/editor/source_language.dart": "d6436f581b61592ba9838be2ff11ff4db7cc935e060b41f8425fcbc8d2be0af4", - "lib/src/editor/inline_semantics.dart": "d0fdc6b2dc31f4b24a9cf103fd2ff7634d8fc7caa06741533cc93610c1b5b220", - "lib/src/editor/writerside_video_player_host.dart": "e52a230eca0f45ca96dd4002d77b80fe69d994ed4c992be7c410eca46a2d9886", - "lib/src/editor/markdown_image_view.dart": "051f057423b29476b34bc8fbbc334fa2741ec98c117e079d13a7813fe69c31c3", - "lib/src/editor/document_callout.dart": "0394b8ce9d46bfe464a6f171fcc1e446a822507dc5392eb30f0b4e55e12fdde9", - "lib/src/editor/clipboard_local_image_path.dart": "85164c4c5cbf227ed6f06108b267e0c572ecfe0e9d12824dc0d5a718431b7f27", - "lib/src/editor/document_thematic_break.dart": "f7af4c85138f3198323608596ebfdd720e4514d67655c4288ab989b6d30e5145", - "lib/src/editor/document_code_block.dart": "140be4216b15342a830ecfc50506d6356378d1667c22cc433986201fde2c3fd4", - "lib/src/editor/editor_shortcuts.dart": "a57b4e4db7d1fff7d3d825b7ada4e2652b18f63e3b54a33f16722e243cc5cf7a", - "lib/src/math/math_providers.dart": "eb69799dc75898df1523497ce1383026e504427897ce15656c85e5ae23f31f09", - "lib/src/math/math_models.dart": "4c857bd76c59f03c473a3569fdd65e62575e16682db390059d310a35f87b53d8", - "lib/src/math/math_coordinator.dart": "03b05f7d79f0ff749a5a81e0e10f1c02517ead55e47fec52eaa6595e18f53704", - "lib/src/math/math_widget.dart": "bb1a239c707a8500a5f41a9c7ba94427e28a6271fabd6d5b5b00286a3694fe0b", - "lib/src/math/math_renderer.dart": "3c93fa6c3cb5e97fb53b8e0d7595426f0d7295ceba6a116b61d263ae3b71a440", - "lib/src/math/math_svg_preprocessor.dart": "be9fffd40ea4f1fe0c8514d2b8e12f24e68ec179b7bf08b4d5ea5ea46a29dd0b", - "lib/src/math/math_cache.dart": "35bd052b169aebf57ebe3c7a5309c5ec763ca7c61a463fe8c865e9398d39b777", - "lib/src/platform/linux_gtk_accent_service.dart": "804d43e87b4ca13c3eae0a091cd172f9b624b9903fe20415082df04886385481", - "lib/src/platform/gtk_header_icon_service.dart": "ec7742a4d6be403b0caff09c2a68d78f6e0093e50986c3fb284dfb69e4c3c660", - "lib/src/platform/gtk_animation_settings_service.dart": "c0efadec0398b234a446420d1da6e186c57ce2bfee503545e1db52d9e5edb782", - "lib/src/platform/linux_header_bar_service.dart": "115273f518b6df8404b4682b9228732bd1c4c901fc39898738c32cbaa266b51b", - "lib/src/platform/gtk_window_preferences_service.dart": "68dd0a6c9e0f1b6f52eab8e594fdee273a4b86f9f681e02d26bc89ddd4dfe938", - "lib/src/platform/native_menu_service.dart": "39e58157d2b990e2dd14ddae7d01f30e66ba9def5bb3ef10d1fe8481f967dd4c", - "lib/src/platform/rich_clipboard_service.dart": "0ab8ea108af54e966185d57cb09dffe0513e3b7491dbacb544cb9394b34e3907", - "lib/src/platform/native_writerside_dialog_service.dart": "de3a461a840d748ee81ef2368068a81155a59d694af31822a6ba49abab5ebd4f", - "lib/src/platform/header_bar_configuration.dart": "30058be37cc11460426305c77bd93bd53376b078abe308144ffdd913acb47d97", - "lib/src/visualization/d2_renderer.dart": "550b5f6429451d038b05f74cabdda7faa861c827aecd55c15aaa82e0a0e38eca", - "lib/src/visualization/openapi_dependency_resolver.dart": "cb799526366bd3728e3e33192003675635439859d3fbbd958b0d6066c6545006", - "lib/src/visualization/web_visualization_renderer.dart": "758556808e20bb99d66344813dff87b28ae5656ede2accce9ae0cf913bf378c3", - "lib/src/visualization/visualization_card.dart": "001ae6551d5d54a3e1503bec9e8ccd456a4ce098387c0898d8bad59ad2cae973", - "lib/src/visualization/visualization_models.dart": "b5e139d3701e2fbdd6986ad4b45276d80e162dada0dbe7ac087b5f0ec029f57d", - "lib/src/visualization/web_render_host.dart": "e4afd5a5216ca338e4ff8b4661ea44c68f5dad77998fd107fcf6bb3be6a69c42", - "lib/src/visualization/visualization_providers.dart": "fc3bd779358fbbb10fa8195f866e0cd19a5f7631f61f68361d5d87505eaa27b5", - "lib/src/visualization/visualization_renderer.dart": "b2143594994f00784ac73762befd84f7dd4e6973058b076c3f6f955fba50fca8", - "lib/src/visualization/visualization_raster_sizing.dart": "6f929642494db3fcafe22de3053d0037960b14d2910a4fdc5763fa945dab10f1", - "lib/src/visualization/visualization_release_smoke.dart": "285fad51f211dcb4a7cb595569181b8dbcffa165cf54dbf99ddbe28a86f483cf", - "lib/src/visualization/visualization_cache.dart": "7209e739344878719adf6ece640da49b8d80301a04e8369a9f237ec1a351d162", - "lib/src/visualization/generated_svg_normalizer.dart": "a09b2a7b6572dc3724c3526b9f0410f743d31e7953239ee1e48d7498aea5878d", - "lib/src/visualization/visualization_coordinator.dart": "92e3eae4e70c7ef3c4fca1e715c3fa3df66c8cc05cf51af4ac586c1bed0c920c", - "lib/src/local_history/local_history_panel.dart": "cc0331682d71fe0984b248a7d40bfd4db2cd4666edaf5ceb24fab00a261ddda3", - "lib/src/local_history/local_history_comparison_view.dart": "3fa9bdb4f31cf15b950a3abe8c404236106760bf7cd3d3ee0999d65feec3660e", - "lib/src/local_history/local_history_models.dart": "7fd7af25b059bf974415b686cc50b41615298548415e4fd2ae4329b8e205b781", - "lib/src/local_history/local_history_controller.dart": "f293684c27fa8cd4db2e1ef297bbb5d87571d983f0acf111a853c05eda27cc8d", - "lib/src/local_history/local_history_store.dart": "f44cf8122fe8cd349183f5325166cbbf17f2217b1e0d615f5de4a68bf5e7690b", - "lib/src/feedback/feedback_metadata.dart": "bd5d3143861575cc5d70c74bb1c49a5ad4d868b39a15e89e6cc548dd3f1d49af", - "lib/src/feedback/feedback_submission.dart": "1f104b45c4f4e37b8feffe0f7ae1349db4ea13ba5c258bfb8fa73d482600580d", - "lib/src/feedback/feedback_service.dart": "f702ab6cd0cbed67b43943116aeeb8cc220cc6064ea1c84c96dc73b2d32a2385", - "lib/src/workspace/workspace_controller.dart": "07cd7fbdcef74b8820bb60d6cc0c2388fb7f95921952467e59e4e0ad81a2b29e", - "lib/src/workspace/workspace_tabs.dart": "b4788061339705181210afd7588e7879ee15eb5f08ae6315eb69c51c77dc1612", - "lib/src/workspace/text_format_metadata.dart": "e86dfa98d8b20c9581bbe77ce700f55a427e8f20bbbb5819799b32c5f3cf0f87", - "lib/src/workspace/workspace_service.dart": "982d985bd7098f0e8c65a856c82a37318b965c7c04327a3f3b75fd170b584c95", - "lib/src/workspace/recovery_persistence.dart": "b940a15f5e390694f9f294ac3ebf3e103fb2cf6effa49d6acd4111cf1c175826", - "lib/src/workspace/workspace_file_snapshot.dart": "a266ea4046c98902d7be1b5ae8580da09e520b0470061d8b9c0fbc8aaac8fd69", - "lib/src/workspace/workspace_glyphs.dart": "281c198ad0afe834470250ffd2840acba3b69b79a1f86d8fe6e44b71afaf6ca0", - "lib/src/workspace/document_origin.dart": "3ec75a42243b2f5a53461a4fbc4266ac4bbd136e8df941343b3dc4389ee784f0", - "lib/src/workspace/workspace_model.dart": "fdf76be407e2c28810534c7b402180186a96e1b5fe4d5df126492eb3887ba898", - "lib/src/workspace/document_buffer.dart": "ff1a2282ade901670c89763634bf1c5fed82ac46c92e52c56a84222253214d31", - "lib/src/workspace/workspace_safety.dart": "82f4191fd3efd68c1d20aac806141c891873712afe3d43c1acfd42cc280b832f", - "lib/src/workspace/workspace_file_monitor.dart": "411c909aaac415acbdb6dfd305e18601d7321408d971efa8f5626007025165ef", - "lib/src/workspace/workspace_message.dart": "f497a2e2e242abbea4a6eddf2686c5edd1efd2b47923bc3a01b5b2edb3abaaf8", - "lib/src/workspace/session_persistence.dart": "faee39ca442c02a570cc2db286ca6dece9db0a2acef16305bc6d5bad0025cad6", - "lib/src/ai/ai_provider.dart": "7276b6655aed05a7e9d517fcf04b754addd8c2a12ad054ec35e0722f70e1d573", - "lib/src/ai/ollama_ai_provider.dart": "2a2714cf4cf81397c659cde8e8eb18fc1d05dbad5fb961273578fc1ce4781fe3", - "lib/src/ai/ai_coordinator.dart": "23bb171bfdceb6165807d465991ae4042017c93ffc5bee1add7dfe9783cea5dc", - "lib/src/ai/ai_providers.dart": "6b839ae7c063e5bd0da2d0e0cd31eb4881f59a9ef43b35b03190cf5d0cacb1c0", - "lib/src/ai/ai_models.dart": "af5a25d4c1080e57b94b9a557a5f795c25da8a6d7bb92b3681d5a5afb48598fa", - "lib/src/ai/gemini_ai_provider.dart": "1e7c598cd06039892a2d41eb550cab512fe4d9fc622dcaed8b0b0e553b4a1d16", - "lib/src/ai/ai_secret_store.dart": "06cac3e65bb0b9537b9904e21ee65fdb3e923623b357cdc63055279e5dd3a04a", - "lib/src/ai/ai_policy.dart": "76506b236ff8da45447d4b619dd8976d9fc98992df463e8db23a9f288062ca6f", - "lib/src/ai/ai_edit_ui.dart": "74cfd3074d85a1743c8882e869eb6e17c2244d3a449b477e0ab8cd5cc86b05bb", - "lib/src/ai/openai_ai_provider.dart": "564e62e6f2cec1baf60feb0808bcb7d8c71ac81b770db6671c37e7a5031b0cc6", - "lib/src/ai/ai_http_transport.dart": "871a58495b2d711017d1509d5233fa0a9f23117e2c22e402ebc6ed7eb715dd09", - "lib/src/ai/ai_markdown_edit_resolver.dart": "1592aa7094b4b36c81e6e4f2efd310b59f68591e9cded57339a3ba7ff7987831", - "lib/src/ai/ai_usage_store.dart": "ae77e75ccd2be1e9ce736cb7a875b7f3d4c7342cf8200722cd7c621f23504ae9", - "lib/src/ai/sse_decoder.dart": "d5dd646cf6d6a89a94ffdcb5274909ad18aca31ff2d575050448e1a618d9d933", - "lib/src/ai/ai_configuration.dart": "222115d102b7fe2afeaf82d4184c09979340b8f981d10be5fcaca9505bf5b44b", - "lib/src/ai/ai_provider_registry.dart": "8cf3f2e47da18a964fd3ceb0828ba64d6c9004ad4a9671310b640b83d1c5863b", - "lib/src/ai/ndjson_decoder.dart": "28aa2849b4b6cc6b83352e89484426effe13d84ddd5b18a60d3fbe9672cf122b", - "lib/src/writerside/writerside_topic_file_editor.dart": "412e149f90fd5531ed75474deeb97cd17b75440efc875dc0ded590099b018a2e", - "lib/src/writerside/writerside_title_editor.dart": "9795207c58a1fda824983c1d1a1ad1835a8d911751c588425114cc131f642581", - "lib/src/writerside/writerside_topic_creator.dart": "77be4c90d8f053bcaf13cc0caf9326b4b0810f00f9c0d38e76e806a0a4cb4854", - "lib/src/writerside/writerside_toc_presentation.dart": "ccb500471e2ca1a2576e63338d8bf4286bbf7a395c152d2a1f23946ebd9f0dd1", - "lib/src/writerside/writerside_topic_removal_service.dart": "b7ee13e9c7123ba07e5a161a2f8f75ba3a0eeff6b6c35b7635d793aa4d7b5276", - "lib/src/writerside/writerside_table_view.dart": "da6ffded35c588153b76889fbb5cfa24bb8a0e72e8fa35ac534b335939b20c2f", - "lib/src/writerside/writerside_topic_file_name.dart": "9f6390f8de9dafa6f37e091b6d775e650bdf82947503ada6d66d559f3b0787d2", - "lib/src/writerside/writerside_code_selection.dart": "4a734d1a6f07cbf12436c17ff1b7eccb7b82d314d4b4ac9789e29358f1776063", - "lib/src/writerside/writerside_summary_exporter.dart": "5e6a7e8a5118f47519f43c4875111a0edfc804258d5d3b47951f2b82da47b0f9", - "lib/src/writerside/writerside_execution.dart": "3ec792be71a0a37c79324c94791251c285859b8344d38a89f4f5cb55abedf6a1", - "lib/src/writerside/writerside_tabs_view.dart": "0d695611a0161d4a641e1aef1fdf51594b15fc42acd15010cbd3366cb46086a4", - "lib/src/writerside/writerside_toc_editor.dart": "fac2efc7469591961ba89f9e0d7f360fd08ff1359696dfc8a84c445a63c47faa", - "lib/src/writerside/writerside_html_reference_scanner.dart": "e9478bbfecb8e631c791a99cce4040149342dd4b788463776a78882b471e11c9", - "lib/src/writerside/writerside_toc_navigation.dart": "23578550c1fb73b170ca94c1f17af00e95c02eeacf8082ce3680ef2c5f6da185", - "lib/src/writerside/writerside_document_parser.dart": "9464e9d7c5b9e0f75439dd0a5c16b4a2b834806d8420e8ee1d8b05ab8982dd71", - "lib/src/writerside/writerside_project_creator.dart": "e3cd11012e904ec319d408032445df70ef56b7829910d6125115927fb8a4bfeb", - "lib/src/writerside/writerside_web_file_name.dart": "5283d08ef4be3fe17b4260b6b13be065462ec3f5361600dcc8c271353cfb3fe7", - "lib/src/writerside/writerside_parsers.dart": "38db5fd08263ae09bc6bf9d0ef30a1ef951759834905aef0073c90e152945385", - "lib/src/writerside/writerside_diagram_source_loader.dart": "6ca2433da703cb6ab0289933f846ac22a675d0620838a980e66765ef147cce61", - "lib/src/writerside/writerside_module_service.dart": "a4a26b6d2905d263da65f3f17313dfc29a2d50b67c1c86203839dfb66bf3eae1", - "lib/src/writerside/writerside_document_serializer.dart": "ff273817f788fc4f055e6da942e93d79526636bb2086bbef8edf1e685244c42d", - "lib/src/writerside/writerside_tree_resolver.dart": "9668782aa1ae5fcfe6569098e193577fbea8de88cba97851fd70348089789bb3", - "lib/src/writerside/writerside_document_resolver.dart": "2b4ecde2485f54bcdd7c8b976db1c0e6251e1c20c8b942ef5455da5180288dff", - "lib/src/writerside/writerside_document.dart": "21fe733602468e5e0dd04b9bf0293d3cfc2abe3f0d4d91f2b602c3836c223fa4", - "lib/src/writerside/writerside_instance_service.dart": "c723d468b97783a8f51a1d67af9f1bf7fcedaa94d573aae0547503510f86af97", - "lib/src/writerside/writerside_model.dart": "937c260ca115085810e2de761453223597b4d830f1e33e160654c4a9c75d21de", - "lib/src/writerside/writerside_schema.dart": "40a85d9de9072061ee00f5e3a12de300b3f5c01f210f281f813b7b89b54dd11a", - "lib/src/writerside/writerside_source_loader.dart": "9606b62c6d12207c114491c94da485f01ab8e3cec5f56b65b022434f9353aa4d", - "lib/src/writerside/writerside_template_service.dart": "5c1a5e52b582408333c554313675d527c2ba0f4b2c0fb2953b6f3975c7f59f17", - "lib/src/writerside/writerside_schema_data.dart": "f92ca667449390557d634ed0bb7af20565288f4e0d3d8d7737b2e59f10397d45", - "lib/src/writerside/writerside_project.dart": "d5887a7ee8b0b2a2ce376be64bb3dced831a489b2b25c01f11811ee47ac3bca0", - "lib/src/writerside/writerside_video.dart": "e179b209051760f954aa2cb73600e5060b596d45c1d97b455ebac3d3aa69cb76", - "lib/src/writerside/writerside_document_renderer.dart": "e4010c548e9bb04c6dd2bda3c3b0de0017ec8650aea2259ccc4d767b31d56aa3", - "lib/src/writerside/writerside_input_snapshot.dart": "8508b5d3b8d45f979f53a01a866476f9d2353621cbd9ad4a700cc5be08bfb7ad", - "lib/src/writerside/writerside_reference_data.dart": "eaf088b436adfed165516af0ce47241442e5e0ff3708081a158d4d09c6336b70", - "lib/src/app/window_control_service.dart": "654e2bf94382a6c60558e77b9d7b84bd9e426c9707195155db4388194984fa4c", - "lib/src/app/command_palette.dart": "4197b7849e48ab86176fa3919c1768c0d3c89e0d92a8b046f6c5250ca5b7445c", - "lib/src/app/system_accent.dart": "d2b83ae7529d9f221d88bde4c5b88daa54b385a9c75b8f1f6ef25b2b1d44084a", - "lib/src/app/command_registry.dart": "059a87232e1229d0836fd870d44bd2c5b1442c3287d38bb2b7680fb4c23f7242", - "lib/src/app/localization.dart": "abee827107fe38559ffb882db1558f63cc21f54b7856fb2ca2e5611d3b242044", - "lib/src/app/busymark_shortcuts.dart": "6258329c54e12fccdb2a81db88a4ed526c274b6e5e9b5812158dd218a359a6bc", - "lib/src/app/busymark_search_field.dart": "ab90c830c87c422ba297d7b1a13925a45fd627535c8655bff3306df75dcfdab2", - "lib/src/app/busymark_toast.dart": "a414b21806b5c27f2bd957eb59d3dcc6007ad143e0b855e641d6262a4333a9cc", - "lib/src/app/startup_path.dart": "e620cc1ce80ff96d0b4b0fb019569676402430196fe2846d834bc06468fe1960", - "lib/src/app/busymark_main_menu.dart": "499b8d1aee2103e2867e7477e43a166364eab9029f2823fbd649f989449a8934", - "lib/src/app/app_locale.dart": "3cc22acde43a996e4a704ddc91309f9ad9114ee6331a9359a8175aa7a972063e", - "lib/src/app/app_theme.dart": "7a678e640d235c8faf8f738bd6cf0545d52abc066525f4abda2d060538ba4001", - "lib/src/app/busymark_app.dart": "6840730d8f37b6eb2dc150fc59962afcf36e97e07b82392f860aefafbfa901c1", - "lib/src/app/busymark_glyphs.dart": "cbd9651ec452510558aaddba61022e1426485353bc89f3ed7371b69c3603e1ad", - "lib/src/app/app_shortcuts.dart": "d0d0cb92e0d273b671b763db42f003146563aa3aeab5debf0666c189e9036f78", - "lib/src/app/app_settings.dart": "e9decd5285c280d5db59cc63f2a5301b709a01b3ab5dc2b6fcee45a93d03593d", - "lib/src/app/busymark_dialog_identity.dart": "f0780ac7bc5468b590786cd475251fee8a4a46712215f202cdcf4cee42e66178", - "lib/src/app/app_router.dart": "00024347e23c44b553945b3e5557deba133049ada6c2c7e2bb1658d9558dfd3c", - "lib/src/app/app_metadata.dart": "d38ce08adf4038224767303c232c860e76f566bcbff898b83d24b8b96e6c9cf5", - "lib/src/app/busymark_design.dart": "3e602db9a507071ef1634cc713648cf162fd437c9e4cf9985e904c580b97130a", - "lib/src/app/busymark_dialogs.dart": "e23a6917b6761a60ed6402f407c5e461938b100770123f4c62563ddcf3bc5d72", - "lib/src/app/busymark_motion_widgets.dart": "e2d85208058fdb7e14e276c078690ac54573f4b354cea2cdb7b9170efc69a4b9", - "lib/src/app/linux/linux_window_host.dart": "53e2aa7dbe557c905359a12d7b01affda6151a3ac750d69becb8baf724806d43", - "lib/src/app/linux/linux_header_style.dart": "9a012cc52c72ad0c9c1fb3be5f04544ccfe3f313c443c993e16ee4aa14c9d1d1", - "lib/src/app/linux/linux_page_frame.dart": "474608aa3b36f7e43e538322939a586f6a3987df6adb9ab1a16fa4ccc0cbc199", - "lib/src/workspace/presentation/writerside_toc_dialogs.dart": "90e073fd5b4c30ad4e69781eaebc1c9413b5cdf4eb4a656e5dae040f5a7d0a68", - "lib/src/workspace/presentation/workspace_screen.dart": "15445c36afc9535a88bce847ecfc36bb03cd9cf03bcd60d4904e01c9fda81e19", - "lib/src/workspace/presentation/writerside_instance_dialog.dart": "33fe4f42eb0d7ebaee22d7f5865b7189e45611b1c710064fff59c6223acfc29b", - "lib/src/workspace/presentation/document_status_bar.dart": "1229eecf7eb9ee7acd18e0f04c6e87d6f9d9f98bb3fce61932ab82c0b5a3512b", - "lib/src/workspace/presentation/welcome_screen.dart": "e2ae3c9c218be94e340ff3a4b04a1301cefc70963598a10af6a9592927110c69", - "lib/src/workspace/presentation/writerside_markdown_import_dialog.dart": "36985fa586f1b9874d88ceb8a8b7dc0cb378432cc74c0e8b098dd173f167e42f", - "lib/src/workspace/presentation/document_format_indicator.dart": "34eca3bc1afcbd4098eb919242d3e33fbd151d4036e52eb6d96be5990aac5872", - "lib/src/workspace/presentation/writerside_template_dialogs.dart": "635d6ac5d764646960e5bfaa73c0da432133bf03b2ece1264f694db6ab00cccc", - "lib/src/workspace/presentation/settings_screen.dart": "0eeac34b179c0f8910f6f8b871a99479aa1a9ac8342a368531bb12fa84971d65", - "lib/src/feedback/presentation/feedback_dialog.dart": "dc7d37dc1a93f35b43da4a0deddcd3a6b6cc1f9cbaca4484667ed930c2c52932", - "lib/src/git/application/git_gateway.dart": "0dde99f8c24c83ad6abe4365c023b3bf31096c54dc4dd3e9c25bb0bab9dc525e", - "lib/src/git/application/git_use_cases.dart": "acdefafd64f871c6299f084c5f4bd7bc1fbeea3de306fc3bc2633465a1e35ec7", - "lib/src/git/application/git_controller.dart": "0166e73c3910c6677a2e2673be115603bb0bc165b8b65d98b6effbb7e42463bf", - "lib/src/git/presentation/git_file_status_colors.dart": "f26feff460268725c9dcf8b83ac58a5425ce4007fe65f8c86a82baa0f62c7077", - "lib/src/git/presentation/git_changes_view.dart": "4ef7ec1dbaffb0077cb7f39efab45262d1df4ae773699bfc20b7bd4b86a718a7", - "lib/src/git/presentation/git_author_identity_dialog.dart": "f7e89acd106a7a3bc62f4dcb8b522c144facf009ba1421a97cd21b7c118cbb69", - "lib/src/git/presentation/git_diff_viewer.dart": "4c5d67e074b4e40657f9236050c0b789adaee5dafcd0f444341a0c65f32e8b8e", - "lib/src/git/presentation/git_history_view.dart": "d4455b8be45c5a4d4614561996edc2f10c8259fe8823aa98f22d4c16c61b87a3", - "lib/src/git/presentation/git_sidebar_tab.dart": "f44b0d36ed25d71787cb63d84ad2ff6f2d94898fe9a5ae028bd813afbfeaf6a2", - "lib/src/git/domain/git_diff_parser.dart": "57377d8b309d5c3f7e024b2d6294dc9cc1bc4468b0bdd9aaab4cef386a6b1198", - "lib/src/git/domain/git_log_parser.dart": "8008314c9c93078db3df2b981ac052a43a2f03ba75eda2b4a3cb1e9c107878a6", - "lib/src/git/domain/git_status_parser.dart": "94fe8d98386cf96f6b1978dee279b07710b6ef9f967527268f455400ff2c2202", - "lib/src/git/domain/git_models.dart": "6c5a6a1bc803f1d80820c9db7a7b3f1ef1a78f8eaa17a621270e0ef81ff8e8e8", - "lib/src/git/data/git_executable_locator.dart": "764e9149415e9c0c4e72a7667127b2e1e8e52a0e3a63b3b908b16cddc7866934", - "lib/src/git/data/git_process_runner.dart": "59d01ae75ee622ce033bfdf5bd544e9b378fd24b6dff0f3f90453bb5ee29bd47", - "lib/src/git/data/git_cli_gateway.dart": "6cfff753640882d3d3afeaedd05329a1b0c3f31fd1385836d781c0eb895af19a", - "lib/src/editor/source/source_hidden_ranges.dart": "33c78b6973db2490a75de8470dd6e2b7bd5d8f4a556bc1436c8f803098792c03", - "lib/src/editor/source/source_document.dart": "9c2562c6ed6c5ff5769dcf559b71424fc1d8b8b0325533d482170e89466f9395", - "lib/src/editor/source/source_intrinsic_width.dart": "567e55f6aeaa0cc0e305c38bb32f37f180c3c57223a2fc627a1d52d4c43055a5", - "lib/src/editor/source/source_gutter.dart": "2e318b55ab977397a1b884dbe75543df0553fcd256f9e6a35c66476543649c0b", - "lib/src/editor/source/source_line_index.dart": "6dd3355a9dce3c6521d84bdbf049073b26d9c9953f3342e5ce4ff8cc68817987", - "lib/src/editor/source/source_highlighting.dart": "88e1d95e163302fc472e92a9bc3c73e18dea44bac9e33f08bdeb5325f85cc338", - "lib/src/editor/source/source_folding.dart": "99a6feced2fb7bd5cab56bec89188ae6074c881432f678e0876fd28575293d88", - "lib/src/editor/source/source_commands.dart": "ee445a92b457546c2469f42b198fe7330212b3d14611d0663e03e6274fbc5ac7", - "lib/src/editor/source/source_editor.dart": "ec21409c030fb38a11eb74d2a75cd02df89866aaaa0efbda8fa94e94ff1b65bd", - "lib/src/editor/source/source_autocomplete.dart": "6d8851278274d6acd0b097b5a71ae929928c9a69c0320f52be1f889e4ad44871", - "lib/src/editor/source/source_read_only_view.dart": "99286ab99ade39543c07d573a23783f8c0f56bf3c91bb33fd8d8fd4e09dbcc33", - "lib/src/editor/source/source_paste_engine.dart": "dd4d430b433215c7b8836be04ec763673c7cbd85bec582b0a0aeba57d9c36c8c", - "lib/src/editor/source/source_search.dart": "d9a06a8de7e3f05203b925067acbb34a16e0622e78476c6f6d3cb4ec99566e41", - "lib/src/editor/source/source_controller.dart": "ab00b5d51cd5efc19e771d186923d022788f11d8622ddc2af21586f394180901", - "lib/src/editor/source/source_diagnostics.dart": "20b30b19125a1cf7c8deac7f8aa4da2d8305b18786355b23fda3f31c6e487ad3", - "lib/src/editor/wysiwyg/wysiwyg_document_controller.dart": "3b05e06a64e530586847925067e68ed3a1c20715434f263dffe1b4b1adcbac74", - "lib/src/editor/wysiwyg/wysiwyg_session_state.dart": "454e9afa2f0fc15720b50f5fdd17f645c7463d8c9cbb553d8926a43398602bf9", - "lib/src/editor/wysiwyg/wysiwyg_block_widgets.dart": "948245c49e419c5a8d9ba1f74349292297c779d5c3a3ec3a0396e5b83429ddb7", - "lib/src/editor/wysiwyg/wysiwyg_commands.dart": "cc212fe423405257e4ef7988d781b6285aeb0803fc3cf57b4be3e05afb2b9390", - "lib/src/editor/wysiwyg/wysiwyg_editor.dart": "1665bf6c08eeb0111a4d3822c1c9b4af4d5b6048089b5992985b7b63b2ca8b1b", - "lib/src/editor/wysiwyg/wysiwyg_clipboard_fragment.dart": "a4466eedb6ea21dfa952cbb041ec572b97a25813c9657bfd9c6b2c51d7da8348", - "lib/src/editor/wysiwyg/wysiwyg_clipboard_html.dart": "16797344be7856aef0367808de8b9c59dae1379c0115abbba4155e21fdfb994a", - "lib/src/editor/wysiwyg/wysiwyg_toolbar.dart": "e3029284b76b4cf800ebadd4cb60fe1201896f9226f9e911dcb913b4ef0c54ad", - "lib/src/editor/wysiwyg/wysiwyg_visualization_navigation.dart": "fce906dfcf4ed96e2869e8e6437ada2f563eb0c36dcaa0622b3a6c665953c9e1", - "lib/src/editor/wysiwyg/wysiwyg_inline_controller.dart": "19832f50162dd2143696140255b6985f9312d1c8dbdd0cc1ffc259633498c632", - "lib/src/nextcloud_notes/application/notes_repository.dart": "b68f0014ca2e671d605012deae2c57421a4738ecfaf9ff86b80324358f5d71da", - "lib/src/nextcloud_notes/application/attachment_markdown.dart": "f74125b2e173fc847a88ee7a674f7928f092a7d2fc0a217f4349356be9113d44", - "lib/src/nextcloud_notes/application/notes_media.dart": "b1723b90674c131b9f23dd17b3a38d52035f6375b4c97007ba356b28013740d1", - "lib/src/nextcloud_notes/application/nextcloud_connection.dart": "40e9cf545a8b8c2ac9107b79016a28a4fc1a14ad8815aafc07e347978b772e10", - "lib/src/nextcloud_notes/presentation/nextcloud_settings.dart": "d0d1ea6cba7aabfb59833f39890d85affd86705f297556ca2119a4bc882cb554", - "lib/src/nextcloud_notes/presentation/notes_sidebar.dart": "bf0aa7e7d5dfa542d5719c0890d1e5d9809c5193eed41ff403c51e2c7efff23b", - "lib/src/nextcloud_notes/domain/notes_conflict.dart": "9a5a73bea64518684f96f10650de4bb87da30e522c9f81512cbd59ede2dc1fd8", - "lib/src/nextcloud_notes/domain/notes_models.dart": "7512674d30bbddfe59e18d1b0466e93771b531b0073719b1b7dcf6065b52f007", - "lib/src/nextcloud_notes/data/notes_attachment_references.dart": "529f8a0294b5a835b5794b8832f6986ca0607b96f28e380da4241898e38b0189", - "lib/src/nextcloud_notes/data/notes_secret_store.dart": "6b7a1421f20cc9bed7f4c0bb697d3acf2a8eeffb2597b6bf845399c05e07563b", - "lib/src/nextcloud_notes/data/server_uri.dart": "a86378012ea47688284d50bfc3b25d585fb9b0d4b841359024769c2acf815b22", - "lib/src/nextcloud_notes/data/login_flow.dart": "258f0bd543d94808176c5be26776a6a816fab1f4961d81512d842d586515c096", - "lib/src/nextcloud_notes/data/notes_store.dart": "0560a30df4217c11bb3969d0b3113428b6bfdee44fb05688a5e240b2c260ac3d", - "lib/src/nextcloud_notes/data/notes_capabilities.dart": "268e10e0a644492357bc4ac8eda9fa31c976f2bd097797c133387ac306191dce", - "lib/src/nextcloud_notes/data/notes_api_client.dart": "700f74aeca3e9d83ca4889a2e85f7403d12243d975a2ac07b1f770e5c589c754", - "lib/l10n/app_it.arb": "74bf3268ad3e77b49469868c43ab341de509b8289ffd78fe258fc18b682ea694", - "lib/l10n/app_nb.arb": "5aa50249f89ef8cef8577b5518b9bb5e3ad1b647c5990502d29fedeec25e0b21", - "lib/l10n/app_id.arb": "1610a2bf9cf8e6033e426dfd493d27efe1f7b98325eac7378e60543894ce342a", - "lib/l10n/app_hi.arb": "d4937a8398800909db22458474150303db79ab5f921e8b2d712f24bc920a13a9", - "lib/l10n/app_fa.arb": "41dafeb4daa06ed4cadcf06211ed69db98d9d68cd0fd68bcb208c0047f259f9a", - "lib/l10n/app_de.arb": "4c08616a2ade79cee2b57e71b0f690331c5b5cdbece84fdd928458ee40dc514e", - "lib/l10n/app_zh_CN.arb": "f3cad9cbdba825fd053ff293b7acc44c80cc702b82be79d099d6f1d5dae17655", - "lib/l10n/app_ar.arb": "039691b2aa89c975fc656f9ba5a1f168f09a4b106e43ad3fc2c3fe065008cb59", - "lib/l10n/app_pt_BR.arb": "01e5e9b508974e06aa8e3c4922c8f112c61095ab4b12624ef19e2193e4bbb921", - "lib/l10n/app_ru.arb": "fb577b6f8997438f6d6306ffbf86a367135a81dce8e1846c20aee48ecc6a7fb4", - "lib/l10n/app_vi.arb": "f7752ed5cc1ed766fa2f5340cd43eba65cf711e08a292be45da0f95df2e7f4f9", - "lib/l10n/app_nl.arb": "e1e2c58ea52b33ab9e6f6a99308520abaa575ffbeb1ed929871cea8506cf96d6", - "lib/l10n/app_fr.arb": "e79bdf65ca16ee3443e0e3218971d184ebd4cb5c2cd252218b6509c87444c18a", - "lib/l10n/app_es.arb": "ab3afc8e396fc8e80865d1892fca886ff63676f0e94ae6bcbd99ebaeefb823dd", - "lib/l10n/app_ko.arb": "17aa0c04d1bd03eaed998399de81de8345a1edabb0dafc19351789b45b2b8597", - "lib/l10n/app_pl.arb": "b6d81032246d67840a15ce41e1b4bb274a45945c2ea159c72551a76cd31c1e16", - "lib/l10n/app_zh.arb": "492baefd14c0f3627baf81a20296dd30408c4db104c1860dad0400446686a2da", - "lib/l10n/app_tr.arb": "eb505765012f3c8a2bc5cf01ed9b727c742411ff8b8c4abb9db457025d1ab9cb", - "lib/l10n/app_ja.arb": "8aebaf9e495ba0fcc117b97cbb9e5391438080cfdb8757bed508de6c00f2d4e2", - "lib/l10n/app_et.arb": "ff18db8cdbb027b2f43ffe027fbeb784b0251a3708cd45fa36b6000d16009d1a", - "lib/l10n/app_pt.arb": "e901e0252e79b9bd5d31321cc28007c85ec0e7e44ac88b77513b2c4e0e0e8b32", - "lib/l10n/app_uk.arb": "9bbead1ecf2bba435ea8f327fa44e19e1bd167e5fba0d000237c1d66d7ade118", - "lib/l10n/app_en.arb": "c215af29845d20d074d7599fc89c33c8a75d3ba0b32a158070300feb6290a36b", - "pubspec.lock": "6062c9287c8030d89989584d023b649c990ed5ca7bb40cb5941d6a48d1bcc9a7", - "pubspec.yaml": "b095829f4ed4f68ccf3d254f873b81f80edfccea1cb930dddd8de804865f211a", - "snap/snapcraft.yaml": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", - "assets/branding/busymark_logo.svg": "dfc2bff2b49a268eede8c0ed49054bc575c415c697736cd84bfc728c5a210381", - "assets/export/html.css": "7b0b65c6c4d5fffc00b52833a7fbc43414dd988490d141d18db0ee683e664a95", - "assets/export/markdown.typ": "9a15349c348bca0742263a6d1228cc93ce850a4b5e046bf12e4a8f4bc6d89851", - "assets/spelling/CHECKSUMS.sha256": "3e09d517676fd8c18ac05a7b5a327404c046e1b5eb6bd97764417c43cd7251dd", - "assets/spelling/NOTICE": "4575a8d402694008656ed3cda93d158f58adbd0ae54a8b9b47824e53f9f7d19e", - "assets/spelling/VERSION": "8b037210fca77dc4fb8f6f0573e1578717d73f429cbb25e8f10b54d314800a11", - "assets/spelling/dictionaries.json": "4fa250112cfbee3fcf3e2dc1cc1f9b60bc556f439bdc0310e35dce19ed5b8bd3", - "assets/spelling/licenses/ar/COPYING.txt": "73480d918cd78d655508e80aa88c022cbd53634524a0f714b5f2519f2cf19124", - "assets/spelling/licenses/ar/README_ar.txt": "5ead684ae5211ccf615686959e24bd21ef6eebbb6195997529fda08b993f615e", - "assets/spelling/licenses/de/COPYING_GPLv2": "e7431ac20e815b6797369e802f9e4bb1b0082485060d8b096235f035d741bd89", - "assets/spelling/licenses/de/COPYING_GPLv3": "8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903", - "assets/spelling/licenses/de/COPYING_LGPL_v2.0.txt": "b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c", - "assets/spelling/licenses/de/COPYING_LGPL_v2.1.txt": "dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551", - "assets/spelling/licenses/de/COPYING_OASIS.txt": "2d9d81e88ecd0e837122f4688ca7a6a5bd7bb41bff6e21ff5d4663eb43372db3", - "assets/spelling/licenses/de/README_de_DE_frami.txt": "c141f4f79c428b7348b5012836f4ad3db4d124f288f15effc22696dc876512ae", - "assets/spelling/licenses/de/README_extension_owner.txt": "7662cbc363fdee12bc03a5295148587bb76923c121792a401115e654fea37b5c", - "assets/spelling/licenses/de/README_hyph_de.txt": "be7b3c67a66ea7185a69a3ce3b1e712cd6bb904dce8ac0eecdefd2f1a948baf3", - "assets/spelling/licenses/de/README_thesaurus.txt": "405accab10106f6d09152f2f5865ec3545fbcf40817b5416b4b99a077f303a87", - "assets/spelling/licenses/en/README.txt": "b8dd4d2ace5358adf5e6ddfac720871188e6f211cf56af97db631f4ee53e0ff3", - "assets/spelling/licenses/en/README_en_AU.txt": "f0897dcfdf058bcfc93fbc8e7e1b5da4c27ae9e175ee3a9242e887f02eb84a8b", - "assets/spelling/licenses/en/README_en_CA.txt": "86700e39b2307dda4c087ad3505a1e634a5b4d518ab808c398a16d21ebe957e2", - "assets/spelling/licenses/en/README_en_GB.txt": "18b5833de60a52ffcb6e5b6b5048bb5a5d910acfecd5b096985b77058223880c", - "assets/spelling/licenses/en/README_en_GB_thes.txt": "cc8abeac37067747d66d5365e8163145be6f3c23f488005074bf255bac89f2e4", - "assets/spelling/licenses/en/README_en_US.txt": "168b4c01cb841f766a72f310b065c04d09cff46376c37a81d799593ce751c371", - "assets/spelling/licenses/en/README_en_ZA.txt": "116ade99dd4a92715b21ae5b358a1a8cc814c76c0d6e582fdba4870835d1a6e2", - "assets/spelling/licenses/en/README_hyph_en_GB.txt": "6f3d1dddcf62d2d452801bd86289ad5826a30d15a502c0825f5c73715372db50", - "assets/spelling/licenses/en/README_hyph_en_US.txt": "9bcae072bff45cc0333d6b3c508c92d85b9065fc861c743c1506b303eba3f4a1", - "assets/spelling/licenses/en/README_lightproof_en.txt": "2271b9893955aa0abae1193cf56a66badaa906c0af030edd46113d10c59f2e24", - "assets/spelling/licenses/en/WordNet_license.txt": "23dbc4f3ea771304e5ab3e5709843813d2619f3c0cfc81229b53fcdb9985f29a", - "assets/spelling/licenses/en/license.txt": "df84246204e3c54cd24aebbc23714235f5fc41d754d53b65444a2afbf070130f", - "assets/spelling/licenses/es/LICENSE.md": "2b70fd5cb8d3b34cc6ae322c969557a2270b99017594addb2531ef5ffd9e1b17", - "assets/spelling/licenses/es/README_hunspell_es.txt": "0b5c39a863ecb61f5c5631ec1cd977667ef9bda6da6f90e80e9fc0edcbfadd97", - "assets/spelling/licenses/es/README_hyph_es.txt": "1f1088dce1140d981660faf3f5acc825e74aa1f943a8bec88cb046e4c528a1fb", - "assets/spelling/licenses/es/README_th_es.txt": "c721aad5e8f15297d4a8aa30b31a1bec1a4cbbeaeec6b2633cd64e2b0fafab30", - "assets/spelling/licenses/et_EE/README_et_EE.txt": "4cff6a48ea9168d545316ab96bac24eff4745bf198cbdd9f57eb10a9d8f93f0d", - "assets/spelling/licenses/et_EE/README_hyph_et_EE.txt": "da273b8ec03e35774a426e9df047ad85253ec9e61a5c056f019d57c1395ef1cb", - "assets/spelling/licenses/fa_IR/LICENSE": "7429736f069a84049bcfbee436e5cea3a3fd9b98348d880d9e43ebcf39721989", - "assets/spelling/licenses/fa_IR/README_fa_IR.txt": "aa1450d6eab0d140719048e7277204bae086947fe5d8cd834d115c0dd0cf7a81", - "assets/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt": "4a25abf740ad6ba5e8d0cfc0d2ffadc3c13c303f8fe389f323b061a389350f83", - "assets/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt": "6951d9806c65c7f757d303061ca49cd7a1ddeddc552147f5c29de6540821f2cf", - "assets/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt": "431a690c5be7741eeaa0e9654aeb75ed2b0af337492e622e8393d090b4612b3e", - "assets/spelling/licenses/hi_IN/COPYING": "204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994", - "assets/spelling/licenses/hi_IN/README_hi_IN.txt": "2b373a1e07efe18e89c04c7f69bd540681a5926edcb478a4331d0df387861487", - "assets/spelling/licenses/id/LICENSE-dict": "97628afebc60f026f5c2b25d7491c46a5c4ee61f693e7cfa07fbd2c03605979b", - "assets/spelling/licenses/id/LICENSE-thes": "1f3360c2c2fbe9918f3658a20fcd2f64113a11726b7327ca1df7220c433689e1", - "assets/spelling/licenses/id/README-dict.adoc": "7c18fabf4169a4b7f0f7effac5309c26294d8cb354d9ed5cbc8ea2868abcf942", - "assets/spelling/licenses/id/README-thes": "6bbe6d0559d00b6e05acc9477cebfbf0da2b183b4c541cf47f7153dc7e3dfda5", - "assets/spelling/licenses/it_IT/README_hyph_it_IT.txt": "e6f356c3c49bc6016b6a635c20b468468eef6d011953a7051bbdfd56e17f0d3b", - "assets/spelling/licenses/it_IT/README_it_IT.txt": "34c3e93595cf3cf5f3afc9bc0d98eea12593750383f1e82ed1d3ca29f9681283", - "assets/spelling/licenses/it_IT/README_th_it_IT.txt": "07cd83b0d7664ebc620f589524069549f6ead33bccedb7f27d04ed0311e62905", - "assets/spelling/licenses/it_IT/legacy/it_IT_COPYING": "3e41d215a0d9ce21c1fa982d48d2958d539a51011f469f741b51f97e2595ec7e", - "assets/spelling/licenses/it_IT/legacy/it_IT_README.1st": "0328874f246fa9511fb19be6fc38db57f1351b00356e7c7187de59529fb04e6f", - "assets/spelling/licenses/it_IT/legacy/it_IT_README.txt": "ec6332fd60cca5d4cd1b69c78aebae33bb49ccea856ed1d69722e3a23f0dfc82", - "assets/spelling/licenses/it_IT/legacy/it_IT_license.txt": "4de624abc748506298e7be68f2213e422673b43e1674da4b376804096b87dcec", - "assets/spelling/licenses/it_IT/legacy/th_it_IT_COPYING": "3e41d215a0d9ce21c1fa982d48d2958d539a51011f469f741b51f97e2595ec7e", - "assets/spelling/licenses/it_IT/legacy/th_it_IT_README": "3097ecbc3ebd844266b556768748b7c07bde915dd5dd0b70eee30670a91a2599", - "assets/spelling/licenses/ko_KR/README_ko_KR.txt": "e0b13b74b287a71bc668a756fe0d1bcfe5adafb860acab0d81e71593333e1724", - "assets/spelling/licenses/nl_NL/LICENSE.txt": "2189c248cbc054445aeac6cd65b87eebd0a115efeb55ed498b0f2a73441805dd", - "assets/spelling/licenses/nl_NL/README.md": "aa4685a78f32d0d24a67dd5043ef4e39acc8720c3e416fe5d201985980dbc004", - "assets/spelling/licenses/no/COPYING": "e7431ac20e815b6797369e802f9e4bb1b0082485060d8b096235f035d741bd89", - "assets/spelling/licenses/no/README": "0fb3b682bbe5fd3fe23a22d26cc7c417115016bb5f40ec4cf5a62aabe6e5c9c9", - "assets/spelling/licenses/no/README_NO.txt": "0fb3b682bbe5fd3fe23a22d26cc7c417115016bb5f40ec4cf5a62aabe6e5c9c9", - "assets/spelling/licenses/no/README_hyph_NO.txt": "5dd6d4fa61585062d8774afff75d0c51d76bb8126078fef0c0e69740eb093ce0", - "assets/spelling/licenses/pl_PL/README_en.txt": "fb5f9b4a0643821cf88775c0932810c1cd05f236136c913e3eaf1e24806f3f44", - "assets/spelling/licenses/pl_PL/README_pl.txt": "ce3ad7ab1d3a8b767b8f7dcc870796fbda76bc7ad8cde22f6312b0cf86a5bd11", - "assets/spelling/licenses/pl_PL/README_pl_PL.txt": "e691ed1e79934293b0cd6996a14af1520ff893c02f920c09ed0c90aa5f0a8abc", - "assets/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt": "9300db07784a8575743e68cd4c9b966c66f9212c708bd3bbf0190df61e75114a", - "assets/spelling/licenses/pt_BR/README_en.txt": "bb064f3db7ba5f5536da7d079773f692c5f928822e8aebc3d78259ff6cceb9e5", - "assets/spelling/licenses/pt_BR/README_hyph_pt_BR.txt": "07400608865ce4c964cc443a9f354c733ca7f3f7d31f4463222b927cb7c54b87", - "assets/spelling/licenses/pt_BR/README_pt_BR.txt": "9974ce691fdc1fe731717d7a2dc668244405fdc2bf9bf3367eb9b29e85177c88", - "assets/spelling/licenses/pt_BR/license-thes.readme": "253031afa265c7bec5d2e195c659129a7ff254f9d57c57a08eba4a9051868840", - "assets/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt": "8de865eb2f5a83a182d96964d1fe0eee05ae0d68a94f9e9938e4f6349075f5c4", - "assets/spelling/licenses/ru_RU/README_ru_RU.txt": "262af2f6ad70a61e5ee1332ff44fa8ee50edca819cf33207d8ad6ba6a0c9be52", - "assets/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt": "faf06127db60c80b4deefc26a86b3c8a18e1ba46e89d29db8f232501ea850b69", - "assets/spelling/licenses/tr_TR/LICENSE": "3f3d9e0024b1921b067d6f7f88deb4a60cbe7a78e76c64e3f1d7fc3b779b9d04", - "assets/spelling/licenses/tr_TR/README.txt": "18750c09a1e666a6d34854b92dfdc0353c3bfe39008b412d539f52821ecdbdec", - "assets/spelling/licenses/uk_UA/README_hyph_uk_UA.txt": "b5866714694f0e9a7c9d044984b4b39ec6289ade07fa7d2a083a31f5072f3529", - "assets/spelling/licenses/uk_UA/README_th_uk_UA.txt": "29aed1f76c8552b9ba22b00f9f3a5f8316498f95b50f5c1aad3a9743a560ba6c", - "assets/spelling/licenses/uk_UA/README_uk_UA.txt": "664436fee625b4a3e712483947d1711a2f467670f4c389bcf10abca2a564e1dc", - "assets/spelling/licenses/vi/LICENSES-en.txt": "d32e4c8faf974bdeb87da10a5951556b33744cf9b50a7f06125074e11f30d7f6", - "assets/spelling/licenses/vi/LICENSES-vi.txt": "e300eee4d3fd59e2886e785b63f6ded6badc7b9c6883cf73e365b59635d6128d", - "assets/writerside/TGDP-LICENSE": "21b8bf433e69c8d8339de0dd28e5fba4f59c405d01f9a7582c05abe1b99eef21", - "assets/writerside/templates.json": "5c8e1dc03d5252fc0bef448eddadd9f5137272eccf771f961a81680418b0a70c", - "linux/.gitignore": "5ded4f1a9d10d34bf6ee5beb0711d88ee2ef07b0f07ace9ed77935a246e8eb82", - "linux/CMakeLists.txt": "5cc7a01d2531071ea0e5963189c9062c02ac278080ab3ca85904c05c89f24a0b", - "linux/flutter/CMakeLists.txt": "787189e2623313cfee590a0b553338eb9fc68b3af922ddd77c5d39c75f989aeb", - "linux/flutter/generated_plugin_registrant.cc": "6905d91aa4b19ccbca2d15c2dd5af6edb5c5617eb1aa59c59793a271d4edb525", - "linux/flutter/generated_plugin_registrant.h": "00f93bb5b1faefdede8f6065df327522900fb0b8efee86bacf424fd947ed14bb", - "linux/flutter/generated_plugins.cmake": "e4df84c18b9ed8f736e2ac6b41e729953080b659175b35c6976ba521f6d68941", - "linux/io.busystack.busymark.desktop": "4ac6cb8435535f657b43c36a48f7d49428d049a83fd895e42fd1a19527bdbd78", - "linux/io.busystack.busymark.metainfo.xml": "05e7d9068a8c900a7d6a2fef34ff618724eee5f5d81da84b9e34abcc95f7c069", - "linux/runner/CMakeLists.txt": "7acfb32ce6f475c611f2608c187a4fdad85fdb127c3964ec5b39f7bbf6c4c097", - "linux/runner/credential_key_policy.h": "1475590e3a729ac1ff977381b97bdc19c27ed68474617e7b35066dc0e8a66b93", - "linux/runner/gtk_accent.cc": "6dc88751a5e90721893136e525f6be262ee52b774feea1e4b09fe42b7ab1bd21", - "linux/runner/gtk_accent.h": "5e9beec7bc2c9d93055250552a5e51936858950b3a96f3f7359ae9d11579829e", - "linux/runner/gtk_accent_host.cc": "7cd07bcef5b4e6d6f25cba8d1324b7030f1801b6a566f4cefe49d579032754f6", - "linux/runner/gtk_accent_host.h": "25f66de951f83a28ba18c36885df7c2b89e7159ea18cb4658f73a47a7cb226b6", - "linux/runner/gtk_header_icons.cc": "6d7e0d02cbed993b7c2783ad0c8bc0c9703f9ffd4c0ba4d00149c5c9f0f12984", - "linux/runner/gtk_header_icons.h": "b9b8579c4a03b6f5ba146719f6a759504a0dc5127e0c5460a5112d3a64eb2e4e", - "linux/runner/gtk_window_preferences.cc": "336d25df249e5ccdc1e3f593306ebc2259adc98f1b7208ecd5f6ff873c4d6329", - "linux/runner/gtk_window_preferences.h": "b8222fe12212da3c009147977477b1196aa8d881341af1007c1dfe161d4714fa", - "linux/runner/linux_chrome_host.cc": "1af116d3cacd9bf7c778541c8f73a98aef1821a0f9483af2163aee186d7a6c86", - "linux/runner/linux_chrome_host.h": "465800ae17a7dbbe8e601a678f9b31d34ad1d3b94150377e4c769e09084b6db4", - "linux/runner/main.cc": "ea23f7cdf74091d63bba29ef60486370b766157b848f0cfe62bd8b1c1695a0c1", - "linux/runner/my_application.cc": "0e946ba6545746531227e637fcd212f45a2e91f0b000bcec0d2c5bcb7a2fe0ca", - "linux/runner/my_application.h": "a4218d7ac0db8a9a6716daf216b2d4fc6bdc7ac647e3183078b2c962ebdfcf70", - "linux/runner/rich_clipboard_host.cc": "fd389a7d006497dd6b6946a7939b3d3e2bbfff64e4ec79bf86f80027b4febcdf", - "linux/runner/rich_clipboard_host.h": "4b3d8d69f57f452f682cb180212856ed379f2d4b39cbc558b3f1724edcb011f6", - "linux/runner/secure_credential_host.cc": "bef3147238daff28eb738cc619ab0939e5aa9069886f028644c384ab8f41c519", - "linux/runner/secure_credential_host.h": "e1cfbaafd690590aa65fb251f474b892a80606b0ddff15660c22ebd13d9db3ea", - "linux/runner/video_player_host.cc": "4e226d327111539cd7b9ac99bc29f2f9635f4df0a7ed45a5dcc5c4c3e36c6104", - "linux/runner/video_player_host.h": "cf2c9c11e8416eb15a79f067ad485582f8c3630875eda84874f18cc64c4c407d", - "linux/runner/web_render_host.cc": "4a4bf8a9762d6c56c3b5ebd79943d7b870c6e47f720568b47b7f7d79237c4fc4", - "linux/runner/web_render_host.h": "0b44dfcc13b64248d7869901d521c486635e2fac297a969d19c1355dbe448328", - "linux/runner/writerside_dialog_host.cc": "60455609795c298c4f510c7e43b5e75f1b8fa393901142dd6b1cc641ff2b6fe9", - "linux/runner/writerside_dialog_host.h": "028656f71da31933cedc05d0d760d1061bfc539b3ae7db58ca65d5ac3bc1b7e8", - "packages/busymark_spellcheck_native/.gitignore": "ade895c6374f13aafb7e03437feca1dd64fda1f5891c312e53130cdf4c027b64", - "packages/busymark_spellcheck_native/.metadata": "e7588290b8eeb8f0497a65ec65755bd24302660e4faa5ac125ea3e92d76fc595", - "packages/busymark_spellcheck_native/CHANGELOG.md": "d050fbf6b182559dd80bc2515f5dcc8c6375da25daf33636d15331bead5c8d48", - "packages/busymark_spellcheck_native/DEPENDENCIES.md": "d26003331e6214376cc0f4108cab7ed00fe12d8c27d56df83dd5f8b4255b2865", - "packages/busymark_spellcheck_native/LICENSE": "a1cae206f17a9accefe0e4b3ed908cfecfb609d38da2bed69e48c66f4f990a64", - "packages/busymark_spellcheck_native/README.md": "fea1b35afca64f30d2f433e68da86899d70cf0c675cc3c4d95e47d0d79688b5f", - "packages/busymark_spellcheck_native/analysis_options.yaml": "0349d6d825f26f0468bb3715590961481ab4d97e5ae0bf8cd1d2922e700e5794", - "packages/busymark_spellcheck_native/ffigen.yaml": "873f0969143d6a8264daf55e04903627b202b41ec9ced483fcd12c832864fa5e", - "packages/busymark_spellcheck_native/hook/build.dart": "1dba88a2d61297ab98865aa115ca5098f07028c4ed872c4d7ea08094c4bfe8f1", - "packages/busymark_spellcheck_native/lib/busymark_spellcheck_native.dart": "a37e98fc693c92cb259d0792986db0aacc901a3ee2813e5bb4fdeede80f494a3", - "packages/busymark_spellcheck_native/lib/busymark_spellcheck_native_bindings_generated.dart": "5967abfc97c1f862cc3a06120ea1cf8a89ae389e8c26576f3e067eb72b74024c", - "packages/busymark_spellcheck_native/lib/src/native_dictionary.dart": "28dbfb9fae2cc7257b99c5625f88c35df520d9c082926aff2794dae80ce95a2a", - "packages/busymark_spellcheck_native/pubspec.yaml": "d3ccb083ce2ea487257e89c887e85644a3e84e7e729b235ab526b830afcab0a8", - "packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp": "8a8537e39697ab396be7ffc15cdd5de9483df18b86c11eb914f1509bbc7d42e9", - "packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h": "15505a4d995dfaae4b3bb69d47336960f939d5fed728b2fe017df2ace1275e9d", - "packages/busymark_spellcheck_native/test/busymark_spellcheck_native_test.dart": "77cfc1955feb22e9dcb6dc38b8ad11b9d33360031f594fc6e338d692b70da249", - "packages/busymark_spellcheck_native/test/fixtures/test.aff": "f5b2afc04c9a69bca21a87f1bc50879a11f3e2f282b2879f891769845c72cf98", - "packages/busymark_spellcheck_native/test/fixtures/test.dic": "d7466d6156f5f7307bc37ba4371d7f9c2f1a092686734c4ef177d8ce7435158f", - "packages/busymark_spellcheck_native/third_party/hunspell/ARCHIVE.sha256": "86f4db66bff8c06074b74986461afc4fecb0cccfd9a2464700a85ade1990cdbb", - "packages/busymark_spellcheck_native/third_party/hunspell/REVISION": "d371b4b9646b6a37d32a5b4ee4f27ef96a05628dfbfd494b239cfced8450fcf2", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING": "640d90f6ee401241ff62834d0d1b33f83049e99b8bfdfa04ed1b0a1635dde3e7", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING.LESSER": "7c6699c75f87b52bdc542db26d6b1b92892577cda46e20eceb79e2790a1c291b", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING.MPL": "53692a2ed6c6a2c6ec9b32dd0b820dfae91e0a1fcdf625ca9ed0bdf8705fcc4f", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/license.hunspell": "3f7ddd07c296edbfe0a47c7bcc82038ad347a2c4f672345b24f95c624db68513", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/license.myspell": "dcda061adeed22b26f276c01ec374f930789ae0d684e5aa8f8be309dd680ff20", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am": "fd7509a824d65394d3dfe722c50cf5e45f1626e50f03a94f6f01d3c7cc74506c", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx": "acee5674ad818c997efebd0ef89d5a65c9d95da78777f2313091f519d927414c", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx": "4bd5a8ffd6b3185b0b2cdc8809e41502030a0ad802f9d5bd9716a210d1388ef3", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx": "97bea198e797b42708174647e0b848f96fdfb3fc67976ca07023b63af3fb6c6d", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx": "82226e346bfc7ad08ac9da632b38cb323086cf3ae567cb815a2532e2de2c5028", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx": "e58c06e8441cd92a568d32d340dada33217abf3eac73bc178dd2f08a07ed822c", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx": "60987570255d65973f569fed4569676a49ddb874675cb7d6994b4aa8de83a166", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx": "98450eb638b8ebeb6583a30a78cc2e2718496c35641ab3ca7aab117ab7f4cc92", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx": "96907f999891e33bb19fe21ccfb131cea2fdd5afa513e07e19813bab5c0c2636", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx": "fe1b5fed0f5d74f4c092230c8fbf24f93ba58292f4459d97a7bc734c087365cd", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx": "7f690aedac05e832a15deb8bc6a07f4e08102f3c64d1adf75d5ba2d4934b4d90", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx": "cd984a8d8dc060c8043bc3fbf839789f3b885c05b5d46a8aa45db45eb1055ec6", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx": "638a6f560da318506fed3de74c083209ef0f7875201b8805519ad6ae020b59c3", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx": "73698b4755fa5c65893cdbb9d7b1420b22bfb4c597f323c5f22a5d98a29a62cc", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx": "86b420e6227c8c78cfce233c49966f4c8e234fb87be93f32d8612592ff7f121a", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h": "3426379bc96a57a46fb2a604bb9e0c0f62048f92f61c835f9fe47ed18c02e0fa", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx": "7cf85e6c7d97d12787f1735ef6947172402a77c69ae87d17e3274cd802c30176", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h": "7bda44c1dad647e4bd1de1345aef32b9de88222a5b19d7ca395f02932ddcc1ac", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in": "9dea3f382503feb660f1435ede7cd9fafe371c633d8eba95bd9c3f229c043517", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx": "f70b29817519df2e7ed212d27c911501f7f09c3a6acd0c0c345065eb3999fbbf", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx": "2a1104a6798cbafe57c73b74201237600fc96669b9ac93b76d837ec958816c31", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx": "0a8c38f97a137a70320583121a3efb9d3d56fb1032c53e3e16671c23a9c9c978", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx": "33bd24aecb6542fa640ef6be315d95a157691300fe07be081fc951c971bdcb27", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx": "b66ed3023f56138b28d81939e8718198791d893182eb948e92d64e77c52a6f5f", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx": "0b21233bc185f4bc698c33dbf81758166a682bfd8cedaee88c63aeecd0404b62", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx": "c4d880bc20bc9b6487563a06ee34a9c3043f063b7fb729b0a40ec5ab4098a814", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx": "7ed11c66027d9c129bc5ef48cca626659ed94e7b8a4d970a7fccf902bd32267e", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx": "fcd2f8c5125caf478738475e98ee83c479497e9aa10e9cf16ab95d122a680338", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx": "be4c0add3dac468b4d4cb69bfcf70909f2e3627b39bb3d079ad4989807bfc7b9", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx": "9133dcec20ff50528ad482f52c1a6b3206bc2381207e6a4d3ead1a256d94eef0", - "packages/busymark_spellcheck_native/tool/fetch_hunspell.sh": "22e4c75b31cb8262c21991f55123fe8b82bc8db878cb84c805fd5a2710be6f93", - "snap/gnome-46-2404-prime-exclusions.amd64": "28fd45afa604e3a77b69f96e52a5225465a7bfb8d1243a9c2b35a61cebce6fa8", - "tools/ai_ollama_qualification.dart": "49612c1b0a8a57e39b4b156449f36656be6ffb32afce853e94326a1968aff386", - "tools/build_install_snap_local.sh": "978b764eddd59b4b576c80c696fb814df75bcfc0709232a52575faf7d60bc757", - "tools/clipboard_smoke.dart": "056a7c6d8b05d7e7fc7b6b547b48f040c8ec95dc865dde65ddb81fd227a77dab", - "tools/extract_writerside_semantics.py": "0b7df9ec2fd85e2b105ba3e25136f3f489310e8fab57cb2041a38ed9885013ad", - "tools/fetch_d2.sh": "2864a38e0b9bacf0deb43ad62e913f4d15e29b95c2429023f3708021d44df31f", - "tools/fetch_spelling_dictionaries.sh": "44cd91cea58bf20d41a1471bcffb51f3a51dab5907afc4898542480e522ec0cb", - "tools/fetch_typst.sh": "49c889970fb4eb8970b97cd08593588bd221f2c3f26e7a554b3b2ff815e6967c", - "tools/fetch_visualization_web.sh": "6707f349bc5a9a0a50cf5017ee6e2a6cf0c026dcac86cf715197e980a8717988", - "tools/generate_writerside_schema.py": "0799c592152bcf26b6ced3d0d45e0214c43d39e31fbad6ab37823608509cf1a1", - "tools/gtk_accent_host_probe.cc": "0c63dc6d70f19fb08c42ec8e5fec0b2b8a7d2b4e01a2833b046061f48d65731a", - "tools/gtk_accent_probe.cc": "03d38ca6a84f6290d5eff61dac9fa1372073bccebee900e0240fb263f944d7bd", - "tools/history_visual_smoke.dart": "4fa26747ba10678ffe462c84f2cec04625f88600cda278a2fc29b0ea73587f10", - "tools/linux_native_menu_probe.py": "3e3da0b5356e89ca9b4dc27870fcdc5501c1de7166393f1cfd70c0c25bab3d25", - "tools/nextcloud_libsecret_probe.cc": "36acb2ae9798bb452ef47fc6291d8942b064fe806641c43eb9ba3c09d7a32c49", - "tools/nextcloud_login_live_acceptance.py": "a023ffc4c69e57efc78902e274ee48952664a7083dd7500388fcb923023e6b3e", - "tools/nextcloud_notes_live_acceptance.dart": "d5aae7de2a35ad08fa27e464413d03114a44c41edad93e64baf85d93e9f2f55b", - "tools/prepare_spelling_dictionaries.dart": "dce9a217ef5892a9aa15cc3c5b7475da521a6eb9c8e23367820a6dde0cb8be03", - "tools/secure_credential_policy_probe.cc": "239829f23b1c1bd6e0a7e864485fd5ebc30ac68065f32e26e918f87238d54462", - "tools/test_gtk_accent.sh": "00503759f1595e1322ee2cd51d494ec11cc79327ad9bbe5322f78eb651e041c6", - "tools/test_gtk_accent_host.sh": "e73c335815ca84c0ce59ba7be80a6a4e3ba5f927e88421552563068c43f32fef", - "tools/test_nextcloud_libsecret.sh": "7fec5b6f7faea2604951e60fe087bed5938c37b12bfd6fc24f5dfb7348c67b54", - "tools/test_secure_credential_policy.sh": "6315f00f0b58578d037a23cab6489c87c03982d02b55fb109d7365e5da2be2a5", - "tools/validate_writerside_conformance.sh": "8253c4c54fb4fb3bbf4a590a99252d0700e69ae9bd2f55d28ca22b6a71e64fb0", - "tools/verify_html_export_browser.py": "a99b8bddc468760157839529b69aacffdb0047b23e0a640a711b2a66d998a44e", - "tools/visualization/bootstrap.js": "15be4b01e7bb92e016509679927603246d41b5afb499f398f22be043a17602ef", - "tools/visualization/build_render_engines.js": "139d3dd7c654686b781a2c2eadbcaaf5bd5da1bbe6c3d8d20f5c812663dbe7e5", - "tools/visualization/generate_notices.js": "b4dc8256ef42bb112500fbd4e6f99a5b88b70db240fb24cc9b610c3e66b9146f", - "tools/visualization/harness.html": "3124bdf61a51d29828a66c4ebb835270e6c926ab8a9ed26132842b70ccc10f69", - "tools/visualization/mathjax_renderer.js": "586c8ed9f6017e6115e845498390d08c6974ed1c8875b0de1522f939ba054681", - "tools/visualization/mermaid_math_disabled.js": "fad5349d62b419ae5a3ccce5007456b44b5f1f7c92d79691702800e35e821c43", - "tools/visualization/package-lock.json": "1bdea046de42d36b9a11775668fcade742d67e18c5336122c7398c4e4c2e2ee4", - "tools/visualization/package.json": "69a0134990fe5030f93f48fb481a5b1864941ff2f3b003b6d46ef7738b05b4b2", - "tools/visualization/reference.html": "c0747c047dd4f1fc3e268748178445d3d8a35965779e6782e27217ba13feba39", - "tools/visualization/reference.js": "862d24589d1841e5be4e83028e3674d90881ca0ff77fb90ae2f7ee50fbd159d5", - "tools/visualization/render_engines.js": "36c571e797d7fbf1fdecc0b43385ab90cbec8f8cc267ec56906202df7539109e", - "tools/visualization_smoke.py": "5d2efbfaeb09670e544c4d2aaf691b3f201fb9c2342452b1c5ddd05a86d4a62c", - "tools/writerside_toc_visual_smoke.dart": "fe5b831b720f985bb429ceb0ff5c1ee09e12e151409d1adf98fa27a79c11f46c", - "tools/wysiwyg_selection_smoke.dart": "480ae202e4366c7a24be4773f2aafd145ce9deabce80187655a89f2a3a937c89" - }, - "linuxArchiveSha256": "6da9cfe58839eab6a70aad4f15cdc824dab9418f7f22d0deb02b5f1f50ff8118", - "archiveBinaryHashes": { - "./busymark": "ddd5b6fc361e697cab18f195b6afd47f4bae64ff19dfdd49a6495a341528f32b", - "./lib/libapp.so": "9e0ccfd3e1f8164c5d218dd0b5bfbbf8b8b1c07bbf86b5295dd5a9c2f7b5815d" - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.json b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.json deleted file mode 100644 index 7910d92d..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "ok": true, - "checks": { - "notesVersion": "6.0.1", - "apiVersion": "1.4", - "locallyDurableCreation": true, - "contentCategoryFavoriteCanonicalTitle": true, - "titleSanitized": true, - "attachmentDeleteUnavailable": true, - "attachmentUploadFetchRename": true, - "secondActorEtagConflictAndMerge": true, - "offlineNewNoteAttachmentRestartReconnect": true, - "uncertainCreateExplicitAdoptionAttachmentRestart": true, - "independentIdenticalCandidateRequiresConfirmation": true, - "listChunksLastModifiedEtag304": true, - "remoteDeletionPreservesLocalWork": true, - "explicitFreshCheckedDeletion": true - } -} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.log b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.log deleted file mode 100644 index 96c688de..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1-final.log +++ /dev/null @@ -1 +0,0 @@ -Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (14 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.json b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.json deleted file mode 100644 index 7910d92d..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "ok": true, - "checks": { - "notesVersion": "6.0.1", - "apiVersion": "1.4", - "locallyDurableCreation": true, - "contentCategoryFavoriteCanonicalTitle": true, - "titleSanitized": true, - "attachmentDeleteUnavailable": true, - "attachmentUploadFetchRename": true, - "secondActorEtagConflictAndMerge": true, - "offlineNewNoteAttachmentRestartReconnect": true, - "uncertainCreateExplicitAdoptionAttachmentRestart": true, - "independentIdenticalCandidateRequiresConfirmation": true, - "listChunksLastModifiedEtag304": true, - "remoteDeletionPreservesLocalWork": true, - "explicitFreshCheckedDeletion": true - } -} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.log b/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.log deleted file mode 100644 index 96c688de..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-6.0.1.log +++ /dev/null @@ -1 +0,0 @@ -Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (14 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.json b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.json deleted file mode 100644 index 494ea0c5..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "ok": true, - "checks": { - "notesVersion": "6.1.0", - "apiVersion": "1.4", - "locallyDurableCreation": true, - "contentCategoryFavoriteCanonicalTitle": true, - "titleSanitized": true, - "attachmentDelete": true, - "attachmentUploadFetchRename": true, - "secondActorEtagConflictAndMerge": true, - "offlineNewNoteAttachmentRestartReconnect": true, - "uncertainCreateExplicitAdoptionAttachmentRestart": true, - "independentIdenticalCandidateRequiresConfirmation": true, - "listChunksLastModifiedEtag304": true, - "remoteDeletionPreservesLocalWork": true, - "explicitFreshCheckedDeletion": true - } -} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.log b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.log deleted file mode 100644 index 96c688de..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0-final.log +++ /dev/null @@ -1 +0,0 @@ -Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (14 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.json b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.json deleted file mode 100644 index 494ea0c5..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "ok": true, - "checks": { - "notesVersion": "6.1.0", - "apiVersion": "1.4", - "locallyDurableCreation": true, - "contentCategoryFavoriteCanonicalTitle": true, - "titleSanitized": true, - "attachmentDelete": true, - "attachmentUploadFetchRename": true, - "secondActorEtagConflictAndMerge": true, - "offlineNewNoteAttachmentRestartReconnect": true, - "uncertainCreateExplicitAdoptionAttachmentRestart": true, - "independentIdenticalCandidateRequiresConfirmation": true, - "listChunksLastModifiedEtag304": true, - "remoteDeletionPreservesLocalWork": true, - "explicitFreshCheckedDeletion": true - } -} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.log b/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.log deleted file mode 100644 index 96c688de..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-6.1.0.log +++ /dev/null @@ -1 +0,0 @@ -Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (14 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.json b/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.json deleted file mode 100644 index 974bb94b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "ok": true, - "checks": { - "notesVersion": "6.1.0", - "apiVersion": "1.4", - "lockFixtureState": "locked", - "lockFixturePending": true, - "unrelatedDuringLockState": "synced", - "real423PreservesLocalOutboxAndOtherNotesSync": true, - "locallyDurableCreation": true, - "contentCategoryFavoriteCanonicalTitle": true, - "titleSanitized": true, - "attachmentDelete": true, - "attachmentUploadFetchRename": true, - "secondActorEtagConflictAndMerge": true, - "offlineNewNoteAttachmentRestartReconnect": true, - "uncertainCreateExplicitAdoptionAttachmentRestart": true, - "independentIdenticalCandidateRequiresConfirmation": true, - "listChunksLastModifiedEtag304": true, - "remoteDeletionPreservesLocalWork": true, - "explicitFreshCheckedDeletion": true - } -} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.log b/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.log deleted file mode 100644 index e1cfbc00..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-lock-final.log +++ /dev/null @@ -1 +0,0 @@ -Running build hooks...Running build hooks...Live Nextcloud Notes acceptance passed (18 checks). diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-lock-persistent.log b/delivery/nextcloud-explicit-adoption/evidence/live-lock-persistent.log deleted file mode 100644 index 2f3efa42..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-lock-persistent.log +++ /dev/null @@ -1 +0,0 @@ -Running build hooks...Running build hooks...Live Nextcloud Notes acceptance failed. See the report. diff --git a/delivery/nextcloud-explicit-adoption/evidence/live-lock.log b/delivery/nextcloud-explicit-adoption/evidence/live-lock.log deleted file mode 100644 index 2f3efa42..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/live-lock.log +++ /dev/null @@ -1 +0,0 @@ -Running build hooks...Running build hooks...Live Nextcloud Notes acceptance failed. See the report. diff --git a/delivery/nextcloud-explicit-adoption/evidence/localization-audit.log b/delivery/nextcloud-explicit-adoption/evidence/localization-audit.log deleted file mode 100644 index 8add813b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/localization-audit.log +++ /dev/null @@ -1,23 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/localization_audit_test.dart -00:00 +0: production Dart does not hardcode obvious user-facing strings -00:00 +1: native Linux GTK user-facing strings are not hardcoded -00:00 +2: Linux package metadata matches supplied target locales -00:00 +3: package metadata uses reviewed product wording in every locale -00:00 +4: duplicate JSON key scanning respects nested object scopes -00:00 +5: ARB catalogs have valid, unique message structure and locale IDs -00:00 +6: all ARBs match the English messages and placeholders -00:00 +7: destructive, save, and Git history actions remain distinct -00:00 +8: English-identical target messages are explicitly reviewed -00:00 +9: Syntax Reference is localized without legacy message keys -00:01 +10: clipboard write failures are localized in every target locale -00:01 +11: Portuguese and Chinese base catalogs contain reviewed UI prose -00:01 +12: completed base-catalog plurals reach their supported branches -00:01 +13: Russian and Ukrainian count messages render every reviewed form -00:01 +14: Portuguese count messages distinguish singular and plural -00:01 +15: Hindi unsaved-document prompt uses saved-state terminology -00:01 +16: RTL translations isolate technical interpolations -00:01 +17: Persian dynamic numbers use Persian digits -00:01 +18: locale resolution considers all preferences and falls back to English -00:01 +19: every selectable locale has a generated catalog -00:01 +20: diagnostics localize at render time from codes and args -00:01 +21: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/localization-generation.log b/delivery/nextcloud-explicit-adoption/evidence/localization-generation.log deleted file mode 100644 index 45c1c495..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/localization-generation.log +++ /dev/null @@ -1,4 +0,0 @@ -Because l10n.yaml exists, the options defined there will be used instead. -To use the command line arguments, delete the l10n.yaml file in the Flutter project. - - diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-adopted-restarted.png b/delivery/nextcloud-explicit-adoption/evidence/native-adopted-restarted.png deleted file mode 100644 index 4a582e964975bf1b76f070dd1ee0981c24fc6e42..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68261 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 ZHBNdld82cDckYSFyrpxm8E^dYe*x}%xtag~ diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-connected.png b/delivery/nextcloud-explicit-adoption/evidence/native-connected.png deleted file mode 100644 index 054af6ec62fa8edf60e4c1313c8cec012c55bf6a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 278 zcmeAS@N?(olHy`uVBq!ia0y~yUwuI(vPY0F14ES>14Ba#1H&(% zP{RubhEf9thF1v;3|2E37{m+a>g2^71bLG6xN)FgH_TVB~vkZv=9Zr>mdKI;Vst0Ok=Q8~^|S diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-final-unresolved.png b/delivery/nextcloud-explicit-adoption/evidence/native-final-unresolved.png deleted file mode 100644 index c5b903ad10b7f9fefd39da96e7cc01c05585195e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91488 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-offline-draft.json b/delivery/nextcloud-explicit-adoption/evidence/native-offline-draft.json deleted file mode 100644 index 71599644..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/native-offline-draft.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "b25fb609-a960-4934-b82a-9defddb570ca", - "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", - "serverId": null, - "content": "", - "title": "New note", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 0, - "etag": null, - "base": null, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 0, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "offline", - "errorMessage": "Nextcloud is unreachable. Local changes are preserved." - }, - { - "localId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", - "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", - "serverId": null, - "content": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\n", - "title": "New note", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 0, - "etag": null, - "base": null, - "remote": null, - "creationAttempt": null, - "revision": 24, - "ackRevision": 0, - "editorRevision": 24, - "editorContentDigest": "6fa66b2526b6cdcf35bdedc515b2a941e6e805b13148012c952d871148c69707", - "syncState": "offline", - "errorMessage": "Nextcloud is unreachable. Local changes are preserved." - } - ], - "attachments": [ - { - "id": "e43dca39-e443-4f92-b8f6-0799f7ea9a64", - "noteId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", - "filename": "attachment.bin", - "reference": "busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64", - "remotePath": null, - "state": "pending", - "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "byteCount": 1024 - } - ] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-offline-staged.png b/delivery/nextcloud-explicit-adoption/evidence/native-offline-staged.png deleted file mode 100644 index 0846ba1b2de96eab58920a1ba7f1860a937410ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87890 zcmb5WbzD?i_%A#nDhfz9(jpDgrQk@X5`uuVNP|c>G9ZnJNGV7+NK3bhNJ)biAwvawAadHfxDCGuijWFd*F%cHw$fpDT0>pq0l)yRc&^c;Cl?>_YT$ z`dx_!Ct4vxEvKxyI-%W^H(tqH`}}Mh(Y~j&2%T5Cxw%D=-c~vA;@sSq73e31KuBDL z>oC8Ro0k`WoUZ)#n1xu-Ll5`-SCSo=7kChyAN07+GH+WtIhE^iy>k9{oi;S$7jYyN z_redotw=85T|B?@GE4Hn;5Or8ZH^d)%|EydQF6@DIdI7eH}SC^FuX*N`@U1`cNZ7UX(F>yQ)i~8rqM5)`A3I{XhiZF-(#y(r4tG~DF^pD+izmzO!lhu7aVaS(mR3{*)}bHHv37lZJsFo? zb_`3Dob&obxY2M=%KZja0Un&~jSV_{tVmjkQ|FASUhWSnv|`TIMf!F80s`3B*z1!G zKBvbAD?>#lK%*{F+IO!Kg*LRPsE?@{TUxBGAJt7Mk1TP$FS4haoX*$} zMbpHEsb|bF3ZHe6;hI`se~P+F^!~#KGESYj_4W0orIB}EkR9_| zMR?aKaAf*wOm$U)rKP2v&YtH86;BY-BTfsuK8TS~P(0SrVT+P0D?>kJ_q{(hmX@Po z(o#}V*5lO!qoeNdgalmv{u!@H7I!PL9^uu}(i$ePk+HB~MamJJ2)2Izu28%oq^7T5 zZ$I7K-><-5+`z!V$LGwB03qbjU`r&=^v0|mC6nf*984Z~u)p75b6jpU zv|JytxT46x#+Go~p0c`y_^J3G#6qfTq1 zn##(Y!osfe-(%wA<2$u6Ps3zAJ&$2}kOa54x2q%(q@NN(cQ9q1)#vXO&*efO~r4i27twx<^qeAh8QQT5{M(2z^h%S$vgG*~Gk zrO#sDzSXPuq@dT()^`})B41d z+Y~?7#wwra>1{Bs!@#+w&WwHh_z`MIYAS@C9J zU%!53Dko-US7@-E9IZDPG;+u>gnyhdhOb1$ zjNYE{ZA?sPXebou-QC?4Z(VKeAnt9>ialB7mp5ZOV3}~{N=f5{;af5t76=hx`TF=) zy;xv7{WFjkJJVDUm<}~p_0nx_>??`lBTAnhK7bP@b{5ObN*4dZm52#aWb{fpx%1?eT&8&j<6PC?P?OsraV~g zdgB89)z{b8`{Xd3T7>W~U3SjICMUvo-J;R=f?7_0cXts?>X0cS`W<*`@G)*49;yla zSLxx}oVMoL7Z(=|ybs#Cy8ggYV~Aq8dzXfm=3QKzxsA;Y3W|dc?uLF3KCAC`k_`wA47Qpz9}$v*U8V1@vPk!uH8YAE>yMc9TiBO)l3fRN9UccOztFWCS%R zhW!y`6b@C#oryx27}KyKNJ&YdF6{3=yCnJ{B7ya7ZhLRT0-l1lpe!dB1g)pC(uJ{OZ*6R^IRG2F@G30e^@%zGe*U*m zXr4TQaeEUJ)3≧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 z z-Z*0q)7=uwxU9+hwk5Vas-`z-MN3p^L@KC5Ut%ZCrBQRK@%-jWjKW7T!kz>xE)N_; z_V&_LzHl3=*&~r#A2ZX88h0>_2$p}oWVrA8xpvX|Q4?W!XULNDND|9^_BJI}joY6x ztR^y!O>2!~X7?r0n(taqb&k48sJ2G!Iukay#af?#%+FO^9``mnx1&7sfA&Q-E1M>+ zKr3Z+x`x(IWxgP* z#tAj%jT-srYWs@Wcr%VOr(dXu+)N%sHrKZ2>M*g$T~Tet-08Bo6JHfdj(dVpxKRaw zNN>;0JD?6_)#W3=MoXPM5B9oGa5_UpPb=Bc;n4Q!xmLs1-wOh_v@ea29Zt*~x1AJ} zRTh3^PV-4k)l!`O&7rC^6kVt*-*6jG;O{6e{k%h$O}HAuz`#f!s#l*oC-VTCnz@PH(QTsEG3UT!ilc)#@jrA*KNIg!jxFF}*x;=Iwucw;qG~P;iYky;tm-(m zhap`#V6TDBm-?1L1qm52A63r*fDUyq3sj(*c>qAv1jWyH2xraBHyp>*;MoG9EDz}W zK(PiJC8TOQarYnkHb7km{ymWTLna`&O{RavyH8cj5zHk7xXNQVw+@&7vkslvao#Xn zAa9X2U6|)wBm0-pKP5sh{{C^E$|R@)BYXjf;?=jt{%Kx5UOn0XzTQ; z9j9KC--;;U;bwO^F!l?g{`z=AMMR`kI(x%DS2W4AV^cbIxtzn^}|z%qS> z^@xP)260qEc(px7#+?fD_`V-ww^%RF)T&`I_umdB3iM>oVQ@L1;zKk`y5Qk!jnH$C z;!3pSzs?e1P`_LY|08ytNXXUr{DYCB_)$)+6TY#LcxZyuz(C*MnKM@N$!~ZFMOCYM z=fa-9p`0DAiNOtj|pydN=*wu^_p_iWfpZy&u6wz;ARUHQBllN~@@K zaytlk?$Bis5!^9UocDX59#2h6Ke9d(m$|oN+yI76&+jZ};eN_I7j*M#UeQ%-XDyG? zP|Kd@u<7?nT?D*#@FJq6V+f4l3O6z<zBpy@PA#PB==KuS7i*l6nd)m6 zut*a*LG5579^+7zX$p)KxSJRF$YRh;_pOqQDq zpKji8I65GR|ADblx1_i>N5Qzf5=>}p_lh8(mBH(T$93QEDfR8j5EWrRk-EJ$i~Cv< zQ{@Tz@FflpRarb|*qU6NEQ>NtGS}VSgA-=n^$J@4T7VdQbxJ4H1dvU!Ff)VP8BVf* zN-Rw*#Ma*ae3l)Mdy6~H@IOKB4ARMCG6ztCfT-8Fryrx;G~+>@APfd1NL!NB6~jcx6%pjm(>=mt)OH+W5#HvXuba zjbU4P0#7-$hbke)>RTo@HbM?3@8~9h*DqY6Jf%!0CF1_~AF*oj6|ix%#=iTz%o=eQ zX)YObjIv0Jf0POA#qH*bh|{4GLgOxY`IA1pvN=$DIq7xD11(!x!9N~&enRm}DLgfK zbO@RT_5QOhw)Z!M(Yp7P^@jC?OWZ@7`tgs3svq|Rb>fwnwVX5zdc?yi#MbAR2zB*n zIH|C}=B{l3m&?@f53M5_I=Wi})N_Kj_n1!crtZJ3-nKz8>B-qM((hgO5S$L{+~JS& z8q$l7>3%-9`sq>O*@T2No!gY%yTwWjIxD7Q7F4y1y`t&2^|m~ANClwZYK*d8|I(5m z$ol%|TCQ*H#+L?4d?nS^-chIQbB*ff^l@hT##|P3)AU;I&yJhVjcmV2m>gpr2qflc zIZ1SO6gXaJnaFrQ3iOGZv`!sb|1kpZ8^RyJ|j%b!}FCYMAvkMd^i7iymXCJ*sMoECidPK@tkNZwC-F&L{AyNPnbC3KClU0+Cb7o6S z#hxLinIl&49%j5Ea#G{3m-yGHP^^ygWwg_(BRTj=j+cvjipiw!v1*7uRgv?{%u?F= z{_S2UjoT^0dfh)Y`F5a)g6Fkn|2(wkmml?AqKX#v8g&z*yRPm8Q3e{3NR11#($cPO zqk)E2EQ6kZ)eFgO;gHLQh{qFT-dsJhtBF&Ao2W!R(fONWGQ=K}0p|RZW<29Vk~#Lm zAAS4R22VmNk6uKEIIN@<$FB63?hZCNM%@&oEQ$X4aw$Awl%11x?^{X7--nqo0pH65 zoWrdv zeUC?r{yHYluIGe2=J>H5AFOlsl2kCw+}spn)%v*y`Fm-r^a~7=3#TF(3wh*z0umNm zdoG=*(+$||zwvS${0!+4nA18rByOt_7WNbBS-E$zT!dz4i;b8~a3%Bp^*E!aq=+)Z z$Tr1)e!(A$yd=7#NA|-$x;NG{aw$!n0#;WpaxBwvP1mLnx@sFWyH|p~%xYe{Tzp=! ziJwYeio2hP$$kqvOBu>B^BtgW&&^Hsilbs;z+YT2uyyHaw?iZAELhv_X?872C4IKl z`V^jr*a8jJ%iRNNxoq#JdGymF0k(UFL)Xs{=^L!STzmB}bSxLH>wh02BHlW|rg?DP zCsoklN1gt>Oe7N}%U`sVU4o+0(1cuncX8FF>{_SF(PQz3`TMK<_~|<-Fc?9R6cJMP zAsTl=Bhy!P{5jpcD3|owRyyZn+R16eG4|+hl`2{S(h3q}1EXl`0RdbMM1jf@^S_^y z&CLh-7+!7)+Iqgtnl4?PVrTJmFp}1WsIJ6`oND>_nCz?5iRR@A{f~9+jKljsUoMZ- z-np*H3vA9~97sWcQVb+^uMU_1t*x#O2OfDQLum)-bZDwVnHR}=P}O+XWnP|=20x5@Wa&Lr zoMCuCj?m(2;H6|^AJ!;Op5!HfOghW3xMfD}P13Ss z-Lovq8&kHSyAyIUDcNS1NU3~e_e$ItE%Vga`moQY%7AJifFQniXzugQ_L(Pxo|+F% zeTzDIb7n%<6s~stnAU`JkgHjwkYBCMjI9j_8{`=$_BgPctme7TtukVvfw=q% zDNoOTw2vB|agX8%`FnG2T@|Xvp(X6#D^99^?sQ}^p{820@q{GH~6#v z$|jSeFkyJ)_HE6-SPT0j{z*-)tyeF$(z0rPXuyV*VD|^bplfxwy0mXhz-G3-p^>bp zvi*;_2;xnhG@`#|`&&~LdPR`5taxojeBF8cERjKTr#5z;%S_QKoM1Kn zGWzC%c3xc-zjSpqm>6le$@`|(_z~jQ;Wml4zQRXwqGvH#;}y6F|J2lAEXB3il=ah> zeN)K@=|`P{vr{bcK6`$8FCv$7VNG&hx$=Xr0`VG+tBvjj@lq z5;I8n>`kwL{g1y#E^Im*kbH-!TK{NUx}!L-;#v#4MXPkIQKMPK$*Ia%o9yhhxBa9< z=|k7g=FcRh*4HVhaniXRiG+x^gDXa*xmUfu~jzi=;dwk*iRfzhio5naQiPO zMO9}X_QVEaku%3Qml+cC^^`t0(Ts+|z-(Nzlum%^%OK%3`b8DWq6veFHMvVaB$ZJM zC60|g_LuKi1X1$Pfjc}~)Tv2q^e9>(eHrn1J-t3K*5lbD_vlVr_#`a%XOO4hB+n zc5Sd{n|Wrn?uo&X;JVe z+FIhj&L@Ve!#W4%XBSDW~;@;!uT<((x)8M)rsa~m@k(Yf6UZt5Pwp2R?i(UD=JZzLsY1G>pM zw!elv=M4SMo*&1Ai`LE%IY%)tn7%5^hsaK87E@KhV>PQ3)9bzORMbJ2r#OrZ_(kb1 z?JT^Zmq%#tq2q3E)f!hd>B1^_IUq?@GBLIzNNF3-%Vz)Z?=gD+`iz#g`g!KoZ}{zg zdxz~8pY#p7Y#clIoV!dfrG+%bWV3m{MBmE>>R>ovPV{ab!HB}E= zJZrb}%5`u3ANyUtVpAh-cR916M% z4YW7YJaCK9U6zYXF^K(>XdQ;?EF|7UF6x1}ydu%ldf`bguh-L~^{0Cwc@HzGj6#1H zQ1v?A-?yguak~Kf<~I~~Jp3Rd1B3p4b9Vc`;B12i7PMNSu>~fa-#F&%)y-{Qd~9DI zdW@H(mE9ERdCU>=D-)X=ojk_hUgdIYg~9UvBRGigi4j%Ku-bvK4_57d;IjEo_1S|R zs}hQ%rYE`SQkCuEM4?1}+;$`$f96*TGtn9EkM+E>qHQhbHng)e7xKADX1{87GAf(f z>^1v`{n2LX`cbUk?Qe?QmB~>&5z@(FcN*5!t7cTmy=f>v6yD8H^e6K!|N1M0@5Y;g zmvJ*MiOJHlQuoxSB9RHW>2LKJ(8BCl;ktRH}^TG#OnM@aN%>Qh6M_?Q^U zv_5on^P^l^?$I?l;!vzqGmDkrUD|q^tQ{0}rU&FWU#zm_h6b~_J*5ZodbPGnGU*Az zN8f1RH7y8b@06k*tI;KBL*@R4S1U5&sfuudnLZUA9RiK)x{y;kW@B)z31^0*mXH&0- z`CiZyig5iFQ8Y7*!yjkyDpS1S-0`am$`I5pn}Z~>uvhkD@r)nZO_3-4i3@07#Iv4m z++=>i^Z>_s!LwV`<jPQZd!r4^8dH&P%ai96r6dV}H zO0}qS?40IpX7t5jA-%fVJ2&N%WX4HUkz{9wMeFO3r2Em*R<*XwqB^8Tu|7Gew2a58WNt8_8O7(C%G%-gf(oQsft$A! z9mAKIC{l5kt!hv1G;;>&y zS*69nU@6w`T0l2d$(VCKLP1IC@%BxY_UWTnlleZ_4SxRjg5HF#w_1Obq^H{<(&8#* z5m!{C%ftVyF0G-W(($v2a*G{`xh7%=_-S zb)Ks|bFARYk~$)ukE{GXYg0~WDWzG@T0~nnE_&vAHCY+E1YCv+GNywt5!oy}R9ov$ z6+FqPB6xJUm7E?+HK^S(({PzSq2K5swKiQ7SR<|Wy>IKSuOTiMTcj7@6l#GAJ@Mf-r)=Fvf6 zYM!*}%@A`2#fa_sgjXu~5TMA&@5cpWk>h?*55z){+KO^7x+DEV_Zsg$jc&MhF_TY2 z*A*%#^iVnV1p_j_V`BAU#Nl<0a08yoNxOhv0U-JXz=L3_^Z8JN$bU@B{loX0JN1gEs zM>2f`$sa`1(cMP$x#wal5jCLua-p6#aHbmycOBd`e{`N7#etj(%mYgU_6}^PpeZ9@ zV4^7x_?)q%JQnROj;?X7$)NKKcFbApF&CyWIXeW)ow^0Bi9s#{ls-# zmYH7TSA}!}&oeIWPB|BzbTN&nNZz2D&y$*5O0GFyb z|A>xGqPL4@Ztd-?NWsUZ9o$@93|&jY>HgKPY(`nG_or%?l`pd1Hk{oj6B5f*)2>wAnJi7uf9$neKPb%hbMVjrcJ2+MX|8U71DSNnX;bCVi|dteq(SO@vI5*Emk=w_eTW z2&0FwBTAO?e#q2)FF#|7TNPvXanOZj+JmGn*Kt5(ksymS+&LiGX4g{{dJ-NS)ipxG zL3y;^%Gq#B>#{^u3dO6!#@w3Zc9y?c?G8^2)#U{+rEa@;tvk0d~&ZQdqrJ9&}Wm3SnX)R7z~Z z=E7i-2T!G;3f^3kINH?j7hZFt!5)6tFzyI!UzCZhIG)i%ec<3gyVZ2Y6~;m$DkHj6 za;*Dy=`w9Ymb8%lhRoD{eE9Ot$mn0d0m-8TH}(2%Z-oE;>|@o@zMnk^|GpaxQL;VAQ%g0aiOC%Z0_6Hu~N$$ zEsOKv;GXT2qT0j0zXM7IaIOJOKDSl8`n)}>PMNgV_)Qy#AuZWlf61ngRLZz2L*S%i zKd*_0)`o~~)}ZwCmITiE#b;9@E~w7J(DxANI?>4pBAUMN!O9H`>E*Y>hVIY6S1$)D zdb@QwVjN?`_M3>v2$$V)#zC*M$yE{#!V5Qw7;U>3f-o+*+(Jp~BQ*1>uZ0FlpzWR| z=K43H+oWYr3bI|CztUfi7P}u>E4Ar|KV3gDjl3SvI!HMBY|Y>L{0H7fQ36F?uEZtA zODu$ z@3wDoJ|nViI-yNe<-iL?(CP4zug56rO(7wUBMfW>J6hH%X*)(c+JVxpNw?A;2PJKT zgKRQ($dl@|l`E zqV82`98x)Lt+S?TGQg4iaHR*?JmI{I?WRIN2%s^>%a0>t{%7!64Y;3%hibe5CoFT z*{mOFZf-7|L>eJw1T)+OJ*|w28+_ZKc;4CyyyP)F-a*C+5F{a#q%Zt3k+if;p6KU#m7}!{rNZzReN@3wtOT-)2-Ps z#nRNxBVF9~(8NZlyC+I!oHFv$XASHA7#6UM^rXA{CcMhC>?ukldT_h$VTLSSUbQp3 z`#33PS&>xZGKT>TYhx5gEE{)d(t^lMf$8@pNoKZto1bF;{LZVhbk6=(r!u-(Fl=I& zpSv5&l6WF46RzggV-nb$0jCEC%@xbQd3V05+5wm|P2nfaFXQyKwV3Pq(8$IA8Q6O^;8nL7HTT%nAu6e^rG99EV6~Ip^yB+G@4V{1TZ(9l-=>N$yK`4r zu)~N%DocjyU~9s6aqFy9$s|72ZG=aAzUm{-a*5Gh^6oV4lp?vQMk-?;{mKx3EKo3z z)E|}TjL0^U)?18yb9phNIq*y24F_xVu(FPhx zU1Sos+)i~W3R27}+n3O#VTOZTP_I%xyS?2gRz}7c|K&G=3NslrZ0D*{CKZY!<%X)a z!Xuw%I?9ZX1jv{eDiyB=y6P{+V1kNFLILZZ7Jkj4mPaXM$jr9)~P@J z7U8rmt0Lr+lHQ@NX!M3JPeEs$i7)#EI_0&>M=x@DKWDoyU2h^@e7o;BwDb}W706xHMk8A%_$MIUk&Il}hSvsW*J}hVCAvMLs@bE!J3aVBkLFJ)K znBY?vt3tdc?Ge1r!7*-)mrbuobYB04X?dnEM~qDFctn?-Lkibpg;zu~HD#sv=Rqf( zyG}&a62U`sC#`v>wl(KJBF<%IhQ?nEG9@pxm?bD@K8srGT#U4T??kU+UJHT#b;b`I zPqYiI&S%=gQJr~PQ@xiXch^D^ZXbA+yGP8qhEY9hS{+WP4QJ&igTGUy&|E5Tk-yr* z?@^;25vyCgct$JFKACjER- zR3g^~Uvd$Il(KPT1wLcgD18=>uam}>aS z3n6h*6BK%hM|3=-82PR!JmRn6Q|SxNua}ggAdY=4woo*a+T)teNYi!JOZ8G@f!XHG z&Lxt5yh4sT!t7p9hgYNeNvA{SC(*j2y3j{`^1=?QBW<;*k6j(@Ts9Vy5AvkxRE#Fs zmr|_8P3flHB(x|i)+WDT&FzlU_v@VDjfBJJ^U-ozHGJA+BtEd0;vP2f zzIA@FP@{UY{+qE`<{b=#zhp*ku-vOT-Pal9)))9yv%=hmj#Mf#r|WXCyKPzr z8`3FJ)8`=laAK*v|8{ni;WIh~1{jd{yT)OVwHz$IH%?$W)1!wKQX8h&dXOI0+(wk= z72Bgz*0`!#iu@58GBhO39Gx_z?bo1PfAqOgTh>(bbl$TtJWVI-Q}1u|mW_{e^FNY+b&s&M54*8Nl9h6-LGyuWFbq3c5o+-={Uk{C-io-lEuQU z{A%Y4)3Z&%H{J)HL6ur(85tMl8azo@IOU$~b`)&3!b5o}) z9#pyI=;m<~H@5b^Th0El9O}%5vI)PU2|peGrIK*Wh}}I-_YDZH0}mn^_Fuw6U9$0P z&EU#RK+aY%+2Lb&oG5G8o1g2oXgSc=>@PfOo8~97#wqWkywEQi`O29iwtSF()X$cl zA|_ihCa@*jt#d$n;zNI0YU?nZHh1Aiq$!ITn?t=Z`3D&wq=C}?E2wV}6tbk4UKbV( zkFDHT)%bVn5Qs0>3G2)EZ9Ub`Cz4F3E_{;EzvT03>8k6S&Uf(c*;sUnzx1nN64X6i z_1cv--W_{8(x39S&QC|LpYJVoH19ddSy#+{aBptC z%M?_8G}lW^bJE=4t!+M~ek4P%Sm&8jj$7&(zd1FW;6yD~#;VJll9iV5SsYE{`QXz! z5y7|JueHc5zSA=)SX!cyK`2UedhzpSm-lDlox3K?XHl(}T_2=-zqPfAr}aI+$JZ>n zCxf=5$D_ALbJX)$;jx<=GGi}BQlN!Q=vpVia^dN?Jd=}Wj^4K>{K&`rCr$i+&oQ(t zSjxt(H+qB?T1I-9C&YE;ecTF(ndCSuqo!5NbD~;yZ`?intl;i6qB<~B%EuL3W%YX6 zx1j5Hhu(*}ZEebgUgEs7$3@F6HW6xbq(u|2Vmcze+kLrtVX`lw{Fr%JYINS|7xwLOD@Xn z-d&#pkN8vmzPlTnuf_B1_WDh_2cjZfrJbSa+IDK|a`|&h#PVG9y=A!zD(3WsKSzxJ zSl7|6Y1JXUu}-RQv@-jnB!<2vg177IXk@wrRBp1)^CR>Jhm@Z}WcohwvplSGEacu^aKYHSh+Qf zk2gci-e)Vn9A$uTa-Wbt#U0j->%|wibbY<5wWXk4IP;;#w^R=)Qi*|y@&A~6?|82J zuzgs|MN^S7;vz}1LiQ-4GBUGQl0CArX($zvWQU~enUJhXlI*M`WXIRu+jD$%UHAQa zp5OgE_wRN8_4wm@d0l<+8SnRb9_MkM@8jss75AxLa5J@|n_i+wtZ(Z=nB zbzh5`xQROM3g7kYS6x+C>E0b7W6CTy-0yeyWk8%|szza;cScJGW#kho>n?AfkNl;6 z(P!hG=)`~8O^Hd}pB}WqX7Z&l{e2>#yoYhD$R$VOnTmF3^TM^vggYwQ1M8nL;i*{t zQ#toa$B%n!Z#nJC!=659syS^LedE@+U1`^aHM+Fa$Q|#VyzpDSLEwxUS{qjnkG})R zVk^7vivKw=!L}O&Sys^6JFM>1Q_6GCpa_CMNRlkoc7-Km0Lff*u9oFpqL4P zN?^XFZE{b`<9nqxo|3NIjvvh0isp}*=6coJj!CRI?>8#qI#Rwc!S-Wbx+m-i$F2AA zW(D_5ty4XA(S=^#qc8fXME_IiktMo(G1moYwZI<&Vk|uKhDy^J9d93|m5I69akVvm zc-iDQYP}}m9!F!@cp>DmVX<+#`rF+{zWIhH2Fs40vgeRzVgFvN9~xHY=xqPH>s5S8 zUwq^XTf-ni^U;THjzhA=N@uQ1M_cmKzEW*hWhd2P!C+)r!CzYO%5bd5{J$)FsJpwn z#L_%OWpL8+8fyZp?`ToH0%!C3wt52h-@UmlA|bMN)YDoz+cYf6d`7&T!9)!yR6hxsp>$0 z8fqIaEL+V3*$=i=1-mcLjRl16%&k(ls!B7n5~$bkGtCGi^j}!-KS#%(5w3atlRzHn zzNu2oSl;A&bY3%q%}q6z4KYO6qLRDq&GW`Fz4PCk+th#h2?G5 zEt9jcy;B15%I5sER+g3qKY!e$uKoO(RC+BgvkkQ)HuOa&}w;# zd$(z4deV0T>zQY!_pg!f5bNQ4G@dfoybxz0;B)qfz|Xqm(drrzTma7FBQ^`BsY)G1pS`-b1I0$wd-GxpeEY&16=DCSabmZU2wNbt z2w^7-uHq|M^k&ivb#^EX;IQ6B_V-a~jYLvoU>!YXvueB2f3Rg4P9gN$ky;;aG#`(y0d7cKqP&_(T)tAIz$~$c2U(} zocHc6d3TD!uFi$D_LSN!*9rVomte%iqYuc^dRFZg!g=%iMpZRYc-6TQP z0Cx+9q2v2J%2(EgyMRepG&&2zixkAIW zz{gMLrM=X5nowPD@T>3wKz+QVwZ*EAriMnQR!(nUkmLML!6?AE zh3^cj*_@B-fuz`iKJ$+bP*CvU*8_-0AaDZ}a&c98qb%fQ6Z zV}|#CkT%P;g@--Zy6UrM{-+)}6W(Ozo95*75vOII?oP#!a37yl{^ZlJUAYv zCfTU#J>VAh3~1NaWh)UheJ#ZC=~SxOQBK2{$e86;k1cWBJAsWVuC#T;bt@BWk}X1G zMReU~)sy1(?$TXRH&`3^P~<2YC(b-++oJ3)UE#<;(bPA1kYN0>WTsT{!XzJml9{zkh$nNnG7dDoSeh;wjfV_FZ-vw;vs&UpYt0WvIZGYThQ%-X;Bm`2-V7 zPMf?h#iJM-6P*LO{-t`clq(Yg@f~_RJH^+Btsq&=moOeOf z)z!m^8_y_IJtxavm-xN8tJ<-*Cqpu_oL@2|m31Pz_Mz2-AGf8z&`h{=+cPv2Oqr_D zxMY|Qbw$nkQH2u@cXmvK?2BNcdsTTU$HrQxK3dJLwz;G=0BSO8vrS3}F2A>vlH8OP zv*1rtW*Z$F+mH0xuKTDwr=UQSjf&fnL~n+N&-tsugm#mT&-9jfi?Ke>!63~Am2y1; zhGcHeGI7^)Npb5z6Fuu4jCuSqGXs`cDU_URDgo&gada(F4P$ie`Mn=AMEMSRQopv@ zcE#Nlz>jkS7w{EkjZJs>9}<3j>q$1 z);70)q%gdsl-eD-vot#G;$>;N-Sp@EbdIYou8qIXlIZ*XV5YR|Y2M;YLrio_VUR`0 z#orSPRuVSb6lnv&(SiU@G;-Tm3KNLb@ezxr_?YSF<-fq-aAYd=dFXMbm&@Kd9|}6e zyAB_t^1qxijF@@o?eq*vk(PF08bNJa<<`MxJivJ$E@w;lh0cY zRKXYo6C{vOc^_;&yvVO;pu?D54$n0;+ z?gXp4uUSYwk9RXDug}OR8r-_toh+*(VZ-w@uH-w)YcK7>(w7Rq#wtE}=h-Eb>exvu zR=;d?u(sx4e6YHvKD>|aqTT4{RYosux2e(%g46Wl0SpZ8+sny^-FdD7F7-KoIo}ku}4!C+lU|pK(%qD8`sKaW%Zu7|Q5;yirRHE`prt zpnaR(y%KBHmSji989kQP&cQhYt9v-p2puIHyCovYGe=|Do}WIvTQ*^T{n}Q3a+nCc zQnlbYZ1BY`Uj9+6Q^5F`=uq2vnu@VI5r+_2IH~#W2ozqr)Vij5Y(xAkog#x>z_fCR6I)D+%E zYokJvp`l97BH>hTgDtBVo49jpj*C*(i9T|sOKS%SlZ+-JzvDcz#c22B&{{PAQv`1NHQ-@RlG4eFGYG zyQ2kr_RYDQ9bodE7#xwfp+20WwpaY!&SG7e(QbRYpB+JM=}B*YW_RlP*c{yR#^aS8zw-Cefa^j|0^8p6AkkNbIqEwz zf@fuI75sa>HjcZcbY}_DDjxDI;6uh6D{^M?eOn^&V)nbzLCs!$Lyx=4Pb=vXBJ`jA zHJi6*SBhK23G;#W3wOabWz$#K)O;z<5?piVK12mD`AXp#>*Q>5Y52&hszUU&xC0L@ z0W}wwmj?$1dJJJ5ZT^XJ$9v1XsLHg^2C zj|*OgC-0|Lxu2uk?P9Rhxh+m4Md3Fgp{lxIk5&D-vR1^g%gf~mR!Goq8lOs-8T2d^ z>DEU}kL(ULc{I?FtE+CxE6;|P;4CWa{DZ!<(k_TqCzhw*;~h53J7b#5-4qe-j0ZE* z78~}XOXN*ZdC697{w?aSebqBN<<=+IW?Emi@~E6$8g^WM^7=h@cx#ilp8hk^PlsW~ zuJCC$EhF0<%TH8SY-4svWRS_Uh}H0`s~?aOdbAhd zaZikjblbc5*?SLF2-n>R0&=8#viH8CZEMih5>OU*UHol$^3Hnh?cpaG&O%c6g=P!5 zv{lYT14)xHnFa~~oZv`@!(uS3=f9>!+?ASE7`9TURH0E$YKmrIk;iv>=iGvr$4edZd+sF9zYW*(08X-{4ZT3 zP=Uh_TJ*FzwruR;`ChH5z<&TZi87+`w9yOGY#tX zb|L7OBr3Lshx)I2R{NBGa#BR+30)#q-|x=jfA6)`oS-@Fkl|RWr*HR;?R{C7u@+-p zayq-P`|Dbe)NvB$$r=w{taabUx3@6(r0N8CaqS?6Vo||gkayi@)|s2;xMu$F1sRiD zx3wwx_OVvavus}n25t>I4i14Qv|IPv6MCz5h*BzoBA5t%kJih)sH;2GlKiS@flsrc z)FWJ0$F4-t|Ek@g<#JOSgIgC9@+=NLE*U+Um{bryE6K7lK_2X5g=Ov|t{?J%;+ywO z+p0!v*^y@1b7UvFJd#J7>uogG<-dOpGR{>?D(!Z?8-4o68y8a~zr)#{r*t_oF-U3E zIBm#B)$ulvp{^G>kRFZFWP{VgG#tT``?B(s*_uxmM^S)5xUv3|E^rcV>jG|EW9u%wSd-$JS_RCg>yie9gb*|Lt*kp{KR-r2!St+Y! zvQACu`Tpa8l=bZ&sSNAXJuKv2ifWcGA7xcC$aNySBl- z$|dUj`NTUxrcXm_!#=LEfqDelA7@G`vL*D;{qZyC92nwSb8ng6H8*hZ&4&h861@p+ z3MnjrZ;3t>lkHMT5#6S=Y0fu%DF|QDt?yZR!|dB^Vp6o5=KX5J8T-OVULMu;hPLS> z1`Mc^6b-iUeTx-{4EV~P|NV2knIIv!E3lx;J({}0l#fp;IyJ5OQrxaJZ?(SRKrcm_ z-QO7J^VSy&2A;ce9YFh3KPSDF!wPgpzlZJ7d%P}x+3;I9FbEp-peO!0l^rQKvgWi~ z+1$?`zT2%Bhk`e1<84%1vOfu!<_+Q{1I+BaySM=53ff!V`XuIZndJtT7^V`1#6Afp z?qfPP_bZ-YmBs(st0>P<$H2;g0o!D+PFd8ju`}Ii4nkACr(`TA$o}w9jrAwL#2wk0 zKAm{yQuolujC<{y^bzZ}*iwc)?$^Sxta>_JU{-fr~Uz$kf|Dqi)k zV4$q*qT|zU_;G$(Rq}_m>ML=Rj{8U;ySv`DzV@o}QFX7cy3xgKYw!gxMpba~SGEWwf-8ZWJtPVDBfm&9<;2b6krG6l!xlUyzQ3_c3JK+*o9@&j+=xvZmwY_lH6fPlqiFeV z^u3R?i?=*kP9PblsFwk6|FL{6Yjuq(rMTRQuDoF8>_yM|DLXNP6~)PWr-6@WE4QIv z6ulwdVB5IKK4{lnGSrC8^$b;0c&b0N*XMB;&!FamZs)<=e><09%I0+YE!EjV3!WVD zSfFq%=q)VNSas;MIAf?5_-=Bg^WN95pHDs;Vm_sj)_*AL#|^TyQV&U=CYSV$z|%9X zUguiBaUWTpJ+Qp2-dT9O?0SXS{B9MaXvyMM3@k)sLD-1a4>WDm6aDZ!bgBH%*3b7zqEqm*}*hwcF&lUm|Uujq3%YQM@V7eGBu^W!`T_(?+iu z(u981m{7QJ$|7Dy4s?(^fHB*n-|t-0!_5+=feM*s2vay ziEwg%6qC_?eu7Wj2qCN7dzEV=nlq?WYphw2{nw1l>+(w4GPX;nyi#qu6=Qfq64@41 zvhrdD&&SN&r+86S>oM6?X<8C{j0)Kl|FY!0$Pm)9M&9J~`an$jr=?dB4UGBCqV`iw zu`1HECqBoiPiQ}-7f-3GtzPYSIoh()|FYRjqt$2Fvo_(UsI)8yptbNiGgA2icQc1e zqdz_+f7rUu#U`i5tDgs@G#&T7`q5$GldZ?*87}0sOBu$YFeR+Ve%o9|G@+L-dKnIi zh#U^RjFExaHN!VQmEEtJzcU|VsITg?Y`IzaDTgCC*=Xj*WgU_FmWp_fLufpDXWXjS z>|)@3I5Gaia#^=kiMvg=N9@qW1|JOxgEdCnMv9NquW)(BHLD%DC2AYyj22TRjUf@z z1?coA*C}nA`&wO1fHYpI-xiYR`^KmZm<+5wxel*srKb^<@-%nAc9>iB@p7yLIo|#@2d`9*ia^YfL?h ziOmkyR9ENFer*CRt3}7n5Di5z*BmXy?A0O@u7dFc+*HxE9J#aVLVM@yQywe5bMYGb z_9^d6N}1_*1&&^wZ)WciZtEikyEA=Wo6BzOAhQDq!G!Yg0`D1)jSlr>6(_`>!na1*sea zQ~Wk@-%X1sqADdMBcSO6OV&3!HkU5dL21ix4_&KXY)zr(60f%mdM)N$(5rxuN}xMh zHImJXnFL5IoNd8|352}U9i(la;zEm@`t&r_K9-2ePXb7+#;qL&0N zU|L+^L3Dzd8X^#B6LXt}w`^yrmj|`~T+PzZ(2yat-!@Gvii(Q%9p-rtrD4teo4p&7 zb!E!G-a~1LyJS|igb{-Ga0nV29Lz^NXyc^&;zV4%83PM7+4k0il#q}R$eUhfzYN*{DjvpWW|b^Z z7FBtr>gMWNJpJ`#hE5){?@J7)OjmQ)F!Q6KHnXt6&A|bYZ#@_aU0@*^wp_SC#?;@O zq6WkD7f_LWu4(9XFj!#oI?gz@ecHk!qe6NoK3-|geJze=gCqDtv!yds-ykcU(F6f4 z$nMM!M%%%ztFofvh@>}Bi4k0=O$VH3uM0hcEZPxqcPA)^`aUi$7K70zb?km&L~H3hv!Y282X!Ms&VF*>HK%m>oA(s6_R{fjFr zl8%GS!RFKbRWP<%o~mSo03F9LmJxK^A>O0MCCJJ;2#rkao_>iKS)&N2KxK&3a`fU@DB*6L75@_&ozukz5Ppw zm)8LzmshS_3CmRXhdR)U7tE&g(|lGfsVz|5gz*fd0^wQ34=rQxH7V*)P*!>PBEklL z+}ZhbT)hv3VpUaDuU$J9T`Le>J9k4d{OQx?5v9zEt}cUDs_{5=P5k0_QKTp7=;%0q z{`>^A@1VHqDbfAJKu71DeV=Ugj|)DkP>qA)5rltX%fn;Y46`ywu|Z-wy#Q+w-e8}; z=Ul~;&w$u&x^|PYEvDy!ujaImenz{6_;u4Xez+f%7`D=P=>Y|(+v+vuYB1!Mnw;CjH0_laWJ9MR`$e;y2yRVHo z_yWX38}|OX`?Aq|=dN8j$)`8}(484EUWiUQLR<;N7Q&`Q)OdStQdSnXj0)_4ARQeE z1&`bc;#!BiDU7;2CCXs7hW;?V_kE1j1r4WGXvDO&X=b&d6DlYu2<`3^b%=vOkdJQo zBXJYAX6QmY^GAW59X~Dl!MVA7Q9Ftc&rfv6MMS)XvZo~9(xwjT`(1Zto=soNZO5(U z9l!(YavO>7!Lt;rnBU&REyG5oZI%@6)&i8oq%I@NaGW&Zo`U-d(V5cG!7 zAKvr^!EnR!34@U-&knB5d*Qe8DSv+fc8rh(t#83of=AyKGc&)`%?F?TKI9e&cN8=Y zi{8C!^&;I|#?S9clkA?9I>EtFd}B-p@$=fXSE?z1zf?O*41%IIKlAJPP7(v6q8e?W zDeUHaDWVd|nP6E)D|*8kn$If2#9!a=k%@%VHU87)7f%+Z4u z(Vy?k_X{O&CD|2H^)xQdP*2aApO&u3Mu>jjzI{-N6o?L#+q^AvE)dSEUrl)7dydJP z<&~9=c09nFX6vozZ{HrC+Z=gl&|7WVW|W~39ToMpSR<|Ft9su9!^3K zsZa1ktbmlTnL%`|sU8pUYDh?21?sO+|DK(lg(57a6cqcA;t(U|$2$pqeUt|e%8+4Z z1lwa{p=?93X%>4Q(z{YkPS7`&g??w>6d4l~h1?e>KqUjccquZ!atpu-fC^ZQA}1qR zSn@_fLlbg;5&EuTvG4?Rc1BK~387bknW1_rp5I`GPR8DyJE7L@Pt6JKsNYbwm3>6t z9xwfuo)K{YkdPShuThw1XcS$m4m&0vhU{g<9~C6I9&vF3w_t3{99=uVuwbU4J2yEA z0c|5@gA#)*Wj35$p{vsVo1%fgwm83_z{Sx~_l>zqh7HSsD#*+tg>9@&_#ivOFrkO` zpPO@IAdq0~!51AeuVhzpysITSI7T5239nMV85SNU6R5qz=J6DQYVHyc4iZ{mkghF! zKX2R+U^6DY2K_7hKX zM_ZrB++v>md|jYx+)X3(oo^Iix(t&Mr9644u|lLeDtq^z#Kov3teP?_oH4f<8YaW9 z#P1}5oIFE~*7EU}EtYT;RkquFMYTJ&8r?L6UFC&W-;M{|!l)K%q^YU1e@txn57Db{ zA-Pj)3Q1gXNlD4$$Nk)%6o2TrS3Wg4`Maw`G`d#y-%lbCdY7B#uC1InKcBMP^Z8)Q0||Q?Nf>|pNY<*LsV2I54^417ALQu8iP?JJfz`S18l)5 zUhaWHA=hjl6N`w5`}gcCz7(%iX&4zdetp=MqxBQg`v_6m0+}f(7g4q-DZx$4$;HJE zFa?F+TRkqObFWm1wGN!9Q38mG6{GxvNOwB{KEKdC{8C>(T?rzb^xB*K7n4& z&)y+D6$b@9-S3WeebU*GMf)$odO z6nYkJ=-uAg*$IW=cjXw&lHs7(IZ2^S|P+&Ff; zdr2uu_@!j%JF~F()|&RYmpdMyq`XRFZ?xx6MtUzXfw%z* zcT}G>#n3Fz-~QgY$Pu%Qz!enq^wu!|<>XA*LrG079!@!0=^AMnYOwdn)hsD4DIsTq zT(NPER#scz7NbQgo>M%EP5<7SMXa&I5BR0Ne91znwB@WZb(Buq0?3-7VHML0DnVVH zWm(+R1+Kj5>FMq>Qws~IOSd%XD-aP8T;v0HTbt%+;eH^zTUA}XYu7F-&m7~MtW=bg zcYYrt-pen>-zT;j!If38%k?T&E7Abo8V2>AKmUb-6^Y%zzySLI2nALz?4hae-u-wT zj(7vnYq&7OWC_`cj96abokGettjYvp+3cYj>gqgnetv#{m>?6NTn!cbpT%xXPn29; z-%7;``K)_dSl}0mqYCx+_rLaH*!}Lkdx8^wq$OS*ED-v{T3Yejk(Hn$ z2HRn|R{%6k-Q967*q|~FthbIR0gt*H2!IX_JNN9lcEh46F;Ib(m<+2-cJAIiyRdNR z!8xds7TWiH1_}k~fg;F#VH~R1=g90KGc4id?&-M-ObFT_gq-hwRQ-_BGoe!w65hD; zFz1_eapCf8RP!S(Cpn=bRlVy!E-vB!KI}dznRFex;;4d%Gf8y&oapS=SKZJ>1(Wbg zPC6HAl_N3VSM82(7QFViHt$gT>RN(a0!r(sG<^M9O^{PlQ*(r$7HEq*AASuC9E6fRHTC@NrB(c4ya}6*{3C+4aQ7;| z_6M%s^wA&z;RAwdWoU*5|HSo=BfQp%*&aAkY<{_3`ae#3Jr~VxadB`E3&41d44wEt zwzKPUzqkDJ_o#a=dfaT({YToomiAu{ivO4D=KuH)|1Trg|APeXOHD-rq9#Hi@zC5T z6%^$&WbgdBVDk&RcHV^3g|kQ}rLCTZMn1x@lH{5btV?QpM^S5lw`_&G zo{xCVJ>Hu?d{g#%l%_o_Lym>YVSv*1;?l1>`(S}I53?muLOi!Cf;U5>Wuarm3qB?-3Sr%OO_!X-M;KmZJdqahd3ab8N$U_be z)A;)^vLI)IRRhs*{wNLgA(-A2f3K|#bR)X>N|7lx0iG5@klw$-eXd0_At517t>ogX zZ=gEB3!C#tfndP7fv6X3F_#KF7Ho+yoW0|X1<_#&!t&749J)qy2!joS1I!69E3fd- zAd6@{=IXlG6ow3b2T`KNDx~V1N;Bky$(TU$!NR@Ap%A$UK4XXcD|{({gMYohg?@6z*&t1$I7gyFo5bwD?)Sx$GM5n^Ka1e`SPqdSc>du*f3%e^c;$cnOoZ z<$9m>85C(nZ{NO5O0olx07Tex?PPd0Wb_YHP@o=1R39E1Iz&w^ONJN+UYD22_XV4o z*$^J2ZoXlew-@L_GA6k0phg_JE`%VDZzjIyB%Jx%oJ~4IgN}wq*m*>qkWg7!iOWFT z*GX&f#-l^%!%x*G%%fm{zriQt9N7eISR5nNn47c3)e|omRAIaII(WU_Hj1WOLTU{Q=jSVc(Ncp-ak63Kvq>-3z6l~C&%Pre}Di4 zgS{lhXjw90?^Pig6{IBA5DVNbxKNm4BP_tK5|6D=^=;f{;(NZomX)N{oFDVLn(U$Y zRM@!;jcTWTI%&zt*Iiu9di#<3k>Q}rZ<nCc#Jr_yA@VPw$jb0k)|zU=B`3 ze&CG^c%X@;pL#hBh_EAn%$J;!BNB!{u6W`KaePgNa%3uLE#R4Xsnw+U-*PRbW{Iq~A zk)Pb_{UMAHc>}eC&5t*BWoxYtJ7p8>Q3W01(#w{}`ro($GA6Kh99&$c-egA1HvaGc zg1J<^#7Y1Kj4>#wsXsSg2P{N=wbZI>XD>t_sXz^0fp~<2d>`@YDpV0`qOdSovPk$6 z6%+{C{;~KpzmQ9Qvm?*yJXxX3M69zhA~sT@S)A7(fgpT|h&`^yH4&E61aa!sN9xNd3X$aASUM(@G zH_b)1fKx_PYL;01wGFJ3ys*pYcY9D1TegwHSTSL0=AG-5@ws!p$1a&VAu)|t z>?9+DkHjms5j1oVkRruB1ei>gXNScYl#-e_b@S5^(`t;IKZDyx`mQt1!SO@`18i0I zfly6U?r_q;e-G}wi=yIZ;S9nk=%ZRwM^n>5P~wqZD{}-vIJ*6;+KeHSeo+f7S|D^` z(K+`*#vh*rn!zYA858|pGZf8u|L~mp1zSVXeGJy^rEn|vrHEH1I(8X)FI7CT6^Qm( z?C}F;TwGk_cX$gDY99^nC->xxxVUZ*CTms4ppfAp^b8(i z5w)g755Lf3pHa})(Cgz*!^iS)lVG(|2P+Fp@$yKTLZvlgDi)bMSs{WhYNW_jm=Z8HLFY{`g(;EJ^K zt=rK(gRu$xXP90hiLr-Tf{H?mYQWyo&QNX27kLdQ5bxG~>G zH_tJA?E^DdoMs1ny}S>m1EKBo$q|xM$C5Y6LaffI`47Re$=7mscbG(Kts4Jvn%! z$o|7qE4^~tcMCSwI8KSfPSeu>FnmplZaCWMI(bvO0`4*R`ZWEFQ#xK5wiqw55`7=T zhznnm0p8?HFuBVMQ^SKYdj!{~zTRH=*3(sGKYxCcX8u`lFifl>jvFB`UW${j;im<0 zQRq0teDo+eleqirBEUgp&rh9zqb~aoy z0+j-PS{otKDN-R(HHC}`#PC?g{PK-$=Q8Y&Y9dkLXw{$F)15lom%T5ql=T#e&^=_x1_N z@anbx5G7Qv%9k(0H;)}TWM~G;qQqj>%4!8GgdVXJzJW<>Ut3$lglnG1e)JgE*+u5DUU=zq{8HsvewsaWRDT zl%qMAiTCf%NPWQyM`|agD~UKe-bf<8u-4Pj85tTf6Mr3*I4t8&jSeWDCtu(9$XU$1 zS>dzoQ<2?v`Kv%FZ@q4s5!p4QE@fkfZ_yfXqjHVe(it)1^fy+Y)IwE4mo*w7?6fJE=+Uk(Gvq5 zwwF;t4CwgHW{(T)<_wFiMv)4zOF9LHQ6f&M$*FS>+rw{!IeUA1aNz){_1Etg7Z*1) z;7AGReh?$z*!1-E0U@yDz=Bno=3a%)^dQ?2rstV zoxr)*uPIHF+jJW+6tYC2o~@OYE{uTiz!SF#Gc)&MGsAUn^Q%_BY5V)a!a}rl(b5mJ z3yX`3d-7!3ddqcqu_1i{@1fW;$O6B3nyDYAv!LuwYNUgpLr-OHejYUrq)FzM(T~BD z$n020_=(W)@HRY7oGL$vOtncA>E4xsCk4k+cxY%!izN}-fx7&HNst!HybCNaM0vSfn=(LCQx|~g%pa(Y&cC~h+vikDJPEn zCb5r$MqfxsF0vC59^Jb~x?=~b89U@#XwY+K0Z+321>$!OBpWKPs@dgtMMW+n&0szh z@fX2CU@Ob~=cTwFNLP#&I6d14JIy#@U8HHan<9a>RaRn$N_2b91R}nGt5ING884cM zunCa8dgjc{Ylj4)j~qU{h^j@e#66Tow3C<;*H$Q{UaAs}emQ4!PK18Ng~7y6jE(L7 z#X>OB1_oV-DGIDj=yU@ko^l*icymw-9S+Rgh`Mm4ZgvWv3tRS*L_FZ(gsmK(MkFG9 zET=A7ry6Nqo}Oe(U>k{~m7*dV2=*>6apE2jT(XfConBgneW=a@q_pvl0t_Ay>&&<4 zsuOd4P;%m}}Jp_GKNx&m3FWgfC7N*&+F5fKsCro6&PCZ_A0xIWdC2+l0M!UOyFU#UuZ z_ih=H7?2{XWS%y}0YMM$usTZI9&T>vRMwmD?w7)d2#_ewqA~S{Y8ueMjBeyl?G|a- z%U~q`sRMR;rcx)QF2I8t%sEC_F#W?!wKI-M*YqcmOTWyHG6XE}RjJnhI>>_T0lG$Q zrpHx)SBazefBQD@6Jw`9bSLs8)-Z3=SxPCS7fjY58&(&iFE@b@Yv4Zo>gf4L7!>oR z=p7k(IQ6F*C*dafGu_}FGqAYXANpnX1uV!(@V4MN!_L-Wg?UQEQ9Ox>DKV>Oxbxu* z8Hyy-ib5fK8%7am{K|U*j)=}L9g&Jx){^|XUe6RN$0=#CdE@+Qia)oFj*r`}wTdhs z^MzS2O`z=d_YDebkylnX_wr;xpIBKsu6ALp!|Z`KhQ8kP5pGQ7Bdu;QQ z{D$d6Pwg-=hN_AqZQb3~RROu%oF4?Fy2$1yNLJ@!~I)Kb#Z_0UBI5sHiPYh5kI6Fq+H z*p9i)A8k+&4<`}g;|rkxw~GoYN?=(Zl{&hYvF9T(&V{Ng&QQk8)Rc7lc9e3~Ki*V5 zG3Sl!@|Y-*3>kx!H2N_U7-=b48jM!F+zdm_IAKT91zCOAelDUYQ~onVP^*sMhOr^u z_Jh!&vH+g~5|f6{RO@`1dr53%pZJUl$XI%MdfTqz6pgg#VrDsc`MC4>I0O3=F|u-o zEgy#7O@k?_DI5ghKW)xpo+wjlbD#!zXabr-)FCPnlMHz}Haa>{*S0-;p}?w!jT{%b zbs6{wOwcrP8gA*YJ+z-#P|*PYKd8i^h(g6!G3^v}0IvcVvsMovSrntN1)xKL(|28n zgWBrnTYHS!06C(_fQKV(AS*xrY>TEL_M`7(qW?5l;o4do6p?5RBJ;EjI{`bOrWXjW zF2U0Qdf&eFEMfs-Er2r_lk+|oIKQEraqEncnVFz{?>W|A_#ymFv{H$4TGD0(=(fX# zoi}pUeGS&`uuz1PBRIU16l4fYMH8j?1|@Q6baa|VnzWSEy}d`|$WBEnpwhrtJN8G= zg9j-Kzw^*LpqKFcZo&(=0qB>eo=WtG3zWU{f#=#+Dh%vMU2t%CO`N+yCkPIcW8nBQ zG@AIuQB@+LNnP;vUdPL-G38_W1XzUX%l9!dj((|UWQ8$2u#p2kbaj=&HQ0~Q+o+CM zo}unEd}F?UCi)9jU6Mj1mezI3&6xS#FafDoNvZzS)z9#Ohp3y>E1nBoa_W~0FU>{&| zs>u}&F6O+9Oe22@x`gnz=K0W%_=Yay=h5%z#j}QB4Rpiz9ONXXs6gtO&JzuaF-U^- zl~I1p!~`@amsa-87s>dDK8(@7JZAEJjE4wxqDs~Bh5W0@YiC01sYoJN#J!@Y2P5d~ z=m=b+OMJ$!=mX9TO$7iS-^XA{-xU^~c5t$?%yX{}<3xQ|a4r@Gt()_Q=qBKQV9+X- z;u|muIVG!B>TIoGH;h-m4LcEQ_nkX=qia$0uVUadvX3|6HliQKG`{Nj<9hHgkiN1~ zQ&BSyqb9oYdIanSths?B17)uQ0XffF2}EnB51l@~IVD9xV)4=W=8?^>IK#8p37}QU znXpjN>O%&=5E_c(iKe8WW6MATXrY8%e@Zd^yYc8N)k3Q_uEC5sAsZ<&85OLbpV?Qo zQEKUUpwR}wev2qBPR_iXoRmCG_@Jw^!_F|n`7IzCXlj&bcZI`}l8%RXgV=#4FkN4Z zA~_k^;yRA;Fo7Brz5eT_YRV|u=RuVT7DO|9#9`mhE`|_9&21oN`%{Qu&bS#0pIg{R$(#T?qo?=m9P{RgA=oZ}hSOqV z&k~1q>KW()WeG*TDS=_8QG84z&c^um!J|2zCgvun5CLx*+%P^&@?>4 z06l6HuxK#GsA_AcG!6gk>?CKxG}4O~AD7QKn~`13ZLcwDB+|NrwekuIL@gR*d(4{P zO(!Zwe>Tm9!LfmznMY?rn|Qa5C@7SIiQ<_@XkH;2b*8+uh#H((!a9GG83#axj;xD3 z!G`0Y718+h1zV&-7?MuT)$@d)LC_=URMP!va>T|Bp87qDi4bH%MCu5zmH<3qT>7x1 z1>uBhuD7pm&Rsk=Qkf0w@txz)qig3eEsF<&KQow7Wnyfg6?XJtP>>n(DKv+`y0EHb zwK)pW$18t#O&MX}VqxhA^RG~UT(L=kf+(JY@uE|7M218?b#~TC>VCU52o5I%RJyNm zi59ocP#ihZi8zCQLuU{}vSOKfS?)mw{$*tw*t6)}ah|Zu)8U}jwd?!+n=Pb@W9T=5 z5dHYEk^U_VeW1y8HB~;Xg_ltV(@TX8cMGY}YXg@LZrFAUVxv2t4InydGlCO>-rgj) zRr)`9q*i?fboJ7}A=6d9I~B%Q_s2kYtxi`1iKE?$nN&Tlh4Oup&p>4%OV`DUSNB{; z1DEJc?=f#}O2!{u%OG_9Z_06lGH-EVVePaQa6tidf{!S$A;Ymr0f`M+4wS&B9h{|J zu4&)}7PwF&WZ5JeIqz!&!GsYl-lJi_vE!qoo`6blve%W904zp?Vi0k#f3kyW;ildzWo!S-+i1``-cS_M#NgR2Bg2PHx!gDmHU zVQ9>_qJol52&QQn9T+$ke4%u8T3#Yf(rvmQ$a}22Yy%gKsaIfEK*Feuj4@rilDV;h z?w#AWCJvG_p*BK=1Up+()(@}67IfvYF)>}nuz!E!B4y(r#G?4M9dhRF4a(I_`6avxWn07nfE)%aj+F8_Q#6zSj z|LH*g%4$2{adXRhPQ$j%x_ENcXyEdn3pL+QLDH6wZ04?c_|NnoYQuK1ZJvWQk+2(v zEw4Z{agZOceaPuK=yvx*6#wx#x9#sSTt+moe0!ZqMnyKE@%1G4pWpkQ(vo3IcB47} z;oYXWkq9Z^Dg9th91$K~StAJ_kjTf6k$s;cb~+a7g;c$4BOpzFtZ5H<{P_Ctw_^-J z7|a)Nn>I1!GS1V%Jm6y{>5m^jk})BeAfh2^;0?Wav905L9WBhrA-# z?b(D;1W??DrKpL%81Z;+tSx}hhj%hRZ6IQmbnc%Ub)Di5x|q%OkQPJ>An6{`a!_iq zk&!13Jir7uf*2W*uKe(!Ot<93-+%wj%^gJHfa(i7U+aY-h^E+BZ>&jd5wx5&-}}F8SGX-hhWQ3m2j)$QwWurL!Tt@!9M&RWbG8;oj+S)^ zM%huZ632x1klr~KlW2jZjq2^;3yufq$(e5!Pb4JV#edFuCw70o)u_@u#35HNYBc$laksx(`v$dYDvs7yEC1rNJ{2z|_#Nu=Tl>kGop`sFwYbnd{yD9zhvTP5LMu2o7v|^eKIMKHkNM zN4ys*6pX>n4=2SD&&!PU$=Lj1zZ$mMqoIw$_?+5*QM_6cwtLhDYdEVu$%3;>ITuE#Ae~qUZ!H%4!-0)B8DyabjTL8cxP;taPL8 zkfD`xn}Ru14j;g1e0-z1`~0Xd8ajjoaJX{pp&)xZ9d4k@dqG|v>@IY_$7e9DyBJfGBJo`)C}K+A$)!Dwsn1$9`UBfejll_x_V zAAk{boA2X$`OSnmFk=|C55mu&IuWq_xmaL9pH%%`@lVs4x@o#~Nwxp+U`~*fdMsqNTcbR5(b1s|0lSVu+zIUzm;v_m zd|*Md2fYG2z+4JorY4jL0QTUu5AVK*Y>!rfZ+Q;~T7_L+Sc{k}z+#mpBUb7rCM-?u zsAG;DsDdXlh7V16BeghCII#M4kqodujP4*CKo{HWePkSBA~T^C^NG$sNAq1 z+#c4v&2TD)?7*V=Y##rLJ8cz)fu9R33Kl3QHYPUKmAJx1MMY0iJ;d#UGPr;41&Tc$ zItU-;Xz8U*&V}*u@#S_|6T))4cJ15@JVuSyTQQOEfmDEE88w*JfuJLzrUKD8E`%Xk zxY_S#WK<$M!O7|D=y>(xC8_&3-S$fU20o8AVc@7d8N%rvN)k$`r*Z>O(j>M5CnnJO zA$swm_LgILf{qTj3Gg5|*r-BvSw-c8HIWCzN|;*mBs`%D{0yjuQ9e&>lCbybKtH~Z zkqETy+QC2Ju8~=zY6mgHgi5XT>v1%$+1Veu>8h#0_U379ECW5Un_wg_7Wr?Zn^+DA zL@SbAR8&0X>p4>^xbyDE>S`jBpg?b6M{^0B!{&gFB|}hB8zCded!#u9W8pk@X=!O~ z8M+H7j|!~X{;&4lJSyk4?f=i5vCB+RJ42=hnvj%znbIJVq@s{Ck(to2x6BekO2!oJ zil~sGB2y|+ibNSBg-9f&@9VsB-}nAL_x-Hj`mOc+^Ihv{?LYQzSJ!oYKA-bAkK;X^ zcLe~a>6lVcR+h2u&fGIR#nT-es6>}}=P=+YJiE-X=q#8Q(X7DT1DqcA`5Joq^hZIl z^e)#pVLdo*c+thzo^StbY!`-xA-Siw>^Wlbk=M~v#U}@`W49f+^=!Ma{IcZ*SGLVP z^T=SQ$GQ?b(6*xFWedQ`r6v?c0uE(JaTq%lT@fSHWv)HqTbH^jNO|5F#m9XD9%J=K}`PIDIY!vobFaa;Rwi!S6 zb?oq>HJRW0br*3Ecwo*p_6~xS3vJi}k;`ntQ0=i0o#^zzd#h7cOf1q*^wKbm)Q0QO z*Z=zP&Wpv&Bij`esy*TZ8JY%v%Bf>JY2^QqQOPEI`Y!Mk@0-=%ga zcVWM88Df2Uxw7RK?Vdi^=RQbN^VE4emT+9qsVM{1)02Bb{_Q)oSZadyIxsMhfh5{` zUmNR~{4CogEf42>WQ(A$VY6kkar7Elo_%i7$itP5kI)#i0vgWPSoQT+q;(n4X8x_g9_E0|#x@Rtya61&3UgkYmK*n>Sw2MIZM28QR*P&Koy^ z;oR$+H?D*kVFR@3v+c&*mIFo^7--j@5-nU?jTNrf=@dfo9DDVEU@qyvQfW$^eyPXWLcCkMnZn^sRM%=r< zhw|7XY&JcVlrFjQgWI|V_SD%pv(ILUHr*8H2nnj?fn>fqJHG;PYpn{#bNBXbL=0n} z8kRpjzpq1Y1L{C}r!u!ByUdA{T6RWY)I$a<29KW#k0Yil(-CxSDB9I(_hvYouSztH zG@y?aqKuIa=o~&iNgj(W!=Qiv8xJ3b2ppTQS;K2J1`c%EIC_Dz^KEBsmqmZo)va?0 z!00V}qzVcP+_grIOg?@*K+;J?1ti2WGdzDq_4}f4l=`eAOU$O!1NJyNI+n*L!@Yn! zfGMj6APfPo<$5JMFi%gG7kw;4A3d$1q2UFGQ?Hjen6*H`r}J7}OAF<@fll0vEC04= zT+X$#(m=Cyhv7tQfqA;LK5MGy=Az_hXFA1&Dk?05CtjQ7eB1KEX}wmhHqA_M;rTm# z`Eq#9n{Q=#3uI8-$J7QRWC#8FInyp>)x6p0Jb(T{BOkj+tJWK?@o-R;^v`}`XidTh z#mpiR-1L6c5~>UA{Q2d_YHMo|S>?Iv+I4I7_48-ZzU<$XP9p+fu;xnfjT;PRgR+je zLYeVyytvqkfj86Bv8xxmA8#klY{zVQ$?0m-D9dVS=sp4L0EzDTf7xVTrW&(pOdr_A zQ(tUm@OTL>*|pTFJ9q9d50!Yo=`8@Xtg2kPpN{g)A!u;9D60w+x~l3QJ*#+{L5A4?*H)e@2_6|MD}yp*1^?s zBwg~J9*io{2G5w(uM^bczsQ6zH8}*%lyc112<>$(9zOLyHt@=9mG0fUQ^qiyuW6i; z{8MfJ$w+2dPY6VLXE|xo@Bbi|{jNlXwqQ5SA9deaLneqin%hWQGjLx|7~}OgG5Tl_ z9dpU6$cN?CJm0uCkj61RE?c?sX4egG7T`C+6$UVKQq~9fm!90x>=`B5KDDcS^Q_v$ zcA@59JqzzNN=S?0hLK7$+zv1@n%%DxZt|_i2L30hXq-+mr4xUEpz>T)3o!xGKV3>r z9(I_l*QRkz6uT=bx?kzhI9lmyVQ+reW(h*3P`L~7@$sLkmnywshefYen&hDQOMJQC zvu~e1``?C$r2{jY3OXNW^8*fmR&A!uo;jR!SY4g;3R0Da69RAR1UbvM@MZtvd7`o> z|1_q^@ko17ty`-yhVZY(>uTbspswHG_gR97j9Fm6Nxwb;jqM|ioLYF_wNB@| zW6C;jmhZk{IZ4*jrw<#Q9w6Ceay@IrtXZ=T?%zMcDb3$b>D$};^I%122~;r2=3{Uc>sZi z<166AtgNn?e-^HDy0Qx9RqT!PWjqN=Vl3Rf(H55X#*#ZB;&%_(s+3#(2Q-^)oQ;aX z@{=}SJWv5ln^v{pY<5=Gm#Qic=k*x=kVc<(%bO6Be`wUIMMxR~cD88S%~szQtsA^e zsC@E~BWZxTH|EkGQ{2m6hsnKL@!`oxnvPW?e(`{9|H%X112bhZ*0}%iaL&047anP6 z*jy33lC`xino7no&qwhS=Gvif2ExaW6BdOV71wm%(xdbJCjjMay7dxMwRrcgQH`Z% z^W5Sm$sIp-mejRN24TJN^yz5$a__aTZg(^`PNl&HUKPkur+O$7Dte%zUYqI;Q?xcn z=ghoZt1^D@UhSO57E0IABClE2n<|aqSskUWVE{HvR3d#nc6eTSwV|@Y-VTkIjT+P1 z-^a%XJ=07(yF1SpyM{5A7s$x%eJC~%7qR@9GsZ>!!igMD|D9hNel|>V{8Vln`})b{ zjeoPIT(7X7E&MNECmV~aT+M>HN87j;CV9;0TmPu>$L^Ug2{Zeh89W#P+4IF&E>-A@ zu=F>Cci4l5Hc!{CQFEWxHtOGiK#=g4cN%M9+BCQS4hbCYlGQ_Mg3VMay#~RD7?Ux~ zLM?dq>BHLd+a!3p@qJoz45tSU6cMP$YxfquZ!@^zUw2B`*}clsQEur6K_V!{sz8h)J8r3c)c-4MGhw?@a8T%p3Ccai}lQcq9M;&oLPYW3_0GijdAm-rUl+ktrfKX43efN=NM-&Ao2 zzdiOi-Maao%nOaM_Tmw}n610D&FtIwLYH0t%i4Uh-SqIDJ=P8mb^PXY>9uXY|2n9m zErHjeZuzpOGVFBemv-?1pYtJzW*dh`|kimT{FA5b7#+XYSb*qS?*Xr*mWd5)yfY~28Cqu9ClZ?t+f6T z6%{4Ok`s9=-alRe8SnQa8NXJ-@#C)!Pif@6Ts6a{$;Cb_C#YmG^h;P27&2PW?Gs+| ziHQVRZZHe37;v;EG0P$?+3+o+DO*U_aAqhFWl(V`}l!r&kv3vL2id z>I2%w+@)p_)u80 zrDneW*_$^L#F(FW9^yH}c_izC8%7AuRDcf0ae&1h*0BL{<{uUrw zgOXIo6M4`Bfhxwu>@bqu;o*V+dH2p;dYhsLra4J|muV!wdHUqZd#<_y)&j;HKh<*Y zug5*lUB5~EY_{J;vw&EPFdnKo^b6=^>`R6Z2x6mFi*yb+z>cEga22`6qak0(ElM0I z#P)0$SuF*P3dVIs*bATuXpiZi>Dt8~_VkQ3>F0jZx;ocY7s_%mz~SWB^L0X_4*$+z zM12GWXx6M5Jq2}%malW?&cv^*I0U+YZ>6P0p7GC`m&_lbhjM`+fb7Yjbk!k7M|gX8 z1_T6v#cB#E5oGPic{kh1l3gw`f$Mn`JbL^XsUzMZzL}X~t_nbfKf)ur7*U$fm-`cW zui$QitOt=D(QER5#3uif2j}gy*Z%f0AEVqM8=M$92S+_*L2|2S4qziad2-;^WBfe? z23FC|xqfw@ZVj3iHFQ>3&c0^puDWz&iz%2{_Hgtl9`HL?uD*-{*het_OFG75Q%N0XNbrMvqN*wTqwvWu>bj=6pu62_e~k-fQFbERm0wZ(OPx* z_^C`QbXyB@|BKybzyCg&xaY6wLtK>1Vn39XmA!h^FC>%R`rp9M;~CD6x!!~rq||@4 zH?!D!W3HE%mvl46OoBYv=8+P_#c3q`VHXD`TDmkjKmzhv*Yapy8Eo3L-6!t+A^8l% zMVta2Of=wTtJok!jT#$fA-4{(0WuSws{6W6Ay|P>q$YITs3*J9{OccJRkO?o#6~3!m@!OcslL1Q%B|@!Y=|A1nlG%v+U-xCP;{=UK46wT3YH-W-gEp)5ySA zBjK?@@$$;{Y1kJqqJW%qmZI9h{Q#<4`}Mt2w{8U{-+@QPt9R`h38xOVJ_;)~O<&(? z#7i)YYcq?0Dz(#(_C!)rkFW(5p@^}u8?{fS)pRk}Q$5Z*F_+7_&}dUxaqGgkK7+Kh z{D9AyQdb!C9zT^opEVIp6Oi?o97=orQl+f zje0i(9#WIB-r7gC59b7J-n`Q^(!BW(2n4K+^pe=mwyPK$>FOpHb4<>$f76|Qf9WAa zRG@g&LjA6d~H;pJB!W@e!b?MU4WfPzB!W@Y&PWQ| z<2Bl?xyxjuf{HIP`pug+FUb7k`MY;^)2DCvL1H&wiuVl*nv^acK|j8)$r<+8vQTqV zQ=o5-9Z>If>-u#ud5D}5A@KNtzg{`$oAt<{>~!j*cLqpE4WM$BTMY}kO~6s9hEAW0 zM-8!J{_=bv1HHbc>4LUKhaIO)%bW83wJcw)&uj&SAU0^a1AVJ`_~U>D3K*%%-(QPE zBZIZD*CL##06X#u3SO=+vGpRaYg25-H#vbl(yaI6KDV^k)C`fR=WIgE$ruK@FdnM|f8XXjtByN7zo)E*}?Q-GF zy_?RmrmXQbx>71?BUf<~l9=KQY!=ZuX;k|3QsT+9?faC!7p07e}!=kvu z*)BR3dB9yulb_&1mo&Ml-E*!Ss!@Beq#p?7`m-iA}#j$_EeCiBbSc*O_FtJ^noqS4i9c6 zHNin2r+R^&fI+MTRXKusItCOP`WO)4Y_cg>ckg}>Zj%nyUWd?6i!BC(wq{)l_69-_ zmTg8Z3_hzFBE}+t3t0VxlwdxZ5orYh%vLdBE=aiD%$YrvlsqPV$3x(;q6JYs{2px9 zeseXJsio2PfRU!`QRr=WpP|_l`BAiZ11?WsHu53R1feIOlg4y5kq|s!56fpcI7A`w zsEgXUckhbYFK#e%UD{wFP)D%s-J#Q#S0FKLslyLsqp$%ZTf2MHFNk6 zvVXvt2Djr@(eq6gi=~AmypT{V@vkJ5>HMemI-vVdIsH&`ScwaXjX&q~zC}BKI32pS zt!9nWqg+8)_MKq}3%E&~i8QYm%Lz+K<%kagK*3k1^w|FwI(cG2rejP#R}DRD zl1(j*GUGNnI6@GWa-IWDcNu@<=FKqkC>AcMV1yWyb8*RaaP+B0T28aPIVdP-$BqgA zQl(hPsRw6ZNh$sK5#Ntn*r`iR#!p>y#RxMIJL2sG44(R(#R zGTC}(Sy>@o2bIo8Hy5=NEoYbUOGbo~T@YzCNj`(eD?g@tUU^ZfUju}fb`#;I2Vrd2 zay`38kyok)2esKWUfr-H;0u-;h#--MiY4k4dBCc|rq6HyU?*eX#omkx4^&5b8x>5x zdo`jtj#IO>eFP76_w`be$vZ4~oahEvK_DT1kHt79K7W4q?{3o8s z)?RBv551{fPifv43?4%H%uIK#age(gt7jn>n^#6CX~SY2S@&}2y#y~BYU_!-1a}`- zP9>^}v$nBVPlQ(QWAVYLGQvy_A$}AcvxHR1C_}C&f-tPxERYIXAM7n`2d|fUBMpG% zYpu#v`kC7BBNZ$IZ(yrdtuRCl8mt;{?4;N>1`LQe+IY3dnKW!&fa+1P)|HvZ&&cn; z*eh9kG~a?$McZjaE=gxO`(TrPGPx*1mS2=vqZPE#-1z*{>V1FCLJgQf>I^*)NvZay zACe~p$)Vfjw}4nMQ{cA_}4XdE(l8dO+-$u7`Ragc%zRjqItNwZ8ZLG1_doovkhBCpMVhZPB6y+oNz|3hUs7i>xs8$hq!Gx)xac z;WQ%)W;e!_kYLHVIV=sfHdTBR2Y2tD`}8!qDnd*Q&A96QwM~JGrsAz z8MD3TW4ivAm1M2IMn^BYJ-$L80!#B^;xmlLa8hZ!BP_ziebz)tdUT;jj5H}Pye ztEdnNbymmhbz!@9ok6D2VbfUoXr&pAoz$3wu}@Q!A4X5?QdRojIXKL>htaD2U;d5N zSDNi@^7A_aYXTYfe@{Q$`4>fExGLJ({redPoJ_36D>meG#TUmnV^2!7zrt5@w5bqDI| z?)j~@UIk!6bC&z}sn4`_%EW?|!@E7Z0bX;Ex9~uAfyU@mI~-~Pr2>G=A`l~P%6FH} z6H;ma5Gdoub`B01X=GH4lCJgR!_y9OTq#{Fx}}EM#GI~Q-z@kiN=w*3A*;9CodIG$ zd+qzA0kJuB)S$U`EeJWl8NFf5Z$k+-ix@UygmCKj*(JZ~S}^!yh_p*Jm{C(zUD4XB?WowPozx49(1*dW!8oG)8x=ey(Ss5Rblr0Uqid z*_}lm*ai`iB-@;&%mbTfX?@HwZ{owm1`YI`(E%k3-N4*Vjgh$5Uw*<3u4Z`%?;c%^ z{mhveub0y87Gr!w;{ixYegYsl0LAd(=c&|Odg90eCv;X+L|A$nG*NmRXo#7h4521f z6MF0Bty|^G4X9awdj~RK3qdsxJz{UN4qz*o|HF1wlinQ|b`baC%fZksyoQy{O6QAFD3_Szv{;_;_mN^y~jE(r8_RoI7lk|D@ zWp>VLdfE@suq6~+4#{cVylIkMZ)N4X&Wi^5S9ct=RScUjl7w`yZI^fRmsow1Xoq?d zbx379{m`u6ZeR!P)Flr_e*%VOl!~{F<T2aJFWIRSc#_6x^O zwRUwq852{U(EAt&*s)`O_MF*UN$CfJ9wAYDF1(0B%xtia$4noL7HD{=7yBH$9%#%w z#AQ>a#DiSWghBM7Spe_|i^8h3ikpWXypxoygD1$YpvTjORznXcNqPgocMd0oo_}IGaEm3^PjIyFbJpo!R=3 zkRO=S>d$%j~fVyu?zh7ksrpiMkp+}V#mhQNyl&b{}2PyGbj9FN*1vMtYl zqi&&2nv99qk#qV8&nP=-fCP{ULItUPWo6~x@o|**W+T{72$!^q<`Z?VDp(V)FE&!Z z%SDgk|7h(Whpey?3x%!))%o$GM-Ltk892~n@Lue+1qM%;J{jI2l&07YFVl7r;?Y`_2CL16W3<)AIBCH(Xao3P9(&`9r}4NK)3Ani zVc{2ESkxr;zV0lqCc26ieUm22qxC7`9dRD)*a5R=&=0Uup!_$kZS;cuoEz>k)ij~7 zSNHBXeaNkrSH%`g=ha?8;e^}8f`nTP&}$}!MR6dq%iZw8DR<2)Cd!}r&^zwbDenBY ze`L*EHjVsimPfB0lTXB~9U(R0fsK2ff+^PE;9X!@n+_=a3Rq0c1B81mf+yfAM8v@wAxpLFbE`+7i!0j%L2SKlJ%ckDz2-^WFucKdo8u_TJT! z5|!b~vb$DS9d^s)0Z3c(7A-U=gkqtWX4_v}?nWB3^r(F6)?0#t&YKUUzlT#}+?-c< zzof)iPcMmJc5jc+-|w7NoPyO3_^GujH-F#AV4M~lwA*GwV8~w|o+DR4@s(vBH9k+b zbI;-nOCq>7D^`8`{Fx-{gjnkbtO|@nI`eLaE+x`*?wLM)`Vh9fYyW-|dHmEs!XB?4 zz`uBATt9ZS={?=vBo;z@LNTssTe&GIBrNP5&@L3@$1M-H-Fk^W;K^#)2djKIFK6`| zjUbzptOGButy?=F#LsC^P_L1lx^{j2;`3wfgHXz;@DRHcb>79;||G>EE z1Ii5WRJGcW=U0$1C8@@2Osc93t7})U25SZ-;ER>%zpj%bd)%^upy)5|&O(tEWy^1DTu*XhvH=*e3sq=0nDOXJT ziTrhtuf&HWtbl4m8QHj_wD90wye}+XXoYJS!Fi0|7hn0oQ-xXI2jc~sKnErL z?LD1SkPv`aQ`1<57f&!p96oSB_?`GBWesOIXk~d*iF8p(3cIp^urFK~LFz81I+vcu zFSY=KU!lPCu!L5Pev0cxNC)+FdcRJ|7cNj_+5ZAIY}j&R?h_Zw$uao`BS+RZYik2` zoqt*EtVfdn%iLGl*6%K=JtXkv=igNA0w}1O?YGQJ7Rn3yjL9!bzmu5W9tfEQFnp;u@S*~hY)p|}@ zkbV8r8ex|(u(2acYkR~ywwbv+WR&^RrP`a)haJcUH}NP*sb6L=#m>&IZ%j?&?~c*Q zM;-rhM!MW~Epb1&B(Q;RN+&BeD>G9`$EBTWKcHDv z)j9N7v@+nnYQcp2T83(G2&Kn9KanA#hP;s$(~DH9JbRwY3@h zFixSr8b7{8Sfe5$ZQBW0TJ8}hYQ%0Lhm3u{MbqCIwAl4#^So?5hSD1!rMxPeA~2^c z--)62ZkXN>-jSx}A}}quoD8C+7Sd})QBNkHut(PbP<_=&_}RcP*ueN?Z?X?;a%m#h zP*Qww)A%L**Qgj@88ckIP1Caj6+1fb%I-Zrt-t2>mU>$TTUv6d~={D&+W_}f-9&ndqv{t~(!a>DTn}y54>I z>8~^PtFb;vuIGcYcW*x3iWZ+XF388QxtUrpbH*Z|oa*XoznXLvnmXncjF3XCpn4ss zSvs~Mr|1B-2QUxKfDu?M*R8v(QBNyIKaUG^6)I`?14;_n2Nw~2F(80lZIIyow~@hl z_re}!kBtwIFanC0IaVyPb#SPWX!5piZ^w|8?C{~mi`@7q(ldIrlgh{B+c`RV4LNTY z$CO6h)DF$Ev4z<8mOVFdhkUYxc8NL94HMPMxA%UR?+E@leL4mBC^y*9GaW#cIk-?c z4D|8=BEpIaPq%zeeY5vqGhFz)GW^5!M#a3A7mgoyCMXsowfue1KcuLWUenkKf{O5; zy7=}8(aFj~VjN);1864PfGjVzT`XvOO}ip*^Q~K*WQPs?7)WVt?HVLD!1T%C4`t-* z7>~ZA_68RYP@8Nwl9NvLhCbM_1|_Q>VH~`+-X<>YB*U(GLCjJ;x91 z;$}w1AgaWmL6bB?jAL7n$PFP2q{W*M0}1DKki{tF(y1RU#A*y2a`V>QCurt`;N& zt^mE*m8?oG%2~wwQ@u@1Va-C(3z1QNd^by+$EQWhmhYBdgs}v#8QrH3CV+WV>2qx$ zN?k|fuOrO@?Al&0)Ew#bdum_1mSfX>m>ReN92oPAaJ!ub>H+fY+L7gwY!xje^k7na zt~i?*(KgXM7}u9sQY3LSgB9S#Q}CEWO=Pcwm%UeBjX`xXqpH$|qKV&3chhdXdiCY) zQKI(SclHeiH%UQ&!d7K4Y7|k%kx@~1Lv<#~cT`duQa?x)b;HP!-b6JhcqBj)z~7OT zaKyohY_w5{}`fxKf0Nz4#`O=4Tx%)Z{qUeNoZ5I1-!a zByQa3Z)oTsKh@FkFmj8-hqVImS?x$o^&{;}xBStRS+kxJ6-bd|<8T?GK6vn8E#Y6E znjVI7DECj!<{>PRPl`x9y$#|GKEhcGGaGB`b-25j3@IrGtsBF>gy`KRJ8YwpP|9)3 zQH6NfzJ2#@u*Tcv27Z2i^ew96F!})cMb0cC4P)J>8{Mts7MkdX zZrj4>s?bA`Jdo?KB=|}vDG<`lxo6t-)E=ieK{WvW6bY}5%|7YT&0Dvw;SX^p&iaVK z0RwroEiA6!*)@#}gMS0JMZ0+XYESSSdM9D5kF+X#{#-R6-Y$;AbSU?^=Pb^ZefS{a zo>T+O)ynx5qF}6NbA@*AUP^u&9$yjxAxOW%uH}w=R$5xX-pF*)S*FZ0413!AnSycM zVy0ZU1KLAC+4#Mz%FECD;fq@L?dd9-Vel~b%u~o-q?`G?`ks}<*wF9+0Gx`6*|vG} zeqFcSdyM<51=BN`p~!7NJlVU-C1Tr2Fk`>^az~ChvESmL>9u-AVm8q)P?Y@Ll9_P@ zO!x{)`sRbR1`QIzLH1?pfb^(D%Hcd%u?F|)BaOC3#w+xe$2LH*fzr_D5k<8>yOd|U zwW{Xq%NKZ_0PRo}5|0pFsJ0f}DqX^*t=v?UV*$vyw|){D^jvm116s^v$RwhwKA45ncqO3K(IVPH4^f_=J8-N zVby1Q`SyJunW3+Q+Ciah+u(i1P`~^c=1WT&pjo?feX*t6#ONsoDqQNPB(?+3ioSC2 z67=$Ji;yUxM#9*jKeLJ~06H^fhNoxeXHu6UCtXt$6faT0c>Qc*KnmkP?Q@?*OOU?Q zy;Nz~yk$!n^)%f=wB-Bu51i$p5g<5bo<9b?*+>=N{b%#!*Kt5^_d z$7t4re_r@)eg&u^x4(hn-c7n(q+iC_o4!u9jE78m^ym>?DD)7^5Jnh^^FvV3Fki={mFRO zrcIdkd{f-BeVfJ?dVZ~}+_~Ex(ito}QVx#^nRLiPM=pADVPiFgmSh)Zf6xA0$^%@0 zpt9ZMGl!Z3)oX{wvN?j)q^$mQtc(8!uo!g`4uL{2Dp{JFLuZE@`CR;RpYbYE*(kOJ znMuOSw722w`PA>VwQW=>RD|f&tiSSCbTm!*c8#xQ*e8gjzI5rw`f3O{|0d0-Rm>cE z$jakvhRm;swTQ0d$R#c@<$UL< zX5?}c0dThd>F>2W3QjvVs5E?1;gJ;qTj&XZH5BWUWH7eknIO4}(o!}>jQUDZM<$ZC zt#F|KzSV2iP%KSgs0&y2tm^K#j--iUoC-Cen&hJN^z?-a+rYI^F2ES<)=%a66q`Nx ziQectrt?Mq-P210ZmiyRdB+)MmB+z)O?&LSdPx za35b^d3iaipdkUo*r8!2U5K=r%ZYuZ8gLii@P zl^dO4t1gu<3!JDx@Z-)?6EGd2y9uO3k2`>@&fL-xIXo+Q$PlwN@yn=k><8=1X2_$> zbzbWiB)NtJTlgT#F&wNZkHZuup6WSeGj?MR=g2O?FY?M*SI1MHvfNTqX3JAxwRLoW zz7|%aFsZ)UN(IT!qhiko&TVsDMb5L9-*;Ih7*vQsg4qR?vFX@P@z38;yg-X0$L{AO zIZ(mKIz#AXo>Pw{#(Xc%jGD7hvE4>79MJ8z|9IG0HDgz|LgkTd$*ll3dW-)fP=zgunqP0q)pgR1S= z9`3Lh1kuv3Hu$R3+lQwQf7yN#4jq?`ux;#qx4gVyA@3k}DS6c|FMH|_8YEo4xE1S- zNo&Z`$uaqZ9#=<8E5}uLjkm}IH497URI1004Ye~s^(Z7v_eK5OgEd6%3qvRKksn*` z!k~B{9O!qRB)tRKyiK|ykJW46D}-_InK4y~#*N5NOamo#rNdF#@#T_`OjiZSy62~a zo%Ed3)jvrapud_j5VLGYW#ykBj|}lVpr`DTOfM!~ICbhnrdBFIQxwPl$jc)N5ACw( zfakP``y%Fc_Lav4JfsgZ42H*eI1OCiw9X2-!uytG1GY|xaQoafPuzyyXM)Tck1Sbj-rR}r$c;HL zMouR`E3cl(%fItxIu=%UlG#|R^o=&M9 z{6pz_)xFpv$RmoH*9fEt%Lw+E|KyXKC}6Edj_d zycRQ#p<|)NrnwAS)`e-L1|W$)MXxbpqXOIpj zlU_@SM1NVq-J1oI2aO<=Cs87L%89)1KYkEeY7zr*gHIVyF)yzQZPK1xPkxY0OrA}I zpU9-?2y2}t{k@62nIWS_;wDu!e+ItE!-E!P;*3iO?|4X+2gsG6O1*z0gUyew{9f5| z9#ukArJLDi*sPGT^pk}pe9W^n_Q5(TETIhPJSODUBowL#td1Wi-?3LO^#F2Z)fY70 z5$)_M34T1M13o^@S*VDwM~pH+-iHy}TrFYmuT9z!^q14@I3p=Q!n9jPLqtfP&npFxWrZyX1T%-9Erg56R=jPtj-8C|B3k8-k6H( zo#v}owbnoLr&d{*v+8w}O~h_0Cwv06X8#zjj_h%QkIxl}G~zz^9|fb0DoP!y(Zc68 zupb-PXD*^y5j_#!n^tBclqy}p3wi@dy%bNyt#r6>^jgty=?K zt$S4WK4>cTaMbqk0>AoOA&KGHlFCCPL4%MY3k*#H4lCpO^>KWYHjyRjkz}_)ic1<7 z&SqX&RlMGjq}>PaWK?wSJRmOoZuUFH9<`nA$QC$>e9OdS^ZPyv;4cx81Pr9@O7Xd* zYpFy8{G4meqkF}V;;s_-9eC=L*KBAp)DEo;SJI692o|<>rxRh`EgzAZ_}o4H%aDKz z*xNIl`^cqF9{qE^EWXb7_dEMM5S@`Se`B97_6shJh|dwnynKkCi2P=*M7+Zv{k@K^ z6q(`>&TG%^fsrF;4L#a~h&lIU3&1$FTkAB`M?4LIxu;PJrnkSe5)P4OT}L=P{13YC zl3Ry{j}~XsrcG^gKQ^4Ti=%C<9qD+^n)5ae9;|P>@<=rT%P%aP9->;LO-{N!IxV;D zTDWRfo&nkEF6ODY=w>@PJ;NhfRN-^?&Yh)5Go@?W22R2m>+SvB@#p7|U!9}X_Y#^* zAap3=s#_fH{o^ZJSHta3m+5rrc_KP+$_gaT#5fy!^=`o#T@)1!Flrz?@NI2;6G>+e z!9wz^<+Kw<`q34p@^g~x+P54_N+;qqr6|3K`+$Ho!QYlvznjh-rp&)xe$ho`GpfJD zaS8fpBvA2NvZW=* z;C%V|RmeA3qI3{U-|N?>Gy5X(o@s5JNTxR)hLB7#YN72QNwSVXm8YDonw~Akuxh)Q zsn*q3KO8VQT%6IxDG0(Mvv=?Op*19vk!nS zK&%|=$wwf~K(&SM`m0lrDIl13=SuiB2pS8`Jlp%C)yoOupeR%KLNc6j`BPWcT=C@+ zQHk&0Ujk5*tNw{rAMyW>FJ(H2uUaW&J8S!}C-XaKU#Vr<+E(sQ3jWx*7XLBinviB8 z*aBlyuJD(EMCx2rrsiTqSsGSr>Tx228S~T?7OAr&q+IY~o+u1#)e+iIK7kUnL@=u(ze0k!7 z+hCc@LPb<*NP0j~6MJCL57cye@`Z_)poyt?G#%{u=!?i8wAs2#j7vYhaUrdeV7*9X zqXI%#7j+O$4;UIjHrvG=UiWzty(mA)_IU_d<;Itl@VJvgEQfo$q8*wNlP?}jF}9)! zHhuip)K-dQ_l+jKFt~RmK-uE%5P7u0*nGE2UcfB!7c&?_!wf6g;V##_*hYgK_|^4{ z?W@oG*3^v<&$Xd>!c!5Z$yf2x-r0BVKv77f*tH>KgvkiRhNEPVcb$)PyfWLbygjhBL@%EvJ$ak-U*}Xn5FSZOYlCg|)yn2IWcMggi*h z371Cs{j6jEFvei+=1BCN)pwwT;gpz-f##vw^XdKCd)3nedjhI)=ncm%ojOH>2Wmma zY&N4W;od@pd2*A5@?)AUL}=5aIqIu$u<@fmHgfBNdqaq?z5cefDv|BNafRAzQ}3Gf z#AN-fe(2cnVO8qO^P-kLTM(7FZML2IKJvT}tD}o)s|qoP%9Be>3R=Y4AdZ4fZ_mF{ z-01$43(oGT50JE9Fp-u(u(JPz(efWW&{fup%yk-Scwv<4IQ&KtnLa~?3?T)H4I`qP z2uc<659RLMA;WJ^mT_ek*}ezu1Nawd_=a?zu&cwvM=bn&FD(4!!n4iv(V)EJd%?Z& zqCbh4Xj$uieAv3mv;$pObP`FLg5Y!0a&nALjk^L`faH<#NQNA|doIBwXadfD7ehhlOFCg;{fisrOAea2fI^**u6VT zm(xem00fOlq=9&>c*fhd755127SIrResJ%atM@N0elBH`qkhqu27cZ>yVsrN>O=9Pp~owW~@9ZJB(6GnE9UU+75^%}CL>zPyFB zlcm_9*N95cErLZx7#N5=a3(>zNx(#k4zvl2h5nL(pHj=1d=c3c&opxYiA97nRi5^% zA3_L#s_IoTxWLa@$nYzz+qZu&1IW%qM9hQF2$1kc7(Hm8P-D2JKgEec7&}x(czC!d z=Ey#1ZGoB&0I)4TD2P!KFW*mc!iLA@%;C~sIKhxznCu1W3&(vffm@^;BMSNo=9&X! zj*h_8bhoCqrG>?4J|goE1E-2%B1|JaF2x7EK4ESH4Gqy0r_N~=AmNG{_}101xid$fy z{Oxs3M?sEe7YTCI>7(n{p{FeYL#}d`EDI%K3vb=V@B!V;Xnm znpvv52z1kbUwS(kJ$l6AH@V?o3l|*LTeDSW9zW7GKIofVTU9t8it!%PNCd5>rqJ{r zM|;11^TzmvhU~0mxl!{~njnO!L5?DrLvuA9QrNmT$WW8YzJ(KoDi<`Z+cxs+7#2A( z9hQX6T=-rEEyZxNV?b1cf|oQ{rqmeM0!oFmr%T@rD5rrJJF^;Rf2O z^0878Khef^@7i@fDXESrPwwBJ>W&k{f`7`NBqv;TS`8!)iOL!A$i3<~iT&cGO9#xO zfK`{;ajoUXl+RO9xQf?Ckc(%XC;9l)Lmq8H+5$BXzDKO=OnHGP+`HFM^)(7_0hghz zDrbjsa-NqNX~92v@)_p9K9IlL^MErnaaOK~R;D8sXjbC%#)(L6B@>Zqz_x9f%u!E) ztD*5Im^*q5qr9ebg12S}M>6TgMo$@tdRKDIJ*nW~!=gLP;o#=Oy$&%pbrr$FGTFzN zm<1|2BEKFq){gA}$Ff9<0)$SAe|5#%u22-u^7#kC2ci z$hu;?VL$daAOL$i%|GleTRt_$v@~9j6KsiF^{c1?5j8)>cjSya4R7>>K5pLhpNm7rAO1h^jVbyw#wH~tp_WFfsSxv9NG8(+jK%FE zvQOaao88$z6MN~$V)nTsR?&14>$_6v@4F)XFgGy)1U{R0mE8y*Mx4#EVsSzIp9-Xb zbRs1sO4p~i?t&X-i?VE+M)QMBy8`sXvp;jAA8IRXSia}3lB#ezF3!T#^o30FA$KXy z@SB`cyO!K=mDp0G1VelHKGtmP2A3=uRwCFzxn~2W=zA^u`z&sRB^9C|wYtC_th0S4 zF={g$eOA1N63t%|9CCEk%9N;Ab&f(>RI1;f|f;09X?OrM;%j=18PpXAOJsXF$ZS>@qG-32UfFf0pteU|Y zp05Sn7#k~CBfRbS)9dQ%q3h`lxGTsMfF=1CR(+@5y=OT(`eEfoT3>XIzP)|>_6OPI zBy-WeGiM0$Hb4S%QGvY){*3m@xaQeTTpOJ6rRF`RCAw7?XJ=h?vLP!Qw{K+i zxKdVfa-!-u23ZJk$uUl&oRL~Pea@Vtl4A_l%nfr^cauJ{p;MsQKOQkqOG{@7Vwrm*V{XJ@`;yw+;0#lKZ?2ZrYI@#)3Obld752D;d<60 zadyf&%FoDt{rU|XcAsqMVXHpT7S{&()y=cD-Ji%=)-+or=B5_e;27H=VYp(+_o9fA z^oViJ7mXxD*jewFJC6m3r-l` zlCV2K+GO^dQ>X623qayW+z*Gq3|(-@d)&+1QQ`bef{*4U*+sT1H-}s4w&7VeWsvezQ5Zrr*x zKut|N-+x1M{%<+UmjQ`O2@CIs|&kTsQaHr^asyJJbKFiz2q zJn-l+N{p!IFZ0ARxwfCzmI>H{;l-39OD24K+jQj{zyyREF1`5Qa-;J5G^v3}U|Z%q z`|igb6Z!tYLkD|LJx4M94kxD>Kp}joFaW7@v4y9`{es|y<-w+i^5%R@EB?h96&o<8>UL)hb@!6c~=rVFg> z;@y0CUq*N#1hG}8BGJ-h-o0zY39P1(iku>qbK6h(Y&!!E}l65JSD>n$u7^ zU>S2Ent^abZ>z^&4|t_4S+-0ZrQ|3>u@fz_S1QC4ddRbvxk6V%17(AVzoMz{wyi&c zXP|L-hv3ZDe8iq)%vi^(NnYYJPyS=O%Iy*+2n0pgE37 zq%rvf?V)~;$q&P6jcqzq*6PG^8!5`(+d??iWEFvt={1e9_X}SJ6vlNIc=iNSgB`&^y!F8jii-XyoUwX1{ zpqxd5%-F#Unh2a1{UjqJ8bLQ&=U~~!ZrAyTd>VKMTQeg%`1RSYvk{UT8T~xdVRkfW z%{DR9Bdr=a_a##C3S&I_pWil{w0V>=iwe(5vS=AR?X%QtUsbr*Q#B^Q;DF|vX-rl`qVe)Be!CO2I{c)J%BcO2`zr9qkl~Y-Y?Qh~T#ow`w@fiN|$ZOpWX;13g*8N%2M2t}y z6Yt6}X}QNu|0mkf`OEaI(P`M&L_I8rkWvfw1`qZ29`=@(lJh_82(iQ6X14->kVaZD zY_}R>8&`k^1N01$Gsj^UmO0Igvsr(YBY8%8iC;_mpld0|dBb)2r+tObbm9!=?krsS zZcSFBVFD)#+_L4&UU9&x@cFG;)lk^792^k<9Ue1WM%_8B3VWmM#2>Ya_KgqYAich) zcK!UF&4kJ0^(ff`P}lrU=|Ul!R`}tH{4=PqhS*!-M&NYp^!)s!ImwN|3z+7K@B?q0 zu%nkZ%@UK5FX5*`q5_?(8iIvDqft4^rA=mbCqR?-Lt zNGJuo2WXMOdj}62wgk1NRXxgvLliUlGw3JjRltE(fX6Vva6+cm<;te3Mx0;7Y`1Fh zVv(ONJLl<9giD7slsSto{AClvIYOQ>fE#PVZ`Rk<9r7*>1uhZ?O+7z&69y4g0!K3> z6?*zM)PF;wgPraj0stGEQUbbU$~-%I@vdE`H@1gpQUB2%`T$yQkTg^oHzfEq{KWR& zR@I1H5H@*`dXi_i{_RrUz z2@wJY!|@hcfS>HRxLXdxcB+n}6`{yYK0)GMX{>u3KysB%#f_ETV#)ZI=4UmzkeFy~ zhgs~n#;4gFb^`cGml0;L;xDG=c^~E?fe?PO_U-rDkccxOq7dRT5wM)5zl z4MW35${`@OvjdXY*-aF1baZ@y>#@2(J4VYIM_%Soc(^*h+lELfI-j`vfmgAuUI0W# z7>tgUJ(ANg;Q0~D_-5&ZGc*WdS@ewS0O06kTdT^DnlsaJs*UBz7t#A}4<-P)aJHj) znC_ONV!2lAy6k4$ZPh9GPFu@(b2n%>d|@Ax2gDPakt=KpaJ*U(Cb4mFAC1+ z7cf*YkWEBhmGtWNieG5DBj{?Rn;AxkxbKT1;+A3DW5_p_yU2i)!VQ73kwM;870ge| zF~#$YEu#4Qu6v5#Ehp~BE#{VYnqGwz>ax)DSL+n%nH)t#R3hV*eQo=;ZS6VPk>yP8 z!q1vOW58Y7|J={;Is$RzJZ-RPnn)l7vxKWOhm4|#vCc{Gjm+g4GybVM9RrIQ$^jW7 z(Th2sr)-0Stq8J;ft77Z>&h1^fU`eaw6&Tx4Z}F2AhO(rO?$$;Vi|vf9K3(D zstd3I7~|TBqsE2|QdbxA9BD&ZaT_;m5U1xxMe+Eg?CLbgzm=N|DIO-!w=rfr&yS0s z>e19d8-DSfmFC;qXr1lFp#q3uh}wWo46HOXLUbWrx)I_g+1Jk$0AID`iI+oSU9d=wNTpF~`r4H=dgVc~>(}`I;=T zAT8(%s{8FXR^#@L-p{ zHut|06B{dLfYpaYw_G`t>=0<6j#Az54GUqRK7KUDd&sMfexVT!R!1SDW*B>Gal;U} zp|qNNCSc=6>aI;(Me34G`#U$^@~Oe(;r_N4}TD{e39OhYSq|#4jEFuUctzga9;<_)MalbV{H_@ zXKqoEy=iKDn7>^*a&eD%`alGcry@s$I}mm65{|S754b~yRarXH%}`bF1=EW$E{%_={7C1`OZ~yNd_|#*H6O#W~3BiL_dQ z^x4Sh&@d)|wBQOp=d^<+ggW7-$hoA>&c}gp zEi9%-TZ5Ui0Kla&3!IV6WwJciErr9S33PyUqfh^g*&odUI~o`PJzIAvbO)F_IWyaC zXhWyqH=5l2Q3xku%$65>BD@^mx-z?g``SiT1RNineB!<<0=7uAC~+u+n!P+IeuoaA z!5|jfckB>nR}u|~%8!#nW=xwF@vs~})>+7wWQPjvA#?!A)B|7arY%8YU&h zM8Wnt|dgYsE1swI&>U6jva63>52# zSI)uye?yA2QBUZPS%IHYr(I`}T)g-=KYx1dgS@;1=E=ZC{W&``_kGKAEmQ+;%td1s z=NZ5TUis=0iC@420TQ9{vhB^tP+VLLoK3`N`vHG|k};wvpO^_%e&q_5wIx6yoIM}h z^6Lw@#>0L;lO@;SOE3)azS+ikK3Bk%<51JsQmo7 zlN7};wCfw>lWRNrb4GD_>w2$ zI~5n@4ou>pK$BG+Nua)voZMO!?25|<0AApiV&Mek2b#+gwxAE%8`OHf^Hp;`AX@ZDNMt{W!hQpK!MVt3V zV%Pb~Y*Bwm9RV|am6?XT0erAe00Fq`vdlDiHU9wt71ono4)6DC`1p1CqJ8K6I1v?WLSSH>#xlYiH_1vVS{QLBk>hDyK2x#NcJ&l3I9O`H1uUMI)X;=eC%gj`k2 z-=1~9t{?^w*O3-ka#fCtpLK`H+22H9K6aBk5AVg{WQ)c%_x*7An8PXS$JuL>MXR{> zL5=Z~;ajza4NTK|yWD%wdcG%@7|_t!A8Kou40-pr*|JSa-k8cf4>dyO2-B7J5J9}`__{rl=NuB=uKSw{q6951J diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-restart-checks.json b/delivery/nextcloud-explicit-adoption/evidence/native-restart-checks.json deleted file mode 100644 index a8738cef..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/native-restart-checks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "ok": true, - "serverNoteId": 184, - "stableLocalId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", - "acknowledgedRevision": 45, - "libsecretAccountRestored": true, - "stagedBytesRetained": true -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-spelling-dependencies.log b/delivery/nextcloud-explicit-adoption/evidence/native-spelling-dependencies.log deleted file mode 100644 index 05f16fd0..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/native-spelling-dependencies.log +++ /dev/null @@ -1,19 +0,0 @@ -Resolving dependencies... -Downloading packages... - _fe_analyzer_shared 92.0.0 (109.0.0 available) - analyzer 9.0.0 (14.5.0 available) - cli_util 0.4.2 (0.6.0 available) - code_assets 1.2.1 (2.1.0 available) - dart_style 3.1.3 (3.1.13 available) - ffigen 20.1.1 (23.0.0 available) - frontend_server_client 4.0.0 (4.1.0 available) - hooks 2.0.2 (2.2.0 available) - native_toolchain_c 0.19.3 (0.19.5 available) - package_config 2.2.0 (3.0.0 available) - record_use 0.6.0 (1.1.1 available) - test 1.31.1 (1.32.0 available) - test_api 0.7.12 (0.7.14 available) - test_core 0.6.18 (0.6.20 available) -Got dependencies! -14 packages have newer versions incompatible with dependency constraints. -Try `dart pub outdated` for more information. diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-spelling.log b/delivery/nextcloud-explicit-adoption/evidence/native-spelling.log deleted file mode 100644 index a5e6cec6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/native-spelling.log +++ /dev/null @@ -1,15 +0,0 @@ -Running build hooks...Running build hooks...00:00 +0: loading test/busymark_spellcheck_native_test.dart -00:00 +0: test/busymark_spellcheck_native_test.dart: checks roots, affixes, compounds, and casing -00:00 +1: test/busymark_spellcheck_native_test.dart: copies suggestions before releasing the Hunspell list -00:00 +2: test/busymark_spellcheck_native_test.dart: custom words participate in checking and suggestions -00:00 +3: test/busymark_spellcheck_native_test.dart: tokenization reports UTF-8 and character boundaries separately -00:00 +4: test/busymark_spellcheck_native_test.dart: keeps touching Thai word boundaries separate -00:00 +5: test/busymark_spellcheck_native_test.dart: rejects initial and embedded NUL at every string boundary -00:00 +6: test/busymark_spellcheck_native_test.dart: dictionary word characters do not absorb quotation punctuation -00:00 +7: test/busymark_spellcheck_native_test.dart: quotation punctuation stays outside tokens across phrases -00:00 +8: test/busymark_spellcheck_native_test.dart: standalone elisions and possessives retain lexical apostrophes -00:00 +9: test/busymark_spellcheck_native_test.dart: closed handles report an unchecked failure -00:00 +10: test/busymark_spellcheck_native_test.dart: missing dictionary is reported without leaking a handle -00:00 +11: test/busymark_spellcheck_native_test.dart: rejects a dictionary that claims records but loads none -00:00 +12: test/busymark_spellcheck_native_test.dart: accepts a valid dictionary whose stems require affixes -00:00 +13: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-before-edit.json b/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-before-edit.json deleted file mode 100644 index 126f073e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-before-edit.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", - "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", - "serverId": null, - "content": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\n", - "title": "New note", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 0, - "etag": null, - "base": null, - "remote": null, - "creationAttempt": { - "id": "cdebc807-6970-491c-a9f6-2c5b00e295f2", - "revision": 24, - "localContent": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\n", - "wireBody": "{\"content\":\"BusyMark GUI submitted\\n\\n[attachment.bin]()\\n\",\"title\":\"New note\",\"category\":\"\",\"favorite\":false,\"modified\":1791371789}", - "knownServerIds": [ - 89, - 90, - 98, - 94, - 183 - ], - "candidateServerIds": [], - "separateNoteLocalId": null - }, - "revision": 24, - "ackRevision": 0, - "editorRevision": 24, - "editorContentDigest": "6fa66b2526b6cdcf35bdedc515b2a941e6e805b13148012c952d871148c69707", - "syncState": "creationUncertain", - "errorMessage": "Nextcloud may have created this note. Refresh and resolve the uncertain result before creating another." - } - ], - "attachments": [ - { - "id": "e43dca39-e443-4f92-b8f6-0799f7ea9a64", - "noteId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", - "filename": "attachment.bin", - "reference": "busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64", - "remotePath": null, - "state": "pending", - "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "byteCount": 1024 - } - ] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-newer-edit.json b/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-newer-edit.json deleted file mode 100644 index c6825efa..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/native-uncertain-newer-edit.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", - "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", - "serverId": null, - "content": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\nNewer local GUI edit", - "title": "New note", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 0, - "etag": null, - "base": null, - "remote": { - "id": 184, - "etag": "e008770776466441e0016d47a978dfdb", - "content": "BusyMark GUI submitted\n\n[attachment.bin]()\n", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791371789, - "error": false - }, - "creationAttempt": { - "id": "cdebc807-6970-491c-a9f6-2c5b00e295f2", - "revision": 24, - "localContent": "BusyMark GUI submitted\n\n[attachment.bin](busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64)\n", - "wireBody": "{\"content\":\"BusyMark GUI submitted\\n\\n[attachment.bin]()\\n\",\"title\":\"New note\",\"category\":\"\",\"favorite\":false,\"modified\":1791371789}", - "knownServerIds": [ - 89, - 90, - 98, - 94, - 183 - ], - "candidateServerIds": [ - 184 - ], - "separateNoteLocalId": null - }, - "revision": 44, - "ackRevision": 0, - "editorRevision": 44, - "editorContentDigest": "d7099eb3694907a926900b6a0976dea5371680423a17c5090cc3c83eb3c8146a", - "syncState": "creationUncertain", - "errorMessage": "Possible server notes were found. Review and deliberately use one or create a separate note." - }, - { - "localId": "c39291c3-0610-4793-a970-42b6388279a9", - "accountId": "545cb022-1de7-43d9-ab52-95ed202f803e", - "serverId": 184, - "content": "BusyMark GUI submitted\n\n[attachment.bin]()\n", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791371789, - "etag": "e008770776466441e0016d47a978dfdb", - "base": { - "id": 184, - "etag": "e008770776466441e0016d47a978dfdb", - "content": "BusyMark GUI submitted\n\n[attachment.bin]()\n", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791371789, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - } - ], - "attachments": [ - { - "id": "e43dca39-e443-4f92-b8f6-0799f7ea9a64", - "noteId": "fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7", - "filename": "attachment.bin", - "reference": "busymark-attachment:545cb022-1de7-43d9-ab52-95ed202f803e:fb4cfc0c-b2ca-4327-b1ee-cf4ec605b0f7:e43dca39-e443-4f92-b8f6-0799f7ea9a64", - "remotePath": null, - "state": "pending", - "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "byteCount": 1024 - } - ] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-uncertain.png b/delivery/nextcloud-explicit-adoption/evidence/native-uncertain.png deleted file mode 100644 index b11aaca98bebf3d112523e530f245f67b25b44bd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83532 zcmb@uc{EjT|2KX}5;7%8WloZisgm)e44E<|DMQMf%9xC0NRot1AtW4xq*A65GKGw( z3<)_1Nrnu+*U^1H-`}%-|2*qizjLp3f5bWa?0xO)dcR-OwL|rE)Hcy`(Gv)SO&aQ| z`UJvy{J1WVjvD{D?7?7&|L~qu*ViTxyo3k@|3Cs^5x?^PK_IwE5C~)o0zod0K-hZe z!K)MU_yeugaWz%KD&>C<%QB{~X!-roGP zQ%a{&3)f!rt&yz6eM^UlD*x*@0oC$h{KP%~{kJVWFM;+y|7a1s+oAMM zKI}Rh)qj37Ri(!>bG&o@LrvXIdOH97pxVJhhYqP6`uFD+VQJH=sSMKpd9%L|6}82G zekN#B(^UTV=L8x$|NkCQdLs*A-GBaI%l2N6hTyFht(jpWdS5exK8U)ifOb4UnfI=` zph%2nW?QK0{6@yLcT4l(b5mbg=!1x^Y2vpgm8xQoqJ;H zo4L~Q6&d;)hyH!9ucrhpr@!-88~eW<>eRIB*3R8~P=YZ^GebYyP%L(E6Q?SFq?V9D zwjoZLmxZ@lP6gldLPsRVH$d<|gFAo0l2eGC{wRNB%@tgLp0FU>M&ivk783D|HT0T( z?d*I6+Wym-dcwZ`f@^1_T=m}i>8)G0GVj+`xa%OcShA&k9&Y2DK0eZ}>gsBb$=BkKh}Q^GEs?95EJ&@m8#`{QPUd zd)>Nq{E>8f?EMLx?E{^8r!n6QGIfH|=4q3Z{LU_?1SCYq#GEPjj#uWry-jMkXgIU9 zbSc){x9OD--qiYPb8`=W}9ip_@yttP@zbRLdVQ4 zKkuF0-zuJ@!y|P;D}r0$c6fN$ty@38l(;PZ9&LyfKgapp;?4Eu$cvdeN#v5@su1Sw z2S&+lDn8@Gq8tqR?F1@`tg4QjlgE!A=Oe7hey#B1;gi1dUERgS#k=m$#Ak8y^4!9n zzjKqZ;^y4jwk@1mXTcru0*AbPn{oU0#7)~}D?d>^)QD^tDk&)uc=G0v0FFuSb zrb}J^J9o{?i^SnhZr@l{u=B7xZ=j+%D+wQ% z2q{(Hs>Aw9uNGY%JZ5fg?yceNy)^!*2=~9ts`^%bTp_;0xv$)3s6IyF+MmESn#!#P z`uf*d^do#(iPn;*u)y|91Srqv`lQbM`X%esgK1dO?DNPo_Qn2lHCbuqTQH?t)73Vt zUmp}0=zWLqvh}mun1)c4Oude+bWi4^o0cXP77sgTZ``<%Q*q}kt78|Aj<*4)$am!==Ei5d|e=p+y`h~k(=2mWWJvj33P;bK8_YZXVr6kGALlsFh6(V>EvHlG7|&_F7V4!fx4C5M z-@c{ha~=JdA!YMHP*AYDyZg(_%L2l}wkt~uR8&-Ssh^5$V(;HiR`TQKGc+`G#jjsD z_pybl9zWi2b!Iq8;hHQzKkm&I%q2QL@6RPJBkrRgkIHQOI6Kybxe(sfu>HWreg>ny z-dApW`T5gczKmV!br-={IhNo zJw|G3nGYZOH(j`P?V6gZYN_8UH?#ld&6`a_-~mLQ$JGZR(Kn{{5pBW6sE< zxFgN{;l=51)uW@MIKRX0<1JlXA=Fg;44j9qe8)Zh^YiO#>pHgCArx!ezz7~CCOSHc zqED=>taf&GuRSLJOi!!OVGQ^JRryaiI_8>*ZKb0TI9qX4m%kRMCaz z6s5kxa~l-nOZBtOUR*q5Xc(QDnVFRI_3LYobLY;@O?(bnC55q&TT*Z2K?u7@MhqWrluy^qUgSTIew=N z4FmIM4&9k^(7v8wC{i({Q=ZLkv|oalb^pf;s!zd$`Mq&cHh0LA+zMVlwL*Br}xk(<}2X5}((yKF{ zUpTkfK2y0td-UkhY@uzFC?1$U->;OIiKSqfp@tdNoe+*DyZk_BIwUHZtDB-IaO}3f z6kWUB#4rlo9zkM?; zwjUZDU09rT2vxlo9UVBwaa>2o-Nhv=G}Nwx6w_&*|5z*j+wkxotO9etWf?iSSLn3P zy``bIZrOJ|`HJ5GXAp@*G(O+u#o29A7y1)XHBZUV9uyLK{J61l8%_UT448SD*HK;; zCLYD{@$nrjEdFzT#;I+iS&_s&Zi}QPzEi8{^G=7cv~Wo}i#(JU_O!PS4Fn+`3g?SI0_6 zLmlw&e8c_udg=fIpY??cof!SSC!dt!Ofdmb7phY3PEB$0xz7Fkdh_PZ#zw8cyTsJ2 zvTL`sgbw>GJ_`?TdZZD>+e5{LUJ&RJkbKzV=ZB=j9fz3+1jQ6wtKjb4lb?#zmeo3* zJ(K=DslKm+SZevMuTKf^12aldvA3rWzohYOC_s;|>N7pOMeeqNT?~0qMX_=WeW@bBjuj=hoq~%MB>|cDH}Q(;)HJdra#3(Z}{0l>4UztdHhOxoW(U4MkZ5lnxtA` z`aS+>Gqc*?*|7uXYHnl5Hf@un@r!He3G(SKu)K5Uj-{m~Y7XTF_Y^zq+qVx@a{HDo z8DzhYm_|#?^6$<|#^Z}Ct_;;>M9pRd~@1ADk=(tI7TL;tm(@om0z2? zDDU`WBmS1igkw_B%E24TNy*8*C^A!=o@fLt>())3Z?SzA#IW_lgF`cw0qaOXo>2`q zSp`s2vP^I4viFgUas<@wU`-4IAgrvcphg1gyz^_zRUkap&n77hPRNtYi82X3()Zi% zZ6j2AICYSWaF@Ji$uWAuxhwlZsy5Qm#VK5K9~A1zJyld$S=ry;zn+2PHn+kn^gbaW zA*?c#9RRpUb-^7>wLLwHY9cn0@wqYwbN776U*XsC-kp;Ct@gs-HUq<>6`n0QT+F#L zv@2QctTdJ8TeTIbBnQeG&a!|1*!KN!T*&mHX?9d~Tmax}g5%a<=x z=08}8Mn*=W9AT>br%X)x2Yr{9mz^9Pr~a}ko>Z~4*MjW+kWFsmIC1z-9FQ2 zwwS3~#mvw=?7E)pd~o<7la&RboF2#tH85Lu`qt{{yZ7(Qp08&w-I_*Bt@N{Sb8#tp z{`}6(oA2MhkCQyFdGu&?b=cOc^2v#br}wSPkv=FV#~+w1fA!-FXLGjD-{0#t2i`3z zk|NTj+&Nwr@Zx?Wfl%&%v8f6Mc68)aydy3v`==@KfTt9$MU+Tqo*Wmap4qm2+9$qqC)C|xbq)$;}p?ctUt zvma7ZlC3UZEO3+0*9r4E2VI64!>UEZ#UnyPRp@3%+cxlh9~gLZq3Fnw zBMl7=r$q1D7l;L0R;;eP4iDdy*yKC+b0^OId@L~)bA0CaXd7KB8gY)Xn7DXXTU(V9 z6Q_i~PNv61&z9Bq){@6HH6Q6`$HZ(Q3d_rziNxqaImzOwumg}hqnx#OpgU0rjSq96~m zzkadN(XfSDw>{RTsdAAPdwry8EJ=F!-gredjBU8D`PxD|roj*UHKwZYo zwY9bNoa|LNbLMNnx()n+m?ilvW$eBcqa)zt&cWxc(nT`}XbIz4^5x)gR^L{9RgbiBz|?vpZz>@e%OXw`*gad7p93;Mo-wO68!d7;&Mf zP(Rlzl$UE+S+3?gAam&s(-Ym1GRdBDxfU9{j|h^ zX0m|UH9z*$(4NfM2Jq0FuuVas3@16by3}70Q@N44-$fv*uINIOzMG6-RNcR3FdnsA zms`=>_QHkXfq_)t%?B@kqfu;Diq`_tpkrY8n{{|ys4CiDN47yG-WP}Iz``QoK5pWD z%ov;r^>|`wVFu??@ccRCf?^w5LW}V2+qZ!Uz6}nRm6l4EzxCtF87))UbU!X`zLv)? z_iPzghXBFd!^8Rakw3qFk$em2_?ANE@gXce9!2l@4F^jw9&apA+i52Q-dK2#-~8e% zcr_7$KOL0um06#%F}5M;fb&_f*A5$Hsy-R+h|HD5 z^-L+(j_r-taz`1Z(7u?Mj;E)O9H~Nc0%j|{Z~lJj)H|g!SFbJrVrCnXlNGM@2U5hO zl#VwyHcYSh%WOMv@e3dn*Z%6?zgK0!>6x0r%QB_)oIR&r(nAw2+KX$&S3Qlj+y_gX`a4oHs!2^5*Gw zbWc|!X$eI&T{!ZIa&HO#Lew=B-Kz3)K($q&p@@+%`=)CL*dTF5s^hG5GLJOdtR14| zkut_$j)sSsG3ow4vCNiWyZT?*tVIxiUV9^f@K6KV$bWuTj)D;JpP&CP^tb;_`%8sv z_)rM2o_;{8u%N)7NI7ohR$9sz*oLT8uw?p_e+zm_(LwRsGY_c<509~=`gA@GqIIXd z)!ULH?fG-GC~l;Z{HiKPV%d^kZ5ddlyf7~WVGL;XJByt z`pW3+*|W=gMPlr&t=lX7{Ah1bt*4wRVQK=S<oBd0}A`gI+6Z+c6K8Tah6(FON)`2nMcx^u3d|AAb;l#t^u_D8&op% zi;q=M`Unb{@u^d%Ms$WhB>kNlIMPuIBESPE*zkQ7og`7#$v*l_o%K_k>ioPX^pOQg z(b$GfjEp3;3eSMkr%!k7o{iaiQYT5SI4zBO)e{8;KcBa@_KufSy87#Tv(oAp;n(^i zF_4IWvCw!pgWt?j#9e>q&Cf8cjvVs(Z95xu=9O#qDz})~ON;a8hx+@cf?Obt#%K;@ zPL6<5peTUwIm#Xu6MF)(j75(%m9pnE2wP)QQ-?`6u-yH9r#oGk>+0%&FaHikC_StB zm|_GJpf0%hdl@2v{MBFYIyySOe38e|q@|yotGxs2c}amX$NNvO!wgYk=bx^)xYOO; z9U8-YA8OF-mm3ig&2>?`WA~kY+?u>&`}S)SJu(5xEon!?EUSWJqNA6lYkBa6=L$_g z8NsqY;Y?VFA({Tn4!nkx_2N?Mow6@6*vjvcr!{(i2mt|$)_O-{ms z5LUgoW4#U}(DNUx3Lonv-CE7FZ_nGD*i`N@nVg@WPr7soVl&zwTCD7W13U*VngKm^ z=9{NPN4tJ|w=qNikn4{Y&{Y)QT?Y?R?jJ~fM^{(vfiD$)tB{B=HN$V;K6YnEXbMB5 zx+};yfbfqWKWJ!anRXmxF+U_DvxR4e?@;{~AD?B=Aes#uHiy1b^jW;kxt~}j*C7ZZ zws)^X&ojGuH5;1|e}Dg+llfMh!#{sA#jXj(<$EY-Mig=WK0kUOWhPBWZ`zxt1<2zV89zpI<}xtm(F@tmczrt1F|aU(%4v-cxZSyhVX&39Y8&)ncLCH3Gn^uRR0@}eWqFB zeHDI6XEkx;#tstE+Er_HcK9GNN-VoNE?%Dmt3I<6c}Gr-#QJTJ&iX6B-(t(ra@}eBXzM z?Btu4&`-Rkj=c*vo-JZfejlroIKez+>|)Dr&H|Ep=}X-7_uj4%My~3 zd;oa^TVQuo?^zA<^M*=MAG0^#tmF!GN~(3V?Jm1<%W>YlxCVPA>VSS6MQQnW8#tox z!qC>h7Jyzrv8j(bnwnOU@f$a8e_>qk=ynlX=8Yrgd^0F)~E$Qp)$7wwVE7O)bRP@QQ^qfRQt(2^6%~mc>PFtTS zmXziSuUU~~KgKF@+xmp&k+IQHzCcGu$6vpG>7*!@fom`A6^h!!LZ_%EI1Ze<_!qrk zuW@eW?(KV_46W*98Im6ya(S$s_*hSPYL`5>u29tawb#ILOj#f<91JV#pr&Ay* z?`msZO3aJ~i)c%w=e-rn4=m*Zuk78MgR>=%ZDnV-wz0`M8#^>Ia?<9*%*@O_QBfA6 zoSfXc4NMO(eC0lWr>;CNDCoaZ;+aP2WQ0CC3WC}n6cm)5)(73-h0|wQK0c~R-ZMNP z7vXpA_%8n5)B7MNJ-rPjnL^w02S-P*f&rjuynOxo^{ZFCFE8JCW07SwOg1dDgm88% zENr?0EN*HW$yPc+Wa$XqD4FaIeHPGvR>}IznKOzh%>$RNxVS)|#DsTSUUVxRnX$R$ z+W|``JI!24sRFvtSCEO!6kpQF@P`i{&}D#61IZ>gRlmV4+Q7_xTfDWkm5+rEr|h?~ z1ZN5|*%;>ZWpeu-0fBV6kRI~rDBx*nseB+yuqA5X)`t8R}5(3xmsgGL+|khJJ9jR33YWKn~=vNBO}ek4(!^Mk(8|jEatq2FuM!>r+}?iqgqEX=LQn zPN^tCFCKpjX@PDFE)X0PR0a}_m5NzGmkQ+!Qz}Yb@bKZ+_*ovZ8iv}fTt2?qYId@3 z6-;8c&V%k}c5q_!p>whj;X9d$&HZ!i_QFp@0fUbNh3jm&_f-^((%mi-&}7$iYir4? zxb4Hk!%+5W1V$b`66_dQ8%A#d%HoVLMx(iVSI^k^G5sEB)Q4SvOieV-;j2DkN&NU> zE5Df6Y*yZZKH~PHMTM88-%mGQa+kdP5=vxnaB%vu@VALhr;F`l5);S9$F&665@j5W zVHtV6&N~A{u;9G{`Z#s!A*{(zmZt>;KfaXAq#g<3WUPUfNli_S&Tt)G5Qzj>hHf%V zSHOXjg?_4`t9w#L9uuf;=oe+yj&)5Iad^7ALcb^iHM^-+@#@v9*_8FBLDg2;aS{WQ z6{|H$pm(u#)|BNc5+ir`Far%WQwY3yCnu+`PtF`J{d^U7-M)UTr|H3=C@mrLk}E+? z7sSn87C_OXOTGB@RT+d&h^P>DV7EZ6-5jb4&F{pC6SA_hvsa_=PkTsBCMG5+iat|{ zf9CC8!AJuN;WD0H8&pM}w>g>2r|13Rp2~m=hPTz06<@C%ggh`f!A-}9E;Tv18m{zP z-fyLpL?WlZGVbJuCfn1~Q&+c9#Gvgmcq1&ULK9IVBg#U8PYcwv9J(J>&*9P;Ip3vu z3>ym(i}d6Zv;DHNkjf!tR7)+8JNB}LLd~AxSs91T>yK!FoZQn-<7hspVOUE!!8^Km zVjJ?xsBp1K^A9@cQe_-EQ9j@d={`7k;^fJ#e1<1Zu2`wr3U2R)Dk+WGzxjNN`j)*o9FB_ z5s9g{mZT3#GZX=2_}1V5@D(F4CIG|cg?J%eUS&~^5%l5M*w-&#K6CC{k=msy$hKER z#MR9WvMcTmt{WV6WlOLn>JoT#s2MBJ8(0a1E0lLEA*iLZ-s{;Z_pNg49}TKYSFe`9 zmRvND39Ei}bw()I5(3GSk##NY*#;1rzF-1%+=EmB6gG}Yd~PNxA;Ak+PHtVl_`^3F z+@Q3>$W$gQCEdDxTa|8h;`3b2qh8E)z-H2LBzzM6)#noJk&i*tE(%JjEj8yc{#)Vm*Bylt_dO(}c50vs z$}J0#!YJma2Ea9@I)3(+C1OfUp2{{v+Zx1TC8oA~{aTil_2V2fJ>PG1z`J+v!Y(*{ z`ZJ_HQiZb%R-)(N!mTZPA3S&vNF1PuMM}PnR)zl|A($q5!qCtG=mkPmthIJ;F z#8kY%@Y;JpawP3$;ezw@(SWr-a8Pu3~pc(2q)|4MCR&*+GTZcL)b@lh?3-?7&!On<{ikbn> z^d48)1>*!q0g=K{fT(e+()EN%Tc15KDI}JCg%nzbnuOAGPhAkIGO85t#qB$HbdDdV zAn8-0#=gFasukwz72iUfTU=bkg38U!g_cDfa5pCAyn_S7(7)lReDRp|F^Mg#8UO?@ zCMG7V4+#EN%fSaQE;4mf_ycLEsS=wm6q?|_!+Oi6Q)0E{<>lbXPyt7-l>Gep6XS`J zFmGW&SsPgU2Qn`AuFEwPVI@NEg}1pw!HZ&dEqIqh5Cf^0o_pFJs?4huCt(Te1Qmqz z=i}407sct$uN$16(y2ZY%y{aVZDe8L<=Q(t9eSMX?d|i=mf0_YJ4ZKkE02mw@EO9C3cG!yG( zJgwjlag3clkW8Qh-We+UDV1Fbw(5H~4MK6!EuT8dswgZcVR64YN9T4!Mk!W^qwbRl0%AYJ1q}CF6k&`T;M2X@O0V zlUfB_1=XuzR>?LD4hdlhA{LtD(yP>2{{p_eas4{V^KNK-B+}IT%#{s6EI>zHP|40# z`0it;2f`FTTiTs(uC%ll)f!|GUQ7&n>;3zHws^reIH;s#E))e{GA1@wAdsG(Ui0|z z{fvXto}SJwS@q`nNPAgXSv@hYfbJ3lDd^+qZ;WB!U1(NGNoP>kyuG~@4lDkf*@W^q z-3jWiNJY&?;P4=)Gjnr1vW_Nz#u^$L`&?A*AV#8Sy8QaCu`~#p$;o(3PfyR+w>&gd z12q$VBg72UcpyEmK$ZYyO5OrU90)ceJzWZw9by(*Lw{a6R(e~eZUvYKIuc|;B+=S( zPKx6mqt2WKIQ#xS5~>Sdq&ie2z-`d3rHL1PQwz^PDdCJznDcPsHUv1FobnR7UO|j< zm0Jdwz?x;GtpcNZ|NcihQ+;*ydAPgt4tGH`g|y-xCQwt}ikc3xk2n;UjD2)!>HrQ1 zaDpI@`H2&j=gvvNhk-~1x&hDW?OUROK^w*Mw`-#%{fd1za0%*ZTKRX(G$@s5<ffrh&Zr3Ei4>`7_}VIKs|NlxVCn+ z`Hk=Rnjb&93zDWh<%Oa)1}*H<6N%{w)0C<#;a2DHfh{7HZ}Wb%|Qzwr3^#ZodJ zz<{(1lp1vtt=oK_5JVgR2^0_z&=Ay*k}HBzoGj~SzB3LxX4l5KgHM+}vn!#RyJ44PwSc_w6b)DYfqq0mO3X6orQxpnUhr%>3%^-{@bM5`0?NYmpj2Rf(xn1QpxE+CNkysh zLlbO#aH#F$M}2{2{>UHiLN^2PoD^o?Dd!p|ZFld^9VX%r91~Um#JkPqJvHImDLo?N z_|~O!$V-x68g9E89=;15;qM%vuRKv$NN5=K2zeL}SJxeYL}&&qM9yHR-qHnt1ppk> zV4O@wt1X}$1_pPJ;=TX*Q!{5~u#nY=4h(^pLhfpz&hyB7wzRiP%gHT5Z9u>bh#X}J z3?a|7_-$8ff^Oc%EgT#_`zn<7?=MVC1fv1UH|-n(+F1 zO=ji@=v0Rf9pVf8kfJ2cPQP0_A<(iLk^*d_l*GiG%*-w@BiNYxIT>G43>|+VF?snN zRRuuDgSxjJWk0`rN3%*_RRCy=7WAUD^h;CIJ_!jHXAUt@QTc0s9FHAC5-%t`TpNOo zl$6vtE35j3hOb}0?$(O)_t3uvoQlK%#0~vy`0C`oii+6St>q(t4!uYQ@v;DoK|}u7 z*~!5d9T(?`j2-$fECgtLsM}VY?f~4V>nJti;`u4Qi;yEG8KO7Rz*vk0JedVdcbM2t zQ9+>oAY*C7AE_rC4Uz|6-09c%Iz%t7>F7{$LI5gL-4Hac;*9mPr7=~|1HcJu<|NQ= zSOtz5_PHQ_f`LcadZam}d2rf&vUeX_=u`^;^+jmw2ta~%ATb3GtEa>zbMZND^p}^B zO&2D6ijk5*|GtQHEOMal21iWcTI4VlrKMTb-P?tD3Ir$acrDa2Rk~e5LKnLW2D;4s zkipQ@(dm6=w>d_0c4o#vBnFboK{s-AP|#5gjXI=?V8&sF+gV$?V*FuHBp zU(v0;vGG}9;i)n&nHbIR(9lzudC=d0+nx;9y-HJn;2l=1EQY?p!%KeJ^GwgglFVtcUv9PP?)HWro^IFx}cxFwVpiXbW&Qe>p%#f#+@Z>XsQ0LEB} zz#;e$bYlw%PAp8hE8pMe<2%>a(+Itx?*A*mLWc@BF+Of@8c;QWO%NPmM>F(M8nKFZ zval%gN1`MLGj96@W!qZ@RTvE^vkfD+2y7wOhAHCe?#>N!Q&Er-{DMHUnT}@u1xl?n zSNIzXkenr~e6F^G8IK=BoLWI>7i0zH0tiKX-@ZKEG_Gxz+}w8J2q9ILg(mQg=u%Pb z5I`mY7K?H;bai=re53(@uJ4qVpAV6{sj(6A8&o&E-dkS*3{&N2O|CMn&s6Mol#Qx` zQ4gF7uTn=#D|b&yv7l;(zMGpH3{(>9*&6`?RPkCuk?LR`O?7p9utv(6d>`S2pho$u zEFCfv!u_j!aSr8xq5aY0$71t-kblFIv-E_4fkgB?d2A9j1 zPnd^m2_+^b&MbJ(+C2c6|MK;#(ef3H6!M8^$q^B{%gpiu0##qXo;ha;Wfhg)hzF(0 zW4!x>&re%qb%5QCs1gzqetF6xQl3zsNkxg6oG$J3_SGcf(p1i?6TXmVe>gmRn$f=hg(rmZCL-L{OtVvh`IAe=q?|8 zaQ!-Up539thY``YHZMTbHmf&d0qqGG9tC&! z(m~Xa&xlC++B$<2+vFfcJb(EgTim!vZdq7e!oPoKjT+HR2I!{z+4AA?}*KO{Mh~H zm-wmy-azb|vOk2#i@Knx$9ZSxl)HByF2=>i){an2Aaax?I1<_!EV89^GcjFt^-A*| zh$xw}U8+J+I86j)77GP;?Xt^-1pc^OV$YsBu>9nv!Q$u$IfR#>11_fQ%v;FSB_5Pb z%=2xBDo<(9=0`w!rs@hY9kAD}9TgKP;FEq7XRyheO9c(xKw8XJ=qFRhyr7?@cg_3rEoLVud_EJZg%Ge5=4 zGPSUTjV^hU(b&18uB{FEz|hVv8_``Ioto2op!LB8oMJ5{v*sgVj*5zgC?X<)SX;YC z2PoF&u`*YWXtIKlw`#LUaTlwI?nohU}C<6>4J_!_?c*wOJ7i%Uz{T@HfGW0(Iv%wo1@NwR;V+UBXM}K7iU=whQnwnb2-Xz?y zV!zcD?B0>XS3?>2^2Hk|Pb7U1pb=D@Y=;1h8;yKRa0PAMn>UtFt#K-|;&lo2YCcIw zTCi{3ic~&3v)X6)UDp&^ySnm|n->KGw@cf$z{IEx-)>`NC3(I+8X@Tm=g%*%{GCL8 z4REopE>tJ8YCRReOInBJkInD9Gm*OXxh9cO(_K+!nhg)&~uP)7`+QET*&$SE`LHP_y zj6$aN0yV-RNBLXT++P3PLEbD?D<7uM>^b)Lp?O=JGQn3uuVanr5av&G93ZUxd`w6E z(DEVaKLkFVG|6en=U-$g_ z{}5$2cKY@7Dm!B|ohpsL^E}x>m`|Jc_C-&K*Fw%F6TJVpEf;o& zLau=jq_AsObzL1cc>%(K)-i3DZS3ff5fTc1V*z{Vh|1bU_#Z>p2IFlV{Y_!KQxO~e zwB3EqGH&8h7Kx$AM28O_mXIjGZ37H3=iIv0W2#@p!C?$@hnZ7?Ky9&h_AMrKG}pl} zPo3JvzMiO#+3ZKRY9c{9Zvc!ea`2$ZIf};sQLx_tGh8`v3}l3>jHfXF{$ng#wz#dX_y~sx z@na^5i#tQH=}=pO{*R8--%w(9(cN8^ee2o*Y*q0VP(key8YnL?q_&qHat*jh12%^B z9SY46zVWOxX2(=y8aM&+Vs@XNV$bbah&C|LPl<96g#q>flPS8;B4sPj^XGr&=1xxF zw*xE7f5Gmo3cGuHUSS%O%8S`T1(BMOl{H3)a(@2zSeNeXX?1u+u;r)6q3>eTBDlGt z*Kc+H$d@H06i?ZJtZe{cs~A<$E@|>sowXQ3^boipjA?6XQlN5iaS+?TnHG+nu`Q#n zh;FilKGL@{_~E9`%K~8K+rMdSA(xu!l0ZvG$4>AEtO`W$KfgUd2Z;gd(2BvX2bgTLNf7ko5)yRcK^;<|x2_=V zg?`cA(NQfi4%Wm-dk#HYm46y40t7O6>{2Voaxv?n#A_EvAgl@@-9pBBZPfP)3Aw(@)wj(JEVi)L6nQMu$Lh$6<*8 zpgsu4U~CLoou;Oy!)|1D9-au6EAH;FS*p4;w6)#b-9OaTsn9{(#3nerKYV$x!X45C z+U)M#nUoDPddTMCHbd3z-DJ`7Pz9@m^p#{F%#ORaQ`RvKdx>K-Coly8+K(Px|KMeW zk(t@}_wVfmu^0c{0YbT$E!9P7fLm=14eTq@cdh`+jR5zBBd1h9bfq*A0-wvJOP9cf z7rYfA{LIW8*U-3p=@LfR33z8>ItH0CBcmi1&&|s6Kik3+Mojg#%3RAB1Ic&cKBuFb0^U>hxB~6k^95T%X*fA~>oz7! zURIVc;7WZxAUh!OA#Ch}|8ei$J7QY|&R2f21^ z+uYCiw{Uv^)B|iXcbFVK69!!qpG8{U_f9E#QaWe`xJ94aMv7=%?sM(^T|OSSIKc89 zOe3FHHx2{SV*)}8f(z$ZY2uHV&TSs0@8l0f9wiCqD}GqZmd3lHeBb5n8-wI zt}p6++##0>+I^r?kieXsCl|j{kgI0KN8}M;S!$Q4E0sx55&A=@oKA&nsHxfD7Q*5p z-D$!7LPpcHK1toNHSH+2coB)$b8_}7MxDktnwlnb#y@+8uF}xhh>+vFS`ZQ9SwO|# zSe?wA`vQR=%yC*my_dPX>17iU#+t*d%ukL&0W9-dJv%!MQwXGUwvVzu7m!58r(tmV zoz>+VGsdQr*J3=AJc3(7Q9d`^2B!yWk?fi^JB7fl7Tc4;lFll5WKq+#_9atdbKEP1 zr=31MJr9NjNdpR)!$cyqUSwM9K%yMF)#owZ$K=IRvSn|nrUCs&eAN_-|i??HA-Ax8v9vx69ds6ct-kCTIvtM`tYwhfuDzNI1f z^U%^%hBtoxd>Yt5kZphm;>QvzgCe4_$9> zuW9DiP6)HuYq0`|BhQ_mmi7%g9>_4ZVA1g*G=L3`zkXeTiDqaBQi8I{wqwVG$Vk2z z&Aof~LVg&qmeI1X=!Z`{bmgk{UiFNR*cRxmNjSx$nIS1C_~?ypGiqq@4r*KfZ{Mr} zl&4M|Fn@U|6_7R4rWjXD_2#sS${R@TkYki^jn}VVM{P;yL}pNXX_iq2>A`td=Dvq= zlN-a0mdmX#Z`ryP`>ef-JVM3IA8jgM!hBJqKJ#$9`Rd9twp-s=&CAI-j2%={Q&XVh ze1ULcYwqj}t0?Q~?M+6kcX9Dsk{yyy_&O!W?t;bLNYCR9+c`L}24oqlO3TX7Xl_q7 zef^4VdmbJm4K<~ZDFA?cD%zc-Q{g#nb>c)MY(ChwSX3ARe@M6>y$~9eAYn?LnxVf} zXAL>6v$gd^c+-j&9nD+V?>foyq0QrYrpPEGZH0S}trzG|AZ+WY-#`$)@ZkZ-BM&#X zPKG}8id!slK8w=mo)8A+=5%#+QR3x#jgU|qC2v$fJO!>8Hl$)>C)Ummrrl7m_Uzf{ zd?FMiSW9b%qBk7H3f!;Q29O=>q4D7*5QPzGmXg{$SvEO7{(zFKd@JDye|QJe20qvC z?^)M~JzTHhiHS1wENo3HKu)y<=XNZD+sWGcQO{>+jeFQ{sSA=}c)%xRB~s+J#oyUl zLP#@1g1}C0Z5-opx}y}+d7#C96EEclMwX; z_+mE*L~k!b)M%jCGPfm&2=#iKj6HjdW`{cK>Q^$_F_1LaDAb#qo!_xDXX@9`agi8O zaa;Q0uqm?(G-HaU8&Y)$@|wCJk_y13F7EEe6P8$y*i)aX_kQSCq=4GDWffA2N+2a9 z1|2GpB>`l@_j>!7)`VNcnuCuL#UJ>L`vS^%`Ha6m0qq_!cQobvd?gs4Si=Pc5)hUI z*#OA3wY9NBAL18e2>t8_Ku1YB`6NZo%!BI>W9xzh zCtGM>(}jrb2ku}i@Y(HS@+GL`UQ_)PTfOKLkkXTE#>^aas1V)Fj?8OqZC&>#5Iw5+(UoepoU1cR=;}?n!rK_7#)1~4Y0ZeXcW`MH; z(m!8}7lFL%@$&)cyUfpxP(Hw3@x+Z!pGsg5lE^mp_FQai$PpjmWoh5LTjyK~=8(V% zSe9q6!P?8=iCnDH7Z;n=`-6FiLN6H)bxTx2;;v?f{k{Vk`d6pF9pwriCX=~XSoD_V zJL4^98*SO`lD1@fxplm3bP)dtoet;Lzq3A0YZ!J~yHxt+=B4NcC2SKD5;`WzfxHnT zmvq+SF)u6;xYMb6u(eMwKS!tT+ezoI)B#p2b03jqDDkIev7yl$vYY9PGYAKeo#EJF z(b}ESK1VkVd)3Gf+nB*Pp*oqIgCv+$_&}K#F=M)3l6y~m)ulGhTC3PAehfxtU z%U`9WoME-iyF5p1f%KvpxNQr4H6D6lsDaJOByJM~&QtE+$Fo7G1NE$}zoV~%MdwBG zCx@feL8s;FJ2LzIV_O^CfvMR0mrK4Ns0KTgvM@Kt-o1+;eU{tOB`Dq~3e)l-!NGVs zLf&JkA3uL8+P4dP=Ri_7%$F)Ql+QNg0v7D=*E7g|`pL1QSs30un5(C`ZK@t88=Iuf zhaK3rn3#ACd-^e)^1e$i5wjy7Vfo}Jo2=1sBCA{yq2-X^n(FGK$FKw8kUlR9Cl{9v z>?}TZF0MsTb`-SEwdICG!#lE;;G8X?N8yhGhK;YT+9uy>7C#E*Iu*sCMMkvRc_deya4`ynJ{)WSE`EiT6LB`uZZ6$ z|4E1VOu{Wg{z#hj>)|*s^sORx`J^zkMxp3UtP(K`b#s2pDO6cWN% zd$VUK^Y%}B((xf9|L)y8#GLvgGlRjbu)UYuDo)`_sc5S6>r#O4F_E;Hb3;QzHw$T1 zt{OW}e(WC~&+WO9o_@~NRhpa1VegPnx$@g`k6It7p$9XJiaPZ(*G%F=S`$19x!^c|!v6 zN><5pJC=jxi6|u)45CcfdDL;1Wa?mQWYmFR?^MLR=UpU_5&X}9zzhwBOGeF&T?9H6 zW;wbTipQd}7A#;WR#|>dxuf5oJ9PcT6M(RwYPOf#iyz_PNx|7;m+CKk&pacO>D;N^ zvyELduI*2w0t0FM{QNo!9TW_TC&{?;^E4cI0?@N(h7Q^}XAg~)(vuCYjUDNzuIcMr z#X)b-ZXy+ZA(wL4=Qnd5HBGr?c+D+u*{inim!5%I9(k^j)_jEw2MOgL4^mJ&(*>RS zEB2rH2gC9~91E{`VF$#@E?!(Q>OHE6eLFbMSFc~^ES_WDaj*prqR-9@eXJ)3C#R(Q z_k#~~WhsT@c~A+%TWTe8y==~Kg+ErTP9Q0h<1IVbFGDiuYlcZ>xa>O}%ml@TIsl;$ zXo7kT%=F+M{E>#n#+1kg*rO=N81C$RpcwXzdrp5_j}7>JtPvh1@BUu3Z_?iHKM~U@-BaD!v1bAo@QEJ&1^7x0`MR93}t_hiVDuSQ|{CYl4Ei58?v2IzLY6t zMewn6a0Dy4I4Crl3dd+-4TR4oJ$QgH;0)j-qN9kBsVs+@BP#*>DG?2)9m~aQ-~qqolKE##~fABSqM6nF`Tl`%?O!xq@A`;bLJIp3vp( zVZkO!P}~?+4gLuCc}WC|@aC~}JS;)AW3a2LY7m%6GlPvUaFvIW+}j6Ig~y?MDfii) zvJzM|fHu?L2Z`i@wRP430eEFgC%{6-fZ^tg3>_VF3k&y0)xFE)>GE`(ot`ei<}Z=z zi0ct&+D*D4C<7f0gBu^}#=cHK!|)4~ZP+Lakc8dFyIJ|(VJ~7+6FlNp4HZ76dDiT!j2a3HO3m09yi+K(mJ?f`4AY_C0s^ zi*1ja&}^Z{W7`-A1q%^rYw&dtaTt+!h@5lk1fG6{7%6HGF})R!N8@(yG=SfT9Y9kE z0Rq70n6sGjKkv zVrj0XH*ZvyH$6e)FUOV&YJ%GLmaG}g=!D&2l&9*pM1=JGw z4V_XiyPe|N=S$J0f>tteN>t(*CX0%ps^75d3Q+4inQVGI+ql-M5aJge=ya8_N?lN2 zSs8>(TrmoPOoS7C%+icu&L8&rEqvn*)&NXhnLOjwo~&64g+R6n>30VQ2k-kUEX4juysIb7t? zWi#mGl$=bf?fl(vx#s9a1uDNi%a}!o1Ew^e+!V56(y=-3?6qR<$jrTY#lsmu=7+O)M#lfpLG`4l1wFG zOV9P?6SMUFgtOj|1GUxm8MFb&&$G`aeIw4+QxSX}|3^cI1~0@Gn)0h&kx!MjND+o_Z{7L~XC`Zv^A6+T>*T2q1vN(B)P<9OmufV;)i5#Tb3zJFReLFsvf zFSEprHMn*xhd-$KH zNzUI=lp}D^2Vr}hSS*so@Sz0mZzP0otdfXSe>XA%k_ihwsxELXw}D;AIrA^+kbO4f zWw~^42UEzp^BXGFU@0PpjVwY-3ybDIWz%1LQlN%_=bzoGwt{YR)0fJYz!Y*04|(AT zLmN;1@7Mn#Zzmv{3aQrKp8jhxm92ziydx?b3tb?QFZw^BJ#!P>R_=(}flIuL>-#q& zn8XxPH8}lH_}|T#e@os%Xt0(nF=N6I+p_OqQiJGWEh$WSswiINkG$4b5>ruliI!9? zCQ!J4U;lUHeukWr1nd=0oslAhW3NiX(3O8XEB^B#&R`V{s+O1iPyb2E{R{#`)_=#u zy`ld7s--G^DqU;$dQF7v~F2^u7?h_rvr@{;9p4{no!PAearlAe`fb z>s$iB4VMql=VGNlm80x6xNTtTi)ZO~NlHF_^oT}e!@Tbnc6P^}XM2Q&>29UzfU7ZV z+_)h2bP*{8FcoQwDo|vURBYz(iTD14ZB}6!|F-I%;8G$ef{I5*w&FpI*hPvGP1zB# zyzKXP;sqdjb#1NR)*w6;OOPWh^@{&wJDM{dTsAg1IAf&W_uT0;ngpH-APsnjx}pS5 z)EZ?16oy}8EB16m#quA@TPROp=~Dr^L#3f4TTsoCr0qV!Yn*yvl4n+;ui#19dWjL4 zsz5LwDAv4G7!1M#J0SB-cENNnE|$Um0+ZzE=tnYXH4?e#Z|Jj6C>a#Ok_A@@gDbe2 zo!uyGPU-t#x42x#zVfeCRX5ZfJ=>Gkw%OwP2|`PMWF0p7$K{updb#}DtxkQ zvCa-m8G-EohpV@Ms&f0jKrsP9K~g|KknUDe#h^pF5s_3txb#1~7gJK^F{A{s)z-A%p!(TF(==T9T27al`l&SDX#Gik> z%ax@i?|c}hLs%m-y5KwlnLe;Rfiwi@6r`H4K?8mP#FtywKSMbM_nRMF5|WbMfSd&` z<`QlxG6c@fbBruXQOK`hq@Zm9L^PO;xR-W=PylG#*&V*;&Jq*fOL4YQp_65QvXyM1lwdg`eGUO-$*+Kk)Kmhc5@NxkGH#9sR^xmA-2mK_B zs6hPR`FW+&7@(HJq&)|T5DE4xb91)IT+bKO```%$NjoxX1JEA;JCCM-7tt4?8KzfLMUx13}y67^LvOxNROtoiV;2hSagAheO zWGPVN#FFx(fe(~}qNfUwmK9H)kdcsJdezU*zau6l-d})j3ve1>J@R-rIKq;F+!Uw@ z-ndqfaqjH_bq;9v*qE5nplTOoU}o+Bssk(psPMqS;`j`1R+dJ%vKcR!IBbI(mhTJ5 z#(@$58LwBx)u+N6z{r5P7b2MkvlXOI4W3~3*7O#dJ75QqrU0`=xdR$Gz=B2rw6Va8O+~%s`*Pg&a)kpo+`R9)q@{ z@}?vto|i_)0D1!i0MM;YiK#L$!8X>=Z{7r;8n7Bbc97jqjDW{CGjo@mJOJ0}{G^kasaxbMu^jVTg55Yn*5o; z3;P%&qY2>q00m$AYe5wEn)(1hBDi!znN$EyqCKIl!N!3GxD3EVSWN3+PkKTDtW5Bs$m6W-2e1@WnNSIt!DIp>r`$Rw4et!d`AeZ< z0a{9+zkh@GD6(&82-;4KDB!WE1}T9g;l#t`1AU~%9j%vak=gXgcW~;rH7O@ONY2N! zkF9@ofNZF36$|`YF6n|cf9c-4xJrYR^3)f%gi(e+!f$7 zi!dcd4Pt^7McfVRESb_sJ10pcAKagIqCAtH_0rV-*wE{gtc1;cRDFKa# zWGk?1cV2J z9pOccB=m4sar$72LHKa6z7;N+yD~uqBnf1h@71k`miG40o<3HU(0G6ga2i}P;>#Bi zx3hbRox@#ScM?AXn|&Q3ze9`RID9P35}++c#K-5}eO{=R1M>#lM8Hr7d2;_XtkA(I zTOdm>!UBW23Cvg+3k8&9mJ;~CU^gIZr_m|#Ao$<_4ggO!by=I4=>eu9%)uv6oCAfM zjZJnxytWnvafq54)cRa7_lU^JbML0X^3-s9mc8;zSV#z(B-=XNVALRwV+nq8fT6<9 z4>k&23BrOPxf75>|Dxxh1QH+~E+}t8;^NK#@(0S|zW5jO`fj%a4!a}GBhCJ208aKCy%T_^VE3K}VJ3n8B)*XO#_I|HUx zCr0vEP!P4#!44UO958R-L74m5F-%#7g;ubgX|WBpwqA-`0Y+As(uBvL&5i;`=|TDx z@Ejn2{BatvQs7WPF$4K*{UsA&57<9Pk9`0SAiH-D6uLla)OFRo>ahhnjBcedwk=wX3o z;69+Sugu>IZ298T|AoW_e4d({n*lmfwFrYuzA`%-uJPg$k%z7&VDtjrO_$KT;Upom z3hbU>2L+R6Zpz8Q0s3Z#AiaXh47MfMrRyT0(Ff0pgIya|E?_m6np~(_{F_FBI|02) zVpa_rf?MR|1$Q=`fThZ|Z@j09Oq6?51ZA3^HuPKo)g}O7rOB0<OfrqFl~icqh0N!yf1){ z7V`k((;7P$*A5V1AWV6i{(}ZYB3_|MpY8B-aB_Mq6Qjw~1GzUc(p#9UAG~yYTFPKTj3^-!^^8I#r!%ZLGZYkF`5WC z)PP*!Qkuw1D3S<_@!*7nJSC>&-~YbkuK{}kYGCFUs6nuVhAW5N-A`ZOm;(40z{5oc z?lq9V+1M1rW**c6G9GBHd;T5#_cfDF(0^fE5~(4_fpt7{iNu7FqfvTY3M5>J{6Tkf zq>c}j&)PsXalEV;#-)G&irULGbmzawjy63vY6Y$^B-l5DTIP0-m6!-)K3~a%>}-mFVzE`(NEG zK_K(w31$1gZ}w@ksf+?F^=3g!eP)piNf)+@NJ-GCS&q!V*P`i4J^Xs*0tCyDoGCq| zf;I`5We=$xcXW5x0=odza-zn-qJg>{K^6JG*PxLmS<=;MfZzm-XqQ?OtEjB0K?%42&1^7K-q-K2fC^dGfV%|6+aXONe8QX;XBw0?tKAv-(~Q= z_oW0%OE4gVDMoc^0RiqXX$mVF8xxSs!@isc&DyD5$Rh5F!WIXvjtoI9K*v-9R!?Z# zC9Mdg`l8EF8A5%V)(4*3u2AzqbBZK3< zX!3NO5i}-%r*Kykwml%006P>T8HNt72=V7K0|ZPS_GIc15L$vbP#7}QnlTM(HSp9? zQ32A^BLoN^LV#lhm?*do_pJai@!pr2fHpK98NmOcVF@J?hYaz*o52*&cNNIdZ}&NW z!6U$L%gV{2!NtJyy-o!}6m2anAlOWdj{~qX0LnPvEhZ*fym|A<0uJHn7UW0~)NFt;_i`|L& zP*64c(;gW#O;)BIMvS`e$FbBZiPI(zJeMwUV^(}~UTSoEZy>&}bJ{vJp~ep1<5h|7 zPRF6utknT!mZZZ{jZw#=*yj?@W{One&vnN$qNCkT7kt|mqC}si_K=o3N>AyPVlCaX z+tljoN~29vdVcMyS4xc*BVNaitH|UlCn(C2_Zk-k6wajww?uv#iu1;}UPzIVF7wSzz1_;TAc1#bs#m_%LFks4>UW-1B`a>~!!6&%NIBQ}tftg7 z0}%YRCJni1?X)xb)lejFFX9g{xbxRurFyYweDVD|F2;hgG7tXTiK^!}O?zt;Kb^E} z+C9?8s1nJ1Z88LIx_oPUdz-+Al;-zXoYEQ!;MFI=lDD-`{O`&d9{vH)yu_ z#GRITX{GGYeyXxW#QwE(@~_mw(QYrNF6#qwwma3d?d^ucV~*rwa=gen2{oOr=NKXT z`=p0>c`M_t>9Ij6NJ**)p4s@B%2V_^E-wS7ZfLL&Q9l0o1{6(@iG$t^w4qIrr>CdD z*#w{yfXg$pY^W9>cXwz62VX~_1hAN4bx!YFf$8OL{rEl@55S-s=jgwC#{;D;uy%p& zVDxLn^!;%O>i%E3T&MdHYGds7V!v70FY?(rvb~ z;sG)%9LgcJVG)svbadC(hIZ?}?haa~Ysw`eaG5GdV~S8e7#{k!zWMW8I&Sc+*+g6H zhql$4`H5~U;Z>@1rO^wa39I(U{rB_>tqv|iYxH7Qzc*}3wdI4(rMCZp&|MZyJOUqhg_;_V1HFUmBhlXuEeysZ#m zJ|Zj;tKG5E>8&Ru%zw-2CHf?(daaq4CjQk?OF_EzkQ$G<2qC9Mq5THC|JRh5dw|hQ zq&O~qcSoj4R;}{?T%B;rbV})*2{vshIzJ!2;2JY+rWt5S$xb$~r|c&!{9aEzmJ-6*=-uqsi3=rrWXRN6|2xy7JE+z2 zwmpVAf4BL}{i4?mTS4#mu&7eQB$?k%{@fT&n%hXrL^>UI6y{8z-&bYr8!lab`iO&b&LD5Wx`J0<< zyMsa0nO|-?w#d@6YRxz=uy{x#t4UiOT;S7xTF5C+-BLGE?>(c{5j$Kfc@I%~s#818 zc^BmTfgV$ajT zqoW{sy~Kt9Ca*&mzT^`&G+dMAFpdE#cVai#jsV9S1YAd|ZP&a+^|(;^%%e5V2FVso z+*0peedwJgs;J%LqIqDm{jw?I$E-`u{f6NE`a_K5J8Zv;xO4A{x|SIj5J+Xyw5zw2 z7vYLx#3!0fbor|H<$XL1y?(kGUfmhG{0CzrUR_fxdPesyCSon0xonDwF;~IH${?5A zG^K^ctU_IZN<~PL2&l`)6Sqqzn0ViX%1W2L?eoD%&U`l$==06~SV8c4`(D?Hr{*#> z;uPww(8iE`bq=tr#bhHanhWF>g?L4vCkz4F!;3Ig`Z)Ez(=jejv5f z!D)C}i_`tL1XZ&IOl_dp?V#+>6x&m?+;i9~>_SsAjCftCFCIs^A1G|^b8K>pZP~&W z#pZrA%xpa69rTPIi|va~ku^yvA4E1TO2Mn4%sMt}n}vEMI%9)J0$#+=Z?WlYmwyy; z?xu1yFgR{#xlY|?IQctg!#V5K7YcOyZ)(yn!ymjKa+{npwv=V-8|iTxRH{-goi}W( zbd(Ci^Bs}%yzOi&r(63{r^|ZcpzKv_E(ia9XR8ET>>wmhDVC`VIFw7|!mJLFFOuZ< zt_cjYCj@yv%J&Yyr^{$>ciax$BHc?4DLQgeYmU&K{ry2Y%jL~RATHPXz-@~d+%zM@ z&GQWEgMhe}A+wQjw`~_?mQ-8}>jO$Q%t}^PHa+KxF}A2&Q%r*Nbb5AmWfJ22wY7~O zZ}0Yvyk^9!T^DZ5lnbiIq8jAR@Uh;NG@r6oEB*6M{s|&jfu?KHI&=BeJ-Sdbo4;=k z*R+IwHwZEiX;ml?Mm`-h80(7lLYG}}w_v?hPSwW#6vJRs#OK27Tu}+L(2kOWj4x_s z9a^fX8c{tgzl&9Fy6tuBh{>@wW3$)Ts+Pzr$hZC|>FISOYuM>VCyuLSk(MIKFUO1 z6ZH}QzDO<@Z@(9oBKbz(-KU9JM~9ZzBthL)w!M#aUyyd1?0Zjsq~RO;X&-cE9f_n= z9jQh)eCW-!4z7+TSIEDj?=jX;mfxH3F4yRMcSz|1 z`F9F~3jV-d_BSGOxAnxSDS2j5|I6I%SfaUC3l!K$m-AOc`7dP#9&8>(f9@l0bkst~ z+f;&KYGIx%q)`AHrm3Z@t$E^77ew8EqWjvANYn?#rNTxK6L5lg7lTI;-@o7?Rz89h zXSv}=Q9+#0ovA0C^435TL~plR<_j7knoqJanzE|`Yq^mi)y~` z0;g(QeocF?VWT>g$MsyLWh!zjp*nN-vs10HK~uIG<|ADyf|*CueZM@+1^EVT%3k|5 zdO>Pb<>>n~8AwGPS@@IKWEQnY#8vscn=8BH?t#jURaDkC`+_C*I=iuhumQ6}fF~Cf zj|+`0*+tvz!I$=3Dc-U?vF6vg_P%0maA{HhPf6&irZ7qcTae7sjt%yZbf#y#dH z>n6p|JLxy><=i(;QF@#8QemJLMXS66FZQNW_cLgB%)qjnVmx(C;uKvrPnlj7iZv12 zovF$^tcMSbV(IBm8n^W@jMs|Z+)dk+vzD=Gb2xIPfA%I%%vbFlz2cj` zKr8zfVL4=`tHz?jk2;vXzu{uAvg1ywg4e#8EZ>kM3 z*cNVL^g?2CS%FdIw_v!gYv}%vKaNb{R$=OtY-WsO+}dViaewyrOCJId-GWc4Da#VY z6aCtw$cUN9>`6MhPTl$+Wdpkw${lV;J?z$Zt~=fzepbX2Nkl}2{T$>F3S^&q<2@Ww;g(`nn=h>Pql;+9`6#n?MZp&#f!7hHS|on%yV#wl~MEk zJ+EJ2HNV-H%kuT)V0}14tS4aWcc-Aif=gnN7$yPN3d*}%LP`?f{bIoIBIlAK@6%|g zDNE8~WvhbWrLJjbv?(yXb&7`wZt)<;Xn2brP^ihHTB|RJz zMTg?0oB#Xd?dh6UOt}dp^o-0yv#z@@R-$dNtRrRK&(U{UX;k*EbQ6}N?l)YU4x3Wx z@S@Ida26L>ANLdsjXa+@?lyN(U0Ex0pct;Rv1D>TdaO4(uEGi@6{YhPWvI)<2X7zp z6(;2E=VW0};f4AVOLf&Wuo%&&7k$r(6XWK6t%S)DE&UxmCr&ryq(wJx?1HFDN`#&XBs`h%kk{z5cQD9d@m*@#4OjvL=Da1S>Z$r!lF)zn*MlDuSqe=bnK-jnP;d zFTZ@_ulO9MMBa^ZvotI(SD~%xdo1RMWHPbj92hT7=(sDI?s4s|Xt?DzX$LpoCLUb| zui!q;OF4EZs?_;$bae<(Y;HRrmTqTjm*ol&jekN0>9Tlh z9Lgz;Yu$|b?Od_aC@C8{LcS?`hzAR6v(I~>%5Od`dnYiiI6;_@iiVl_VZlgYFBe{{ za^F*P&PR!Q`r5ALqBL|xYRDjI^i!n01V(ZUG9U%XhBJ8rqU%6HneM7+w^ihg-CyE;qyOX}=X^iuCp zcaCG@%-=h(t8l9sIlU-|f20@|qHMG9Wp0%agX*shp4f*NDKzLMv3ad4nOcxbxfO}p?AovFpf)hZYVB> zjiF_Vh;d=3*BQqOhoZ@Xw9(zYuivTcuHn14w{A4dG)#*`_!oivINhjFc;dQ5+cv(D z21=;YeA@+~H~V`%#%bbxHR8R1{Vfj;y-}eE|IpK#jd$dB1}-VcL~$8=?b{j_BC8H^ zDQPd81VnW9tGMSAYu<3ZLvu@0%GmD@9%hLQc#kW(T2?s9?0B()H6FSYH<r)jQP&#fY4Qv^F?%l=K&@;Bk!Wj3qdN|EdD zBw2HUsSts}vjHX4kr;x8&nXa|PHt5H#w zwL1CUftG4D!HtH@$m?nLn`5leLGEcodAtLy!5b@eR<_BcBwX?2v`tMIR4*Px1z|J} zajs9QXGCW_U_5TH#`bvnmg5D9It99&G0!WAwP|W+7m)@x;{`Qj@8$A_RhNce74nOUf4`P+95v%W!9pJpuyPoxz|tJKW^Wqws0%XZ&k|{~>sp9l2H~P* zjVSj$;i{gtzeD^%i_hp>cB8GLqQ2iICYteL`ekaLk4=Ts7ZN)@ zGyRmUhQ_dVSaG^G8~FtOzC1DezuO`do9D9AEQSsFsDn3V(l4-)xPGk_0-Ubb;PI-I zdYdD8@3h+BVK~X9F4`aB<;-@*&7zs-TZ3ef0Qu#OGX(rJI_Z1EACynA^LmfJu-7W! zcG1E8-p%m>CuT{Rj`t~5-t}!#Qc_OK9buT;Zi*hcBSk!IwqBz3DKI<2 z?cTD~gXxuT%Qn(k{XeDpZHQU1YreD*Ee9&y{~DNGutko6-ooP82dE;T9JsVq z3OO5hP;}hkWUp3ZQhg(uWtEg~{(X}vSA6w-!=DOYe(#)Hq_@>lnYO)kKkuu*L*RP( z*o?scqJ2`W5V%e);q%+qso0MxyMAKt7N(#onf)ks8y;eKN)kwfQ-(X@_@iRXwSH#~ zy=7h-Z=77N&FhjTeXSNm07qT|nXI4w?XRqxF4Tx9*+8h2Os9f$PD>3vJl~$&xkMm8 z^m8a<0~YgV+eF1_Gr8?o4InHwnn%;yWTHMP`QEtH@~t%FP+2^srpm&mLNF4H&l&ky zyb`zC#TD)S#s#(1s>y5Y+sG$nAyL1JOJc8YDhlDaJLIThAi^ysXWiEvoI{3Lo+()U zP5vHkF}o119HphRbRSs~93HW7AA43fFoGx&*XKGMp-YqgfTpYc8AgF{$rF{r3s=d8 zhss`0eI60L-g``$Ft@*-N=tjo1C5GCT%zG!VU!zc=v1Pf^%qvK`R zcc+t?roD6^E!Q$e1Cvfuvs|ng_apArv7&iHMDdSd$B9i+GDu&{bcGu;dI^{2Yf$@T zIUA?<-E=><5r*eajk0TIo{MWg!G14#{pwhQ_U}$H3@U??TgRw6otcIA3x|}B@fbnv*dl@6yFOoAH za}z+U^B-;sg*iF*sa^~Y=~q@7nvLoAXID1UQJPj3Jq!`mb9N@u#p)O@>~Nf5x*AO* z-N8Y*tM>`h3j#rK^dw`V5Ga}(){4++x^ zKDv}BO{@-u9Z0FIl|L5`3(xKQeJ#k1*SLDkw7(+8Tm*v(>09vZkc|sYu-lRtjk#@J z$(M!trJ)$!TKiGG%)mO{Fahe#pmX%RbV;`S9K19mI(GFm(lQq2rJ0A_yca9arYkQk zhbe)628<49Fb^G{Xn~%>+MetS(A>h6(G1qtwrBmzc{#uSjGN!Qrg=u3h8p7~IOWvWgp<<`<8fPQgwW^|24e1qOIGBTbbFy~FFHM&P z{VqCgdL*q4)qhxideL#Ox-?f2rDnlv_I4$=5+fOjc%d#~($y`OQ9wEY-$9{7-XNfCQbiBih^)w@mp{`I3P0VKvq_HIEZ z4Juq}#P1gDd`7h9c`F18`I(X{9O*w9a#d?$oju#PL1T(5f#kV=cGEu{c$b3*7jtv9z#dK{DqhEnizG4#ER#Bcb;L z>fdyIh{IBls}tR|tG34ekKCycNW5=9>AR>AJ~pHo0hH0-*K9x3K4uo9!h>vILG}FQ zd0A(!Qwitl7(QcI^ZDs8Ys{%T;n!E$X=mH(>G@MkGei#S6Q7CiOd37YN!Af|K%%8b zz&Zm6=cVfNSnoKhf+)IcC-e8QB~J|0cc&HKxeAZe>Vb`3SANp++6?;3Bzcj3@8oM) z>2xHqb|+eobxv;#e~NwVMl5q`Eu5j;;YZAgK_y{{DVj-h#@Es5Wp1WEg(Ye0ojGIv zd~i-2%a5b{D!Zn1Uhq8eH~#wwTm^<=y4NkdX%w$j1?@4YXohMu)5LT3^Rji;)YxQ8 z#xKiKhwS|0tz=B@#ic}nphNEbG)ab+Z~tx=tIh{2IQwW3>h z?}Fl8ky>dk=%K{1!oU=xm%{t!w@$D#m5^#VX$(lbP$hS)zFrePIPQu%0GWwAv2c{E zXubrY00n~tyU6aZ>WyE3E~e&b(9aNsO}I`A=l(T6AS|$u_TFnbJ$!5B1sSdgx@cK} zoes*I;o+L?v|6>DnN3yo@}Nqm?0uyt)Q&H`78*H^JYyK7thow`sPr#G|2ozahXNeO_k% zCh7qri90WIM`s$-O6^6!=hQ2Z-z zprPzNilPWyg@xku%lWbTxVE0HM2S+Jp(>J{YS?S;8sh$W_ON`E9bL~U-SigqYmJ)? zgXvD1_;jH&$Imbr!EN3Mg&YIg@0mK15WCWTFzQv{Q|g&`6GE`1eDts?a6LC`^a0{t z*PW_4qpapvq!!qDX=iu8q*;u!wg0x7Dv>x}LW9+RqbC~pQM4KyvPQ+>VNZOd0 zAOm`U*orEmS?BYRgdyp-dN!ccRx)W8bx=xk^Lbc;hbq}Kt6L$m`U0a=2pII$a^ylx zuM_5w&0k{`qR;q7VQ&kXH6y)9qBS-vR!d~#LN)VaaXg-Kb1MhXz)~U5!Ae_RTR|@# zg4bA?nkp#L0*c*}n@e+igY+5$M4MIA9-QnQ>P&eP?Fk=faN+!kJZRPejRqL=Q9_P| z%}T#@{i7+4&GH_LsKzPMjX9UCo6n-E(|%7z#i-C!Z>JZgN``1{xfl3_V(v>yzm$#6 z`5~&KMwRcX>fu&lk9R|mT5`&g)>o^o+}O>NTd4fIPHVQ``C+?N`@3k`!fZ~$!^wej zLtZRbKQ>RBRmR#((FA4c+;0qbMK^zbQ>OAFOu?CWF}386Gs(WRGY`$L=Q`Wldd)wX zd=;o0uH$*BrJprk1^;1YFdS7`i`CfY3vr&!N&S(z{@3%fbzS=NlZObkJT}4tOWLx( zl2Vee6=cd)Xj1GK3$13s6rUkdYNGAUMLEBtSy_(4UQM)~#%SnD7YX{Nq!?N#CP#aG zqrQJHY-(us`OwEG(PUf<4ljk*Y3i*?`1)6)f7{pO`-gp`dZR zXttUN=T&_e&ej}_34s3VOZ5>#c73E=my(>ckr=?_j8dpfAIFERjJba9k=E1V)qJp* zR1zzPN71k^`C3Cd?Z@=2xp|{Lj0b^>I+n6zBc?)dr^pwPYnGo#D%^g4d@cP_H z#PBg3dE(kl^u;rtgSVQA3ezHqD9vb*T*SOTpEx0S#V5HOJ&<4ugV?}OwW(GyAIGb1 zsGU+If`Dk@%vxGO4be?!(4XOK(x_c!{RZ0J-?l0tm{B1lssE;*mrow&Px;!!q$WYT z$0yQVren=B^}9Zwi}*p;HMllQS@XfbYNSuA%XsTq5%F$dV#r6V#&Sm(p@=6=$We~X zMs=vHO_7;5wFR??!=NYE?0HhLF`k);1k~~#Wq&{$A>=DQyFV*f!A=?;v-7?b3yWPlH}{N_MSr);FS6iHhkLlH%IwH5cNK1u;YX;w8zvHr z^&EfOiU_W`P7u}H&b;{nr)(!PBjxvpGc5w08pA&&_#V=OCVypkIT#*0-_?ss{o&)h z8rPOo^Iz(ZR88`=EfB9YrOnjLCGv3ewgi%JKC2|qHlRjJ_9$rZQmQ9VjlE1@X=t*h-BpYLww}6*- zJWg`m<`)K{e`-j%sTSYBFml4#XJ}Vov*PG=zs)XV<>}K4i$=|DuF_?vC^zrY5>-s; zylDzSGk!~+GUnGuE!YL(|Z&?277qeE;lu0idi{3sRkli2H zye2cK#Y+0)p;YndV0TFkS9Jbc5xQE2c;r`dHs3cZh_ntV2@rwzG}xiM69%>%M#0uR?oD z0-B6(%RGVZ%q_}N1BZq}Nr$mB_*#Rg*NH5bP<)M3L$-(q4>x}HN~qE`v7*wAwozBy zO^xH$i6GMt{amw>`<7ME<_n(+Y9BAvh@^YS97wFj)FP81qmd;ZM zAm`=`YHd6o&?=WumgTNl-?=ZLS^X?7w8O@-Q1fwFU8HBnmjQnCAUbw!+O9T(;gNeb zw==s{pn-|WT{wAOC9a|LPQ(t;u%inxZ^ZcyCpmdkSKw?;T%$S`r`J`+a2_e^Ay)U9 zO5-(X;T!Z5MPAjf+GHe2imy-9VvT z_4xq$!wG3iM=d+QH=JkbJL%*Z4myZh{hkO>1H9mvC=lm5Ek1Zq{o$GPC?gY}wzlCkqH-4_zkTIKBVvaRTFdI{fD2GFCDp^2dwm;Q7tKh%=Jttj8 z$!!0?eSN}FOR?qR(H8#*em&mEv!?{t+ZWmVKKZ=NB`RUF9U81CW>d}{tS&2UN)tIS z${iTYE&1F53N+?H^30$9)R_-HCn0`Z$HSmHb-Z|7U0(h{*}wXw$mWw1NjeaWMRO;+ zaa$YGN$X!6o1>g;{@{#}Y6+DVm*;IUM|9smZxjnt~ zT&2Joq2y9XLscX@4T2$mDlD;D978WXflGk=q^;EGQAZz1nDWp`O88bYdy-hsg*|%b2WJW(!MeT;@vn8y1;JL%!t-BHraEy440)!jp-skKetK zIcQjW?Kw<+w|k_`LSKkm>9lI%DPB+IM!zqKe)`At5Br3-)@18M5_4$~^7l)pP^Z++ zGk%}*%Shh$|J{`R=;!Q-s}QUEanmzMT7X=Nfn&f_>lOBX%;B>>-KWRL^X>Ceizf2{ zCR_Q&itZ<*C{f<@f?7TuO1I#m`OuDuQ@qf&QdOKwFOB&r*3 zMTtOQK*{0fk>5)GbQOrR@t4oj>MdK746Ar$Y^;WS_0_0*LURR`)DInH1MP$>c}s1C ziskz|I~cX=siPj1<)u2ETu*w9cA*N6fI&gsQ$OB@rXzoTOe?53QIJ>b?pPvqev7Zerwu%;x`b#Sak7A$Uf-IQIQ{vb%#rh~>@Ctp zUSMnF4>5;n`8Mvf4Xb(Tg~?hbZ1yHt5-y|oyRg_t_RF?!p~^oIU7m7OMF8&5Rp4e1iXYH++B$D%^HJ}u z>#UZ5_@)K~rUnIW;c4J+17|KSfV=9YR`EcQEIZqFr#)lL&apGmYw}Xmz2h zcqQo=`rx%~t9|)=aGo7%AnQ4v{Y3!jr5a~?(nANX~Sd{BKTWF%Z>=@Thm-G-Kf#NmAA)vbbIQFU8&F+j+|Mhl91YuoK-^s zGakv5`t!kDLru-tC*kCe67cUAE+pkd79iDoo77Rk?eumVqTDH3~BVZZ_V8 z{tRr9xC$3*6L6Z4R^WF<(~yVkE5`idd0R`u?mW2&->y@*qlhLjOc? zu@OFDX9%UcB{$`N<`U4(l;G*Aud0U}5E`k`Jb6ytv_!&0XqF*kQugM+T8mtU*ri(L zM4!65PDho^;&k#|5YFUjLxQgB(%(7Mp^WV-y6&Dj%hsp)I8*t$A3dwfdh%ZO-H5Gq zKAC{9`>UjAW2+5M;@#2azwAGL2*dK)_ z3UpZ8;5z(7KmU=t;;gN%UJj=p1c{uqj*O7Fn_NLl!i0%Co&Q~xVL$v<%cHl)Y__Nn zxK%I1L-y%A-1k;Aw9Bh@dt6-}5nHDSJYu(RTB16&)9}8jIw9Wea(K-$srJ|RT%F`p zwVZ^=?z@AVD55g#W(JjO`0sWGQIy@uGWoHLFn>OdWCYcY_UaAb?Ph4G`e*Fr^cK*pxFWQQPGx1_B zgHlZN>`qC>n0sc0t+)RBhrZZ{+SPILNYSn0epnUEw%c0sr)$W}JerD35Kr0v!smKgd}@4WsOI)=$YNXHXPGgA+O!_J(F&=| z?k5pD+HuN<6k+#8nj57e_CpdyHn(2o*cx+CHKuDConE+h$R->_ZRZsrW0n@*k}#o$ zl(ot)<}0;Vy@O~%X2@0Ce%o7f4wy<_I2Nz9Jtv5ivMm3*DO1C3_3bdlvA8FgQ!gg3 zSWA;8O(s2M!Wol_eC~;5{Npc6%Wv4^cZ?e86K!Y!%AE5s%j{cJgvKjJgew;1u!A`=Bp z->u!*ZxE{7O5mFiK+VWdAqdWc0 z42rNlKrpyfei#z`ib;2a!mN7nci8!^xMzqozH0w;wK+$1fho`ON+9Kn8ggTBcKBBP z@#R3LO>XgUW}eIe#skFTAfH`St!;p|*Po7}hV~%$Cnb>?+As2B*1d1v{6$yIb{Klp zt508UXJ?inr}x&%wOp&eE*A5_4YP@yGZz~!5~@_+1k}4R*)m`K3v0hGH(!#iRR`GS z`t7!{=}+R7?$RK{Q%)Y&@Mo?cF+wPL&r)5mT7bA(BfpincNKcGe66gwwXf2YmK{Sc_p*juXwtpA#(gTiQpTV?EoB0e_mEOvD~|>l zbeMt@%}ACeCif#ZXOuN=>`h01?a)_HIiuEeQB0uXegNAb&*f&wlM#c?AFXKU^gCwI zyvG}n&Krak?Os*!)yLZ9p^B=8oAvY-8|s99YGC0BDl=`Rs(YwXF5Z|T=&g{}MbqI6m+`kYRPVpHv|SWVaD_%F*GA0Tw8woQs#c?a zNS2=-iFjLtNyUp}oqJ7}oA~|0W=4g5B5q2)(pG%@S0t%M{*w6ms#a@Xyt7N~5kmhV z+mUHU!$RWCjY(veyEIuq{lR2yWM9vanr3#FGmBeiP?lO9%2f(B3z3-T7<&FMY;Up1 zK3?WIlX<53NK|}(B8PtJ??+c>gglFi!Q^EioGM8?G5e~zv}n+M8nyJM807d z?va_6qVtg!ST3^^oNjT83bDD` z>o(AG^^vNXrNlw~f@n~w?Ntr4f}EYQ4(WH0{qdKgqIX#L4v>=FnY!6@d6@;y6UI)@ z2Qu>o9u}=1W&OEU3EOTAz95UPG1tBMrO-sTve;<5uG#H`bEaasw81)$+X=EK`YEvf zwB^WECaMo1Zi-s4SN`~0syDGa=%(zpn$z&>Vxcx6o7I7Og{E>0=d@#h@1()yjvIJRy_)#Jf{A1`AETsCBEeq+^@j z#Dmiu9l8&j+KyDTyAwE3Mz@DmsP)h-hBzPcm+~pEkc?nO*zq41CFN@3-|iyvpU99c z-r40v4%{H)BX+CKJ#TM91p9?a1zK9%Q|4VgYY`Gd@6g-5xykz-1dwn#CCJkLJKa>~ zGWY7tns2p~P@>E)uYJ=->DjBx12uYGTA|&&iOesUAkj$Am*XI4k z-}nEWv(EaTv(8@MdRJeuhi5;}{oMC;U-xzG%$!?c>P)I}(Y(cd?B|fP(aG#@=h8j4 z{?OLA%rQ0bYH=j(^{c$bXVI;CT!ee&*&FQcWvR)ezIYcHZ*%nVm$EyW_q7W9c|>=e z@*#Njk)^Ou zPTZfYop6-{=eFHLJesMJZf;Iu?nd@&&04!R2{e>#x1(u-wh$T}2=Ul^MK0f@Zh1Am zC{~ND#l2c*%+;#L$GSq|s#<(el$m8@b23<@@7imE`|m&J72o%Ct)sbVJN)qA%naL3 z0z&QyeVHfwPhV$j*6L~yw(op>O25->v5(ECil$@o+h~5wqo|a?t9xE1RVhTOXudB^ z%}mU7ez%l%r}psoq2CcQx2*KFE-i)?ED~N;h3=&Hj^zpoSsJFVE6KS(#r8hb2piDe zDZg`6M=;ENV(CV-2Y2R3gFo$eaWkjE1`icYSqEmZ(92JT+Yg7H{kbrcxqbU9=ZA+) zhMT3l+U==@qD!2oG&bp2&Mm!LeE#CM%^#&7P1lRG44oqVPC4hOHqH0!Md`0hQb@>E zs7Ehv-#~GO4u!)RJ0;1=>=BmvpL6C17_oF$&wsBK`$M^=_*{mzhxwSt>9NG1N}_gD z=B7K%MJap@DM#Jn2o5WM)c;C$WimGf?5s& zr|rIIz9073FDEE@z1-2RTU5-%*N{Hpwqz)c1gECXcu}#i)~O|9sYfx@=@-m@o#x{i?i@Ng(lC^{tdlZu>Xd0*i7LaR zbIXgraG$-`JWSKX8PZ_IH^?nffO1hE%Kgn=i##IZ5iAzD4v(e= z`=#C$rC@T1BN+ zER<8(+v38STU9~@Ui>=kG!>A!ypnyF>2b217~$T@AChO&4n=P_EDNM!MaELp(thMo ze*2XF!(VMPvsEdlUN1a3N-L;J;}-WP?T4Mdq=vzldk2~5Is&DB$J0>uU#0M=$r@=( zP9+B^+i3A$%RldA-}Ph2m=rAMdL=f`TXk0`c-h;JGswQ~earhLx3?-+Po&hiM5H?f z&E?p;#eI0~s6e1X<>4XAeacyVA>$rx3|ERZlR(TMWs38|$*F~JO^*CnmoK`!9>)Yr z_#c0LkJORzbKX!DDG95u?Lm0J&JV=8kKctS#= z#VuQsHlNcgbF?u!(daOxaZNyiyTj$_w{vzT`M1?x1(oa?TN#U2?yRZ2miNh{Q4Dto zeaHgRKe20rqYhoR9x0zRY{ZQd7N^5QT^ii`^kz&09Sr*pS*4&n7C75DkN{WE9E!>&Jbj zW1M@C6#{GO97yl0rZQeiN^)E=@rj{g-K1k>NWIZr$6bb_a@@al!Hy9HSB=YfUg=O_ z|0Ff5?7j0;se{d=fgew6YXq8K#JT+DbF9xY&Stx1<)!7TZ%#K=tSVPTr=MI}S;y|! z#8`daN`KJf{O?IV#f6*5376e-WDc|TW+v;5x92VmJXbwLIFDGJMptlCb72QAHlLc> z2(fpAlp;-LX&vD`5)LtSLwy#hZ-+{gy{lALw4b(CI`{H2L@Q8rpZ|GeXTJF_<8-MH z*eOtQYM;HKgt~eoIh*3SeU6;r)I~)Pcj=;CbILi4R_~P}9icL?_Okfv@&q?a_jQ)M zR9|viM2VfKjum1q#3l;lu?=-;xy?wLQ|&c3JK5Y!q~%(9@N)CYeQUG*1{y*cMrjvP zvR$dtg?XZ#Unp?}4OUie`t=$mUe;x`@Q}J~+gp0Y4X9^hwvQ~2F<*MH>&9*8-ekk93x^Z2sT+3nbN|GBWD8x?C*dcsQgZXuhL z@E;p!REsCuuPdbjcUl-0jeDCpdCyF~^;~qJv5b9r z_h=S>qWQ|0c1v?J^br>KQNle!I*%qzTnG`rhw za`;PL84k#zNV4%=wa9ZHPcP2Wr3Ca-iMQia2NlFQS4Ui=GNo%`x2jpG(wfU@?;W>D zRk7^QPik45JyE;e>LY{eWd7n$X_RT1N8{2qcz^38ouRVX^SNLweDvjLUX8_(EAB&@ zA)*2(smw)YZ`}AZ>jp8N%j2EWt)B*C0V{3hQx#c}n&&n@$b75YBl0_CM*q;}5I(EZ z-^OD{8Iw$6Q%%bD4=5IghxSxHrI8ujK~09pUzL|!mULCNoedp$WonVy>hL}ER4n_} zFV13l9Rb2jD%W-(`@0aWy{^-OcYtSZPVL$!Q?|J8nrU(&m)W+x&V8hPOFXeB%mWhL zl)rgeGctRl&mD0){BrbbP_zWkcK77L@DFx2PSo zr#Wk`n2swftk6Af5KK4xg}XFEx}-K1#+tpQjzLa!&o$I2IYaG4g85&l-khUbb zd1N`5R&O7(^34gq;-@WbdZ~Y0J1Xh?CChk*?PcNj$#10vOHRct>%t3wcRiOJ8F-hY zzO-=rW_l?(Z>e&1$W5EbYa0F{b*|NZWNP!EzrK6WY)X-1xC#yq!bNvsniW8O2lX=$H+GqD*06*a$0#u5VMvTK3r?6zF# z9?a6>zFqkGY5>j|o4w}3VBqM@0oS~Xlf8*=B8|h{6=lWBn%M+xu6FlZ&U8c@zf#oj z-Z)>n;zj$x(ZShr_-cTv+oN|wTfLOpe&<)9rluuq+;4g6^^&0Z7tIewJ7W`jaux1$ zXcKAWiUM6md7k>q=<$z#(^?XCEwT{C#8K9yMYe8jaooz~0rAIEG&4)zXO6}H*M3Cs zVz)|potB_7CyV!D%MGz6$Mh`)a~+1Ct)Hn`?At}3=6J3=e|^nu%<%ou4f9!7RCHfK-zS>F(Ebus)$`OENZ zfrRSk$0`j!)0m$s~& zj$6%a_&JhZPrG?>r3!E)X?D0*4RJQ328w8&6jV&O#as6w$vNuvO>>7?Q(tb@w zu#DWgneK6VeuiPzex&A)!?P#kEfWg#=ca7EXlm{3$5sk516o$1RaHN+u~p7Y1_dmq z-mU1wpRcI98uuRQ|Lne3g0X4A^ywc^-h>EKN#}LwN3VC7w7nSehN{0NnJY0$VqNmP zKPZ+%{P|vYYNzhr*GYP%=JhuzELLjk7ows&eiUDb>*Nru>7{$ z_eu9?&821WnTA{WWOR}H#@-6M(>6;i3A}&rhXf~iFsTSp2KjKMnp>w$>8Sck4)$pQ z*8ah@+ab5@fO5Qy+}>?8%TMaD#O#ceGZUx~xNKyDR^ zV6lS$QFT)bCp?bYz-!mZmw`Gwg`CTKij&YR zhKCHa^`K)2$_I(ryxkHVFQup5Oo&KLada=qQgLdfil&&-IND{z2C*ukSm z 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


v-E#N98pwm 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 d_?NmSiNH@@H(gqdwi8b Warning: Could not resolve keysym XF86CameraAccessEnable -> Warning: Could not resolve keysym XF86CameraAccessDisable -> Warning: Could not resolve keysym XF86CameraAccessToggle -> Warning: Could not resolve keysym XF86NextElement -> Warning: Could not resolve keysym XF86PreviousElement -> Warning: Could not resolve keysym XF86AutopilotEngageToggle -> Warning: Could not resolve keysym XF86MarkWaypoint -> Warning: Could not resolve keysym XF86Sos -> Warning: Could not resolve keysym XF86NavChart -> Warning: Could not resolve keysym XF86FishingChart -> Warning: Could not resolve keysym XF86SingleRangeRadar -> Warning: Could not resolve keysym XF86DualRangeRadar -> Warning: Could not resolve keysym XF86RadarOverlay -> Warning: Could not resolve keysym XF86TraditionalSonar -> Warning: Could not resolve keysym XF86ClearvuSonar -> Warning: Could not resolve keysym XF86SidevuSonar -> Warning: Could not resolve keysym XF86NavInfo -Errors from xkbcomp are not fatal to the X server -The XKEYBOARD keymap compiler (xkbcomp) reports: -> Warning: Could not resolve keysym XF86CameraAccessEnable -> Warning: Could not resolve keysym XF86CameraAccessDisable -> Warning: Could not resolve keysym XF86CameraAccessToggle -> Warning: Could not resolve keysym XF86NextElement -> Warning: Could not resolve keysym XF86PreviousElement -> Warning: Could not resolve keysym XF86AutopilotEngageToggle -> Warning: Could not resolve keysym XF86MarkWaypoint -> Warning: Could not resolve keysym XF86Sos -> Warning: Could not resolve keysym XF86NavChart -> Warning: Could not resolve keysym XF86FishingChart -> Warning: Could not resolve keysym XF86SingleRangeRadar -> Warning: Could not resolve keysym XF86DualRangeRadar -> Warning: Could not resolve keysym XF86RadarOverlay -> Warning: Could not resolve keysym XF86TraditionalSonar -> Warning: Could not resolve keysym XF86ClearvuSonar -> Warning: Could not resolve keysym XF86SidevuSonar -> Warning: Could not resolve keysym XF86NavInfo -Errors from xkbcomp are not fatal to the X server -The XKEYBOARD keymap compiler (xkbcomp) reports: -> Warning: Could not resolve keysym XF86CameraAccessEnable -> Warning: Could not resolve keysym XF86CameraAccessDisable -> Warning: Could not resolve keysym XF86CameraAccessToggle -> Warning: Could not resolve keysym XF86NextElement -> Warning: Could not resolve keysym XF86PreviousElement -> Warning: Could not resolve keysym XF86AutopilotEngageToggle -> Warning: Could not resolve keysym XF86MarkWaypoint -> Warning: Could not resolve keysym XF86Sos -> Warning: Could not resolve keysym XF86NavChart -> Warning: Could not resolve keysym XF86FishingChart -> Warning: Could not resolve keysym XF86SingleRangeRadar -> Warning: Could not resolve keysym XF86DualRangeRadar -> Warning: Could not resolve keysym XF86RadarOverlay -> Warning: Could not resolve keysym XF86TraditionalSonar -> Warning: Could not resolve keysym XF86ClearvuSonar -> Warning: Could not resolve keysym XF86SidevuSonar -> Warning: Could not resolve keysym XF86NavInfo -Errors from xkbcomp are not fatal to the X server diff --git a/delivery/nextcloud-explicit-adoption/evidence/native-vm-smokes.log b/delivery/nextcloud-explicit-adoption/evidence/native-vm-smokes.log deleted file mode 100644 index 9827faa8..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/native-vm-smokes.log +++ /dev/null @@ -1,6 +0,0 @@ -could not load cursor 'dnd-move' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-none' -could not load cursor 'dnd-move' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-none' diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/.busymark-html-export.json deleted file mode 100644 index 929ebec9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/.busymark-html-export.json +++ /dev/null @@ -1 +0,0 @@ -{"owner":"BusyMark HTML export","version":1,"kind":"assets","files":{"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png":"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a","b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png":"b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd","c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png":"c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d","b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg":"b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e","b565a6bcc734884e93f754d9bed8a45e196dc124ec370a66a24aaa0fc1a1d8cd.svg":"b565a6bcc734884e93f754d9bed8a45e196dc124ec370a66a24aaa0fc1a1d8cd","c23fbc6f37566397cb25ac17047b20a2ff6039cfdda4d284443c966f4156ae0b.svg":"c23fbc6f37566397cb25ac17047b20a2ff6039cfdda4d284443c966f4156ae0b"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png deleted file mode 100644 index 59266b6a4861f1ec4ad5175c518b5db3e93dfc6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8126 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/263c38a91bb224683bf0bf491749c1d49b1ede4096047cf7c0de72a236825eb6.svg b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/263c38a91bb224683bf0bf491749c1d49b1ede4096047cf7c0de72a236825eb6.svg deleted file mode 100644 index a251a38b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/263c38a91bb224683bf0bf491749c1d49b1ede4096047cf7c0de72a236825eb6.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/415512507417b44334457993dc30ee752e9d5846cac2e2162bccbbb31744093e.svg b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/415512507417b44334457993dc30ee752e9d5846cac2e2162bccbbb31744093e.svg deleted file mode 100644 index 38253699..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/415512507417b44334457993dc30ee752e9d5846cac2e2162bccbbb31744093e.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/9f7edb574746d2ebfcb68eb3825b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/9f7edb574746d2ebfcb68eb3825b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg deleted file mode 100644 index a547aa0a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/9f7edb574746d2ebfcb68eb3825b3ec347b6bb61e34ffd5ce0bb1566e566633d.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png deleted file mode 100644 index b69f50189d2e28fd0696393cdf0213835ebf83d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10479 zcmeI2XHXPhx9&$k9FQcS5|kk$NX`-kL81gv$w81XWF&_H1Qd`gnIUJ%NCsyJ5+vs^ z1j%8@X=X^n9RBZzQ>W_ITj!kn<$kzUSMToX?!CHq_v)%=J-;2UrJ+PhOh*g=07zAo z6|<}+Gkt*#*0-$P1)5-?D|>Q> zM(XDJ_z#FCC~FelxGIxUvawAmmoRbC6@DAYelH&vsl0Jr&Cxr=FQh&Yqw=G*vhK&c zm8|cuC;RTOl&|b?rohPE)t;Ev2m6Vpk9l_x9 zxdJuZ8TM%PpghLymAOsx<^IH=*u3+vn1KyLczl|K>xAsJ3)2`I>9f(%QDNbU@rl#$ zygJlLYr6Q+=4}|_y4j=_c0FadD%;n8i8-Sc+DBTZGRK0jTSq&Ay{%_m!&yz&7f@a- zQga>3VjNFn0LNhwvLIQR>wxQRT^#LWq`?=Wou`#E$ zu^B~w!l4F4w?17V9|YkQVuft=~XQ=h6>ARw-J^Re&5m1fZGt``$KaRDV|ej zf32U7Pal5PkvKCpb`|PeA5L5}+UT-c7(?fniJ<*RPdB^I) zehWbd#e8523toBY_XBj;;}LVCqb_#h4!?-ynL=oKS%IG^nmOd2gp5cN-5l6gp&({* z(+tuA=J-;E$O9MR8L8#BG6`}h}(>D>ZqJ5iodN z0IZo`XHYO_3rXsyQz*#?rE-urC^e^*o^I?&U1qrA^5!wShF<*D9~SRi`B<64tE;v9%bvjQdw691ajHtZIDJ?o|)ENah6A=+f)y|HBKG?!zAQ}jL zQmwmkt4$>p%QFv|HN^wFT2tWDj5Dw)%4>ziN;zmeikf_ru>0X;`?Bfak3Cw91omgv zEX*jTY8im0BY#5twdaMQK9l9p`3Lke4_I{{>X$MXz(y=!ou@2pM^;=-bcS*SwxoG#=wnJgX2QjtV~p=sDVHet$g z@>{8?O{EN7#DUOm39P#^GiAvBSLQyWz;AuIkpzW&X_eRaw!c(^zz_LwZV_(%ira;izox!)S1nkx{ z*-jTjpPZLe@-2gU!U(G??)oIz+x0=!dreLeGHZ-zRAR#JfaM>^-5D48F)b2{3U(vF z6TR|{z*j?$hSon_`nT0clD~dCtzZbfgECm%Dt-GY zgQayMRTvw1`DOiqFZ4JMEFwC`@ua`l>K^fPTfpWx|y?&_Mq1Rw*f`U#F#W`10j`PM%+x$Tn8D$~(z z9I$4CDw>$~?;D+tKztJkrjZiwo2qsjycGl@)=(9#%o`Aj*e$QrHoc7N`xUaUa_1vW23w88X;*St7gjL!REYr}A=1eFgCbpq3}cjjVh9DbRIJfYJ4 zaXINQFi{&G1BqR)*U#_bGc)lQsrVr!3i6NLtelNIcrP9Q8)2;eCt;t3UqU9esmWKl z+DgFb6(?_x$uUOi*Y14pEzIa5VUvnz;DH!*F&#)#qyz$Gcc6vvfUpplpjuc zX=wXUN&w0uEzcif@tIl-FGcT%M*%y5$VzfGm+`GO?Rv4!Iu$17V%x_UHcdwTOQBVb z4IX1f|J(VNh#BK+(Rzfg=kwXpuTMMxo!_cGbYduW9}ITd)2o#MH2R2DgVDr^wRL4_ zlxIL;p4s0etnN+wTF7kDOfp-FdJt!B=Pfg47S|+Gn$+Ik>7VhuY|*dBvMQfnxA+Z%s2(mb zzLpigSR2?idF#!Cg3^aAQX)>Tsn!HdS9WQc_RUh&4bl$0Y|HW;W21}Yq(nS)toYsr zcct{5rs$-f9?0m&tGxb`+pQC^;GaJK>O1yiB$^#HCD|sy#&k9K2o5H2xT7y{zEmf6 z*a$xH3%&@Uu>ngKLo8{f&C3>|#nHsCk1k6&}sCA%}%$Rb&FT41T2s!At2`$-OF3Fg`T$E!ZL7${Ae!bXY-=+j;h&46*Cq(|ropW$qlIZjGFe9DH-XOL3c>T`hv?4Wv}^TVT2;gVeM*p|tU37(3dacTSTKN%x+|!&d~LdO=nK z9U7XSa>yVgbvc9bpA z!8+4YWRE!flH(Hy%H*tUBi z@Wad!dDRPxGjR_>A*xA5B}MQIOG~(r&LjezsY;f38@{R#7T5mD!ovD_7bR#MX0!Mj4%#YH_)iuSz4t-kOt?CFkT zj@EZcIi5bVA6`XveZQLFg}oF|@Sbl>=Mne45*~G4d4-<)k^i|D&bZ-a*B9I3yTrEOX9C%3d>(_uOXg- zotwc$j~i-|eo6lDIzzm6FNt<%qpu;f78D`rFbl8A2cn|bQwP?U|G2+rx0np>e3Lk~ zAs&eR{jzX)fA!GCjSK4Wa7903FjGQIq|3XE7v8LIJ~YdK14)i|!;P!V2Q{{5Z8`s> zD+Ue%lzS7Jgv`TAdM$<`e~vgL5D1FyzrUO>EoxBETFi!o+p;;Zsrif! zN4*+m`US+EASY#xPO4!?w<;YWUp|9-^(-Vp^Qj}JK8z*Xe}HV{mx>Av)*p3`HXz{s zY)H;{e%tzpY7J&K3$~pGcsH7Dd03m;{E3#ix?cQsD%&&38Qp6JK3;PF=|pgSlvp3` zH#%KOSxqp9fsk0BTP5Fet;!PP(q}qgWnL_!HpV?x$i3Qi+<-`v&Y~`LdKpR?A>i^r zZR#NBryqGLljj(YWLfx!9yh&irAZAKwJm~g98*zHr0FEf-_!7#Q%QC^b!~=ATiXij$q>A+CEsWC4CB%l#nRd z+0pbzH2hF_0)o8hX>=)cZUw*DYHNVIpY-Y!$$WLA{WWEs^{iW1ObqwzUoyXcz2uqa zkoyG;^9N~Y$y~gdwdm81v?n`#D=J@<1|6sVBbzNLsd;_DMXJd#x zdw7#~8j3Wv^D-kaP|I(cF9y=iETF(+?F+SX%=hba!^Dr%0eG#N(0Ml~}4}T1n9_ zo{Q2Kb>oPS7su)&w4Le?94PS21XBxXNxr-ZZa2fS&)q%rfo*&B0eQ4;jac}<6$k=^}a+kZEbC9UQ_th^+QuX?T1L85DIyc+Ycfv3vgip_yc z`_Gnm7mqpG?3Z)~eaH_h4mR1ANEykz@Wk=1rknyE3?6gHG3d+{HYKCJ#;tP1@jfSU z#ZIvN%*ZVIi3zD5Ts@US?MW>_h*4?ARpZEa6MxK$MXe#1#FH!&GS?cd?tFF(YNHbq z-mn_iwhe<|ZYsY^nLSjwyyGYqIvdv~aK=4nc_kVW*EGn-qret6d?C z5!hLi+|9Ppx{5f$Tnayc%B2CgvS@#z%r`ZY+J~^$d{AOlJD&0EpC(wfXpI{((}t82$Uw%)HqJ1$74BxXn)-HlW#k{yte|Ev zt-W#70f?!G6IJuZ_#SZX5aNlq9}>NLA8s;^oTm-SV04H zM(I}Peth-g^-*_cxqkcs7~ox9hgqGA4u0g`etxg*^0{KHgJjmFF#+6T^MGjZ*i~-! zN~7i~*6N(E&1dn)ZLeGIZN%9N4NjV2J=bAv!>h*4rlB^?Sq%ZOb2;=S-a_Rs`yf-k zGQ8`j3J`OO-eMQ$z2Z9^%5JQ`59*jIAp4%+Yn*5h=B&2e>DK&oG0Ur(baMOVZW*T& zLrlP@P;LCp_k#ywIfMpJK%ez=6+HoeK1*DHO1-Ze+tNR)`g!mx2Z>;mRdzZvZv9sf+s&;R@$(=wWQA@!*C zttPQ_B`0jOhwclp1Nm{i|9oZr=IJZ6UE!v?oL2B*!Sg6=$o9IO9eC=h;Y45sC{!CoWwX;w+kisBA>jSa*pOyOX;6ooH*n(4| zlc)jT$YTlUmj9}En4P9K@nnBix&D6H=nGGB*|bdQfO0*b%#Bu1eg=&^D=_#nCG%lz zfYO#`a_Yt$M}$_*|&1o*dn0e zp4Zrkv|Ff=q_i)J51cejHKVz;@4&!xxaB8a3p+HMru|GqU45F~IQLaTbJwF;meh)F zd%o3K#_fIa01JuevUgBn6z+GG$DhoHD94mJY&|yh00TScR&X%3*5>%=nd!k*?7H<; zE6Z*(;nCijBd*C`4VxK^rWPFuvE6$ljSFACuFSzHIO2$wX1!CA8!yOWov#TqYA;Ke zej=6SNm8z_XeyQ;g=C|%ubjT0w893|4mGEUSVwp~+R<~ggtIDBpEN$z4Zk&vK%5Z3<%hg}N*irYS zm5hh;GSk-cG9A}RKSF|${M)EXzX?0j*`}n7%3ngK`x6NKffuj}4A(;N-BCC;Ajn7c zf?|8I<0a<%4n09;!WGq^eDHwwt>b0?i!)tp1( zdrv3Mj#iZh);2%!GY40JT5A--mUq2_+xdBJwA1IOx)tJsRwohc@yMa;nQA|hWD0Y= z#*gcL!#67IJ|MW=Ij`MJ@BaP!sE0KOBg<;NcX-oEjh##{g0!}Josidn&~)Im;F1xq zu8WdV4>`=lDHM$%3|?l)95#qqU&R)y(o@?=5ck$o$woRDzOau0$;jI z69#uj-aMCOMAxzB&01>c*u*wb#7An!g3h~unN&`iS9`G-hf=&qL<=Kuo@xA@X8bgt z0*-uOICD|xq96?k4t4W8!roU$rfc4bXUL&o&L4Vy8ZQ6X9i;uzK4!#>Upx&8RhkE> zhr#*jqSSJ8bN#LPX$cwI%S>S}#7ELY^b& zvsvsR{#pF=4kV|bpn#@PsoJHUCYDc=kJAR*6WK>1X*xi`SReId1CY2aZ!r&Y`vp24)SL91_YK6|tb3L?Le5L752C zkhJb?ZJh;Z6rJ$JRlEW+5h`xpsYx5$m^^MT`%e`&LVrF)$wZjsXB|!l`NYZ8-y6AfwAypb ze8Wc4UhC+HnFe5A$qJ_qES~?tSebaf!fOgjO0L@zJvYYYwv7XJB{(f@`y7UV zi^+LGY;9+iyuG1RRs)Si$(CQW{Es56rL+7#&Z3KC6P=>nc+73iuQAp*zpJye0NiBd z^~r_uw4l+?=fvsW&9`jqTs1SK&RgPmEoPcg?@D{jtLGnU%vA;5{6LYd>q&;)r{&!D z`nE-rbvAY!peaKi0cx#etm?nE|c;QK9l$LgJ@~E4#~w1rF_gaFKsRL}ZmIHP3*wt@von z3Yu@iY47`@d8BS!)B}8fX`yCvU%Om$oT0eXbA*ZQd<-RM&NPu&;E{-S)tQFqG=WKJ zX9_B|wlCm*P%8_=gsE0>NDiEgFIa zx1hnvO}{hu-hbf!cF*qY?#!9znRCuQv*&rgHcCfJnUsi*2nPp;R8>V$7Y7F~4f`DQ zhyZ)d^M5~zy%E@`D=Xq){vQ9pN|SMLXgyUGU+eqk93TR9^c@SfjzL_Rhq1(Y<|XzMoAeNy)P}iMit+th$Tk9OAbzsoJ^uG z8~-@z^}*;F|Ni?)-I~zq;reYj;8N|{ox8$pYFL{GRYAvuf_P4P5Z$^|$7vhm z6N>*s>zYarW30mLDVPFefdH8Sc{Cpy zant&ol@;cFY4dIN;wQddB-S$Cbm=N$O(WlmhZSojI@MHvC)MLNivH{8p#msj z-Mv&qX@A`|MEL4|-7mj}{y!Mbw2Q)vj67@l8e>8F^-X?nQPQniPm(@WO!S#==j*;ZD-^YGM+UK(zIY5&J%ffHfF zRoskQ+-Ih>HOkrnA^gVLb#=IrLpFNT{(1We6I|}(@2f@oNa^CCpBc;7Zi|UUMa@e& ztZ=Lv7NVl)L)rY;d6IJ_9ZM2FqSicF-7kzUwez1i2VFHWFB?^Fr$V6jJ~P^wv*UrT zdx4n=^>3T%srvgqdgkDe{t{rNlWu$wU_ak+CqD+~u|w7c+jeC3eIvyE zy^0PenQ?8c8u#G}@D(|L^)&a#5qxwZ3Ov@k1bMWR6l%|WH4!wl@Bv?6yx#IFZTNR; zl#)psjTEFgHW$Cgt#Yp0v`$&^uwJQX`D-`EsM_d_(S0305#}C4hXRkjSMn4^i=mp?EPAKtai~9KK!DHADoU~_O`}mVA8(qfL${vx?b_Y&%gkQu*yXW zTnT$+kPy(p?XAs9GbyDkMaQ`=QZ&7aku#LGBXWtyJX- z7P7m&Kb=qj?asa-Q+Z8?UQfof(}T{y1`M`SDzqZ;15a&h@WMOtMjA?w|KxPh<77>& zn4F6akXM#`M#?5hH~&UU{866BJ{l#Wo?!6XBO5yxZ6q^$ekwe&<%nisA>%k5dn4Qm z!`uzMM4B5&2h=YIKtgImrv|-_+;ULkw)(9%^VMABJL~2ovS4%3iJaMkWy_wBKnYV> z`%aze{RY%LtWr$hg!X)mj3`~h?waNwi!Sz`i#w^5Y(q&;H!xl(rK6=eC>EL2yU(5qWR4?X`2;`6jWfRC8F- z^S0q*7^=>?j=l<)f50H|0veZVS_=nSi-t-dHOy>ey4bg4y!}iG2YyZ;lT~v$u4x>8 zbmqtl)fISP6p@4;ZTm>$@52#GtL$+=i&yHs3KdSk?}2*!!5n)ol0gKG*B;%Y6qHUq&PjQs)6g{&$RqC_|ve_XnU*|i}^7; zMo4c{2pdpQ{H9Xxu3lv)JG28tp+uiqqPjnLghTlZdy+%Sy$SkAU%2fn3U2~>Go|Yh zpX&W4K%d(oPlHpYm3gudlgtQGvzD@QIeejzCf<7$@7uA8yo)@Rszq`Qd;1NtoSc6= z&2d{3EIR3hGR`9Ch(OHbl-TOu^`)d5x(VpII%~+rTO(C76Z;mWGTFUNE|&i}>=f`$ zZXV*=T&Kr|M0lKM4Rfa7m!OFjntSOii7s2@>u+q~$|Iqs>J#G>*GBUcO(gnBt_9&mKj#-zr~zTbg) zF|(}{*34+yR%F)-mehKxQ%DURP(jN=&#ypw23sA#u-E^zFioub%SNd4WZn|c%lm$v zyf_vLjexl1pqHs(bh{|`MG@##a{ZG-R`RcJj8+V5Fev{eM!6Uo9Tb~;0dUM}`KNrcU7OWgn z=|h#wS7E7=sqZTot-YA*(5Jr_EzHltF~7j;Fv`cNGcSr@%~1t`%4PqS7ZLq!F>5y8y+1E z$zM+<&$v-+mTK6TQwEGJPdgL@4Wml_vF?y{Or7)%@z;dt>lQj zI9XU(>`G4b_vDsp-TU|6gR#I51^bA)*7*F|4g~wP)G9^ zYeeH7dDvC8{@yFY=se3BQ=BTWEp;O}V{=Hcx#n#;TO4S#53>bNvyaw5Fl=U2gU3IHrm{**J^7b>p=k& zY&v~uV_btqA}@78gvTxxUq|SJW(V?a*pxtxJGylPHVMpXQz>P!h`@(h&#LcV z5quRPRNL!EoTo=Tji*9gdiq1skrp*aO$g^Z(g|w9Zp7MsFh@I;?+zI?uoG$qej#nl z`ob%q$=_vxGF>|Lq1M!+=jmF%B9kW>_nm>I{J*?MI@RI1JMYkG@Ac(#%C+0=uTmO& zAn(43ddtSIXq=1$TIJ-g{rcd(*<^nF_T1Ev1P4rKymPFdcJqh3;ZV85qYi|V{~<{g!k&7LmBVN>-gMPu}HV1{&>efl$3t% z`w!o7C`{RZ-BK{nP+AukbGQ~h(Uo}~=0vZ3$Vc0}uGp#zh@&7T^~Q)syR#3@jJCsJ+-u*qKPRZdG$|!pC4zqDb=m38d{lp*=y9+ zF9KQ5^x|}EmRqKgC}Fkq+L>l4Q}FCMlyk~_RhG8frsfIJ*ZbTjO60dxw|8G7a*@oB z5D8tvDjvVjw+-Wq#?umax>xeqjUHc2T~@7y5~5$~#9-j!gUwgmQVqc6V@PZpnEN5pY$NxG%bAjPz5Q7a#EPT|H$RYOYiJP)dq zg!uwAp|&vZDL!n)P9ABuw|qy4px@Ve(O24@*9(+VA6fJwVUb%_JTka8;mN`r54Jpr zhn~ZO2HOI*71w?F3LP~LM7bAA?SvL~OBRA(0iUH0?Sq@NxokKcMashP@SQ>4QKV{P zEMR$xWoX@L%`9yepf8!L z?Fc2Yak~TlZ&$xRGaq*8Oq5eeHfpTR_5Yw(*?V6%(0r^c?IPqk@TSjTbJ8GuF!gvj zzbRfl1+GH7Q7MYb1V-5S}mIHh0^?x55DTn^*GZT|hEgOq`TH2^b>J zpXT5&#rQzdoLOq7vIs!;9w@qT+o)WZ#`%J`5hS6{7fI57Ec@HA&wKRO)UA++Hgn6g z#@?FBW1P$gyS0s@RVQ9(#t}V83N6muXH&_P3Qfs8?Y1PW(lzuTm?%^GLEh4%y@YF` z^{g(SOKc{MI+2z%EU0brG5@h7biX}vfP#D#H&ebXXeAzBoiA)nrd@>OvQqgXCJN;@ z(l>@&4e0u9=LHU3_R7kJHgcA%d^UiI;DrWL9WrR06=tk|0Cp$2mW;h)0g*rD*{sv|fvjO2*s%dzYUmF-- zl#N_&OW&25uOlXeQT{q}Rx% zB@V)hnjRY1m&|#_N(PoYZT>W$O#XRQwLQ^}PO-Mh9T)GX1?KbZ;>#$Nq8s{P-!*BX z{9K0tmLN(KY1;zCdOyF2QmeC$%^sn|qf6H_*eg~!{WheY`f+?k2jD7T4^EVduvH(6 zESGuoCso(GQ9|O!GI9aTd9t8292?IycxzS`v?pb{D=Un|!HNxp=!3Bcw9-sv0K-;! z;+={7PEM#j=#rPmPcWgaWk)vk#-5y}7HE3acrebSX5;RR@0mK14*fSc;M~kL&~{)@ zJimSny7}tYc2O<)jK`H)6A_~9%gdg^ii)^~^IV5{tXO7HFc~^7EIoeb?a5BgGF}(y>LK6EQv-MJ66?_S~UCM&Okj0hD4kRdyGg@ znC=owQub8E*)r>S)`z*;LpYSa=f#fB(#Ct-SJWY0qL2m1ly0OXTq>d}w41zxnEcD( z&r6cc66L4vD>BjI-#=csnUR8tShc?gXYkAy)l)Czxz%m3t(1H=AE4oaj7b|*-b9jC zDU2-2TuG`^?3lDAZ!p^_(Hy%1EJsgU@EKaBjJ1cnWWi~*R$am4nUg?7?d*~ zn;`8byL0TbBjlB*sW1Pp4AI&t6wKfN9LI?|)16Av1i;Q@>Eo|Dnr@SOBY zg#AZ#7`$Z+oS*cd226eEwBxdO7qa(E$gk;Q#k-qnfpewRU3Tg)Pl(D{{>lTiNbLM>gWgNfA~}1jiEQoq86dXc$+I z^_+Bkn?2Oy*$&7}Z$|Gdf<@ghP`MEI@A{OzQUA*nR2c_s35uu>y(UTs#pV`;ewjCfI9wK5#+nu0)<_D?Q#gyzD{vp zJX*bXiyp`zlqmj)1^sJu8tAi&MPGQ;k0UxOU+uLe@Y9PWEwVZ?>#5smfMwFmVIg$C z%$a-f5eQ~DywQp6!GopOF=#D2$3Gs~b4L!~Fod#@Pv09e!Dq_6*ETbGyzO2z$^?88 zl`Phv50^u)0vWF;QFaGu^yQP9&ZpEal}t#QAhF8`0R zDlKkI>7G@GL#mn|uLA+B%19SQf` zI+;R+5jX8NSwyK%SWiWK&?mqN7XoT6bNSFV6uWF6*7beA494cmq*uM4oG;sAM`$k? zG;#dEUY|*3tR>vPO;e&EL8i{+pqGT{jm?_xJI(PITw;v9FFu@}*aF%r&V#^d|i)g76k-5JO6ESWFvl
(Ecjv z-SAB%pA*xx{Qg82w6c*4c|k?Qcit!EP`Y++X)8hXRsQ(M=|If@O c4MW}_dz3p(Z-0#aBZH%=q@`H-#wzr`02XVqlmGw# diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg deleted file mode 100644 index 1ed6e56e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg +++ /dev/null @@ -1 +0,0 @@ -BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png deleted file mode 100644 index a1a64ca1f311b06e2effafd75d388116ab40b038..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10868 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 Yc!+gbNZ~Q?7%9j|&*WCMj{TGW052_S8vp \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png deleted file mode 100644 index 1855eaa23cc901e66e7b925ebd0c70baa2105524..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7183 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png b/delivery/nextcloud-explicit-adoption/evidence/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png deleted file mode 100644 index 5807f943d68afc0e510b8fac8be4814486b7b817..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8102 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/offline.html b/delivery/nextcloud-explicit-adoption/evidence/offline.html deleted file mode 100644 index 9d15e9f3..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/offline.html +++ /dev/null @@ -1,22 +0,0 @@ - -Offline document

Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

API

Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

Operations

GET /items

List items

Responses
StatusDescriptionContent typeSchema
200A list of items
-
    -
  1. -

    A structured footnote with a return link.

    -

    ↩

    -
  2. -
-
diff --git a/delivery/nextcloud-explicit-adoption/evidence/pre-fix-draft-confirmation-race.log b/delivery/nextcloud-explicit-adoption/evidence/pre-fix-draft-confirmation-race.log deleted file mode 100644 index 1993f5c9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/pre-fix-draft-confirmation-race.log +++ /dev/null @@ -1,14 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart -00:00 +0: unsaved draft edits during confirmation require another review -00:02 +0 -1: unsaved draft edits during confirmation require another review [E] - Expected: null - Actual: <1> - - package:matcher expect - package:flutter_test/src/widget_tester.dart 473:18 expect - test/src/nextcloud_workspace_test.dart 79:5 main. - -00:02 +0 -1: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_workspace_test.dart: unsaved draft edits during confirmation require another review diff --git a/delivery/nextcloud-explicit-adoption/evidence/pre-fix-regression.log b/delivery/nextcloud-explicit-adoption/evidence/pre-fix-regression.log deleted file mode 100644 index 39d856f8..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/pre-fix-regression.log +++ /dev/null @@ -1,14 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart -00:00 +0: uncertain creation discovery preserves later edits until deliberate adoption -00:01 +0 -1: uncertain creation discovery preserves later edits until deliberate adoption [E] - Expected: null - Actual: <1> - - package:matcher expect - package:flutter_test/src/widget_tester.dart 473:18 expect - test/src/nextcloud_notes/notes_repository_test.dart 130:7 main. - -00:01 +0 -1: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption diff --git a/delivery/nextcloud-explicit-adoption/evidence/regression-results.json b/delivery/nextcloud-explicit-adoption/evidence/regression-results.json deleted file mode 100644 index 2323ea4a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/regression-results.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "ok": true, - "focusedNextcloud": { - "passed": 216, - "failed": 0, - "log": "focused-final.log" - }, - "fullFlutter": { - "passed": 3638, - "failed": 0, - "skipped": 0, - "duration": "18:21", - "log": "full-flutter-final.log" - }, - "confirmationUi": { - "passed": 16, - "failed": 0, - "log": "ui-confirmation-final.log" - }, - "nativeSpellPackage": { - "passed": 13, - "failed": 0, - "log": "native-spelling.log" - }, - "localizationAudit": { - "passed": 21, - "failed": 0, - "log": "localization-audit.log" - }, - "realDictionaries": { - "passed": 3, - "failed": 0, - "log": "spelling-integration.log" - }, - "writerside": { - "passed": 181, - "failed": 0, - "log": "writerside.log" - }, - "liveNotes": { - "6.0.1": 14, - "6.1.0": 14, - "real423AndUnrelatedSynchronization": true - }, - "linuxRunnerSha256": "ddd5b6fc361e697cab18f195b6afd47f4bae64ff19dfdd49a6495a341528f32b", - "linuxAotSha256": "9e0ccfd3e1f8164c5d218dd0b5bfbbf8b8b1c07bbf86b5295dd5a9c2f7b5815d", - "releaseAcceptanceComplete": true, - "installedSnapResults": "snap-acceptance-results.json", - "validatedCodeCommit": "d55b41ddf47ef716d5113c89da8a3a2f3b80e819" -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/automatic-single.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/automatic-single.html deleted file mode 100644 index 02caf85e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/automatic-single.html +++ /dev/null @@ -1,22 +0,0 @@ - -Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
-
    -
  1. -

    A structured footnote with a return link.

    -

    ↩

    -
  2. -
-
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/customized.pdf b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/customized.pdf deleted file mode 100644 index 47ff331289424c4a594d89d46a16577b74a50dd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 72063 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 e>-cCvd4Bu_a(2Ojv)* \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7a5b411b813e97f3f756a0109f65def2695ed6da5b3f24791b3c01f9b293b38a.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7a5b411b813e97f3f756a0109f65def2695ed6da5b3f24791b3c01f9b293b38a.svg deleted file mode 100644 index f88468cc..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7a5b411b813e97f3f756a0109f65def2695ed6da5b3f24791b3c01f9b293b38a.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7d6e03816ccea2d09fb0ef83a827b337b1277d02c745394ff0a7c9b2a2d49831.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7d6e03816ccea2d09fb0ef83a827b337b1277d02c745394ff0a7c9b2a2d49831.svg deleted file mode 100644 index 88e448ab..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/7d6e03816ccea2d09fb0ef83a827b337b1277d02c745394ff0a7c9b2a2d49831.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png deleted file mode 100644 index b69f50189d2e28fd0696393cdf0213835ebf83d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10479 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
(Ecjv z-SAB%pA*xx{Qg82w6c*4c|k?Qcit!EP`Y++X)8hXRsQ(M=|If@O c4MW}_dz3p(Z-0#aBZH%=q@`H-#wzr`02XVqlmGw# diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg deleted file mode 100644 index 1ed6e56e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg +++ /dev/null @@ -1 +0,0 @@ -BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/bc6895a0b73c8d683eeeb5b72bd967a0b721bb4fb4b4026ffdbe2dab18774e08.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/bc6895a0b73c8d683eeeb5b72bd967a0b721bb4fb4b4026ffdbe2dab18774e08.svg deleted file mode 100644 index 1b3e2b03..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/bc6895a0b73c8d683eeeb5b72bd967a0b721bb4fb4b4026ffdbe2dab18774e08.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c89f96c760e56029e22e5afebfc8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c89f96c760e56029e22e5afebfc8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg deleted file mode 100644 index b621b36f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c89f96c760e56029e22e5afebfc8a300423d4d1c7ca57aa0e1c91d8a5fc4aa26.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c9693d70fc9bcc18d336ad2743ed3a68e7294086d4397eeddd3183be658e1a41.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c9693d70fc9bcc18d336ad2743ed3a68e7294086d4397eeddd3183be658e1a41.svg deleted file mode 100644 index f03ab138..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/c9693d70fc9bcc18d336ad2743ed3a68e7294086d4397eeddd3183be658e1a41.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png deleted file mode 100644 index 5807f943d68afc0e510b8fac8be4814486b7b817..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8102 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.html deleted file mode 100644 index aced4295..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/dark-assets.html +++ /dev/null @@ -1,22 +0,0 @@ - -Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
-
    -
  1. -

    A structured footnote with a return link.

    -

    ↩

    -
  2. -
-
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/.busymark-html-export.json deleted file mode 100644 index 2431d749..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/.busymark-html-export.json +++ /dev/null @@ -1 +0,0 @@ -{"owner":"BusyMark HTML export","version":1,"kind":"assets","files":{"f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png":"f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e","9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg":"9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821","bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg":"bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0","b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg":"b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e","afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8.png":"afd87e997e94892d3c6394f8cca75c44af4f5fbbe34ff4bb5776543e82ea74f8","a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png":"a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/040ee0eadaf8d1ab732a6cffc646e9083386f10abe201d5abdd58a25a5038c62.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/040ee0eadaf8d1ab732a6cffc646e9083386f10abe201d5abdd58a25a5038c62.svg deleted file mode 100644 index 5f99a9cd..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/040ee0eadaf8d1ab732a6cffc646e9083386f10abe201d5abdd58a25a5038c62.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/26cd9de5fcc5fb9e147045cb6f93730dc299d3a223e326034ad8e7eaebc6888a.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/26cd9de5fcc5fb9e147045cb6f93730dc299d3a223e326034ad8e7eaebc6888a.svg deleted file mode 100644 index 5b031dc0..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/26cd9de5fcc5fb9e147045cb6f93730dc299d3a223e326034ad8e7eaebc6888a.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/3eb9114c8addc4d5e713578ddf579432e751882cb3cf8718261ab705486a5559.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/3eb9114c8addc4d5e713578ddf579432e751882cb3cf8718261ab705486a5559.svg deleted file mode 100644 index 75e78f43..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/3eb9114c8addc4d5e713578ddf579432e751882cb3cf8718261ab705486a5559.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/5289ba0ea5ad014da5f44046224d800651cc64129c3f082eb6d830415aae3946.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/5289ba0ea5ad014da5f44046224d800651cc64129c3f082eb6d830415aae3946.svg deleted file mode 100644 index b1d7bce6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/5289ba0ea5ad014da5f44046224d800651cc64129c3f082eb6d830415aae3946.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg deleted file mode 100644 index e17bbe2c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/9748483452260f5ea5126711b15e429fdb917aa1d07e4ce51d0e35b7cfff8821.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/a716190a9f0c1c33e2a78c74b24c685f3a0edd2330ae48f931f3bff79d569cb5.png deleted file mode 100644 index b69f50189d2e28fd0696393cdf0213835ebf83d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10479 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
(Ecjv z-SAB%pA*xx{Qg82w6c*4c|k?Qcit!EP`Y++X)8hXRsQ(M=|If@O c4MW}_dz3p(Z-0#aBZH%=q@`H-#wzr`02XVqlmGw# diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg deleted file mode 100644 index 1ed6e56e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg +++ /dev/null @@ -1 +0,0 @@ -BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg deleted file mode 100644 index f9b21532..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/bd7e06025d3594209cce7298afb686d1b2dae2cd5cecf8be4d166be480a808f0.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.assets/f024a336cb564c45be69fccd0a476bf8460d1471437bc6a034fab96d2def0b6e.png deleted file mode 100644 index 5807f943d68afc0e510b8fac8be4814486b7b817..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8102 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.html deleted file mode 100644 index 49c72fa6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/offline.html +++ /dev/null @@ -1,22 +0,0 @@ - -Offline document

Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

API

Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

Operations

GET /items

List items

Responses
StatusDescriptionContent typeSchema
200A list of items
-
    -
  1. -

    A structured footnote with a return link.

    -

    ↩

    -
  2. -
-
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke-mermaid.svg b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke-mermaid.svg deleted file mode 100644 index 6a2e57b0..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke-mermaid.svg +++ /dev/null @@ -1 +0,0 @@ -MarkdownPreview \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/visualization-smoke.pdf deleted file mode 100644 index b1e36ec38e2d909d488ac9aa760dee0f782a13a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67398 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

hHw5Kp3#w zaRyaKOE_HF#SI1n1pFb@Pi2aL?D99&uIk&k!2tqgaZwq?o%Z|{_M@x*;$y!X2;jEB z)gPX({Ac6<>Q~}*1LDFz1xcAdLla;^HXv0X6gk46pzk{8**Qa67xb?X1)S!*6UlVH z7v8YEXX6Oxk^K(10oay+jq^p&ZFe^hEB8BYHa5C2m^+W$4|+>ChwIL^Fhxa>7I0}} z%>!WB009r~Vq@hF=drbPgxe@9gY@leylmWVy4l#;xY+=G1qTS!?A!nxKpCJL62N|V zARP~PM>}U5IM0sYx*%;!rypoGaQ7Yb@83-XJpUT$MShR;B0nO%%=fMJ%#^?X{3}L# z1C<^T0~#oMyVNL)cg~zG#J>a@MoCpZd$pW_Wm6Y=te+$Kf%OhckvUKklxh}aj-OC z6hF~Q%Iv0&NegjL2?WWza#-DT#mX_X4D+At5 zD=WR5R!(jgt)$rQK9>~#2RyLEE}N7D{{x=XKj2AA@6wf|%s=4CO6yT!22k>>IKYiSKDO3vb*d>Msm0Q zWF%#F;{l!db9-f^B>w?VZdW^Gq<8C222jE-elilfX=Qf%jEtPvu9zb$wp$h;tnKnG zS@3S#kd@u7D>*UAUHvO3F1s5hvvZEY-|aw7ZdV)vmMpt;04zUt`5CN2g9 zn4jtp7n76zxn6NuS@3R{+^&8DLi?^h0!Eo#ehwBB+vVqAF -Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/hidden.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/hidden.html deleted file mode 100644 index 91f7616a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/hidden.html +++ /dev/null @@ -1,14 +0,0 @@ - -Hidden topic

1 Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/index.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/index.html deleted file mode 100644 index 0a260c66..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/index.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/reference.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/reference.html deleted file mode 100644 index 136ca2e1..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside-embedded/reference.html +++ /dev/null @@ -1,14 +0,0 @@ - -Reference

Work in progress

1 Reference

Welcome to Default.

1.1 Table

Both columns
OneTwo
Expandable

1.2 Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/.busymark-html-export.json deleted file mode 100644 index 2666b808..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/.busymark-html-export.json +++ /dev/null @@ -1 +0,0 @@ -{"owner":"BusyMark HTML export","version":1,"kind":"site","files":{"assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png":"f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59","index.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39","hidden.html":"840135bf564db71fe28eb4d0c58e60ae43653faee35aa0fdbf02c9abe47f020e","reference.html":"85b04e445b0b833da84f386c1be1320ece110b56bb93f350f54f398bfc4a1d7d","Welcome.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/Welcome.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/Welcome.html deleted file mode 100644 index f19ec81f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/Welcome.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png deleted file mode 100644 index 1ec24a6fe02b74f933f01609b518e939d96e393e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8020 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 -Hidden topic

Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/index.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/index.html deleted file mode 100644 index f19ec81f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/index.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/reference.html b/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/reference.html deleted file mode 100644 index e119ebba..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-wayland/writerside/reference.html +++ /dev/null @@ -1,14 +0,0 @@ - -Reference

Work in progress

Reference

Welcome to Default.

Table

Both columns
OneTwo
Expandable

Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/automatic-single.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/automatic-single.html deleted file mode 100644 index b0ef3858..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/automatic-single.html +++ /dev/null @@ -1,22 +0,0 @@ - -Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
-
    -
  1. -

    A structured footnote with a return link.

    -

    ↩

    -
  2. -
-
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/customized.pdf b/delivery/nextcloud-explicit-adoption/evidence/release-x11/customized.pdf deleted file mode 100644 index 35df0cf9fa60e320038b97f6c3d2a476097421bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71882 zcmc$`1wd3=)HaN*C>AIoF{Gft48s6}ba!`44Bg!rgoLCBNQ=@~bc3LPNOwzvbhrFx zWNkZG&1Z0gcMQGa~KsII; zCI}FZvR%h z$~Hg74oUxjBg&zq>}*Yq%mJT54<1@~6if6+G)smb1dz^lKtR&Y%tj3Yf}<=0VgSKW zQUVSDNA(4~3yxCfhzlZJ^eB5dTWdRATX|~)Le|2<7A$LFijdH@1iYPJ+ZJJKWQG9C zS!$buoJc#nj*^g*A|k0S`w~2B;lK%7B)O z0R%-u1PX$pWoHD?14t$df`J%Nr~xs77*LK3Vg@mwDFW0*_z&r6n;~q}s1+C-Ax;n) z7^(~MjsbaxYEG>HMSaJNvHy!+1PhvIZDZ+sRgP8wlSyU^e&VT0* zC}O|mc+|2`l$ZV+%c8YBVp&wz-!eJ0EPCX`)X@4J?S2TfLp9Ms{s008mPMfrFbd0W z^!y`?#1AZsa#er`6b)!Ni1m==-}x*n3ckO!>>rW#lVwq!_^&LB((n@Z$_2zz-51B zhy>h!VyLdJZ>_ECqV49Qid}4$PtE zwh9vB|Be0cu!O|%KfCsk0pN%JC&mYAqm%F-b2KU|{4HN$=nuD&r~Y@VFd!y@py(0) zl^H7c{4KMC<%To}o$LdX&OsRX3z!XW@@dR8VVD-5}O zp=V`=u)tw}q`Vf^02w)3CnS9fQzJceQiaa9k3?qJAA{HrBcSjK7~vo>`il|%7?J*J z1mxQ2f6oZ0D0I{ae+*{wKr#%19i|>=cL1RmeMf2hF=ojlhZP{hjAD(nBg!R?_WxtN zk>^LsfS&0Oa%Z&f9Jg4;maYGHGW>g6!vEfuC?$U{1JbX5*b+4Z zfzYe%Beq1XyMIpu>6c9C@b*7o%Y(W2FSh)1bonV6*H;?uByR-_zi=&~ri> z^!o&MKn9)KqeB1)?KcNjKQdCNUcaY}%7VVH7=GRxLMJkZNe?o)VPIqdphypgFtS3C zn?&?*Vne=!0Q@Be#7K;iZX1W=pY|7-+w?E)~uVXpCu5m4X%mJDhI@RKJX>mmPZ zMnG@uA2q_iTLz&^Hh>Wh6O~_$@W*iSS0fvG2_;neC8lT?}A#xUBLB&yIJV0d# zAas2Tgmw|JE$Y0OJ$&6%D(7C>8D~Y=;zWcIt2v%QcXqoL!0lYaKC0l z$OA3n+ByhRpgPJA6!k$zj~e`%=KQ5G^hZvFI&*MzJpa;|@krxeG5nXtup^Cs#Tt*f zIdE1%&Q8Y`c_ar_jFLs@+N!~s=z%1Zkp;j%D?JPX9DZPiGSV|cfeIO%0r><5WDMw> z6sTJOFAdcB8fyEar#R>iPLa@|PLa@n1%Y!uKYsj0b(s0z=<31AUnVkbQx+z%OQGdt}># zen=X~Q_pZS3wWFKDSbATUkkNOVikK)6Ee2#v`2#n14b4T!BgT_A^kOj_44`&66 zPu~s5!U{Zr!~fQRAXe1u^H)_~m5-VX2Izn^70P6Q>0n4T0kfe@0;q~o5%~4r z%!BR+1Ly#xAuxb0k`7=sG#%tHA$cC&12QqA%>55$1$_9sSyA=OqaOdyW@UlUGqM14 z^$)Yckx!t%F)J#N{?)9|KbrMd^8y|NIK~fkk*58{16dgVL2UqyKh#FXd8FEEU=cn( zUf{r$9&lC%oxB_-8mx!G`KLC>z$p9uJP7MyoCHqLp+ljviYjo1=@7%r%=EyR03iKN z^e}d*F`yTD;Ga7{AoLJqCHhB)!}#@^4vfHoJ7g{FM~B1w<~JSwD$-#b13I7+pPxix zgfP)Vp-f2Q{NQmUnn_z*=*l5%)xf~1L*R^+qb*p(42Z{k=r>*sWD&x`8aRQai#$Z7 z3jwhnq#r)4<8Bqw=7HK+A&??WjC}^Bs5(KLeht=l4ks`2+$+f(!LnNkmCnnD@4%g{_60wz&-*uZ5`|SioG@LeB^| zgD0W~oYgV1b)pkS&S$#7X;Yx~i0p?voQeh=Sl&Xx+z4oo01nup9{unUbep4r>?cw9 zMEH^SNQt2TAQ8}1&dJ6WVJ2d(Zvp5fi!d;CO6-c{) z^G?9U44mx&4q*Tn6gZp-2nAfs08ijCa4`YPH6S+uE>@s^1w;wp0uluf5X69s88|Nj zoDl>rMqmO5KnGmR05>Qz@?r$C8vuR4#e|ds$pF~+2il=7W}u)CB$B|z!V0uyKwhY4 zfD%v;3z8<#fDw=YXaw8<)&UZ9MkeG11M~y(P2gez3KoDtfeV;0kXa{i0d_f(PNK)> zSJ(M5fT*}22^`i0|E&iLnra)^0QO{nurQ;V^72|Z0s~411^BT-0KUw?ewm0ZaKu)Z z$K1da0eArq(!qf=6-cQLyxkUP&&mkq)3y{w7#SGa0?S`y%7!pg1O@|6&x~{&Aj$$` ziH?*=Zx%E%MF4{Ym=2hdjzZyZ%J?^^6jqg&v*#S0zIBbEfdEeapyLS;&XIXG0}S{}3Lvb|L*UH72Kv!eoehW)4D1=$ z0IT4GWgaTi`krV5{)VQC%JFT~(C2SKsFjs0KogbO9+mM(-u1UKqBGwAC?im;K>yvy zUxY)EJHj9E-k(eEzt{+!hy7vOAu!PZe`R56i?9X*K5dKOMQ0-16FnavL-W?>RRy^zb^3tQLP_$b!7 zv3)4soF(M}UG>>(erMc7N^D4>BP414Wk_k=q+6lmL_!VYXjD!2aL~r6E%};nN_ISh zo8@aExs@Epv?9<2hazG%#j4xcdQL&>VqXJZxe%wqXD_DXKY*~OZr>3to7@E>>LUc* zD7%T}1NIX7Ko_{8hd+ruyL-Q1+%`DVTfabN7sqoL%`2@{q9XpwS-yQSNrlGU-~m;jlg5Gh$sV> zufk5u@uVd=VSc(?&&{gi9#NPSg+WJ%V4cFZYf8ZSx=XKC?W%F?7B`!oIk$_D$c0;1 z#0by1U|7X0a4**9gElE4R~N`G^+U6D zD9I`LrvBO82ZW*fmgmgrA=2Z4k_i@#>pAeGG?5O$L7S+}}Qi+pP zIqQ)1Mn{L2YkXw~zx9GhsR91UI&rf1k1BIMPoGWlp6}YbLWSQuMprj3NLCjkLKh}7 zmU=s?_S8#?q`IXUg4-?l5>(k?;>4w8;xrQaS3h&*)-@?b)b~@o714#I-FzBb9rc;Q z*1M%$-noYluJ2iQI_&-DSn;Ke$eU50$v1OE9+$Fx8fy+2cb0uN8#{$Cw)oWa;;!?o z;iuO-ZvHfn9|tDy(#EYDWrp#^PUk#je48DX=?)ujYJzoEZ$!fKuP2Y|yQQ``bhtB6=X(5C$WsSVl7q?o>;rv}eKKwSC)&jnhkRi@cG zL!OVM}8Wvxa@3b$+0-=Gn9$#Te=fQFs(BqHP8> zU=45Hq%!C-2yOCUR7-YvK!fG}SS76Yd0wqByz9luD8kspQ3%ja){b5h&FhW|cLGfYFs^=?)DPP*86iG&CrLeaO0oiAL!xIWXUeY;zP^#-|v^Ersy*h%r7daAzl)V_> zai8kKIHpw<@4VCsf}}7Ma4|VnsIP9d<$k8=)DXOQt?pr(x`04vi0K2?_xI zyAiRcu>%}!AB$AB$Orld)m2uHJpUM<%d%-F`0iADw(i@7q)WGE zu;n99#5i9f7x9j*_q?1)mw%toaKX_}Vd`8~MELYM#dJnBszgMYoQlYod)U7G55y{7 z-o&e$Q167ekj|ceLH=2H?8`-=$gbKeoQedjpK5NA-&}gzTU+P4iqGm56de%rsir}& z@qG=QVB@D60&;^<-R|b|%Lc~!mh3N0WCR0kEPNrlRmlc!E1`w>J#X+;he}M%jZZ5( zZDMcfQS6w7DKt(Be%lqis0x37TrhA^hQ<0xP_Cflh;B2$Am>~F)@AgMxU>3J6EbXIc~1q z>F$0m9%rMQ7|(}7Xl{fWp^14dP4z&uvFLev-5b>_BJeElPAX~(#^9Riz0K$VPZE*y zT0WC%WH&cv+u3ZgsvDflSaQs>_OYi7g!S3TGpims7n5hMXz?N_SX=P5`vM5PZl((4 zx)Wc;!@5XIzdp0)tSA<{yp)=8^C{aot6~B&)8fi6+L|1dW1z5y$LW+FoV+dRopL>? zDA^8dFR0x0&``C#Bq+`K`Ms>S7lLS(_R`eeB^#EhSqrC0-gJCHCu;0p1W(*RL_Txv z)?j4sjZzVj)TgpbrpOLUqM^E(&6!NW$ll7~N|j+k5XR@MmDiS%{alZvNm)Q-NmS6K zoxBKNu0zlJHs3k@sO7h6QG_G>Ct0t^LKvfhUTh4B3Mo7ATz{6#K=~xXYj6Nxo2@fn zIi!1`ZD%V<-Jh*Xpf-wuvH=q3XFO1(HP*NL{Nwbej0b5v$tTY+chVX$t9J&wH2L_6ta=1z83gq;L>d1mLN&D1pD&r zYqk(r_xj>%mp3(cHHHNwW+s^Py0_|5#U%t)68(X18VFczU*EQr{H)AQs2w40=>UIEZ z837tsI1vvBhuf$C{OgXrG1)6K_#mF((FuHOLsi=n&tgpxw8#qd_Xk>NLZ12yAnN6Z z-if~)d@{eW)i%u^sge>Y&*oejoJpPlKNjqfd^`9q4`0c}d;Fxa$0$9CPrn>{A%2!} z2g5(THWRFZ<|`Ii6v64H zPZAzUlVR1J41O2Gf={Bfn6A|+Pn_RVBot}HDT}%Is41**Q@3~a z4icLzInpIw-s&ILJtKwZqx-lfPs26MK+mXXj@QO!&)s=SE`pwGINkA+iq&eCf15@8 zq7#XO`EhD86Nf2D;{+UqR9}k+6d|-{qexD_tUX@f8Pa81JJd4lk^-RvL&Vi1P`=Nf5hu!Yt zR|2e6CQta|!Cba6vDItxWW+-)f@`gU*z8Unl)=-NF2BtPJE6E=m@Mc@am6|PKi=XfafB^tUpcXfxk z*n?qf$mD*@{)|ZK4D^=Yuy=?>qC4YLkRaQJtp@ z73D5yrqFI)>CZXueGMjFg^5{}Zh}3Qlk3fECu6LN&tlB+#omd1knTx|146s6TXEDj z_6n_qkw0ZlMv6|&Gx9Z;2j_%rs=~`v*_%U ziel6p&hE?{uf1V=igNM8ZGTh0lf2&CwOiU4xDZ*hl$YV!<@1JS3(^YyFJF-h4mv83 z`IVcRep#>xWl67L%1x%QT4hsb+3f>Ok!kSY?=I0XzqbgZF7+U}2YtdyXl;au6fVNC zF;5(f&8ZT>_1NkJYwl;Nn@7B`E?yE92V%XA1bon;0Kr*F)lSCNe z`0z3)=vrG9W(dVF7Vea=$T=PnClM!=Gyxt4nu&{FOqUA0O#4*(N-qv96_uyekrfC?euzD;bRs|4Te1hu>eCmfFXPajVgeV22Y z$(Y2KxAs(^(%GD8$Bqe!lSLkKhBmdM)=zNzaH51X`kbk07F&7;TeJl^#WY-s z@|drdI*!lktB_3N*Rrp7*9p7rNvHM{ys?lnDD8Zb5E7Q6SYFbV$`yIXmHX+fsx{4; zC;856J~?UhZ=BRjs&j6dL%3c#kXGX7KMbBOA!7B^_-HFMn<6Im#Dj=x@tB_1>AO{( zj+!HX=Kt@cj;j z5EeWHU#}x6jVnj&$sz_3IP}p;Hqxu(GDXg?Yp*YNQrD4*Mte{ByMR8wyPM+m*tR6* zd5L(n;7vO}Jw;0^JHC7F>5l$c-6OX#*SsR=ooK^H+Y?p=ZfzB*Ded1s9mr(+x?aTj zKEc^9pYw0|hF^HL{w3_3)TQekRKEFHiq^6rhJ!f93F(YgPB=IA@C5H@3M6!xt~+s< zMmb68k zXefW1w8zelW1!t^oaSacZpyTVd;;@4_%>ar9=)A#DCAz$a0x40%(Za!$C44ozPb4h zw$-$frHvyK_KCtd>KTrEH}>Zi%C`hvjeK28^@Sd@&ARS*ye``q(p?xc)9>pAFF808 zeRyAn5wZjh3F*bie|_C3X+zNKF@={rUS zdAF+EecCcX6^A=dsj?BT>{7x%J{Kxa49=RXusKR%^br zwsK=6<43Hl(o(*N+LfUvzO-B$RYT$Cdy6Zf{9}DNbxh8%f^E8@_eqLcM#y}X zxFmO+`eq_E*|H{xyzy@B@SBX6(eFLEUgz7HPT@F?S=ZDy7(D&>k>HX8{$5;gQdyDy z3ZtHrohR)=+UtcIou5n@{pfO7gI~|Ni(<(ym3iggj?=j%1HMmzwWLTr1QQO$Uj}P? zRw&458Y{>Mq&uc6@ejHtq}JocS3A!3#NF7rbEzF~JCN=?+Z}?9lgA$lG?lV%>E)-m zmSv7)y$!k5BuAVwEjAWmdy09AeTmPTBK}Hg_h}6_VDL3))|S+#9d?`w_kzU6);faR zm(CYiudFw?au6ju3=3k!LstYt9#g+~z@5zA7KJTxJu1+`;`Gb5D(NTeuk|bG(&Q~? z{C7xteJC_)$*oKZJwt5!XVxy8_Kcl#JaN&*DN5jebU|U7qn9N=<~gt4ULE~3nXcA2 zFk?S`(>~jsa?9r?wMoLAFYBWfnl$ShueZh+&d<_1PkZ5(<6(6>7JF?_KA&e z3yEPpOH1MtmsvS>I^XJAG&Q>KO||6fPsTav&$qToJ=D=_ko4h?Psyt9=F#guE8`hJ z#Q*fO2+zkGo_EUW>&0T4RWy}11+E*_ zX_nab1!|m#8!=BzG&e<}B^$43O+FrGDRL#U(pkG`wirG&>hPnD|M|DSj*bQIOgw={)17hnz{&UYH?lf%wqfZx1F5_QsSl ziVG2k}|buBbKD0Vl?~e=D?jOr?s8-4Yxb1V_~2- z7-LLJW-o8eGlUI0XIFE*5PmrbA-zNTI&07=5GN}3%Gu{84z&bs9(+M*vSc)uRwHeI zpOD@ij)@a=$vJO7j9E|6P4rI2l{^V-$Z=pk?a--YW^vxt_?1n1QlXQc3A{IK7SDV$ zJ1pXT{Km;Dcdgn5+9j3^CIfnTB~3f0uergA3J%tGlQy+%WRk3&O#>0@d(QnNtFJwj zT8R4lXiFxns#T}hxHjiM?MJ%IOx-ZJxxVo226S(3p*g(ewPrDMac_aV5t+1?VTGCmZ2G?Vj5zb^?3NP$Q?dukR#P%MJJ3X8g?j z&8pW`D&2?_HzP<3c$Nq_-%lP}E_`=&(Iax01k;`5>Lb$=n;SLk;?noAog&}+6|&PN zp6gn96CklENUT_~7{Bty&-h)i58V{0R&A9cEV%r06?1!7(6S|ieQPhf`U7+4TbCkQ zm8L8vhoL#QvV?W6+Z5cdhx;(X{ZAPh@?bw}IgPa!`GL0aE`eM##FLcbikJ65u;_v_9+m3^Ya>a2;a{t>SyDBkN0+k4kSI_ZfY{~ra@_709 z7u#tP>YJOrsg7+-B6J#G@$oULp6Wk=)mE#+Q*xuy$gqGq^~gBuGr>=>u6z}?7cti?8e=Q#AZ7&GKOEdh0jp_$X7^b z{VbMsthM_`1}|EDPj_61&zvDY`72*8nV6nMXB_Ov4;KimPRl8C>wX(lfw{k*j`A5S z^QdCKZh0zm+-{YHG>W93k0FvK37&BVV^k8ys_;$ z6bQn?dWd%!zB^A7Q!nOIZ-m*!a5FU?H>b(3!zQvaCiu;CS4gD03m~=^Hm7U5{f07?30JAsw$~E>lo}^%QF!l15?VO3B)7XB~*bssj zugab9BQfEF^L-Fc9OpNeYDkAcf(*ycJb-&swUeDbVTQ*|lJ}g14u0=+d(w$(hC)QA z860oyBWT0P$IcrGe%^;dA|6s+0e{PqY8u^ipMBKb3{q5YQhTk|q$<_I_f?aLG+)_- zF7NqnCvHbd2df=s&6rGKkhxNoU-!G4_PA$8)J8g%J~<35D3+LbPiIVIH=QL^Ofp@hr#A#Puh@t7X?JdejUF7cW@@Q?Ggtpja5!vor@Ub9Q!l-UQ(1XF zRaVB^g2wX{XHG4cX%H5s*ceINj+%l^tUaNUyIvZ+L!Vw^4RzGL%XL70p{`-vCtoM)$T{)lL(W(XE??(k)SGK={>#^MF zmB9pjBWohmD+4_t5U77%de)Hm{#EJY&q!tMqaMmOGm^0+oT5H$b~);PUIGWT-3z|v zi!(68AmO^W`}TqD-S;3dW;}~+-Ex)S_w<PtlOi~gQpaFehx-EHbH%FlANjci;9UEyX~<%N(|$?$F7D3B>n9gRbdFti!Nn+a48f@UKp$8A z5aVocv8y(&R4C|dFa|>U9pwib9|%ZCJ7_n-Pk9c z>CPJXWZe1{ZZ6fEocZjTe_T{C#<5V@QJdq$+GSB&4WBpS76LJjCtyhN@s57hHBn8O zy>x6-34>um>H5>;8<=s&YJIq6hTn%ruk?J(%ivxbI`#^ezVW5OM)vD(q|$3f7<9Pc z#+T=}rq|m)DckV5{T;2AQH{53fZE9fj zcC5Dc*Ef~CJXRTh!g%k~^4Dj(c3YP)k_ao-!e?x5C%JtXIv${e@%#(P=p=2U4#tVq zi`;G%Ph-o9?IIM-2L|2^#rGA7aXshc6!dsw7cp4h5MRZ5K_}QABgbGSX~&K8c=N^H z(zTXOp(!D*J1rvgBUM>oiyna;HMRBFr9HiUVovwCQP23bm41~uL!V<0+s!ycS~t08 zZ474^LL2A8qf-`w!EGBx&t_{Tr+3EuSKW%ZMVFjT^XW#4uTn6XEt=sx#)7VmMV&NR z&hFJS*6fQEhY*PGzrCjT`SVoUH|~3+b(gz}S$Hl>eRv;$Cob0DgU_^jkN7NOU9-N0 z2tA9A)kJ_vnmjF^#*#7>^#}aNQkf>1(grYMsV1nCty`EZfz$`(yRXe9vP}*4F8hRUjSWUQbH>}gB=J|A*(zeDOL0-e z$?Fuy#WAUBny8LDSCoe|cTX9TRXi6d|JV!fcq(p;j~yF_$W8L)ewFf8kaMUuBwq-- zw2QL$dL%$d8lDtR3&uo<89U7pK|-3cA{^-rDSyklM;)ig+8B-eF2ATu2_u z)Ac4FRD{HeHztP#c!t)+oD?y8>NMg^i?8pOxMnDRG1-7g-#3UVQXq&SgLvi4aS=gT z?PN?lMw%B5`m}8fkEN`w_NaDtS?a~sK0{v8Coq_(_cb%)okI|WgTgXuuBOR&II~AJ zhuwei@%c^c0MA`@FstJG&pK~P91XGCVc8vbot(wH@K%+dwM;t+>f?zph-pNQ;}cBg zQFE^31sFYEsCb@6;q#*CRQ}dSea$N)9B+#%0!MN1T!_+|`@KAEz2RXGX|fFXq->Hf z5milC?_pg2^V9(%JRAdN#M(QN2&q^q!@+RUz)vu zO*HE|M~34)#P$tf?~BdU$zyfn_#E@`i?Yt*3)ZPi6d93n0mT6qL`TAW#YIG7LTm$A zdD+MCus%XRAnUoh2lZTj?+l=x+x^k|V^D6_DOk5uQ@zAfI%~@r-(F(wfca)DUxF;aTQjREfDHP|vlR z(jC{M*h{9l6=9R_dW`%89gcpup!cF83-n38f}r4tS#xb|Nft8{)50Vm;8UL}x$f}X zF>>8;v)GWjQM1xSyR$xKkQ|(qmpKKE!hSpa&(3IbZ1e~|Wb#zz(}*O3!Lp=w@Jzl= zGsoUsm*U?nT=mJ5h@p{nDX4k-&<@|Lz~$;=5mJO+gfr*GHa)|J2P^s~SjC&F44_w? zDZs9T#F{J^1F_C($-V`JnRMQriEC~b_Ae~iszv4!tPKW2Om_Bp@O_(dyn3|B`G(IK zuc?wqoeMa9hM9SLm6IcjGI@`E=Ih%AX5Ri+MG!U}h-0Ku5Cd!NSi(I7<`vyjOU?a) zrLT;LZkTCzmfe5bH6eZW;=y!wfTyoTM^DFUJ6XGXXv1K7l(e*Djnnb--YVzn|61t*xlDN)7YLP?( zQ94^XWl9U9KGwJG=Tn2v>l#1PCX;z>H+9TvXyPr0lZQ#}9--w9od5*)$wQt688vD%-C>**%% za&Pr3s0{SvoUSl`nCrs~%X+xeE!bDX7e(;e;Bg{k<_ek3ekL!y9u5a;_XwNW`P=BI#tjB zPhvH)mxtVi6g0dUIvHeXz+sYhK6{jek<(C*TV1kK6<43{G@ClEewDgEN0H*|HS?)y zGc%x|o7iJX{aF$(n%jcG`>z6jFx?}MS(5e2O1(6o)#T4<-s(5CRi~HBe`K<3X zJ)=0ot{Y0Ym?3z&#(v#JarNXbYuMQ0BtSw70+85@5wWiD27dfM>fcW_jruzDB&|KH z`NTJFDE@hd8N#r1!LEGp41}5x+{0i-vgZs#&2x{QROw7YHSh}*XS&Dmw#4y;qZ>`bY+`~y_ma28C9kow$M%dZN`FAC_@whEaM)(%%3+ODxvCoA~nc+m;d?rby14&dqCNh;@Rn!8C4HhFuEXDVGqLJ zWzpi`7_`G&*hBc}8YDV8nAUO%($*J6mabm(~V$-n@P_vCAIy>Dypi zHtr*(P42x;jb%=(iXdb5D|ELgp|1R)3eRuJ1~Q>*dbHe6L-H=)wZlsnZGCe2ov`3; zOS%y6S(Pz(;=YM31wP$?l4Qb}PZ=8uF6x0J57-5~<2P4K<1Vv~Sq()broGI~E%a5Z zkZo%nkuM}I5O3g*F1u`3yKT9_{k6`Zk=W?f4b088_S#uXlhmCHSTRMxZf3QqH;73% z=)_b@(%Ok_wzElU%|a{(z6d87Jru#PXbu7;+6NQiN${WNt_@e`-V(SZrw`u3@;Tf6 zX#P=2h;Vbz<~G5--79OPm(D!zxXw#W8B85yeaFj;e1e(U>PdHD#;M~C6wQQ|VHjIU zvv*qF?Z;;7?fXp$)mqrqyi+=*wVqWxM&X9V$)6R-*_$}=>X7W;pr-16k zs%~9MiDA54pwW2MXF$TR88nc}w~e=8w(IERdPmZLi%d%67QO{3z#PXI62Jx8i$m+1a3{7CS??f(GZL z(=neV^7B($)eBs7V)rwm*XB`O*)<-rUM=jnKd#&Jp>pYMV&c-$X!ZJRhDN*y=Z zc3s-|cv{+Rr93k}F(b+tJh!&S>;-$*M~nzB>!#4Wy~f*5NRx5inNZ=|UBM?#VnoD6p6PuTgpGt-nT%ev3rWv!C_GVw`>kZ99|td~N+`0MJ8 z8!aiOKjpS#O8XjR)cB1+B2ZAWoe0m2sHml*tlP!3f|u|`n4&!`7A!v2`ssxT_?>uR zs<_#Cl9`3L&(rdE1a4oc*vh}}aV0Ue&mNmcaCP8Eh3%s^AWwpyBZiaJP9C22lz zbAMekXN@x%Kn%KH;`6wyW;29umt`+D+dvZhxLQh!XlBe@`cBWLUhW82yp8vmoPi|5 zLpW4wZnHYdS@&j;^o_lBQpkR4U6g#fx_tK8)d3F1x_rXM zP+4LDWcAgy74W7HXrx|SUvi47W>_I7Wt{BP$9V>&(|UjlJ^yVfBr=?4VMpovWkwAS;90tX`r{+Ps;VR;Eyil z9JYcX&T0KPU$NO=97_uvydS;tYp z`sVb;-TNm5SGh?;Xz(9gxQvg>Gd&(#agxwp`K}cli1aX=)N{(VS4m&Qby~9cHdmz0 zYDvXW4l<0?xr46t=!yB>S+A6G=Ph>t^IkL2D6sS>9`(80g*9${y~2yH<#a7bp6dLq zVfsp&{c-g>x!10C`(tV_E4jxhjGuamsJT>dX6oYWxNMHJ&6`pz9{N_hpQ8}SZ?+z!vp>v6D*Yn_C2+-Si zkSfV1I{5*^$$Ri2?&R|i0{l~M%-H_nl3r1M+spBV~luk~d9>K)k%EY;< zClCtefJFpMus-DRse0A>iO-WUl_h^ZD|6rqbk%j_y_e0XYId8+>lM7j$+}{dhb1lv zI{P28Pdz23EZ>W4bStr&q2Icm#gDI=Byq~~ss(9yY7lp*_ojjBE9&8J#&YG?_apcv zU1Z`;AzlP%rHamX_OcFT-rVvM3@97deQUCJ#@p3hD`z*~$0xwCu>AIZ?Wi1MJm&~C zVQqGKm?rhx$2eAYq$PF{qN^J1O9WYd!teM~<;Bm^k%5+_gKPCJU!@M2qO5%v>is-( zc56KqQ~uP9r>3LMa-@6V&Tam#Xa~O(bw$d3yPTc&>X2wTGa7Q&w+u{9M(HUmR(biO zwT@XbZdo1(->-XN0@m)&Uo#GjEC#rUp3z-euN)PMzNqxnP9872e6&_OT*jpR{I<`nqJ>Lk&WNqtZ{NBUuWJ#NYz)k>kZ7qCI@yGO27Ao)7Y=EZ zZFkrhl;`d4&b;Q@-?jKgMNO4In-ik=9*fA|B796nV6bd%BWnE7i)Z1X&m%XkPZ~yb zi64_;oJ&(7uAoTLeC?C)yg$js&Zo4X_IZUw|AwyT%u@q)_o(Ie`rEi|yJVVF`sRZ% zbA&7D@{+5#pUOfWj#~AG!yQdMNV57Jmu$c+vkov;4_cKos~<-v>EZg<)fydQia)JQ zpEji1%dho0pJ+%I1PbR)=EH1yq|f~1MSWo;wcV4k<7BDDYZKgzzHl-o_O0}E0nFxJ z|F9kpNx>$~UAd@QMXgGglUiG!lup-4Wp7JGpFS>`1mB6+mYV32Wsu?7y zY~`R^V}<8?%7??xbUjSvFl55~a?L&5W}RaVp`Z}HDQP*M&QBPWE}Eyd%ws1YU>BZ@ z=yK?yIg=On-Yl~cQ>(pUNT_zYf0Cf`T#6hHTe@+JnyM;!zS$W!4S^k6TzV$14(m;? zB*6tQ zu#33fOv1idTEJ2+f68GpLfyG1Oaqeu99LA>YiVV@_jWdH>1|6~T+3T{l-8c=h*tUA z^^P`=Z);ted%56}?XMYZ7F-U~#qpc#*~^z)cAUQWbvx}A7F#9hmc27xTAWh;z}?le zB6NLZt}S=GvJGo#-fy0~M$)I8$*!>4{gY;APbLfT;%V8NmxA!)LbZ!0E%_95b8Grs z3A=koHt2GJgC>Ib80RTMYfG18p4+>xCPgIsv3HmjWUuwKZW#oqF` zy;3eB+pt})e$yv=pO|`az-4X_cX_`vXYp0M>a&Vdz4s|3Fg$fUcZK+;5HSg7WTdF6 z>ReJuBkrb5wupjtLl+6=<8?xr6BV{O#APp0iI8p^ogtV$-AZwutn?Ag4KrafgzBb@ z*lRM0tJG8rN#XV&+8)a%^mjw;E9ll~`MGGSj}_fhTt5G8gBvdV@KH0PI!S63Jno}b z2>Dp{7;a9?dYjS|Q5|LBi~831x@YWQuA3f0El-Tb#Xh+h`#STxsk(K^>Z|0tR;8;n zsgxVas^#UnuXnzDm8k>k)WNVDk>eW!6hy zEGk%^C7i^yh6!9zw9fIo&K{M7kRQ3hs(P%-g;mu{Fs{Dkx^37{LyKa2Nc{K|d%LVs zAU*fZx!M-5sf3_O!y9{8+lqnoykSsJ_|vx!q6-4Wlq&=>d8$ZZBcNxAiI?h?KOTQ| z_acFJ#nM`Hv)Ao{<5;6?8HxfH7c(NO?AX0oKR+iXSN=%wG;x@swZKo|zDfm_IuAkD z|Hs~20L9U6Yoj4pfB?ZQfdqF6!QCymGq}6E2NE<$kip$OxI+jU2oPKc9~>qO?zi*p zefHUZov-ex`s-Hxb?-e>R2Mzf^LD?op0(Dq-d@Y)**OrNP5%`uocRsyEHA)n<|6$! zVg>n%Ch#_#ymM`og3f^En~8h3cakcSA$vI2yR8cY>E6LgL*KQ-TY*YbOdfV7 zd;T|-16&hKzn6XKKAqWJCH+F#S(Mc8q4{a7w43Z#6h_v}w*Dvtu?)9P%50hVk6~iZpFLmo z!%A^oT=z}y<<~;GtO&WZ;P6FL(7_?)-pm@|r=z}uo|l^lHy>OqYSvn!q_DHaTbjEV zb-uZqZ9pE>A58cKZIb#)yspK4G;TE~sj-r?6F7W2?V%5e49?IQ!0hRbd8uqES#^(C zsrMKxQ)4Qv<0)l6=-abIFpWV%^y~FIk%s#f1p5HAaPsTs`o<^vyr17>ia&+$emLcg zarrFvo%)6&3Ws-1`o+$#2u4ZcToT0HPpIL}xQ5S7DWWFAsWYv69G-+aZ3=8gK7YeT zN5b(~Xhwsmz^wOsk+XtVB&=Xva5@ra4rA8iKY?$R8f}1_6@B z2>-4VB4s4|`@!C;7<{?f^!=r%*JMuFxPf&g}=DEvx9lruDJbqa* zW7?Lcru5jM?wmQ%XjsL4Rn1b<{j}ol5y6kbf93DObN}`h`F})}xi~ofoA6w}zM>PE z%=6A2?cMp8@+WRX2%n$GrRTDc=1O_k`8n&iD^ARp6+9X3W-FzqsG|~az9W6ru`;uP z={2;T5kTG05!4mv>FV7e%&W6vRD&J&Aoy^f0^L9CcN)nt5;Euxbm_RexcYs$c?vCm zd_4IbXH^n@U}aTuc`S6by`CkbOwJk<=;H0`{M8@+yWNTKZW}Iwq5C_8$Y>-#WWE@h z&n#=s8k@})=k0Rl+7q23Q{qKlN!X#2#is0?msly%rIXcxy4$;d&1Q5z{ImP*$VKT= zfkRxE&_MRV=CM-+3?`@tx!y~daQ!qP_@mXeW~MGaF70+~vAv>OSh&=XR3kM~NW^T~ zE72XY_4$ay>)5aD^vHLoeTv5lzI|wZdU;n3_mpf6zB=|l)ce{Q=(=tj$QuSf?re{} zeQn5tbKSdsP_KQUkXQzN$L!!=jd9+IA@VWjeO_i%2*uW+KC!nMP1Tub50TvW&qQ=s zDUv

0p!B-k6Ngr~O4~Ds@cstfL9}xE38`K5)rTMap%~NoG{CEU1jk;qj&H!#7|0 z4olr_$~2NA>x84F0xNvY>zozR>OE#YFJqHw<5J>E&h*iy|(m}ECIbHa72IJWkdZmDWbrp&$x*vx-=Nq!d%sbo^dNf z61|8*(oGhfS(Q5yY2U%*UAWGNgdS@wRp`?5;pqIY29q4&&qm$5hTk~7Ii{#GdiBuB z|KJty`)Xoy@aOPwD9k}rq`x6C#zgsI#qOQ`h1HIWJ8bicfYfWYFx}TJ#t-!DS2Hrg z0^9FF3juc(x#f^ownPo*RmD|Kaqa21*Rccl-TS*s6(DLztTBb&ciQ$%V4H1F-=u?7 z@Tj9$V{ z?F_L=7ocZ_pd@=G41Q}@3&WgV_M0FsE^T>UA}ghMZwwDv5Jp*$tSYrX(tJvAs#{2j z`})ci7b@9*XKrdH(SP?motq9tNT<|4#8Q}-!3_PG!RG-{nvGd;N(EK*0x?5fdT+eC zG_0s=Es4*noG@udM2j|M+*ctXagMu@lB1)>>9LEK{lpqo2d2N&8Nv%Fg`=h0f+wA$ z->BxC5PDS+Z{SJ2A!GSSur(V)NV%Vz>dzLoOn%qjeBttmxGrd#jVUY@7LeH?|53JB z5jIp6`6h=ocG{v{I=&SWV$eh&Vt<&3Bb>MJyQ;&bS6WnivH^_mc*U;mweNG;=8%f~ zlme2k@-#H(U9?&7nv6=aQqnm?(mCJ34(U~)Y8qAuTS4kFOq=*hPMAyOH|LP0w#J*^ z1LFMc0YpeS)Nc9ucBa%2ln)^}kjik^sWI{IB2Kl3`0i`Q2DILfc-Q_UKnM#O4r;he_3yZ#f-jLiB`^v`0n-C2e@5|xusUm zT4K2hD6aa)mNadDt}-c?=s}~x+X;gNVs||F59CEBC&sr^DlhBGe*7e6zmj`f0o8iu zkAzlVuonKJ-jfCwQN;Q?cYr}MgS10t8)M@4Qi7#d<&!J~FV2ot2-v3kyfme8E$%bw ze!gVC^0G(+g?8((rD`WzT*Tgd8hP7#%1d!S8jWgoaK3PQDdKl>b!Z>Z5BN!_d!*O% zf2S?}EuY6fwFM^+$J_r#TO5H5oXiJZ0(NRjdD#d*w;tZ??mLRU$i*g;f6>GJz8BjN zHCI}}&TQ;B-Si1^-DA6p(kh9o?3gVJ9d>OgswO16>t1uFL}|t#JILSdc7Na1?{+GBQmx!oTaR5LEz8c#{Yv!gBbZfj%z*dQVr z0t>pyPlD&;gNkb2YUygHRoKhicM0B{U+gx|oyzS@5j+N+en|F^4q)F{=Zn+++GHeT z?QpsCwGMXML&5rRf4D$XwRxeHWTob8!pby*u5y9w+CK={_7kyRcE7Uy@qNI?}3X z;lKFO>wTSj|H0yNc5&Ri4HmTMdx3S3+@{lq?HRy^4Guco2){6s(SP-O=o|{keppME z!K?Ia@rBP-gimF*5&N7i9wk=w$6cJUx#dokz;-B%Rv*rm9viSPES<@s3C~##261W9 z5BsQy>h)lY)v(6owxmULGT2I&ozU&gp_f$+FrpR==>;A$(&~^P;lQbUJ;AT-8g?6_ z7BVdEvhIn`5`Qx^Zv?2E>Mis-{LZTK-m|aWJ~U|xl9?m)u)=0xToG@Y6ko0|$6-S= z>HGnfKS)RpZDeSg3>{AG#sc|OlzVGTM6DbAM2BkGuO>*mynj=%L1b;%S01H_H-$eF zJ24Pnp3f)QUP^;R%Rz4zQFg`(wts$t-$=_v?<-c%H4%a!@kFIl)qVku?w$FQ%tBLh zvV2+=ivmX5WLKv2m~?`MC|#p=nN2sZhtHcCY*&l8+q*9s<@-;*g;CL<5bBjYe<{qB z`AcPDk>(}|6lqycvvl~SHi+)UTN-rb-pNz?3{d)ZWZUlUP(-D&xy)im|_P$ zue;)jRzF91+s6ajj%VJf3dV2rs9k08I}{&#!MlC|^6AN>+$5~A64swwnHq_?ZoGGU z=9;aHatyNWeLDrUqO{4vN9uz-DWZAi;;Y*v_t+m#pd3yKX?1u4`O5GnaR(P>cb1exbwxiammPiaKz6=#xz88r>2Gc>%7%aTA7rgj*#awG=jo4KRjtvR*e&BP6MqJOLuv&RKOJN~v&ozUBo_nctIrHfp5MW~W+7yMd)=nPt0@Zb z$UW7m3a`)^JcE;T-XIHUP%?FTt+?G8%gd5TCRBM-HF-(fKQ@8x(=_YlX=wumh@nfN-J-!M^#!trz?s7NWxJq!v+#Ze0M zJ}tc|$2|EKpp*lNN`1;C#nkx~NPU90yF}isc#Cwy{LSGTrSea-htKv%Hzo%dU)-L( zbYu#j8q~7_{FS++#tV|H72{ZCk zN{2+G82d>kxIgRdm7E60dz*QiUu?C4Db&w(OR2qsy?)@Bf|Fjq zP{PDv^MjgDPuQoL^E}bpzy;nLA(dwdnfqosP48084+_@%paY@aJDmRd)iwcn+pA1b zdk&)#JG1y5g6@-B+kB3iH@SXS5){v$5HMqzMNkb>1^4cGgBq2B!p(n%41f|i#%+Z< zt8_y1A{2i=JCkUDRZzQxSR%R*1Y%<&)uh`$i+wsgD|aVK;sbXMqm2rErO!u_eB(d+ z+JTzdR5I`f)sQItnE9< z)_z^FBS+!NgspQLy)?W4Gho}HZtT|~j4VWga?1UNQL@>SXM)OZ48>{~GxokebMrn) zk5No(_K`*;dgEQpH7vJL$g%R;ml~0PLOsG)9+|>w>;@F?8S~ELqk^Z!8H*Kg zjV0aVU4xOTT~Tx6nx6JF_}s|e9BQX+A9;EPT*5`V*d z^A^bmpZDq~d7dT_(~wALCBCYov{)Y>l73uf-Ix*o50o`_W6eIfr_{YpNcm{=9PBJ~ zAII}h9G*L%=uz*#W;SI(TIv7zvUPa2#Tl=x7lnL>!P^!6P zURAqiZ^iT^lUTZn2U{3^%PM9}?vN+tG4@34B9MJzGm|5$#Nl(n;9$@Fz}X#;Y z1JNl@yepizv-as@xL2r_#+5*#tU@_DBA3Cc1>uT{5iv0sNd<>`omV*i3mKkjC|N}? zhQcRJNUDjogk)^;PNB*BU&8UM8Llx?vKLX*HZ+2Pde{Yd_95%q64jSGLa>6FqTsZw zw%DOkt&fO)x#&|b){Ea})nh%y|GxEFG*4jd8P)sX5VCryIr4Zr6Z2Qko;6Y|KS@4# z5`^8?!q({CI8_RvGg^{MdV$~cZNC0}arV#Dl7U;8ge$%!LdO*9c9>u?3%X+pZc&XF z$qe$(Cq`+Nt2#&Gx`mN+9aW+2JeGYQo=0>bY7(-uUJVwXMD?a=&BiUtqAk$-B1R=I zqf=XjGJY@rtVts1Ug~U%UtX+k$H&_^vB^Yojw1AveX|he?k1^XjL!MY{t0z${<{x1 z_^G)2(yXb3lP!Fd@6g$QtB?1785eYz6cVLKD2aj_@~yL&1VyzHxNsJ z>MCU#w5UTl)(YQa0C|->=#!DxvP_z&&_r9@#IZ%gs2#!tZpgzv?H~+dhjx`LePXkD za;NSXKJ&fS>m$Z{ev6C*ZFAeM;Z_MVU!M5E?*-EAZ3UKE82iDeu0?8PV-?6f8B+Zv z^z`&iav5{`Ke^JmWd&*`tU~7{BIo5=vA#2*5%+_FJ6l&)ilynIqcjs3Gpm!%WF*go zZEj5@-B}(pvhUd6Y2~*DTxSJ1!a1*ter!|Kjvu9Xy`PfS^~H3W^fi)~!fotjG4i#c zIc_vub#kD0!a; z)=ZEdREezprbWd|u$B30@qC(?qqggiURso}3@uwQbm?;qXB%biT8b`(=tRgK=|GMi z*|aS}qefZjXJ?^gzu;)k>eM>+-`^5RscH^{9FF5jT`l}2L%K~~y~NRc@l)&uncrZ) zO=4$-1SQWU{MoXOh#JEos*CsW3r(S8lBYSK*?Y0|*DbF!1_XKa$=-i1pVLP_;4KX` z`GWEg%4S%($vfQiOhaG9FaI+F3a1UeDU)>AwJKsJ=M>YjkKO(Y{g^k;7HCiFwefbc z8X8e+7RV(XaG*&bWxqHIA+tQ7~o}iR5b2`dYYb)gQTAwd801;a0$cvG{MkW3$=I& zF)>Gu=v|*XZJ}{Ke}<}pCmtKQs*Vf9vh0k^zf!Rf_xQUKH^bia9!}clKd0`J zGj=Flczw&L)-$nQ`*WE?n%0){4QB9+0L?z()$WJF!Fj~%Z~i4bSZax88Jx zwSiVFZ1u;E>l>tE~a7(Z2eWvUE87PGlt5sUsD+Ja`XH*UMw`#z-fsaKMZ!y^vvCEGg@^gG)GkBwToVZ1gHJi z<3&UI*sS7+qiM~Fi&bn5DUcd-escThH-D3ay7xl9t8S%KmR1>XPt~8pQ&WeP%+U+& z*XIY!MyuVU#W~f(HJ7J{{T(gYPIZE3kIasa+EPC4hC%_pfgB_OFX%;suP{GN;m+3+ zjOCkS828zyjf(yhMt?zJRWaeiD!P?nkMJ~kh^YNBjMk`2*az{6)00xiR!2?9ejAsE z9cag(F^~n+UDXxyd&ycgz-a*KoS>F-)6;$t>HI`$r_{kP^mVpCV8)}cFF5XjRH!}E zeCpQJ!#CYP$CA_neUbN^_uPHaK?p)8|Ai<%@88z!hZ5!@pyMd}cLfe{gX zp8cbCm9)+Q^Hy5UD!H2Z`!MBRG73!eQ#CEcbEG{?of6(FZN)nLY?=bx*T<$roo6c% z0tidTyAbOWGi&QC^HF;&6LrIMD%0ugPj%dJ{ z`a$uukTB;HZVDI8GwS$Z6!4yN@`D*ZCDXzNN9jgVgQKzzHno`4B*!OqQlTV;k(Q8W6Qio4@*6lKgG%Yn0tOq@uEmq!1r%K~}bU(T%{?p2d=+17i;6e)!$)4ikW9yvuo_EmHQt!y4>m>>tKavdSKH>eW6`d< z-oU;WxeFa~HOk6|Y0=pJmdM<=rDB_E$KhigbE17oCi1QjhWgh5twS z-qz}K{nFFF6VyNHO#fFw1=8&PH-dVUs-V0i`eG1vjX#A-z~?ShU$4v{9wIuUrP3JX z^sVP3QfY)lsA_+6O=hJ;rZLZ&>|P$9x7A$D>Ydlyl?Cgd1jzHmz}Y>?TV3#34Qfh> zs$iEuoG&)f!Y1VPji4+mY9jsE5$wl|V!Aocrn?ht?d#GFGSahW6lj@*L)k363Lz}{ zA0FuUsm@>s>s>ibSf-*8bQ3Q=;P>^G_?^;{XB}t1*&xY(&JwQmNh^Hz<1Dzkojz++ zerHlQ&a!j;jMqltIk3HtZtS-B{fmKcg#yo$SGdu3OFJiXv#QHC6a4&p(w*(pNACHF z$0-uuNYC*xB^Q$|!CbJ`g>s!QmDxIR=3@f0gt;my%Kx7Cz&BO4__L?F#*hgaxHO;|<_ z8qjmixr%Zo7HU6k#oDxNW%bikqsT4j!N@#Dnoqi4T;kw~gjPY@i8!i%`UXbLJKu0d zp2o8%b4QW}C70u+GZLy_^7IE!)|=RWV8Ae!pN@^rde~jPeQV10Zb5%RyTAv3IE_J% zohO8r1euaYEhheBlI^h8JlO}cF^bvuJOv-I+K}C-tc#56n_eGWJdsiowRd|Pen^wH zJRDxg{p%nQ5uY?LG$ip!WUdN5+j`TC9j+b-i2-$zP;6MNUhzfECn~L_ZD)C%=5!*X zA3c)d+dS_OR1K|*gPurkzxF+S9c`qC_ljTkO|Um}U4)jKl;K@}z^Xg4Sp}M0 z8D;l7vE?!y9Op9UA@D33!NIDnjD90kg2$JfbY9mmSvx{2h0Rkn#5YNYae_)H*2 z1|`Jdb(kd{Jn!&FM|_29_E*{#-O)#jn$i%fiUk{_qvkUoc6?6%G*E`EEu;J znl^Jz)9w%h@I;vYPK5qz0$?DeIGfUI4mLFtM=J{;&pc4v>%Zpg{rB9e9&xquy(+}g z%AXrG%dtEwUr1)+OHzmy8XM>@qDz+?DB4BIMYMiV%MtfSe6_z%J6{y*7_wFv-O@(i zBHQYEpwVA{H^TQj$oTrh^O;galO$T`a9jK4G5-RQJ^E+P{>pg9m2$`FCrQ=}X|xCu z{=%kdw_mrShYnT_ciOTl_SzG-&&76*Jm>Ev1}d1)&VqeN=oo&Z|7@J(MP@?9FJu$^ z8ue|%q)P3n9iH>|wfP2=Q?V{`2W^BYeAOg5>&MN{n3=dV;2!&jPAM)e?ZEOoQuFM_ z2c6(UhO_a82mZOXAcPCNvslwF5g+UjsbXk5jJ_9Qa9*<4USiIZ%N_pRu>PqY@xLMy zkXRcSR?hz%R^W<1`1RioZ$Nyv!c!OG0g*XPuns2QJN%b4ipZ)8>L0?CaIUDPi%;)V zb3GxK;^`xKW!4eWc4+wv121n7Lvr7s=U2_-h9yMTVCkuh!vnp&4Odc7lXf~(UqDFl zqnZe?t{c56%UTUpPA11+o3*|936*6>e|?s~ZqGE1-MLyYWGEzQNv?J8e-8iM7RQ(YiUwsjB8;HCd^r76)SDZ??#b&xl((~2$;xLzK({^p`K>wVs`yIr!t0B@V! zU+uU;W7%?wMLvoTLyg+!&rwTr^<@izzh(E4fbq_&6Q2k5-GXKJiex{y?YI)Hiep>j zun=F11)Vz3s2VizH(9yvU$;`m4(etz|Eo<#Xm&@76&)S}4}=oh)qdvKne{$**_|oL z@8aPH6nIY2);&+7<7OW0>g>fINW+TF2d>@Z%dLU`=$hk*P(a}3_&=_@Q}?BV7OOk{ z&*A@O3`)A&F7H`J7FL-DmH1(={zf{DPjhb3WUm+L{|=h|YyJj49?pNJTljwpn*Lc4 z>Th6)OCN@&_UR)Oz_>y8olBYmlbqV|R|oW^0$o2XfxvVESCjv27hJ23y|H zdN8deUy@~-t~qjSngmvIx*K2gsl6@u%jrjSzSlD)Zdgf$9%K5Io57a=pLvzqr*OG7&wZWarnrZr2-MwT4T}EwkZKtlWnUnaJZTcJoB^|(92c4 zUQASG5|we;K%9`J`XeIJ1%Utbis(zlA!3sCuG!P#lJ(OpQep)ASd{6>r-g)+=|ztJ z`XOE8iwR~A1yz+#ZJ`mCP{FcK5te13s1U|~Jd_-Zo4dQSVVy>+z-f2o?@HDv_3?wp?sob)p%ru25UcCSkeP~`V}+L z9yrI;W5h>oqk;zpz`r9e6*$fwVX7m*AnN=w5$TZ#YH}12G&@}WG%^k)(7ZW$w3}oR>E8#R7J}89 zGj({bZ?d{anwodi)%L&!g&=7O^@j2jYmL@IIabxPp8=Do=P!BLQ-xH#hHF7hJmWZA z(&nFU_a=|zA6Xxe|Kn*D%0O6X=amnZRwSMthtn22)w^JeJ@CXY{Hk;ayr33(7JlJ3 z&6#pX72rG`C;_>W3!*%kqA7_8#H#t1HCwB&u@?MHf4})A#b6XVq@9GI@@S z0K^&i^XiAi0hlPDR!ix8!i?^E`S1)Xz$vUd$*{KCU8}_&CP)SLwo+M56nn$E!H)I!l(r2`kY}S{75g z0l)8*wsg}Dv-zXn@~DWI4Ol24d%-U^+HIWaa3x7Pl*}A{sP&xDvd`Te$fqq&UvqN;?wwtgVd`J`v`T$5l?Fq1|gi$%R*>r)KTUkAsi-^qV_J;O4UaQ1I;4>MQ#TG%N+DsGo zbn3v2Eu0E_kxxDplt7(+FCKO48&-_EjgQ=B-Wh^N29`W2@IbUY_S>f?0G?E#cI!8m zS?Y&$hhkq!1M{r17xdJ(92BL+6#@enA*VsJeN>jC`KGg?4#1b>52}GT2^I$qWbV7u zqqDc2kL&gzBtE~xko*mbvF+}6uJ(=lz)OZ?ugFraPhRGP62N~c%9ieYtF7;( zaRs^vKqDLUksODB%C}<#IS8pf(eqWijxriXoS@&iyQQMnYfuHqeJV>9mBYUr~*`gFH8R{*PK>0dJ!SJ zS@9(lIPcG!Q9ri}a<8zsdeDl;@9;%5kI?5UN(>M-{o9$Q@D5PWumsX^DE4=+m2pDl z$O;1)^3`W`pg=fPj?iQDr0E>hDAamTG1YV_Z)BLdY3fTWk)!4fEL(Vzg=~>!JhQzp zx3p#TTS^}l2Dn=5MrD~UKvqokWE$HN0yQoB}mO88egguFrYYJOv$}#DciLSA<4A_7j-P%I9?J`I? z;)IF3scc)G;|~=e8C3zf3QJ3Lqq&zZUtWHc`uNe;)YLX+h?pnnWO!!vP`}pl0FbwS zE2b0IR-%eN1C*pfP_=vV0Qm6@#I@gRBn2Lnk|WG=tGz^xAulc}} zA65lg@!FyTY04jc;Rf2vLhTaqhktK^4Axn)#?yK0c=WWQxDM>{^r4J`nlQJQY;NA$ zog`@wcG3hfq&l|h$KFXgW?$LHr1GXTW`P=QoGM7w-L4 z`HyO}g6cW1u4Ms_0B>cip-~yQ4)qW`Rg^8bOx759YM7JZu;8PCh2X=Ta(FCJ(#Nfs z-b~KxZZ2C|VzRjnOkJC*_v)hb@e@SPk)6{(o0Yn%OmE>5KL~vXo6~m8=atk=vq{+A zh*u@8x_Puhv!IVHIMb$JPzk=!o(-&dh)Ek&cdmf)fD1`ED`_Ge-{C*MHozL<^B9E@Pr9h-?a z>*qn>k;``QsU0?5i=|xc)kzP|mC?*M`x9ku$g?Os=&%vYbpX1uZO$uSZZpk-V^N-+ z!i0y?TVFTmrH<%)^vB|$p5Andm+@Yk*Y)vRYUmAyxbl(v^bU;nYkQGjt?WzyN=^IF zd^%O;z}mwn&x^f;icaYvcQWXtA;EEB*YR3#8-c+}m|R41s*_cU7&hmxT+@|n&h zgRL78>*Zw>ux6TB@b>FLW1ZfhY}%uj98IsRMzoIPMQGnS*eoSqsl9*Ca#Gf_T0}Fo z!z{lyJ92aRN9118>`oVjcc)E)A!@fb8EgUfW2-Ugf>hX{8plQ-!T>)_6BFt)5=Uno z!S@rbms`z?u^MF9DN2zX-=~-)09_>w9{1!Uq>v=S_gcn3dZ#r z&b%%WQg{iv?vDqHI94i?k17z_p{|0i6ZdVEl=9JVt0>Yf0Gsp-x?#qtHD&9&q(X_P~wy*-)Sj3A(X!IkG#zuGk72rL^li z7P>0{aw&KD%fyD%G#|P-ZraaqJBsYqDW^E{Jsu<4S?isx$aHsaIf?X!bu)6!#4I~0 zw3&|121Dxn^P1<#&hOL6j-6J^&-viO4n%L8?eBN}b!AHjcd&II7LMnGTmkt%9w?!5Vxh45%*OtkX``&Y&{Vu{5p z2COx1F!0Fbkai_Ri@!!Ky`5gb_mJ8y^tkiZX!z0Kx&O7kG!<+%2cE2QJeQ#@_D97l zG=hXZ_v^gbYaQzp@aSd0Emu6LX~gnT>jw#(j@U#gUv2DW^qOpUx+GE@bq$qR__@b+ zq^7>>op|&O)WifW-AmQ1UW2-Bdaat7FPk5}%U}Fit~q9_-ZBsSWQi+8M#I_nX{UQe zmCN+fDAfR3KA*b+Nf+4JQUo0}AF(`Zc^{w3<}kWz*{U%Lcmy~a&H8oou6y>F2VL_9 zS=XO)*dTn9=i!?$HRW=7dgPZ%)LNXpD0fUbaPqJ;vf6V zYkyKgu9?)epTM@SR#I?T5iV`pzpM7sV~A@D&+rbua9&5Ox|(Z&F&358su!F?|N1(p33E$9@2yDs zk&_4>UC7A1r^HE&pN1g|y02qf@W> zSzF`M8}Zn@w+XSFVjsGPI_Bten;lf?vURA9IOY=_8C(!h3Tg5Q@Rq9?)~K}OwqV}IO3 zK-#-+*Zf!5P~&p4y1k41eMbT!xm!V4E%>2=KNfbrg-qEsKPI5^WO^aR-|E<@D&`EI z(r>fqF6q%Kcl${gxcDDzwJdgMSBiUZrnJojRE<3Z9`pSc03yI__gee)<&{A9uR@=LtG>c? z7qp357aUcN^%eRh+iyMYBfxWN9)X)-e8(}R>%yzO#djYlhbAV*g^e~RS=bC7JV;1~ zt`)R?j3>;M(d&A(S+!jyI3P)rlMzjI$e4ewCzm@)JANy_)Ml62sU|>pU$^Mic>c$bZ~O){I`xft#i7WtK~_tAyL0p%ewwOm(^j zR`N6LxAqmDnM0#)$6|)X4<;n{nvEdVORDh&FL8gHZ)-RYgoAje--38EV6ca7_}xXklrA-`8P0`22B67HVd`nTEo7VxbPI*0qe3Ww)Hd^# z+QZ}q+gzlw#D@8DNKr)*=EfpsE)kSwx<`xPwDwZykWgD;B|%U7?^Zas6_TGdTgo@DWgivcVTILP#i~l6eg|@5 zu|K^C>nu@1&@{ZWKfq8@uKCWr#9DJx)rmPQNdeqVyxh6^bq(NcRQJK^ZReysCQ%}Q zJ+u~j*m{~$iOxGRX4U-CS=?CvXmTcIxOhB;*R4o}nF9xR|N6M(0Im(qaEWdwDD@m6 zaM{XX)~D^d*|QqSO2qE{PQ^xa_lErOtR5;1dqRJl1Gv=*%`y&dfS|iIXL8x)jVJ2D z4frxU)xSCV{5*gS1yzw0tU7laU$5?gISsR3ufAeq7Mxri{mfi4u1hTfSv?Xl7kRV| z1q@NEo)nAJNE1-eDj$Z$d<2jvT-X0{%Ht&WNIEJs%z_uVAshden}K2*v_t^FwI+}C z$;nBLKlIeEbMQzr2+Y>#XR|dA_;01YcY{pAm&^4q(V)(1ebm9vIft2k;4#n?-K!X=*#^(|wvB&ZMQ=+1CE}nq`{Xj@LhvzyBVz>ysKBh>Qz& zeZluQ3$y^t-VdI7EK5x3S``UokCD8Y@0Ixc!1#5=nS@G@>Q_TDy04gu_9&Xl#)PZk ze*Ues7RR4JJsqK^gjMl5(7R`B)w*C9wm{H{`~i-#&c~yI;X|LCXfJ(#q!$H992|}Q z)!mB!oX`nhqF9ghknlD$mFDH`g;>+g6TA}erpeF=6HgkzhYdAa&h=0X&$4L$`VyU< zk+j^$=hWwO3%Tl}UgFceb~pcq*QlxW7Y@5M>#JxiE2n>NFdfxmg7!hu0;;k1R#=t@ z4c%Bf%uWGj5jw*-+zG1I67q+(9c?I(HB%&&$h9w9NMvgPOJl)nt0Y+D2=E5l-ACZ( z6Q*1v!AjokXT_?G8wb2RyaCs-SFwhq*SolIKo5c98V=_Bp*N$DaHR!lv^y3x$v=Ji z6Wrh^1(CCFS^ULiK)s3oI9@X0eVX&GoC}3Mb}2$FULyqVTN_~kfW4Mj;xx}{qucBg z*DaiLv=ipt}(k11co^{oa>qDyrrJ5H{P?IanvPGIR7Yxl=;p0pn9Ye z)C3u+0jRZ6ui_tmc$>A{agW|oD~Hj^WQY$9Im&V#d*D;Ydj@HEC>sSltqZX6ZkLNa zmat|~Fv)nD6_q?=afjU2E1kii0mt7bZS0ldguhralK%uz26G*+3rLFWP`PXt>-^)) zhZG7jd1&KhlvW;{J=5Bu==`oebwwT(3>! z_Wl6KY@++f9~2#96wWgQ%+x;=-D6Bt^`2W-tsfv!ZXd47-9C_(!1XtRN8Xr&W37=j#9P_<^x=r#6NijfThNnnH3+cVPRDK+5C(JH z*j64c!Y2hXY9I|ugX4E6QI~)#F)xi)=@Ld4gs}@AmH!h<0u~yxk+ZgI)!7dWs5dp> zPvZI=XI)tDaxt`iIhVC=WDm+Cec!AvCKI?f@EFNCR50+KnVymSZlfUku@y_0@N(Xd zTKi@13RNq7Pu4{o?|j@x?Le;0VhOU*1mj~}29&IKI*A zg4A(2>Qm7wbrB?atWsul-U#2U8CUVH2O6y0Qh=-T)@wju?U&`pC*%T}ZN72J{qUi& znLzVDG=7tAqp*xV{Ln2))UaqFeep#6^4&qVV$O-*K)mDip3*=2rSEDsRm{?VK~j@^ z7Jj^K*pZdAY(D>cLIGSQ;#Ty_V&sooK=8P0Z(trX4=^sr{8ypgRbvKzZQb#H&H64f zD-1>L{#4)l+J4Li(RF0)E%O3SPAwSnSs6TZS#*C_fth?RP~80oKF&Y>@p&suGspu_ zT54imd*_g;?=q|Pj@{u{RBv>`J=5eUBvKMcM_Vfqq)NF z8<|(vaRI%sx+3=xWv{R>)(!=z zF2EGGH|t>Kse9f+8#aRo1TU6)7IXokLB#DC*ACa|a^>ELoXgNYXOZd%fPbjMdS7X! zL#V=aceLGyDirU9{n4@eL&4vjjbm}CQyX=XZWo8+TSNgChZ(}*jol(Z`RP*wXy=ho z!U3Gc3kF$Ttn-6CY*4R#Y<_!>85VJAz5J1ZmB=gUnk5&+&GaWy8ms#k3%XS#Pi5Dq zr`;$Z1i(^ig=H4fvfq`=W!8vU72e7)K8CJ0Re=H60EjSD=TfCODRbNYlsv%?T3|h{ z2B>aCmx-KHM%QURz<{BHfgKR59xNr1T370pgFk)rO(5eQ$-Z9z*dI>{{zlKu;~y}K zNT}TgUZPSKQ+x?Oz$VW+F5ko4M~G@3XTQ3*)mrFRNiGExLG36$GC+JS#vkna7ad0C z?9+fS1u#ezn%K>;cK|Fwo%(j7w^svRA9Jt>rKHD?*88V^`}Z*jP8ZDpz(Ee zz+*DHgSMr}#H7&e0UZHI7@VJD{gB)(ybxd+J-_M$copPVJ^&24G~zmF_U^nw%gTAy zhoKlaKFETly7UKiJ3w9V)5onyq?z(?f!l$#b|}VNAVG767e}>cmQc8Y7Q28eJpV`m zPzrrB^7t5e+A7WV0bO9Hf$1^@>>bI2&vWDf$DUr>%QUMwt#3p&U{Zfu-P7PH89uzcRAr0?RE3km5)$w0(>H&`tfD~)T&cbaj!;}sx*~wH&hv%K{0T9KQ z;@BDz+wqvY-Xo&WRi~U<50flo+s!7{f1p?xff6FN;SLh(0xuydrCM-UE_+hunFuREgYo?lvw3 zS&Zrt|E?}R%7L{p>^R568U?ZY0+MobOTE>{OqT2b>U^zE2m+tV`b$sr{T1AqZVmZT z)4__JaMb`Xls#u{teXUlc>6aUQ|b$Ce~glyH1(9JFF^mY+AorLs!38_{A6*gsQb$j zVTHf}qA#Rlm@CzBfqw$XWTJ?O5?8vKYa^-g-Xo5Ow#oCL>6PKD%UN)ij02fb_o>(R zpj*1|)Z#%5`lWO~-Sk1yq(Q?JVAn4dO9L)ufZ@s&M0t)=BzuaX$PZG8V(6ry<85vV z*_tM|(d8r>O5uyJ@BwJ=V{J8%x)_-C(HAhs(wptca#R58?JZ-QrJ8FZ5Hwf~yxeqX zk7MYZYf^rBY=)ujv~nsREs|2Hcn0xFIr`Vsg?WyE>0E0@ugv9g&fX}dH+`;1*7=V( z)ha{L;8i5daXD}ZdSe&VWIJW}03Pf(zRcePoCmRb5ln}O74sQ$GX=rMq%o4Vx% zj^b%|&3|k=3QfvH{XexmD)=#p=aC{xlr!n?Hmv>E@<4BS*t!3=_R?~4as0<#T25~E z|GmAmkRbc%^H+l>%7gU$HXMl*BhLI^V`;4S2}eJZ&b8{+Q81=W@p1M)Z|?iq^IBX- zh39D)0~WqVJOjtRd9*rp##={wosv`3=+o~g)$D=zgLequQ(3B5=H}p?7u9oyHC|`8 z0q3_5XNEQ1zH^g;UE`TM_tv)_)#Jhs0!mR!}L@&E4=I%CU7 z6(2m>1*XHysCUagxtsj)9~L-`E$2QB3-nUA6Iya}X{_jF*fafK?R^JSQ`@#E%0cX$ zb1W!bP*D&9p@dKpm1YAJDbhg*9Ri_*(4uk_6)8$nDNzwnx`5OK1e9I`lprl2B@`j_ z5CX~HK~K5n-23l;fcih^2yhI%f`?T}{{#Tp zO;^zAl>f`;*<(s>Jm3E*o!=SZZ79UwsinB}C8jgxKO^IUmei|m-fc2+8^|AengH8h z>|F9CEyV&WGuv`^F!E%@z&e>Ty&SuViVk`gOXq36XErfqZ_f}KCbX8mqL+c>aSx-> z5D)pF&aUlQlNsDr!R4vLvk^-R@Q+h_#059+wopl1O*DDkS~|+nl_={xzep(^z?j7p z&t}9kK;*Vt?y3;-W#V(nRTsr$!tlz+0G zc=2Vlz<2Y*=+Z^)!QxMPI@}(nV>jmG-tN%tdL=`>dne#}QA0nkQa1)-up3>uCMfgs}fQw|? z#F9lD0fc!z{9Y1$A)*Uu%Y~`jJX;DQx^00Sp!9`9dBh)En6;*Enhz$ROti`*+{+^SNWc9026 zmpHgd-H$3#a~lKeE{CWrwx+pp-*CabIF^9tjl`O^?BlTcsl$5&4_q@|3uQKZOviLNV}VU zaPBCq=>s1QtzBSB>L*YocXw>iG5u)5DiYe3rA`me`Wd;P;AziWNO?L;r0ys4y|5<9#pD_n+R zG{|$faxPqH^IAbA|p@5zDA)X%0yFv4ygm zRa16qZ4g~Xo+K{lke`zaF>A4)YfqY*Kw={*HB6CGZ@kHsAQ8k=nKN^V^d-HD|EThg zLixndT}}GD%q9I9@80J!VcbDw1R1YNG4mUzGO&;7Uc32GR;R*_<k;gXa0kqg2h_VP5($q;)D6lozyoKyR%U z!?pTs>HZG0##*|5npQANUnIt>kP?@k}d*fZOZxOIOh6FwcNn#NfD2-?kgW z%v7E1!d~~M@tv=?PAc{rjkk!ny*FzYq`u63D|IkVax~m8I}v;D?c$_d<*^h%BTh%! zsKoQ(|CPwhil_s5R2P8AUp|_z$;n=pZ6zcnkUO@Y#~A6n^;J!1&DxYsri0a9%JrR% zRuc5*R-3CPl&_j?zq03@iPNo>ljm%SKan5Z2~ug@YQahXTHWt0#U+?z$a)Vb?S6hN z03m)M%L`LqHYafA7hlAx_tgF_p&7{KjTy{Grl1f07_*is*I;S)IT> ztXwK!OY@hqix`K8cEsxDv|Ej4F41nleu+tKzh&?fukW=rh6sjSPhB>++05T`eXj%Y zu#I)Y*+WycULvV^WX@N~$6;K}y9CkWJkRZx$5)Tsxz!za#T>5upiDhL666 z?-BRuKrPwZcl9n*zc?Gy?s)I~jcs=?X$$O$AN)1^s{AgCG&PSL-l>dbfR}cKDy!fOjk=B=-g)=#-K(tYQ&Bq){G3ai z%FN8wCt2Pe??p~si3<;(ZmU12aen5|o!hss6uBxaN!@IYi7%EA6@74D?si<3dUaBt zqoZS5#iOW4e0)N$PDqmEcy7n_saNN_RtB%XM2guNuG8xpsQFwh5yrjC=7!~7AVus9 zhieIG#HoXr8;%WXhfg%w+u7-pPS$6D!C;d(#K<-l^qW)1cZ_me+PO_2Cja8@pWpqz z&~PV4(7eE&)1lV&T9ewGB@vDAZ5#Qf$W(JF9X#@5!}-= z%d`dF=uIv}_h%K=;CTXn6spktSWL))(a~(tu-e>C?Mzb$|FETVPKxGw^<6=RBntd2zRHX3B6eENJz?JHqOuAMeaE*AAEn zXIHl5mtd=rsqzPnRlf=g;~=C&%ybXIeRk{UU}1y+w8<(lKAzZ;z+?Wpm(quM@BnNI zh%WCmIb6q_+(684x-KR!pM}Ra_6t1~NHnq^lP@?Dyf$~P^o#H0Y3P+W^$Qnp0aWD` zXGh1JOqUaqnO6v_1^30GSEinPoSf;yd^U=Fk#3MSY7Kt<(m=xfl$h4xU%gb6gQMTM zr%T6#AfSsAoyLB4o}Q0zxSl(3t=2pK=Mbj5xwx3cBm)Uje*X6S_hQ!!qw@Wqk== z|NOxji$qeQqTa__F=`$h!5HWC#idXhr9%N1<_nL@I&0ROTOFd8s07C{K0j3tEpYuU zGBOf}Q$AW7l?;2C=RuByGm3|gtNCO+rrS78Ok`!bh8!wFBjK^<_8mN!^jJCViFJxf z&a1{(0%>~KP_y4cL+h5Nbdr+Vb_*(>jWfHL_e!N{sQD2EP|s1kWPSlDUt#*%CQdh< z(a}+bfMxvH7`DV#_?bYWbm-vV&+d5BX^>1-{(Sx?=mojcr%w~JCHE?wujR2pjE<(I zMQq!1wD+-@hev&FcyE9oR5frVx)RG#eEa$Hy)&V1Zj}#U!b%<&i(_ljbX4#J!t~7D z5N^FIy5&K1OYJm4SJOXM+`U_I>1Ckcr#K)0nh_gY z8i#K3S{AAlQwPjCqML>m+A0r+b>lI-G#ZXkcx`R1ue8!v9s1?d<MQgvNl z%_apoxH>v2^64BoGP;9TIy@|l=`rlyvz8?-Q3wMQ%E<ds!K{F?v`cfGU)eP59W|jiSx-l>6?BFLUjxu=7&=lTb3Q)D5s7v7F@dkm)_)P_5oSE^ zoM-n6VnK4;^|IV9VvOWYFcj#O^dYK;1PX(Em4(%ZkOpv!(#WQ}96(5bVb9*;Lv%M%!DrmdIPJXIHO zfmu|nwT*O2nceL(-kqIY`4bnH7jAWRd8Xse=ZFZ>vlQDBC;C!Yfe*gw_z{G>Nw`_D zP??7wV4CGY%A%qYAY^QI!CRJ*)og*oUpIV^#yg^7!)+c~l;7n#ec-?WyQPyi>mB9q z!;kDvHZjzP78b5um~nXTY|;dpC+0$+E9pjd&_rcJ9axgQlXHC0v$9o*N6R5Raocz- zfqC!X+DGG1^AfpByLDsKQK(6xRs8luVHlP{m*yHCY1pw@yL# z%hPpg83Ml35=Z555aj)jvS-g8x4YmrEd`0?WGa>duhK2GsZp$JJM2oTh~L@T2J#qc z)qpCk55}5KGh0=>vW50#S(M+|N&iwH<;&aOv$_MbT|`+~OXRnRz{`We#%6?*X@jUU zXK8xig~`cGqq@EOXAawrwOM^hL)AAtqAX^+P%6sbm#&w34C(XET!;w?5kD*pTbmeb z;YJ|#m6p;*=pyL2!O!pf3#z=x6?$6|l{^RTr}79W-R7rEOgQ=KLV((C?X(V>E76`0W!n3PWl{j_4)W+&NqN6W29JV(;xN^vQ1og2siQcdh zD@i;HJ)Gm?(eOZ3yvwF7`B!udCsXTnSy`>L+wC_x?$u8Oo_pZb1L&PV*yJ%YmXHI3 z%lYoTvh8d*td-K>yH&3@>0?Dus$HPFdqs@;=hNK1y|~Gx`?^^n*+lg_Cqj>3wxmo7 zZ_Uho3cQuOw(C$-syRK`EGDG0SdW)i_=pSGd)$MeeL20tiJFl6#spljaA57{84~vG zOjgAj%8Ex7wKA4q+nOB$Oof2;TUhRva~O-#(@Vy`Pj$o4r=fN|!*$11oyqQ`eO9}V zUgkH6e*a#^Ed3|JzEsRVE+=xqe>0*y0C$%8+_YN*BI0v_UwM`5vHdQFhDrT% zVf%wLYO#y$;?khdeUe=d^nhJ;dQ#nn+8%ul$OeosUj2Mio1G4j`mLZdX7#r9ltDUN zjR^irpKGbpy?P=N!oekdGkx|g{>FpSB4=;DHQcQzFCWbvb89E2;r`jlDV-7fqVe$q zP241nxSFAw^e+Pkkmu9&tPXcZ@Iy|mG44O6+y!x`v}<%7mYF44PI$~+Riin6=_Y<@ z&3OJi@g8-=ZUU{wAtL7F+Akleo{MF{le$l3< zr8MD@M=Egm5+Q);+h}@aEnysw$4^eq+$L#0n75c4&2#G9oqrTmq164Q^Wgzb>ix*b zwrn%__BQAFkrUjMD1(=QH-%fXvk978>S~wc{mz(=TD!Vp-ETR+hBMDf+D!KcJj}W? zI`#A|+^ni{&S&`x#-c}*F--;Bt{Q!@{OmDqa^p~YN+nA>gJXMwQTh3dV=|d?4i#d? zq43 zb!^i`&3CENI^}+Ib#^^BZtRlA;y5u4Qrf_77e#L6E-uLa(uI-Qa5}jSTZvi7SzJ5| zgTdm`BY?!A4f_nPq+~Z#omv-R*hNg38E_-`P7mDNVeI>5MOmDzChfFif8clqi3?57 zd7cg~E$+0cSX1}(`~*b(>gsA*=BumkOf%)OfN3fDi~Rxn?z~_4A@1Y>vd7Y7e@90r z%kmeZcGg@-PDJ>?4*xbVFfgJYtfggtseRK-&~6`}@N%^92t27yrnxIyvxDc3A9uoI z<$7J;k#${rFdr5!bx;^L7y&soN7v@aB*yL*P|7i)tFYqigH>&}1Gh{H$HlH=;^LA$ z-}jx3PU|TPx%r#N`1_%yrK1eG@JMhZ!H=6pbW5T`CTj1UE$|;4sz#rg={0Vw937Cb z3Vc;JS?J?~t_@GHM(b_avc;{psP|@Cion|#b#rsP7->GoytD<&SN|X{Z}!HG@Cdv* zsx^@dNRZqI0 z;|PG&yLX5j0;HqALNZqX$Oj29Fcj)jb%Up|sdBobSyDopl~YC?0&#J1VFCiUxwru9 z$EiYHn&L$3NH7Zn?`!n4+I2`EqIah02+LSodwASFm)bEUcKLE0Fn=_ZTK#N#XyOo4 zx9q}A)U{)`e%gJ`7G?6dRr}NS zrul~>>FZa4)o1E8V6Cbghseyxxk%E#Jq~1*`M}zivR8nG^eZ19-@$`W$M;cXXA>u*If_BGe6+>!9OH1g5d81b+_yq-}s5M)5 zYn(rLXs808cfv*HKy4&0>i+$0J_$fac5UG-W{w8@+Ohw3+~(8I+8ql`vuB`hFTUU9 zK{wC*=q%5tbw|YX^QFKu8+SVoZ$>X_21s2qKNY-pXEWE;lmE%DfAjw8`B_!i&z$oq z*4EPh*)Pt2PoOI|$aB{ZLoQNm0m zD4)z3!~~}LpBpq4J#nHrs0me|MsC|UOzz_` z%{Cg*-{@Gt8Mud=b>@-Hn>Qz#{lwC}yWSMHnbc5U>aMTQT|CuNRYAn9J9m0}jMYcp zxL&GOAlw{rBuhxsQJ$~dON(VW(}%Vu;`TDio_0Yrs`j0L8;I@fyUD+K>)so)=v_H`N|?`+t`6=mQ}aBj z+fA5hSjYAp-{Sr>pkRv~^EE&xFnj#ao4#aD-7}jx%ma?gDJeZ%p5){>rutSYu<;j; zCk9yqVp1M-`KJ5`5^NVo)N%VthBS6|JBNt&370A(@!Qx}oE#^mz1x~BIXKQaZ^&rcxI9{|T<)(3S)Nfr&QRLt-b9`+|u+(Fz{Et5wZeqoM*ciT<+aE0d z<-wa@RU>)cURyhM;NcG7YwMf*tQn>a;&va=JiXJ2<@EKUrukP0Gd$a{#cUR6^qM-xmW73}TEj5&u_AQQbg|VJuZ5KOG88R zOOV+!?UYwy6ZFyB0PhKpV6vT6L_Kvf$Y59ZWzeUBKNbXgql#jae3t1#BWwBWE&;jsNujHh}a z3Mii87OQB%KmDL7*KMd~^V{VHaa?5g`upl&X{&_YYF4;8qv}qgNu|}x5E66HDqM&; z;gA-qyz+@`xmIPl@0#$(b)E~#6EO?R@bPXb?&4PGY#eKe{F;49m z9;bMnqSDWe{1VKo_0KfJAd>?ciN;QyKIMYTdI78FMhQfFl^A8eh3jIEmrOU?+0-@{ zHyzILfKRJhS3f@NYa<@arz z5UXS|==wa2S+Pjt6(y@cnqg08zbTjVrz-eEEw?){rnc zNRf1$HX#{HU0q$3%)t+dyFpCm@;>&UnNxVF(TtX5Q)T(Qh|2Wdx)0U^Yfj?ij<|LrQ9~ZsqSGtN|#Id3?Y;;|C?MB z{?Z;12l3>!(4*yqhBWmpt^~8_(CNH|Q<`uMTnk#lr*Sdf(q;Z&(a56xh@i+dU}TJG zS0e>{-X-RaDGHby7thA^&PZa{IC=Kd_A_w4LKi1jc%{(1$na?~`x0|#SbB;GxM#HW! zB8NXW)fQS5I7AyOd(MAIV_08*yiEH7YP1{438;-%o=ZZ*k9mEriBz?8*%+mB6)%^8 zk))9e8U!M+oCAO=}5Lo4ur6Ylpq3OS5xpI5npUq)VwCp0%HNW8l;x6`^B3?(yy+ zd=dAl&s6AC-t3iA!hw#cjL^-FdDF{u1$te*Ds^p9pIl_-(#f~h6EMoJ>P;FI_5@^z z4Q#JyHUwFed5C;jE^qlu{dkNbDY^)d#Gj^sbpWt z8R@im$kfl@aDIS5eSeA9(ucIZ2i;A3qF?7d^}2sPQVGzie&}nfa^g1enG=yC>uJ2Hn5}* zqm3-+lXEJxBDJ`QX9gVBneanTn<2*(@R+eCsFzvy@;*}fPkH8#C@BY3W|rs46-w(L z^~t`|rEYFxgmz9v%*YN#-FpoS_6?igZc-TIsNGaMp*?kfPr7 z_NsZy#rpD@gQR&p@;$;j8YFVjh2b%fn)>WjuVrXFoO-VSbj)X_f?J?}+!_P&AL;fi zE>@)kZ#!}E#Tw*8mS0NVeM%)WI7Ipg$wv<}9^L|rR7dxp%9Z)B?7!Qx+q=(XT-ANa3AkKEbM8@Y$Bvfb0kbiyTQz7kySdLt!gXm&$Tlgj#)fpp z@l1SfdDYmyipaUTwg4JQ&TpW;Da^7RO$tIcxlz?<9~N{f+)ql;ooDb0T@w~ZiRBcZ zw;#lDE=nu0#ts`1O#pu`Ax9INjM=v^P)>?SZ4Fw;re-7qdzkTG9($)cx_G~da_xj! z(U+xz$ndh+4Cw^d1uQAK5FMS%e{ndc%-@`L74kN_xwu4{1d335Js$ev>OfPV;7cTP zXno7QE3)(O-~sr0VPE8o(-pv9Ztd*FwnPN+uahX{*sEMv{7D_j1xcEORh{m7JhNju za6b5hYvab#&)bXcCBo3zMR$-a9%BV-vZ3H zPjD2s%$kzi2grd6#S67&3KRw8d_vf!TKHNwFhx81_G(-B89w69y*j{q;)P3bR~jOj zHl&?w(2oaVKb+nd))Mfk+?(IPkHY`temd@v(F)hVenvTAk|hF@2GW&Y7%3Jg)c&|& zX=TM+iNVHTqV--bO~di+ZI)Y(IRi6fz_Oqb#hf0P(HAi?=dF4RPF@ z!CH5mO;0QaCIEM+V`N0qD*8&XUgajS4uC>CN#2GQ*8kW?X^QoXy%WSt$8M3BesmXBD zzsSI@`OPHG&J~5KzHWV@U8FYhQbjz_d^(-;d0Z0ZRdRQBj?zZO@v+C}9b zU7s`~N+duTlE!u8@%y2aXRWE6FeHo<6m2iFU!g{g|ES5vld$6ghl1bK&< z2hLWDj6JeGq1{0w*NfOegft9 z@9qR3-^vBm;$sPQlMxap>jSb_E#>Sd_>C)t`r;A(EdU$8v1SYXuN)3hHaJk&Ieg>Y zybIli(%vVMoO(V!DXq z7+kxUft7xEvv0`ZLhdpdqTrTvD$-!R;LV8EwiQ-(d>7M^YE3$HWalJQ0P8^&fxf-F?J?R_J&YiFR7rZ~&+ zGAkeht1`}I?n}Z)$MQAP({XKr z@S%pvh>D3e-g^~`cVD6V6o!(}u$<2ew9Xfq4~(Llb{0@WvGFS6!;^h%DT$SXz4MV5{jR>WRKSb?i8{=Bsvq*D z%%`1vx#XyD<mhPp;#nzn%m8~4OYWvv{)bRztb}KWQ_!7 z?bfu+=cx0!2Lf7N7YlihZ%d7ML>tR;1!XVk4m1G!*ka|Fz0&<#_KhK$P6Y(de==_3 z0k#r9LKpNiAF|1OO<^pn2(NqWa;?3ull(DFz0DI_iGEj8YmNstWPfSLdZ93zoHiLGf{gYzexJh`=K%StMfWF_z?S7_l(YFqH3}DxL z;rojayar3o!3=PD!lUpjdRW zv}#FBSrAasgSBlj3hpZ8b=a@Avhc}@jQKiFo5_UnfPSE&(*BIQlFD$g&CF}MTr2-4Gp!Jpq)ghtNfgZrFXYkbzTA|qm!IjlD?iEW_TA?k0UPhz4 z%nNKu)ndYa<9FtbjcLP_lJobGF3Kx;B)dNe0`AN>+p8l%v-}V+lVC1y0=UqX6tOUd zKe2xA^vZpBcJe$6W0L$SuxMD$x2VH8UkHr`yGLRGx`#`{q1} zRDCO)$!m*Zprq12tGPtmQ6U)6siw)i|H-95kXPEYXM7VCI{2_!3|RUsFt~-0O4dDL za!qUZ8lUaz^TMUvg*BW9RX!am)@}iYw4E+@9@qu&v6^-=e05llNfw{{AhkAg%M+dZ zN|#byqny=C4g>N2-lePL^;qJ7Q|D8Mc7bf55(2oC^yneZN>UZ`*=i-Rb1;}&2tv**14k-Ozk7tJc-}c1 zJFR_Gjo>&(b;&L^xw&g?HU*?O@!EnWt~j>ZYpj|&E}Ov9mm1icTRE4r_RT+}MhG@~ z7akS0L{CcbQD9$nk z{e@R;?2&^Nlva32lLY$U(|IU0_`0k6*LacYJ3o;3Qm?|JWhO$2MSv4XmC6$l=93wiL0t0dKwY75DH!f6)DM zbGNM$I{;H+mHKNsr}~lUoV#HRz%vXP!@r~vloq;&+a|kQ9D#cRD!!BOK%#oCkXMtj z7jIGAc^3jOL+ZO=cnZLnV&{!ythl2g;MT^xne9EFJjBYu0wk004oa-tY~Y+Yq57x%01`vB8%+GZ<9TiP?;GnvPE9DhXTgCX=;x$nIR;lgT)4 zy&siSgu61`hIH;>Eh|p%57v;9bfx z8-J$X5CB5|@hc zyxpn__w%r^bwPNGTtzrIxvPm%$}2@hob1#@jTLlcbUf4%j!tL%QHaa_x(2rXF1AoR zQ8-N1Pub7S!wn!T;^*e-?xpOfCTatSf=~vISqRMLBtVRWd-(<|@+1TTK+;xgm_5?H@!vd{C|%B<*ZLz-YJu?~nEZ$x6!t^8GHk zo5vr}?q1Rxy^yv=x`F&`JOD_Ue}L4{`PZ;+ZvOyoaM9sk!+V1~9R9@c_=`6FK@{Ku zAc`CS2~)MRRrY4t+E-Pca`pat;OfNckFqQ9!g)aBQg#S?8y{D1QP{t*NL3JPFkGEr zUk^4&f&L^944d*dlQlphU15JUTUF5aS6OngnETi`d=u@ojl=Jv!4U4>G26JvV)iEv ziz46*PWBjKkzKZ1Tk)iEpH)MSv3^=izLEY8H z%M0d#LLvbHze@GpHB~@%<%=3xMhKJ_fB=(~hN!ao^VhboL-iLQ`(_}3+X6>_cs}gU z$N}(I6GZ`W;ctSZoa~>W2{0i9NF4}8u1E*ahR#J;SM@=^hbWP+kxYN%;su+l2v;u= z*6&jEK^FkqI)-pR4!Z1(^0D^)1p%eU0=`IToe`@USiL_j`=?1DI}?0XhiY z{x!g}{);FoD99;@*zfwIO%~W$Xyc0epKUC9-?hmq0`I#1t_`dRDC4^}IS4Q_eAgxq zWye*NVaHX3057us4i_TFCZDW~0x(4X2q!Bm&khHcXNQx600!_Kt~`XTzp@GnU^X~K zFk9bbA#!Xo%PIjH{+@>tlwB66BAd)$86`FzU|A(LnZaOrHojmvSvHx$@?drz3Shv} z{!s^D1t>dTMRpy4Az*e{Ab*3a#NH++Bg3X=Kx8&u$$=HvWR{bYXR{YMd3L=3JJGWB zP3~{TNKQ$CO@DGwMK<~5W!T489#H=G`jZE<+qk^E5?kNo0rz9WRg`6uSsudPUwI|= z{>nqy;S^-p;S|8KY~#2$wL7i7~5}~Q8_BI7}KT=YZ zWz&HYggx#mLBZ^BQ1)01m0_m`m0|Z)=-=ob3OMHX`h!B)`T;C~WWR?4+7!O`U!V>8 zef$HKJ@Vg=5zwZ@P7f^ieSc+Tz)IiSkgSZ{-@pOESc(=m#BS$p#wEh<-JZhQ% diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/.busymark-html-export.json deleted file mode 100644 index 72d93636..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/.busymark-html-export.json +++ /dev/null @@ -1 +0,0 @@ -{"owner":"BusyMark HTML export","version":1,"kind":"assets","files":{"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png":"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a","b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png":"b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd","da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg":"da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f","c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png":"c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d","b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg":"b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e","33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg":"33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0019f7540aa7f466f453fb3bb7c11b33dd0706d10bccde39de18ec949d19cd79.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0019f7540aa7f466f453fb3bb7c11b33dd0706d10bccde39de18ec949d19cd79.svg deleted file mode 100644 index 285a29c3..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0019f7540aa7f466f453fb3bb7c11b33dd0706d10bccde39de18ec949d19cd79.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png deleted file mode 100644 index 59266b6a4861f1ec4ad5175c518b5db3e93dfc6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8126 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg deleted file mode 100644 index c61c7249..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/33d26fb4c8c42605ad2422f659f42810ea5b437bd822d0c35b6449d52213ec2f.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/9a8ea2ea8e0e10ada47ca38bb740448687760f83c5ee93cc688e29c829715873.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/9a8ea2ea8e0e10ada47ca38bb740448687760f83c5ee93cc688e29c829715873.svg deleted file mode 100644 index 8b2391d5..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/9a8ea2ea8e0e10ada47ca38bb740448687760f83c5ee93cc688e29c829715873.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg deleted file mode 100644 index 1ed6e56e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg +++ /dev/null @@ -1 +0,0 @@ -BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png deleted file mode 100644 index a1a64ca1f311b06e2effafd75d388116ab40b038..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10868 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg deleted file mode 100644 index f5ea569d..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.assets/da5a7d258b30bdcf5dc35742b41f00206a7592d4ebf2452dba12c78d05329c1f.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.html deleted file mode 100644 index 7886e235..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/dark-assets.html +++ /dev/null @@ -1,22 +0,0 @@ - -Offline document

1 Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

1.1 日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

1.2 Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

1.3 Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

1.4 Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

1.5 API

1.6 Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

1.6.1 Operations

1.6.1.1 GET /items

List items

1.6.1.1.1 Responses
StatusDescriptionContent typeSchema
200A list of items
-
    -
  1. -

    A structured footnote with a return link.

    -

    ↩

    -
  2. -
-
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/.busymark-html-export.json deleted file mode 100644 index 34989eb7..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/.busymark-html-export.json +++ /dev/null @@ -1 +0,0 @@ -{"owner":"BusyMark HTML export","version":1,"kind":"assets","files":{"bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg":"bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d","0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png":"0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a","b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png":"b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd","c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png":"c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d","b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg":"b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e","864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg":"864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/0089d928d051945b9c2bae42a954a98d7aaf7f6f59f0b6e75a98a5ff653e355a.png deleted file mode 100644 index 59266b6a4861f1ec4ad5175c518b5db3e93dfc6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8126 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 \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/5153cceea929c29c2d92145807b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/5153cceea929c29c2d92145807b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg deleted file mode 100644 index 44cf3209..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/5153cceea929c29c2d92145807b8d4d5dbbf7fc728fddbcb3216088481ad80a6.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg deleted file mode 100644 index 542a3f25..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/864b465d733c2cd96510b2ed691d6b2a7ded6ac72a595953a61d366d2e645dfc.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/8a2bccd105c3d7f5814003657acb9524d0689095c32cc9dca40ba45b6b386dcd.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/8a2bccd105c3d7f5814003657acb9524d0689095c32cc9dca40ba45b6b386dcd.svg deleted file mode 100644 index 374f9d54..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/8a2bccd105c3d7f5814003657acb9524d0689095c32cc9dca40ba45b6b386dcd.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg deleted file mode 100644 index 1ed6e56e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b0597959db55bc7fcd4b054072749154ab22d02972f76be6af8cfd2548ddb23e.svg +++ /dev/null @@ -1 +0,0 @@ -BusyMark \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/b33a8eb4200b73aaa938bef1db1b7d454699738c8ea89286f76b474d56eedecd.png deleted file mode 100644 index a1a64ca1f311b06e2effafd75d388116ab40b038..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10868 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 Yc!+gbNZ~Q?7%9j|&*WCMj{TGW052_S8vp \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg deleted file mode 100644 index 114d9f73..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/bc71398df3c94104af8a0ac1d5249679217ca3ee8ba1eb7ddf356194ecf1033d.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/offline.assets/c113fe6a803c07bc1cf6e62689ad1c3a982c9470d6768e0e2e8024b6cb6aad5d.png deleted file mode 100644 index 1855eaa23cc901e66e7b925ebd0c70baa2105524..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7183 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 -Offline document

Offline document

This is semantic HTML, with x^2 + y^2 = z^2 inline mathematics.

日本語

Jump to tables. Footnote1.

  1. First item
    • A nested item
  2. Second item
  • Completed task
  • Remaining task

Tables

NameValue
Example12
Printable disclosure

Disclosure body must print.

Term
Definition
Local image

Mathematics

\int_0^1 x^2\,dx = \frac{1}{3}

Diagrams

Mermaid diagram
PlantUML diagram
D2 diagram

API

Offline API API Reference

FieldValue
API version1.0.0
Specification3.1.0
ValidationValid
Paths1
Operations1

Operations

GET /items

List items

Responses
StatusDescriptionContent typeSchema
200A list of items
-
    -
  1. -

    A structured footnote with a return link.

    -

    ↩

    -
  2. -
-
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke-mermaid.svg b/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke-mermaid.svg deleted file mode 100644 index 59394984..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke-mermaid.svg +++ /dev/null @@ -1 +0,0 @@ -MarkdownPreview \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/release-x11/visualization-smoke.pdf deleted file mode 100644 index c4270a0fabfc0236f7a15bdf0689b3caf1844b56..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67205 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 z 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 nHLM?M#s~jZ0( -Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/hidden.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/hidden.html deleted file mode 100644 index 91f7616a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/hidden.html +++ /dev/null @@ -1,14 +0,0 @@ - -Hidden topic

1 Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/index.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/index.html deleted file mode 100644 index 0a260c66..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/index.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/reference.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/reference.html deleted file mode 100644 index a19e4e3f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside-embedded/reference.html +++ /dev/null @@ -1,14 +0,0 @@ - -Reference

Work in progress

1 Reference

Welcome to Default.

1.1 Table

Both columns
OneTwo
Expandable

1.2 Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/.busymark-html-export.json deleted file mode 100644 index d7f48958..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/.busymark-html-export.json +++ /dev/null @@ -1 +0,0 @@ -{"owner":"BusyMark HTML export","version":1,"kind":"site","files":{"assets/f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png":"f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d","index.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39","hidden.html":"840135bf564db71fe28eb4d0c58e60ae43653faee35aa0fdbf02c9abe47f020e","reference.html":"3e18342511e8bec0c86d84509f1121f7a30b335c0511ce660b427ba76d3c9dd4","Welcome.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/Welcome.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/Welcome.html deleted file mode 100644 index f19ec81f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/Welcome.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/assets/f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/assets/f9d60b998d717581470913e13e2f5d8e68c3d7c2af1aeee2aea574ebe28c250d.png deleted file mode 100644 index 35296a86210b570314e63b2d0409a23dd8773f30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7026 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/hidden.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/hidden.html deleted file mode 100644 index 02885d16..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/hidden.html +++ /dev/null @@ -1,14 +0,0 @@ - -Hidden topic

Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/index.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/index.html deleted file mode 100644 index f19ec81f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/index.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/reference.html b/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/reference.html deleted file mode 100644 index d85f44e6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/release-x11/writerside/reference.html +++ /dev/null @@ -1,14 +0,0 @@ - -Reference

Work in progress

Reference

Welcome to Default.

Table

Both columns
OneTwo
Expandable

Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/repository-router-initial.log b/delivery/nextcloud-explicit-adoption/evidence/repository-router-initial.log deleted file mode 100644 index 4338d87c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/repository-router-initial.log +++ /dev/null @@ -1,67 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart -00:00 +0: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: v1 data migrates without losing pending content or inventing an attempt -00:00 +1: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation discovery preserves later edits until deliberate adoption -00:00 +2: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unsupported attachment cleanup queues nothing and core updates still sync -00:01 +3: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ordinary -00:01 +4: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for attachment -00:01 +5: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized title -00:01 +6: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized category -00:01 +7: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for sanitized attachment -00:01 +8: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart -00:01 +9: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart attachment -00:02 +10: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for restart sanitized attachment -00:02 +11: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: lost create response requires deliberate adoption for ambiguous -00:02 +12: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation excludes preexisting IDs and empty weak matches -00:02 +13: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: an exact candidate is not auto-adopted by one of two plausible attempts -00:02 +14: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote favorite and independent local edit -00:02 +15: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote title and independent local edit -00:03 +16: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: three-way merge preserves remote content and independent local edit -00:03 +17: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.title requires explicit choice -00:03 +18: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: divergent NotesMergeAttribute.category requires explicit choice -00:03 +19: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 merge keeps remote protected fields and local favorite on readonly note -00:03 +20: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly conflict accepts an explicit favorite choice when base is absent -00:03 +21: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: schema migration, foreign-key transaction rollback and Linux permissions -00:03 +22: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: durable new note survives restart before any HTTP request -00:03 +23: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: older capture cannot overwrite a newer durable editor revision -00:03 +24: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: metadata revision does not invalidate a new editor capture -00:04 +25: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: account failure is visible even with only synchronized cached notes -00:04 +26: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: attachment delete operation survives offline restart and retains history bytes -00:04 +27: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: taking remote cannot discard a local edit made while fresh GET is pending -00:04 +28: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: revision 10 acknowledgment leaves edit 11 pending during flight -00:04 +29: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: 412 preserves base/local/current remote without overwrite -00:04 +30: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: locked note does not block unrelated synchronization -00:04 +31: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: interrupted chunks preserve notes and previous checkpoint atomically -00:04 +32: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: complete remote disappearance retains dirty content for recovery -00:05 +33: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: server error-state content never replaces known good cached content -00:05 +34: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: pretransition editor capture remains durable when server becomes readonly -00:05 +35: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation never blindly repeats POST after restart -00:05 +36: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: crash-marked create is recovered as uncertain without POST -00:05 +37: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: delete checks fresh state; failed DELETE retains durable content -00:06 +38: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: new offline attachment restart creates/uploads/publishes authoritative path -00:06 +39: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uploaded attachment stage survives restart and is not uploaded twice -00:06 +40: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -00:09 +41: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -00:09 +42: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -00:09 +43: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -00:11 +44: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: concurrent contexts share one cache owner and deletion invalidates all media -00:11 +45: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again -00:11 +46: /home/albert/busystack/busymark/test/src/app_router_test.dart: returning to Welcome does not restore the session again -00:11 +47: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: own upload acknowledgment does not stale a newer editor capture -00:12 +48: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: media rejects invalid logical IDs and symbolic-link parent -00:12 +49: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery clones durable pending attachments without rewriting prose or code -00:12 +50: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: recovery rewrites shared attachment definitions and refuses unavailable bytes atomically -00:12 +51: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: discard after confirmed remote deletion retains tombstone content and cached bytes -00:12 +52: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: history restoration restages deleted bytes before editing and survives restart -00:12 +53: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly attachment deletion preserves content and attachment bytes -00:12 +54: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: ordinary Save atomically restages a deleted attachment restored by undo -00:12 +55: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: unrelated edits preserve explicit attachment deletion; newly restored links restage -00:12 +56: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: explicit unpublished deletion can retain recovery bytes without uploading -00:13 +57: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: literal private namespace in a new note does not create pending publication -00:13 +58: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: merge and keep-local reject a local edit made during fresh GET -00:13 +59: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: conflict overwrite requires review again when remote changes after comparison -00:13 +60: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: uncertain creation adoption preserves a durably edited downloaded twin -00:13 +61: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: list checkpoint preserves account capabilities refreshed during HTTP -00:13 +62: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly acknowledgment exposes recovery for a newer in-flight local edit -00:13 +63: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: same-ETag readonly transition preserves base/local and exposes recovery -00:14 +64: /home/albert/busystack/busymark/test/src/nextcloud_notes/notes_repository_test.dart: readonly transition still synchronizes a favorite-only pending change -00:14 +65: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/router-final.log b/delivery/nextcloud-explicit-adoption/evidence/router-final.log deleted file mode 100644 index 6bb8ee24..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/router-final.log +++ /dev/null @@ -1,7 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/app_router_test.dart -00:00 +0: settings return targets are explicit and validated -00:00 +1: opening Settings preserves a validated Settings origin -00:00 +2: settings page routes are explicit and validated -00:00 +3: Settings opened from Welcome returns to Welcome with a stale workspace -00:01 +4: returning to Welcome does not restore the session again -00:03 +5: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/selected-logs.json b/delivery/nextcloud-explicit-adoption/evidence/selected-logs.json deleted file mode 100644 index 452576f7..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/selected-logs.json +++ /dev/null @@ -1,62 +0,0 @@ -[ - "analyze-final.log", - "confirmation-races-final.log", - "credential-policy.log", - "dependency-lock.log", - "focused-final.log", - "format-final.log", - "full-flutter-final.log", - "full-flutter-timing-failure.log", - "gtk-accent-host.log", - "gtk-accent.log", - "libsecret.log", - "linux-build-final.log", - "linux-release-hashes.txt", - "live-6.0.1-final.log", - "live-6.1.0-final.log", - "live-lock-final.log", - "localization-audit.log", - "localization-generation.log", - "native-spelling.log", - "native-visualization-wayland-final.log", - "native-visualization-x11-final.log", - "native-vm-final.log", - "pre-fix-draft-confirmation-race.log", - "pre-fix-regression.log", - "router-final.log", - "snap-browser-login.log", - "snap-clean-final.log", - "snap-installed-final.log", - "snap-installed-identity-final.log", - "snap-installed-identity.log", - "snap-installed-restored.log", - "snap-network-denials.log", - "snap-smokes-final.log", - "snap-smokes-first-timeout.log", - "snap-wayland-final.log", - "spelling-integration.log", - "ui-confirmation-final.log", - "webkit-wayland-final.log", - "webkit-x11-final.log", - "writerside.log", - "installed-kvm/acceptance/01-verify-gtk-svg-icon-loader/run.log", - "installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log", - "installed-kvm/acceptance/03-install-one-strict-snap-dictionary-and-verify-refresh-offline-use/run.log", - "installed-kvm/acceptance/04-exercise-strict-snap-visualization-and-pdf-paths-under-x11/run.log", - "installed-kvm/acceptance/desktop-xvfb.log", - "installed-kvm/acceptance/installed-identity-final.log", - "installed-kvm/acceptance/installed-identity.log", - "installed-kvm/acceptance/kernel-audit.log", - "installed-kvm/acceptance/wayland-configured-desktop/run.log", - "installed-kvm/acceptance/wayland-repeat/run.log", - "installed-kvm/acceptance/weston-snap.log", - "installed-kvm/acceptance/x11-configured-desktop/run.log", - "installed-kvm/acceptance/x11-no-at-bridge/run.log", - "installed-kvm/acceptance/x11-repeat/run.log", - "installed-kvm/acceptance-session-fixture/01-verify-gtk-svg-icon-loader/run.log", - "installed-kvm/install.log", - "installed-kvm/portal-setup.log", - "installed-kvm/workflow-run.log", - "installed-kvm/workflow-user-session.log", - "installed-kvm/x11-configured-desktop.log" -] diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-acceptance-results.json b/delivery/nextcloud-explicit-adoption/evidence/snap-acceptance-results.json deleted file mode 100644 index 07d78a07..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-acceptance-results.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "complete": true, - "snapSha256": "2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce", - "strictInstalled": true, - "installedPayloadPassed": true, - "installedPayloadLog": "installed-kvm/acceptance/02-verify-shared-runtimes-packaged-tools-media-and-resources/run.log", - "browserLoginLibsecretRestart": true, - "explicitAdoptionAttachmentAndDeniedNetworkRecovery": true, - "spelling": { - "x11OnlineInstallChecks": 20, - "x11DeniedNetworkChecks": 20, - "waylandDeniedNetworkChecks": 20 - }, - "visualization": { - "x11Passed": true, - "waylandPassed": true, - "x11CompletedChecks": 23, - "waylandCompletedChecks": 23, - "successfulRunsPerBackend": 2, - "reports": { - "x11-configured-desktop": "installed-kvm/acceptance/x11-configured-desktop/visualization-release-x11.json", - "x11-repeat": "installed-kvm/acceptance/x11-repeat/visualization-release-x11.json", - "wayland-configured-desktop": "installed-kvm/acceptance/wayland-configured-desktop/visualization-release-wayland.json", - "wayland-repeat": "installed-kvm/acceptance/wayland-repeat/visualization-release-wayland.json" - }, - "historicalFailures": "installed-kvm/snap-acceptance-before-kvm.json" - }, - "outstanding": [], - "installedSha256Verified": true, - "embeddedRecipeSha256": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", - "enforcedAppArmorVerified": true, - "installedIdentityLog": "installed-kvm/acceptance/installed-identity-final.log", - "publicCi": "User approved publication; GitHub returned 403. No branch/PR created. Disposable KVM acceptance completed instead." -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-adopted-restarted.png b/delivery/nextcloud-explicit-adoption/evidence/snap-adopted-restarted.png deleted file mode 100644 index 42d645efd1664242d09ca4351e839c129a3aa45d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68209 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
4zWw{KjO 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-adopted.png b/delivery/nextcloud-explicit-adoption/evidence/snap-adopted.png deleted file mode 100644 index e9f0a6c28fb509e97859f9c38422cb46e0690b33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68276 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%0AcR#w~ORz{2@q8 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-adoption-checks.json b/delivery/nextcloud-explicit-adoption/evidence/snap-adoption-checks.json deleted file mode 100644 index 1e7cb69e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-adoption-checks.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "stableLocalId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "serverNoteId": 223, - "creationPostsForOriginal": 1, - "acknowledgedRevision": 67, - "attachmentByteCount": 1024, - "attachmentSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "canonicalTitle": "New note (3)", - "server": { - "id": 223, - "title": "New note (3)", - "modified": 1791375526, - "category": "", - "favorite": false, - "readonly": false, - "internalPath": "/Notes/New note (3).md", - "shareTypes": [], - "isShared": false, - "error": false, - "errorType": "", - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", - "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22" - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-after-adoption.json b/delivery/nextcloud-explicit-adoption/evidence/snap-after-adoption.json deleted file mode 100644 index a51decbd..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-after-adoption.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 184, - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791373094, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "base": { - "id": 184, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791373094, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - }, - { - "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 223, - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", - "title": "New note (3)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791375526, - "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22", - "base": { - "id": 223, - "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22", - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", - "title": "New note (3)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791375526, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 67, - "ackRevision": 67, - "editorRevision": 66, - "editorContentDigest": "11546c64358c13cb52bf1ce8bfc63be9bc7321bf857b9e43267af9c54a96e47b", - "syncState": "synced", - "errorMessage": null - } - ], - "attachments": [ - { - "id": "2875b68e-250c-41f9-a951-b4b85a792096", - "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "filename": "attachment.bin", - "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", - "remotePath": ".attachments.223/attachment.bin", - "state": "uploaded", - "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "byteCount": 1024 - } - ] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-after-restart.json b/delivery/nextcloud-explicit-adoption/evidence/snap-after-restart.json deleted file mode 100644 index a51decbd..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-after-restart.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 184, - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791373094, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "base": { - "id": 184, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791373094, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - }, - { - "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 223, - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", - "title": "New note (3)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791375526, - "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22", - "base": { - "id": 223, - "etag": "d8cdb2b81ad3fa1ff05017c1b6576a22", - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](.attachments.223/attachment.bin)\n\nNewer local Snap edit", - "title": "New note (3)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791375526, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 67, - "ackRevision": 67, - "editorRevision": 66, - "editorContentDigest": "11546c64358c13cb52bf1ce8bfc63be9bc7321bf857b9e43267af9c54a96e47b", - "syncState": "synced", - "errorMessage": null - } - ], - "attachments": [ - { - "id": "2875b68e-250c-41f9-a951-b4b85a792096", - "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "filename": "attachment.bin", - "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", - "remotePath": ".attachments.223/attachment.bin", - "state": "uploaded", - "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "byteCount": 1024 - } - ] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-before-adoption-server.json b/delivery/nextcloud-explicit-adoption/evidence/snap-before-adoption-server.json deleted file mode 100644 index 7e2b9a14..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-before-adoption-server.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "id": 223, - "title": "New note (3)", - "modified": 1791375017, - "category": "", - "favorite": false, - "readonly": false, - "internalPath": "/Notes/New note (3).md", - "shareTypes": [], - "isShared": false, - "error": false, - "errorType": "", - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin]()\n", - "etag": "4f254d7cd882c0d2fc128669b80b3301" -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-browser-login.log b/delivery/nextcloud-explicit-adoption/evidence/snap-browser-login.log deleted file mode 100644 index 536b9db9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-browser-login.log +++ /dev/null @@ -1 +0,0 @@ -External browser granted the application Login Flow. diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-build-final.log b/delivery/nextcloud-explicit-adoption/evidence/snap-build-final.log deleted file mode 100644 index 9742a2ac..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-build-final.log +++ /dev/null @@ -1,1548 +0,0 @@ -Get:1 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB] -Get:2 http://archive.ubuntu.com/ubuntu noble InRelease [256 kB] -Get:3 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1545 kB] -Get:4 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] -Get:5 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1943 kB] -Get:6 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages [1323 kB] -Get:7 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [50.0 kB] -Get:8 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] -Get:9 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [19.3 MB] -Get:10 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [331 kB] -Get:11 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1808 kB] -Get:12 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [117 kB] -Get:13 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [56.2 kB] -Get:14 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [2165 kB] -Get:15 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1701 kB] -Get:16 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [2138 kB] -Get:17 http://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Packages [671 B] -Get:18 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [49.0 kB] -Get:19 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [36.0 kB] -Fetched 33.2 MB in 4s (8190 kB/s) -Reading package lists... -Cleaning all parts -Initialising lifecycle -Installing build-packages -The following snaps are required but not installed as the application is running inside docker or podman container: gnome-46-2404, mesa-2404, gtk-common-themes, core24, gnome-46-2404-sdk, node/24/stable. -Please ensure the environment is properly setup before continuing. -Ignore this message if the appropriate measures have already been taken. -Pulling busymark -Fetching stage-packages -Downloading package: fontconfig -/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/fontconfig_2.15.0-1.1ubuntu2_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) - acq.run() -Downloading package: libvulkan1 -Downloading package: libsvtav1enc1d1 -Downloading package: libhwy1t64 -Downloading package: libxcb-present0 -Downloading package: yaru-theme-icon -Downloading package: libyajl2 -Downloading package: libv4lconvert0t64 -Downloading package: libgomp1 -Downloading package: libzxing3 -Downloading package: libpulse0 -Downloading package: libwebpmux3 -Downloading package: libopenal-data -Downloading package: libltc11 -Downloading package: libvpl2 -Downloading package: libserd-0-0 -Downloading package: libvpx9 -Downloading package: libxxf86vm1 -Downloading package: libcodec2-1.2 -Downloading package: librubberband2 -Downloading package: libsharpyuv0 -Downloading package: libnghttp2-14 -Downloading package: openssh-client -Downloading package: libglx-mesa0 -Downloading package: libtwolame0 -Downloading package: gstreamer1.0-plugins-ugly -Downloading package: libzvbi-common -Downloading package: libjack-jackd2-0 -Downloading package: libfreeaptx0 -Downloading package: libdatrie1 -Downloading package: libthai0 -Downloading package: libssh-4 -Downloading package: libxrender1 -Downloading package: libldap2 -Downloading package: libglvnd0 -Downloading package: libproxy1v5 -Downloading package: libgdbm-compat4t64 -Downloading package: libraptor2-0 -Downloading package: libsensors-config -Downloading package: hicolor-icon-theme -Downloading package: git -Downloading package: libglib2.0-bin -Downloading package: perl -Downloading package: libx11-xcb1 -Downloading package: libxshmfence1 -Downloading package: libfluidsynth3 -Downloading package: libunwind8 -Downloading package: libdecor-0-0 -Downloading package: libpango-1.0-0 -Downloading package: libvo-aacenc0 -Downloading package: libwavpack1 -Downloading package: libavtp0 -Downloading package: libsrt1.5-gnutls -Downloading package: libwayland-cursor0 -Downloading package: libx264-164 -Downloading package: libshine3 -Downloading package: libaom3 -Downloading package: lsb-base -Downloading package: libjpeg-turbo8 -Downloading package: libv4l-0t64 -Downloading package: libavahi-common-data -Downloading package: libcolord2 -Downloading package: libpsl5t64 -Downloading package: libx265-199 -Downloading package: libass9 -Downloading package: libsasl2-2 -Downloading package: libxcb-dri3-0 -Downloading package: libcairo2 -Downloading package: libgbm1 -Downloading package: libxcursor1 -Downloading package: libbluray2 -Downloading package: libvorbisfile3 -Downloading package: libdv4t64 -Downloading package: libblas3 -Downloading package: libdeflate0 -Downloading package: libqrencode4 -Downloading package: libjpeg8 -Downloading package: x11-common -Downloading package: libiec61883-0 -Downloading package: libsphinxbase3t64 -Downloading package: libbs2b0 -Downloading package: libfftw3-double3 -Downloading package: libglx0 -Downloading package: libgme0 -Downloading package: libdav1d7 -Downloading package: libcaca0 -Downloading package: libfribidi0 -Downloading package: mesa-libgallium -Downloading package: libraw1394-11 -Downloading package: librtmp1 -Downloading package: adwaita-icon-theme -Downloading package: libgpm2 -Downloading package: libtiff6 -Downloading package: libgfortran5 -Downloading package: libpixman-1-0 -Downloading package: libtag1v5 -Downloading package: libvidstab1.1 -Downloading package: libva-x11-2 -Downloading package: librist4 -Downloading package: libgsm1 -Downloading package: libgupnp-1.6-0 -Downloading package: libcjson1 -Downloading package: libshout3 -Downloading package: libxau6 -Downloading package: libgtk2.0-0t64 -Downloading package: libxcb1 -Downloading package: libgstreamer-gl1.0-0 -Downloading package: libssh-gcrypt-4 -Downloading package: libllvm20 -Downloading package: libxcomposite1 -Downloading package: libmfx1 -Downloading package: libmpcdec6 -Downloading package: libnuma1 -Downloading package: libcdio19t64 -Downloading package: libdirectfb-1.7-7t64 -Downloading package: libxdamage1 -Downloading package: libgdk-pixbuf-2.0-0 -Downloading package: libsasl2-modules-db -Downloading package: libfaad2 -Downloading package: timgm6mb-soundfont -Downloading package: libcairo-gobject2 -Downloading package: fonts-noto-mono -Downloading package: liblerc4 -Downloading package: ubuntu-mono -Downloading package: libgupnp-igd-1.6-0 -Downloading package: libgdbm6t64 -Downloading package: libxml2 -Downloading package: libglib2.0-data -Downloading package: humanity-icon-theme -Downloading package: libgtk2.0-common -Downloading package: libgraphite2-3 -Downloading package: util-linux -Downloading package: libdconf1 -Downloading package: libfontconfig1 -Downloading package: libcups2t64 -Downloading package: libvdpau1 -Downloading package: libsbc1 -Downloading package: libmodplug1 -Downloading package: libopenexr-3-1-30 -Downloading package: libopenh264-7 -Downloading package: libpostproc57 -Downloading package: libxss1 -Downloading package: shared-mime-info -Downloading package: libatspi2.0-0t64 -Downloading package: glib-networking-common -Downloading package: libgles2 -Downloading package: libgl1-mesa-dri -Downloading package: libcurl3t64-gnutls -Downloading package: libasound2t64 -Downloading package: libxrandr2 -Downloading package: libjxl0.7 -Downloading package: fontconfig-config -Downloading package: gtk2-engines-murrine -Downloading package: libmp3lame0 -Downloading package: libsoxr0 -Downloading package: libx11-data -Downloading package: libsoup-3.0-0 -Downloading package: libgudev-1.0-0 -Downloading package: libgstreamer-plugins-good1.0-0 -Downloading package: libavc1394-0 -Downloading package: libsodium23 -Downloading package: libudfread0 -Downloading package: libjson-glib-1.0-common -Downloading package: libmjpegutils-2.1-0t64 -Downloading package: gnome-themes-extra-data -Downloading package: libmbedcrypto7t64 -Downloading package: libsnappy1v5 -Downloading package: libsndio7.0 -Downloading package: libopus0 -Downloading package: libpangocairo-1.0-0 -Downloading package: libnorm1t64 -Downloading package: libxtst6 -Downloading package: glib-networking-services -Downloading package: libmysofa1 -Downloading package: yaru-theme-gtk -Downloading package: libavcodec60 -Downloading package: libzimg2 -Downloading package: libgstreamer-plugins-bad1.0-0 -Downloading package: libxcb-render0 -Downloading package: libusb-1.0-0 -Downloading package: libvisual-0.4-0 -Downloading package: libgssdp-1.6-0 -Downloading package: libimath-3-1-29t64 -Downloading package: libzvbi0t64 -Downloading package: gsettings-desktop-schemas -Downloading package: fonts-noto-core -Downloading package: libdvdread8t64 -Downloading package: gstreamer1.0-plugins-good -Downloading package: libwebrtc-audio-processing1 -Downloading package: libopenni2-0 -Downloading package: gstreamer1.0-plugins-base -Downloading package: libopenal1 -Downloading package: libvorbisenc2 -Downloading package: libasyncns0 -Downloading package: libunibreak5 -Downloading package: libnss3 -Downloading package: libpangoft2-1.0-0 -Downloading package: libtheora0 -Downloading package: libxvidcore4 -Downloading package: libpocketsphinx3 -Downloading package: libspandsp2t64 -Downloading package: libsndfile1 -Downloading package: libavutil58 -Downloading package: liborc-0.4-0t64 -Downloading package: libwebp7 -Downloading package: libsidplay1v5 -Downloading package: libwildmidi2 -Downloading package: libxslt1.1 -Downloading package: libswscale7 -Downloading package: fonts-dejavu-mono -Downloading package: liblc3-1 -Downloading package: libatk1.0-0t64 -Downloading package: libspeex1 -Downloading package: libmpeg2-4 -Downloading package: libasound2-data -Downloading package: adduser -Downloading package: libflac12t64 -Downloading package: libthai-data -Downloading package: libgstreamer1.0-0 -Downloading package: libdca0 -Downloading package: libavahi-common3 -Downloading package: liblrdf0 -Downloading package: librsvg2-2 -Downloading package: libsamplerate0 -Downloading package: liberror-perl -Downloading package: ocl-icd-libopencl1 -Downloading package: libxcb-glx0 -Downloading package: libldacbt-enc2 -Downloading package: libogg0 -Downloading package: libxinerama1 -Downloading package: libsord-0-0 -Downloading package: libjbig0 -Downloading package: libflite1 -Downloading package: libopenjp2-7 -Downloading package: libwayland-egl1 -Downloading package: libcdparanoia0 -Downloading package: libplacebo338 -Downloading package: libzix-0-0 -Downloading package: libvorbis0a -Downloading package: libsdl2-2.0-0 -Downloading package: libdw1t64 -Downloading package: libjson-glib-1.0-0 -Downloading package: perl-base -Downloading package: libspa-0.2-modules -Downloading package: libzmq5 -Downloading package: libdrm-amdgpu1 -Downloading package: gtk2-engines-pixbuf -Downloading package: dconf-gsettings-backend -Downloading package: libchromaprint1 -Downloading package: libsensors5 -Downloading package: libxcb-randr0 -Downloading package: libvo-amrwbenc0 -Downloading package: libswresample4 -Downloading package: librabbitmq4 -Downloading package: libpipewire-0.3-0t64 -Downloading package: gtk-update-icon-cache -Downloading package: libxcb-xkb1 -Downloading package: libsrtp2-1 -Downloading package: libxext6 -Downloading package: libsoup-3.0-common -Downloading package: libgtk-3-common -Downloading package: libdvdnav4 -Downloading package: libdc1394-25 -Downloading package: libmplex2-2.1-0t64 -Downloading package: liba52-0.7.4 -Downloading package: libnice10 -Downloading package: libmpeg2encpp-2.1-0t64 -Downloading package: libharfbuzz0b -Downloading package: fonts-dejavu-core -Downloading package: libinstpatch-1.0-2 -Downloading package: libsoundtouch1 -Downloading package: libavformat60 -Downloading package: libaa1 -Downloading package: liblilv-0-0 -Downloading package: libmpg123-0t64 -Downloading package: gstreamer1.0-plugins-bad -Downloading package: libslang2 -Downloading package: libegl-mesa0 -Downloading package: session-migration -Downloading package: libva-drm2 -Downloading package: libxcb-shm0 -Downloading package: libgtk-3-0t64 -Downloading package: gnome-themes-extra -Downloading package: dconf-service -Downloading package: perl-modules-5.38 -Downloading package: libgl1 -Downloading package: libzbar0t64 -Downloading package: libegl1 -Downloading package: libx11-6 -Downloading package: libgstreamer-plugins-base1.0-0 -Downloading package: libtag1v5-vanilla -Downloading package: libwayland-client0 -Downloading package: gstreamer1.0-libav -Downloading package: liblapack3 -Downloading package: libopenmpt0t64 -Downloading package: libperl5.38t64 -Downloading package: libxkbcommon-x11-0 -Downloading package: liblcms2-2 -Downloading package: git-man -Downloading package: libatk-bridge2.0-0t64 -Downloading package: libde265-0 -Downloading package: libepoxy0 -Downloading package: libpgm-5.3-0t64 -Downloading package: libxcb-sync1 -Downloading package: libicu74 -Downloading package: libneon27t64 -Downloading package: at-spi2-common -Downloading package: libavahi-client3 -Downloading package: glib-networking -Downloading package: librav1e0 -Downloading package: libva2 -Downloading package: libdrm-intel1 -Downloading package: libxfixes3 -Downloading package: libxdmcp6 -Downloading package: libncurses6 -Downloading package: libxi6 -Downloading package: iso-codes -Downloading package: libxcb-xfixes0 -Downloading package: libavfilter9 -Downloading package: libnspr4 -Downloading package: libsratom-0-0 -Downloading package: libgdk-pixbuf2.0-common -Extracting stage package: fontconfig -Extracting stage package: libvulkan1 -Extracting stage package: libsvtav1enc1d1 -Extracting stage package: libhwy1t64 -Extracting stage package: libxcb-present0 -Extracting stage package: yaru-theme-icon -Extracting stage package: libyajl2 -Extracting stage package: libv4lconvert0t64 -Extracting stage package: libgomp1 -Extracting stage package: libzxing3 -Extracting stage package: libpulse0 -Extracting stage package: libwebpmux3 -Extracting stage package: libopenal-data -Extracting stage package: libltc11 -Extracting stage package: libvpl2 -Extracting stage package: libserd-0-0 -Extracting stage package: libvpx9 -Extracting stage package: libxxf86vm1 -Extracting stage package: libcodec2-1.2 -Extracting stage package: librubberband2 -Extracting stage package: libsharpyuv0 -Extracting stage package: libnghttp2-14 -Extracting stage package: openssh-client -Extracting stage package: libglx-mesa0 -Extracting stage package: libtwolame0 -Extracting stage package: gstreamer1.0-plugins-ugly -Extracting stage package: libzvbi-common -Extracting stage package: libjack-jackd2-0 -Extracting stage package: libfreeaptx0 -Extracting stage package: libdatrie1 -Extracting stage package: libthai0 -Extracting stage package: libssh-4 -Extracting stage package: libxrender1 -Extracting stage package: libldap2 -Extracting stage package: libglvnd0 -Extracting stage package: libproxy1v5 -Extracting stage package: libgdbm-compat4t64 -Extracting stage package: libraptor2-0 -Extracting stage package: libsensors-config -Extracting stage package: hicolor-icon-theme -Extracting stage package: git -Extracting stage package: libglib2.0-bin -Extracting stage package: perl -Extracting stage package: libx11-xcb1 -Extracting stage package: libxshmfence1 -Extracting stage package: libfluidsynth3 -Extracting stage package: libunwind8 -Extracting stage package: libdecor-0-0 -Extracting stage package: libpango-1.0-0 -Extracting stage package: libvo-aacenc0 -Extracting stage package: libwavpack1 -Extracting stage package: libavtp0 -Extracting stage package: libsrt1.5-gnutls -Extracting stage package: libwayland-cursor0 -Extracting stage package: libx264-164 -Extracting stage package: libshine3 -Extracting stage package: libaom3 -Extracting stage package: lsb-base -Extracting stage package: libjpeg-turbo8 -Extracting stage package: libv4l-0t64 -Extracting stage package: libavahi-common-data -Extracting stage package: libcolord2 -Extracting stage package: libpsl5t64 -Extracting stage package: libx265-199 -Extracting stage package: libass9 -Extracting stage package: libsasl2-2 -Extracting stage package: libxcb-dri3-0 -Extracting stage package: libcairo2 -Extracting stage package: libgbm1 -Extracting stage package: libxcursor1 -Extracting stage package: libbluray2 -Extracting stage package: libvorbisfile3 -Extracting stage package: libdv4t64 -Extracting stage package: libblas3 -Extracting stage package: libdeflate0 -Extracting stage package: libqrencode4 -Extracting stage package: libjpeg8 -Extracting stage package: x11-common -Extracting stage package: libiec61883-0 -Extracting stage package: libsphinxbase3t64 -Extracting stage package: libbs2b0 -Extracting stage package: libfftw3-double3 -Extracting stage package: libglx0 -Extracting stage package: libgme0 -Extracting stage package: libdav1d7 -Extracting stage package: libcaca0 -Extracting stage package: libfribidi0 -Extracting stage package: mesa-libgallium -Extracting stage package: libraw1394-11 -Extracting stage package: librtmp1 -Extracting stage package: adwaita-icon-theme -Extracting stage package: libgpm2 -Extracting stage package: libtiff6 -Extracting stage package: libgfortran5 -Extracting stage package: libpixman-1-0 -Extracting stage package: libtag1v5 -Extracting stage package: libvidstab1.1 -Extracting stage package: libva-x11-2 -Extracting stage package: librist4 -Extracting stage package: libgsm1 -Extracting stage package: libgupnp-1.6-0 -Extracting stage package: libcjson1 -Extracting stage package: libshout3 -Extracting stage package: libxau6 -Extracting stage package: libgtk2.0-0t64 -Extracting stage package: libxcb1 -Extracting stage package: libgstreamer-gl1.0-0 -Extracting stage package: libssh-gcrypt-4 -Extracting stage package: libllvm20 -Extracting stage package: libxcomposite1 -Extracting stage package: libmfx1 -Extracting stage package: libmpcdec6 -Extracting stage package: libnuma1 -Extracting stage package: libcdio19t64 -Extracting stage package: libdirectfb-1.7-7t64 -Extracting stage package: libxdamage1 -Extracting stage package: libgdk-pixbuf-2.0-0 -Extracting stage package: libsasl2-modules-db -Extracting stage package: libfaad2 -Extracting stage package: timgm6mb-soundfont -Extracting stage package: libcairo-gobject2 -Extracting stage package: fonts-noto-mono -Extracting stage package: liblerc4 -Extracting stage package: ubuntu-mono -Extracting stage package: libgupnp-igd-1.6-0 -Extracting stage package: libgdbm6t64 -Extracting stage package: libxml2 -Extracting stage package: libglib2.0-data -Extracting stage package: humanity-icon-theme -Extracting stage package: libgtk2.0-common -Extracting stage package: libgraphite2-3 -Extracting stage package: util-linux -Extracting stage package: libdconf1 -Extracting stage package: libfontconfig1 -Extracting stage package: libcups2t64 -Extracting stage package: libvdpau1 -Extracting stage package: libsbc1 -Extracting stage package: libmodplug1 -Extracting stage package: libopenexr-3-1-30 -Extracting stage package: libopenh264-7 -Extracting stage package: libpostproc57 -Extracting stage package: libxss1 -Extracting stage package: shared-mime-info -Extracting stage package: libatspi2.0-0t64 -Extracting stage package: glib-networking-common -Extracting stage package: libgles2 -Extracting stage package: libgl1-mesa-dri -Extracting stage package: libcurl3t64-gnutls -Extracting stage package: libasound2t64 -Extracting stage package: libxrandr2 -Extracting stage package: libjxl0.7 -Extracting stage package: fontconfig-config -Extracting stage package: gtk2-engines-murrine -Extracting stage package: libmp3lame0 -Extracting stage package: libsoxr0 -Extracting stage package: libx11-data -Extracting stage package: libsoup-3.0-0 -Extracting stage package: libgudev-1.0-0 -Extracting stage package: libgstreamer-plugins-good1.0-0 -Extracting stage package: libavc1394-0 -Extracting stage package: libsodium23 -Extracting stage package: libudfread0 -Extracting stage package: libjson-glib-1.0-common -Extracting stage package: libmjpegutils-2.1-0t64 -Extracting stage package: gnome-themes-extra-data -Extracting stage package: libmbedcrypto7t64 -Extracting stage package: libsnappy1v5 -Extracting stage package: libsndio7.0 -Extracting stage package: libopus0 -Extracting stage package: libpangocairo-1.0-0 -Extracting stage package: libnorm1t64 -Extracting stage package: libxtst6 -Extracting stage package: glib-networking-services -Extracting stage package: libmysofa1 -Extracting stage package: yaru-theme-gtk -Extracting stage package: libavcodec60 -Extracting stage package: libzimg2 -Extracting stage package: libgstreamer-plugins-bad1.0-0 -Extracting stage package: libxcb-render0 -Extracting stage package: libusb-1.0-0 -Extracting stage package: libvisual-0.4-0 -Extracting stage package: libgssdp-1.6-0 -Extracting stage package: libimath-3-1-29t64 -Extracting stage package: libzvbi0t64 -Extracting stage package: gsettings-desktop-schemas -Extracting stage package: fonts-noto-core -Extracting stage package: libdvdread8t64 -Extracting stage package: gstreamer1.0-plugins-good -Extracting stage package: libwebrtc-audio-processing1 -Extracting stage package: libopenni2-0 -Extracting stage package: gstreamer1.0-plugins-base -Extracting stage package: libopenal1 -Extracting stage package: libvorbisenc2 -Extracting stage package: libasyncns0 -Extracting stage package: libunibreak5 -Extracting stage package: libnss3 -Extracting stage package: libpangoft2-1.0-0 -Extracting stage package: libtheora0 -Extracting stage package: libxvidcore4 -Extracting stage package: libpocketsphinx3 -Extracting stage package: libspandsp2t64 -Extracting stage package: libsndfile1 -Extracting stage package: libavutil58 -Extracting stage package: liborc-0.4-0t64 -Extracting stage package: libwebp7 -Extracting stage package: libsidplay1v5 -Extracting stage package: libwildmidi2 -Extracting stage package: libxslt1.1 -Extracting stage package: libswscale7 -Extracting stage package: fonts-dejavu-mono -Extracting stage package: liblc3-1 -Extracting stage package: libatk1.0-0t64 -Extracting stage package: libspeex1 -Extracting stage package: libmpeg2-4 -Extracting stage package: libasound2-data -Extracting stage package: adduser -Extracting stage package: libflac12t64 -Extracting stage package: libthai-data -Extracting stage package: libgstreamer1.0-0 -Extracting stage package: libdca0 -Extracting stage package: libavahi-common3 -Extracting stage package: liblrdf0 -Extracting stage package: librsvg2-2 -Extracting stage package: libsamplerate0 -Extracting stage package: liberror-perl -Extracting stage package: ocl-icd-libopencl1 -Extracting stage package: libxcb-glx0 -Extracting stage package: libldacbt-enc2 -Extracting stage package: libogg0 -Extracting stage package: libxinerama1 -Extracting stage package: libsord-0-0 -Extracting stage package: libjbig0 -Extracting stage package: libflite1 -Extracting stage package: libopenjp2-7 -Extracting stage package: libwayland-egl1 -Extracting stage package: libcdparanoia0 -Extracting stage package: libplacebo338 -Extracting stage package: libzix-0-0 -Extracting stage package: libvorbis0a -Extracting stage package: libsdl2-2.0-0 -Extracting stage package: libdw1t64 -Extracting stage package: libjson-glib-1.0-0 -Extracting stage package: perl-base -Extracting stage package: libspa-0.2-modules -Extracting stage package: libzmq5 -Extracting stage package: libdrm-amdgpu1 -Extracting stage package: gtk2-engines-pixbuf -Extracting stage package: dconf-gsettings-backend -Extracting stage package: libchromaprint1 -Extracting stage package: libsensors5 -Extracting stage package: libxcb-randr0 -Extracting stage package: libvo-amrwbenc0 -Extracting stage package: libswresample4 -Extracting stage package: librabbitmq4 -Extracting stage package: libpipewire-0.3-0t64 -Extracting stage package: gtk-update-icon-cache -Extracting stage package: libxcb-xkb1 -Extracting stage package: libsrtp2-1 -Extracting stage package: libxext6 -Extracting stage package: libsoup-3.0-common -Extracting stage package: libgtk-3-common -Extracting stage package: libdvdnav4 -Extracting stage package: libdc1394-25 -Extracting stage package: libmplex2-2.1-0t64 -Extracting stage package: liba52-0.7.4 -Extracting stage package: libnice10 -Extracting stage package: libmpeg2encpp-2.1-0t64 -Extracting stage package: libharfbuzz0b -Extracting stage package: fonts-dejavu-core -Extracting stage package: libinstpatch-1.0-2 -Extracting stage package: libsoundtouch1 -Extracting stage package: libavformat60 -Extracting stage package: libaa1 -Extracting stage package: liblilv-0-0 -Extracting stage package: libmpg123-0t64 -Extracting stage package: gstreamer1.0-plugins-bad -Extracting stage package: libslang2 -Extracting stage package: libegl-mesa0 -Extracting stage package: session-migration -Extracting stage package: libva-drm2 -Extracting stage package: libxcb-shm0 -Extracting stage package: libgtk-3-0t64 -Extracting stage package: gnome-themes-extra -Extracting stage package: dconf-service -Extracting stage package: perl-modules-5.38 -Extracting stage package: libgl1 -Extracting stage package: libzbar0t64 -Extracting stage package: libegl1 -Extracting stage package: libx11-6 -Extracting stage package: libgstreamer-plugins-base1.0-0 -Extracting stage package: libtag1v5-vanilla -Extracting stage package: libwayland-client0 -Extracting stage package: gstreamer1.0-libav -Extracting stage package: liblapack3 -Extracting stage package: libopenmpt0t64 -Extracting stage package: libperl5.38t64 -Extracting stage package: libxkbcommon-x11-0 -Extracting stage package: liblcms2-2 -Extracting stage package: git-man -Extracting stage package: libatk-bridge2.0-0t64 -Extracting stage package: libde265-0 -Extracting stage package: libepoxy0 -Extracting stage package: libpgm-5.3-0t64 -Extracting stage package: libxcb-sync1 -Extracting stage package: libicu74 -Extracting stage package: libneon27t64 -Extracting stage package: at-spi2-common -Extracting stage package: libavahi-client3 -Extracting stage package: glib-networking -Extracting stage package: librav1e0 -Extracting stage package: libva2 -Extracting stage package: libdrm-intel1 -Extracting stage package: libxfixes3 -Extracting stage package: libxdmcp6 -Extracting stage package: libncurses6 -Extracting stage package: libxi6 -Extracting stage package: iso-codes -Extracting stage package: libxcb-xfixes0 -Extracting stage package: libavfilter9 -Extracting stage package: libnspr4 -Extracting stage package: libsratom-0-0 -Extracting stage package: libgdk-pixbuf2.0-common -Pulling desktop-integration -Pulling gnome/sdk -Building busymark -Removing suid/guid from /project/parts/busymark/install/usr/bin/su -Removing suid/guid from /project/parts/busymark/install/usr/lib/openssh/ssh-keysign -:: + rm -rf /project/parts/busymark/build/build -:: + rm -rf /project/parts/busymark/build/.dart_tool -:: + rm -rf /project/parts/busymark/build/linux/flutter/ephemeral -:: + flutter_sdk=/project/parts/busymark/build/flutter-distro -:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD -:: ++ true -:: + flutter_sdk_version= -:: + '[' '!' -x /project/parts/busymark/build/flutter-distro/bin/flutter ']' -:: + rm -rf /project/parts/busymark/build/flutter-distro -:: + git clone --depth 1 --branch 3.47.5 https://github.com/flutter/flutter.git /project/parts/busymark/build/flutter-distro -:: Cloning into '/project/parts/busymark/build/flutter-distro'... -:: Note: switching to '6a19cca56475dbfba1478ee68d7bd0c2ef891da1'. -:: -:: You are in 'detached HEAD' state. You can look around, make experimental -:: changes and commit them, and you can discard any commits you make in this -:: state without impacting any branches by switching back to a branch. -:: -:: If you want to create a new branch to retain commits you create, you may -:: do so (now or later) by using -c with the switch command. Example: -:: -:: git switch -c -:: -:: Or undo this operation with: -:: -:: git switch - -:: -:: Turn off this advice by setting config variable advice.detachedHead to false -:: -:: Updating files: 91% (14709/16074) Updating files: 92% (14789/16074) Updating files: 93% (14949/16074) Updating files: 94% (15110/16074) Updating files: 95% (15271/16074) Updating files: 96% (15432/16074) Updating files: 97% (15592/16074) Updating files: 98% (15753/16074) Updating files: 99% (15914/16074) Updating files: 100% (16074/16074) Updating files: 100% (16074/16074), done. -:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD -:: + test 3.47.5 = 3.47.5 -:: + export CI=true -:: + CI=true -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check precache --linux -:: Downloading Linux x64 Dart SDK from Flutter engine af7e796e161ae0bb1ff0758c71a7105418bd9ded... -:: % Total % Received % Xferd Average Speed Time Time Time Current -:: Dload Upload Total Spent Left Speed -:: 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 0 227M 0 66862 0 0 14800 0 4:28:49 0:00:04 4:28:45 14799 0 227M 0 992k 0 0 194k 0 0:20:01 0:00:05 0:19:56 194k 1 227M 1 4142k 0 0 562k 0 0:06:54 0:00:07 0:06:47 562k 2 227M 2 6878k 0 0 847k 0 0:04:35 0:00:08 0:04:27 847k 13 227M 13 29.6M 0 0 3325k 0 0:01:10 0:00:09 0:01:01 3926k 24 227M 24 56.3M 0 0 5704k 0 0:00:40 0:00:10 0:00:30 10.0M 35 227M 35 79.9M 0 0 7366k 0 0:00:31 0:00:11 0:00:20 13.1M 48 227M 48 110M 0 0 9361k 0 0:00:24 0:00:12 0:00:12 22.4M 63 227M 63 145M 0 0 11.0M 0 0:00:20 0:00:13 0:00:07 27.6M 78 227M 78 178M 0 0 12.6M 0 0:00:18 0:00:14 0:00:04 29.7M 93 227M 93 212M 0 0 14.0M 0 0:00:16 0:00:15 0:00:01 31.3M 100 227M 100 227M 0 0 14.6M 0 0:00:15 0:00:15 --:--:-- 33.3M -:: Building flutter tool... -:: Resolving dependencies... -:: Downloading packages... -:: + _fe_analyzer_shared 95.0.0 (109.0.0 available) -:: + analyzer 10.1.0 (14.5.0 available) -:: + archive 3.6.1 (4.3.0 available) -:: + args 2.7.0 -:: + async 2.13.1 -:: + boolean_selector 2.1.2 -:: + browser_launcher 1.1.3 (1.2.0 available) -:: + built_collection 5.1.1 (5.1.2 available) -:: + built_value 8.12.6 (8.13.0 available) -:: + checked_yaml 2.0.4 -:: + cli_config 0.2.0 -:: + clock 1.1.2 (1.1.3 available) -:: + code_assets 1.2.1 (2.1.0 available) -:: + code_builder 4.11.1 (4.12.0 available) -:: + collection 1.19.1 -:: + completion 1.0.2 -:: + convert 3.1.2 -:: + coverage 1.15.1 -:: + crypto 3.0.7 -:: + csslib 1.0.2 -:: + dap 1.4.0 -:: + dart_service_protocol_shared 0.0.3 -:: + dart_style 3.1.7 (3.1.13 available) -:: + data_assets 0.20.0 -:: + dds 5.4.0 -:: + dds_service_extensions 2.1.0 -:: + devtools_shared 13.1.0 (14.0.0 available) -:: + dtd 4.0.0 -:: + dwds 27.1.2 (27.1.4 available) -:: + extension_discovery 2.1.0 -:: + fake_async 1.3.3 -:: + ffi 2.2.0 -:: + file 7.0.1 -:: + file_testing 3.0.2 (3.1.0 available) -:: + fixnum 1.1.1 -:: + flutter_template_images 5.0.0 (5.0.1 available) -:: + frontend_server_client 4.0.0 (4.1.0 available) -:: + glob 2.1.3 (2.2.0 available) -:: + graphs 2.3.2 -:: + hooks 2.0.2 (2.2.0 available) -:: + hooks_runner 1.5.0 (1.6.4 available) -:: + html 0.15.6 (0.15.7 available) -:: + http 1.6.0 -:: + http_multi_server 3.2.2 -:: + http_parser 4.1.2 -:: + intl 0.20.3 -:: + io 1.0.5 (1.1.0 available) -:: + js 0.7.2 (discontinued) -:: + json_annotation 4.12.0 -:: + json_rpc_2 4.1.0 -:: + logging 1.3.0 -:: + matcher 0.12.20 -:: + meta 1.18.3 (1.19.0 available) -:: + mime 2.0.0 (2.1.0 available) -:: + multicast_dns 0.3.3+1 -:: + mustache_template 2.0.5 (2.0.6 available) -:: + native_stack_traces 0.6.1 (0.7.0 available) -:: + node_preamble 2.0.2 -:: + package_config 2.2.0 (3.0.0 available) -:: + path 1.9.1 -:: + petitparser 7.0.2 (7.1.0 available) -:: + platform 3.1.6 (3.2.0 available) -:: + pool 1.5.2 (1.5.3 available) -:: + process 5.0.5 (5.0.6 available) -:: + pub_semver 2.2.0 (2.2.1 available) -:: + pubspec_parse 1.5.0 (1.6.0 available) -:: + record_use 0.6.0 (1.1.1 available) -:: + shelf 1.4.2 -:: + shelf_packages_handler 3.0.2 -:: + shelf_proxy 1.0.5 -:: + shelf_static 1.1.3 -:: + shelf_web_socket 3.0.0 -:: + source_map_stack_trace 2.1.2 -:: + source_maps 0.10.13 (0.10.14 available) -:: + source_span 1.10.2 -:: + sprintf 7.0.0 -:: + sse 4.2.0 -:: + stack_trace 1.12.1 (1.12.2 available) -:: + standard_message_codec 0.0.1+5 -:: + stream_channel 2.1.4 -:: + string_scanner 1.4.1 -:: + sync_http 0.3.1 -:: + term_glyph 1.2.2 -:: + test 1.31.1 (1.32.0 available) -:: + test_api 0.7.12 (0.7.14 available) -:: + test_core 0.6.18 (0.6.20 available) -:: + typed_data 1.4.0 -:: + unified_analytics 8.0.15 (8.0.18 available) -:: + uuid 4.5.3 (4.6.0 available) -:: + vm_service 15.2.0 (15.3.0 available) -:: + vm_service_interface 2.0.1 -:: + vm_snapshot_analysis 0.7.6 -:: + watcher 1.2.1 -:: + web 1.1.1 -:: + web_socket 1.0.1 -:: + web_socket_channel 3.0.3 -:: + webdriver 3.1.0 (3.2.0 available) -:: + webkit_inspection_protocol 1.2.1 -:: + xml 6.6.1 (7.1.0 available) -:: + yaml 3.1.3 (3.1.4 available) -:: + yaml_edit 2.2.4 -:: Changed 101 dependencies! -:: 1 package is discontinued. -:: 43 packages have newer versions incompatible with dependency constraints. -:: Try `dart pub outdated` for more information. -:: [1/11] Material Fonts 490ms -:: [2/11] Gradle Wrapper 35ms -:: [3/11] Flutter SDK -:: ├─ [1/5] sky_engine 125ms -:: ├─ [2/5] flutter_gpu 50ms -:: ├─ [3/5] flutter_patched_sdk 202ms -:: ├─ [4/5] flutter_patched_sdk_product 217ms -:: └─ [5/5] linux-x64 981ms -:: [4/11] Linux SDK -:: ├─ [1/3] linux-x64-debug/linux-x64-flutter-gtk 948ms -:: ├─ [2/3] linux-x64-profile/linux-x64-flutter-gtk 331ms -:: └─ [3/3] linux-x64-release/linux-x64-flutter-gtk 1,227ms -:: [11/11] linux-x64/font-subset 126ms -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get -:: Resolving dependencies... -:: Downloading packages... -:: _fe_analyzer_shared 99.0.0 (109.0.0 available) -:: analyzer 12.1.0 (14.5.0 available) -:: animated_vector 0.2.2 (0.2.3 available) -:: animated_vector_annotations 0.2.2 (0.3.0 available) -:: archive 4.0.9 (4.3.0 available) -:: assorted_layout_widgets 11.0.0 (13.1.0 available) -:: clock 1.1.2 (1.1.3 available) -:: code_assets 1.2.1 (2.1.0 available) -:: cross_file 0.3.5+4 (0.4.0 available) -:: dbus 0.7.13 (0.8.0 available) -:: file_selector_android 0.5.2+8 (0.5.2+11 available) -:: file_selector_ios 0.5.3+5 (0.5.3+6 available) -:: file_selector_linux 0.9.4 (0.9.4+1 available) -:: file_selector_macos 0.9.5 (0.9.5+1 available) -:: file_selector_windows 0.9.3+5 (0.9.3+6 available) -:: flutter_riverpod 3.3.2 (3.4.3 available) -:: frontend_server_client 4.0.0 (4.1.0 available) -:: glob 2.1.3 (2.2.0 available) -:: go_router 17.3.0 (18.0.2 available) -:: gsettings 0.2.8 (0.2.9 available) -:: html 0.15.6 (0.15.7 available) -:: image 4.9.1 (4.10.1 available) -:: io 1.0.5 (1.1.0 available) -:: jni 1.0.0 (1.1.0 available) -:: jni_flutter 1.0.1 (1.0.4+1 available) -:: material_color_utilities 0.13.0 (0.13.1 available) -:: mime 2.0.0 (2.1.0 available) -:: native_toolchain_c 0.19.3 (0.19.5 available) -:: objective_c 9.4.1 (9.6.2 available) -:: package_config 2.2.0 (3.0.0 available) -:: package_info_plus 10.2.1 (10.2.2 available) -:: petitparser 7.0.2 (7.1.0 available) -:: platform 3.1.6 (3.2.0 available) -:: pool 1.5.2 (1.5.3 available) -:: posix 6.5.0 (6.5.2 available) -:: pub_semver 2.2.0 (2.2.1 available) -:: riverpod 3.3.2 (3.4.3 available) -:: source_maps 0.10.13 (0.10.14 available) -:: stack_trace 1.12.1 (1.12.2 available) -:: test 1.31.1 (1.32.0 available) -:: test_api 0.7.12 (0.7.14 available) -:: test_core 0.6.18 (0.6.20 available) -:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) -:: unorm_dart 0.3.2 (0.3.3 available) -:: url_launcher 6.3.2 (6.3.3 available) -:: url_launcher_android 6.3.32 (6.3.33 available) -:: url_launcher_ios 6.4.1 (6.4.2 available) -:: url_launcher_linux 3.2.2 (3.2.3 available) -:: url_launcher_macos 3.2.5 (3.2.6 available) -:: url_launcher_windows 3.1.5 (3.1.6 available) -:: vector_graphics 1.2.2 (1.2.3 available) -:: vector_graphics_compiler 1.2.6 (1.3.0 available) -:: vector_math 2.4.2 (2.4.3 available) -:: vm_service 15.2.0 (15.3.0 available) -:: win32 6.3.0 (6.4.0 available) -:: xml 7.0.1 (7.1.0 available) -:: yaml 3.1.3 (3.1.4 available) -:: yaru 10.2.0 (11.0.0 available) -:: Got dependencies! -:: 58 packages have newer versions incompatible with dependency constraints. -:: Try `flutter pub outdated` for more information. -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart -:: [ +16 ms] Unable to locate an Android SDK. -:: [ +11 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ +10 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ +26 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ +13 ms] executing: [/project/parts/busymark/build/] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart pub --suppress-analytics --directory . get --example -:: Resolving dependencies... -:: Downloading packages... -:: _fe_analyzer_shared 99.0.0 (109.0.0 available) -:: analyzer 12.1.0 (14.5.0 available) -:: animated_vector 0.2.2 (0.2.3 available) -:: animated_vector_annotations 0.2.2 (0.3.0 available) -:: archive 4.0.9 (4.3.0 available) -:: assorted_layout_widgets 11.0.0 (13.1.0 available) -:: clock 1.1.2 (1.1.3 available) -:: code_assets 1.2.1 (2.1.0 available) -:: cross_file 0.3.5+4 (0.4.0 available) -:: dbus 0.7.13 (0.8.0 available) -:: file_selector_android 0.5.2+8 (0.5.2+11 available) -:: file_selector_ios 0.5.3+5 (0.5.3+6 available) -:: file_selector_linux 0.9.4 (0.9.4+1 available) -:: file_selector_macos 0.9.5 (0.9.5+1 available) -:: file_selector_windows 0.9.3+5 (0.9.3+6 available) -:: flutter_riverpod 3.3.2 (3.4.3 available) -:: frontend_server_client 4.0.0 (4.1.0 available) -:: glob 2.1.3 (2.2.0 available) -:: go_router 17.3.0 (18.0.2 available) -:: gsettings 0.2.8 (0.2.9 available) -:: html 0.15.6 (0.15.7 available) -:: image 4.9.1 (4.10.1 available) -:: io 1.0.5 (1.1.0 available) -:: jni 1.0.0 (1.1.0 available) -:: jni_flutter 1.0.1 (1.0.4+1 available) -:: material_color_utilities 0.13.0 (0.13.1 available) -:: mime 2.0.0 (2.1.0 available) -:: native_toolchain_c 0.19.3 (0.19.5 available) -:: objective_c 9.4.1 (9.6.2 available) -:: package_config 2.2.0 (3.0.0 available) -:: package_info_plus 10.2.1 (10.2.2 available) -:: petitparser 7.0.2 (7.1.0 available) -:: platform 3.1.6 (3.2.0 available) -:: pool 1.5.2 (1.5.3 available) -:: posix 6.5.0 (6.5.2 available) -:: pub_semver 2.2.0 (2.2.1 available) -:: riverpod 3.3.2 (3.4.3 available) -:: source_maps 0.10.13 (0.10.14 available) -:: stack_trace 1.12.1 (1.12.2 available) -:: test 1.31.1 (1.32.0 available) -:: test_api 0.7.12 (0.7.14 available) -:: test_core 0.6.18 (0.6.20 available) -:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) -:: unorm_dart 0.3.2 (0.3.3 available) -:: url_launcher 6.3.2 (6.3.3 available) -:: url_launcher_android 6.3.32 (6.3.33 available) -:: url_launcher_ios 6.4.1 (6.4.2 available) -:: url_launcher_linux 3.2.2 (3.2.3 available) -:: url_launcher_macos 3.2.5 (3.2.6 available) -:: url_launcher_windows 3.1.5 (3.1.6 available) -:: vector_graphics 1.2.2 (1.2.3 available) -:: vector_graphics_compiler 1.2.6 (1.3.0 available) -:: vector_math 2.4.2 (2.4.3 available) -:: vm_service 15.2.0 (15.3.0 available) -:: win32 6.3.0 (6.4.0 available) -:: xml 7.0.1 (7.1.0 available) -:: yaml 3.1.3 (3.1.4 available) -:: yaru 10.2.0 (11.0.0 available) -:: Got dependencies! -:: 58 packages have newer versions incompatible with dependency constraints. -:: Try `flutter pub outdated` for more information. -:: [ +477 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ +4 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ +1 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ +2 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +20 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ +11 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ +1 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ +1 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ +19 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ +23 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ ] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ +2 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ +1 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ +1 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ ] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ ] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ +1 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +8 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ ] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ ] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ ] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ ] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ ] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ ] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ +5 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ ] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ ] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ +18 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ +9 ms] Skipping generating generated_plugin_registrant.h because it is up-to-date. -:: [ +3 ms] Skipping generating generated_plugin_registrant.cc because it is up-to-date. -:: [ +1 ms] Skipping generating generated_plugins.cmake because it is up-to-date. -:: [ +17 ms] Building Linux application... -:: [ +2 ms] executing: [/project/parts/busymark/build/build/linux/x64/release/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DFLUTTER_TARGET_PLATFORM=linux-x64 /project/parts/busymark/build/linux -:: [ +704 ms] -- The CXX compiler identification is Clang 18.1.3 -:: [ +35 ms] -- Detecting CXX compiler ABI info -:: [ +153 ms] -- Detecting CXX compiler ABI info - done -:: [ +6 ms] -- Check for working CXX compiler: /usr/bin/clang++ - skipped -:: [ ] -- Detecting CXX compile features -:: [ ] -- Detecting CXX compile features - done -:: [ +6 ms] -- Found PkgConfig: /snap/gnome-46-2404-sdk/current/usr/bin/pkg-config (found version "1.8.1") -:: [ ] -- Checking for module 'gtk+-3.0' -:: [ +35 ms] -- Found gtk+-3.0, version 3.24.50 -:: [ +202 ms] -- Checking for module 'glib-2.0' -:: [ +13 ms] -- Found glib-2.0, version 2.84.4 -:: [ +30 ms] -- Checking for module 'gio-2.0' -:: [ +14 ms] -- Found gio-2.0, version 2.84.4 -:: [ +51 ms] -- Checking for module 'libhandy-1' -:: [ +21 ms] -- Found libhandy-1, version 1.8.3 -:: [ +213 ms] -- Checking for module 'libsecret-1' -:: [ +14 ms] -- Found libsecret-1, version 0.21.7 -:: [ +33 ms] -- Checking for module 'webkit2gtk-4.1' -:: [ +23 ms] -- Found webkit2gtk-4.1, version 2.52.6 -:: [+1070 ms] -- The C compiler identification is Clang 18.1.3 -:: [ +46 ms] -- Detecting C compiler ABI info -:: [ +112 ms] -- Detecting C compiler ABI info - done -:: [ +7 ms] -- Check for working C compiler: /usr/bin/clang - skipped -:: [ ] -- Detecting C compile features -:: [ ] -- Detecting C compile features - done -:: [ +19 ms] -- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JVM) -:: [ +1 ms] -- Configuring done (2.8s) -:: [ +61 ms] -- Generating done (0.1s) -:: [ +10 ms] -- Build files have been written to: /project/parts/busymark/build/build/linux/x64/release -:: [ +12 ms] executing: ninja -C /project/parts/busymark/build/build/linux/x64/release install -:: [ +7 ms] ninja: Entering directory `/project/parts/busymark/build/build/linux/x64/release' -:: [ +14 ms] [1/34] Preparing pinned offline visualization web engines -:: [ +4 ms] FAILED: visualization/web/VERSION visualization/web/harness.html visualization/web/bootstrap.js visualization/web/render-engines.js visualization/web/scalar.js visualization/web/viz-global.js /project/parts/busymark/build/build/linux/x64/release/visualization/web/VERSION /project/parts/busymark/build/build/linux/x64/release/visualization/web/harness.html /project/parts/busymark/build/build/linux/x64/release/visualization/web/bootstrap.js /project/parts/busymark/build/build/linux/x64/release/visualization/web/render-engines.js /project/parts/busymark/build/build/linux/x64/release/visualization/web/scalar.js /project/parts/busymark/build/build/linux/x64/release/visualization/web/viz-global.js -:: [ ] cd /project/parts/busymark/build/build/linux/x64/release && /project/parts/busymark/build/linux/../tools/fetch_visualization_web.sh /project/parts/busymark/build/build/linux/x64/release/visualization/web -:: [+3347 ms] [2/34] Preparing checksum-pinned D2 renderer -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 33 20.2M 33 6973k 0 0 4203k 0 0:00:04 0:00:01 0:00:03 6945k -:: [ ] 98 20.2M 98 20.0M 0 0 7278k 0 0:00:02 0:00:02 --:--:-- 9485k -:: [ ] 100 20.2M 100 20.2M 0 0 7336k 0 0:00:02 0:00:02 --:--:-- 9551k -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] Prepared D2 0.7.1 in /project/parts/busymark/build/build/linux/x64/release/d2/linux-x86_64 -:: [ +205 ms] [3/34] Preparing pinned Typst compiler for PDF export -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 16.6M 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 46 16.6M 46 7998k 0 0 4811k 0 0:00:03 0:00:01 0:00:02 8054k -:: [ ] 100 16.6M 100 16.6M 0 0 7393k 0 0:00:02 0:00:02 --:--:-- 10.1M -:: [ ] Prepared Typst 0.15.1 in /project/parts/busymark/build/build/linux/x64/release/typst/linux-x86_64 -:: [+87353 ms] [4/34] Generating /project/parts/busymark/build/linux/flutter/ephemeral/libflutter_linux_gtk.so, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_value.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_view.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_ -:: [ ] [ +18 ms] Unable to locate an Android SDK. -:: [ ] [ +13 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ ] [ +13 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ +62 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ +2 ms] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ ] [ +16 ms] Initializing file store -:: [ ] [ +44 ms] build_hooks: Starting due to {} -:: [ ] [ +3 ms] gen_localizations: Starting due to {} -:: [ ] [+1130 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/package_config.json} -:: [ ] [ +5 ms] unpack_linux: Starting due to {} -:: [ ] [ +74 ms] unpack_linux: Complete -:: [ ] [ +398 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ ] [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ ] [ +8 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ ] [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ ] [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ ] [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ ] [ +12 ms] Running build hooks for linux_x64. -:: [ ] [ +4 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ ] [ +18 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ ] [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ ] [ +3 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +2 ms] [ +21 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/hook/build.dart`. -:: [ ] [ +24 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ ] [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ ] [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ ] [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ ] [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ ] [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ ] [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ ] [ +14 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ ] [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ ] [ +3 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ ] [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ ] [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ ] [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ ] [ +2 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ ] [ +2 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ ] [ +32 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] [ +1 ms] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ ] [ +2 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] [ +1 ms] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] [ +1 ms] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] [ +1 ms] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ ] [ +26 ms] gen_dart_plugin_registrant: Complete -:: [ ] [ +698 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/objective_c/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/output.json", -:: [ ] "package_name": "objective_c", -:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +4 ms] [ +2 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/input.json )`. -:: [ ] [ +58 ms] gen_localizations: Complete -:: [ ] [ +48 ms] kernel_snapshot_program: Starting due to {} -:: [ +26 ms] [ +13 ms] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dartaotruntime /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/snapshots/frontend_server_aot.dart.snapshot --sdk-root /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/common/flutter_patched_sdk_product/ --target=flutter --no-print-incremental-dependencies -DFLUTTER_BUILD_NAME=0.6.1 -DFLUTTER_VERSION=3.47.5 -DFLUTTER_CHANNEL=[user-branch] -DFLUTTER_GIT_URL=https://github.com/flutter/flutter.git -DFLUTTER_FRAMEWORK_REVISION=6a19cca564 -DFLUTTER_ENGINE_REVISION=af7e796e16 -DFLUTTER_DART_VERSION=3.13.4 -Ddart.vm.profile=false -Ddart.vm.product=true --delete-tostring-package-uri=dart:ui --delete-tostring-package-uri=package:flutter --aot --tfa --target-os linux --packages /project/parts/busymark/build/.dart_tool/package_config.json --output-dill /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --depfile /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/kernel_snapshot_program.d --source file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --source package:flutter/src/dart_plugin_registrant.dart -Dflutter.dart_plugin_registrant=file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --verbosity=error --recorded-uses=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/recorded_uses.json package:busymark/main.dart -:: [ ] [ +36 ms] output.json contents: -:: [ ] { -:: [ ] "assets_for_linking": {}, -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 10:32:27.000" -:: [ ] } -:: [ +1 ms] [ +26 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill.d /project/parts/busymark/build/packages/busymark_spellcheck_native/hook/build.dart`. -:: [ ] [+1136 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/output.json", -:: [ ] "package_name": "busymark_spellcheck_native", -:: [ ] "package_root": "/project/parts/busymark/build/packages/busymark_spellcheck_native/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +3 ms] [ +1 ms] Running `(cd /project/parts/busymark/build/packages/busymark_spellcheck_native/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/input.json )`. -:: [ ] [+38021 ms] output.json contents: -:: [ ] { -:: [ ] "assets": [ -:: [ ] { -:: [ ] "encoding": { -:: [ +1 ms] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/cd73a1e2e2/libbusymark_spellcheck_native.so", -:: [ ] "id": "package:busymark_spellcheck_native/busymark_spellcheck_native_bindings_generated.dart", -:: [ ] "link_mode": { -:: [ ] "type": "dynamic_loading_bundle" -:: [ ] } -:: [ ] }, -:: [ ] "type": "code_assets/code" -:: [ ] } -:: [ ] ], -:: [ ] "assets_for_linking": {}, -:: [ ] "dependencies": [ -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx", -:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx" -:: [ ] ], -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 10:32:29.000" -:: [ ] } -:: [ +1 ms] [ +52 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/hook/build.dart`. -:: [ ] [ +840 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/output.json", -:: [ ] "package_name": "sqlite3", -:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +2 ms] [ +1 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/input.json )`. -:: [ ] [+1933 ms] kernel_snapshot_program: Complete -:: [ +3 ms] [+12719 ms] aot_elf_release: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/flutter-distro/packages/flutter_tools/lib/src/build_system/targets/common.dart,/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so} -:: [ ] [ +2 ms] targetingApplePlatform = false -:: [ ] [ ] extractAppleDebugSymbols = true -:: [ ] [ ] targetingAndroidPlatform = false -:: [ ] [ ] Will strip AOT snapshot during build. -:: [ +1 ms] [ +1 ms] executing: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64-release/gen_snapshot --deterministic --snapshot_kind=app-aot-elf --elf=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so --strip /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill -:: [ ] [ +14 ms] output.json contents: -:: [ ] { -:: [ ] "assets": [ -:: [ ] { -:: [ ] "encoding": { -:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/download-0f947ebe/libsqlite3.so", -:: [ ] "id": "package:sqlite3/src/ffi/libsqlite3.g.dart", -:: [ ] "link_mode": { -:: [ ] "type": "dynamic_loading_bundle" -:: [ ] } -:: [ ] }, -:: [ ] "type": "code_assets/code" -:: [ ] } -:: [ ] ], -:: [ ] "assets_for_linking": {}, -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 10:33:08.000" -:: [ ] } -:: [ ] [ +16 ms] Running build hooks for linux_x64 done. -:: [ ] [ +1 ms] build_hooks: Complete -:: [ ] [ +175 ms] link_hooks: Starting due to {} -:: [ ] [ +14 ms] Running link hooks for linux_x64. -:: [ ] [ +14 ms] Running link hooks for linux_x64 done. -:: [ ] [ +2 ms] link_hooks: Complete -:: [ ] [ ] install_code_assets: Starting due to {} -:: [ ] [ +8 ms] Copying native assets to /project/parts/busymark/build/build/native_assets/linux/. -:: [ ] [ +2 ms] Copying native assets done. -:: [ ] [ ] Writing native assets json to file:///project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json. -:: [ ] [ +1 ms] Writing /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json done. -:: [ ] [ ] install_code_assets: Complete -:: [ ] [+30535 ms] aot_elf_release: Complete -:: [ ] [ +123 ms] linux_aot_bundle: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/build/lib/libapp.so} -:: [ ] [ +60 ms] linux_aot_bundle: Complete -:: [ ] [ +114 ms] release_bundle_linux-x64_assets: Starting due to {} -:: [ +2 ms] [ +225 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders/ink_sparkle.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] -:: [ +2 ms] [ ] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders/stretch_effect.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] -:: [ +1 ms] [ +52 ms] Running command: /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/const_finder.dart.snapshot --kernel-file /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --class-library-uri package:flutter/src/widgets/icon_data.dart --class-name IconData --annotation-class-name _StaticIconProvider --annotation-class-library-uri package:flutter/src/widgets/icon_data.dart -:: [ ] [+1409 ms] Expected to find fontFamily for constant IconData with codepoint: 128842, but found fontFamily: null. This usually means you are relying on the system font. Alternatively, font families in an IconData class can be provided in the assets section of your pubspec.yaml, or you are missing "uses-material-design: true". -:: [ +1 ms] [ +1 ms] Expected to find fonts for (packages/yaru/YaruIcons, MaterialIcons, packages/cupertino_icons/CupertinoIcons), but found (MaterialIcons, packages/yaru/YaruIcons). This usually means you are referring to font families in an IconData class but not including them in the assets section of your pubspec.yaml, are missing the package that would include them, or are missing "uses-material-design: true". -:: [ +4 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/packages/yaru/assets/yaru_icons.otf /root/.pub-cache/hosted/pub.dev/yaru-10.2.0/assets/yaru_icons.otf, using codepoints 57724 57723 57952 58031 58004 58087 57763 57862 57935 57945 57958 57799 57778 57937 57907 57846 57850 57890 57848 57564 58100 57845 58015 57647 57786 57547 57732 58149 57607 57622 57556 58143 58041 58094 57785 57936 57932 57668 58081 57756 57631 57853 57873 57869 58146 57666 57660 57743 57685 57688 57542 57684 58009 57614 57686 57483 57573 57802 57502 58104 57820 57485 57960 57777 57891 57581 57803 57828 57844 57822 58034 57623 57830 58011 57956 57541 58089 57562 57490 57492 57871 57868 57721 57722 57747 58086 57507 57832 57906 57880 58090 57717 -:: [ +1 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/fonts/MaterialIcons-Regular.otf /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/material_fonts/MaterialIcons-Regular.otf, using codepoints 58061 984332 57490 62832 57706 58332 57502 57501 57496 58372 -:: [ ] [ +22 ms] Font asset "yaru_icons.otf" was tree-shaken, reducing it from 203588 to 18772 bytes (90.8% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. -:: [ ] [ +2 ms] Font asset "MaterialIcons-Regular.otf" was tree-shaken, reducing it from 1645184 to 1748 bytes (99.9% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. -:: [ ] [ ] release_bundle_linux-x64_assets: Complete -:: [ ] [ +65 ms] Persisting file store -:: [ ] [ +20 ms] Done persisting file store -:: [ ] [ +43 ms] build succeeded. -:: [ ] [ ] "flutter assemble" took 90,492ms. -:: [ ] [ +1 ms] Running 1 shutdown hook -:: [ ] [ ] Shutdown hooks complete -:: [ ] [ ] exiting with code 0 -:: [ ] ninja: build stopped: subcommand failed. -:: [ +2 ms] Building Linux application... (completed in 94.0s) -:: [ ] "flutter linux" took 94,703ms. -:: [ +2 ms] Build process failed -:: [ ] -:: #0 throwToolExit (package:flutter_tools/src/base/common.dart:34:3) -:: #1 _runBuild (package:flutter_tools/src/linux/build_linux.dart:231:5) -:: -:: #2 buildLinux (package:flutter_tools/src/linux/build_linux.dart:100:5) -:: -:: #3 BuildLinuxCommand.runCommand (package:flutter_tools/src/commands/build_linux.dart:105:5) -:: -:: #4 FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart:1663:27) -:: -:: #5 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) -:: -:: #6 CommandRunner.runCommand (package:args/command_runner.dart:212:13) -:: -:: #7 FlutterCommandRunner.runCommand. (package:flutter_tools/src/runner/flutter_command_runner.dart:496:9) -:: -:: #8 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) -:: -:: #9 FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:431:5) -:: -:: #10 FlutterCommandRunner.run. (package:flutter_tools/src/runner/flutter_command_runner.dart:307:33) -:: -:: #11 run.. (package:flutter_tools/runner.dart:104:11) -:: -:: #12 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) -:: -:: #13 main (package:flutter_tools/executable.dart:103:3) -:: -:: -:: -:: [ ] Running 1 shutdown hook -:: [ ] Shutdown hooks complete -:: [ ] exiting with code 1 -'override-build' in part 'busymark' failed with code 1. -Detailed information: -:: + yaml_edit 2.2.4 -:: Changed 101 dependencies! -:: 1 package is discontinued. -:: 43 packages have newer versions incompatible with dependency constraints. -:: Try `dart pub outdated` for more information. -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart -:: [ +2 ms] Build process failed -:: [ ] -:: #0 throwToolExit (package:flutter_tools/src/base/common.dart:34:3) -:: #1 _runBuild (package:flutter_tools/src/linux/build_linux.dart:231:5) -:: -:: #2 buildLinux (package:flutter_tools/src/linux/build_linux.dart:100:5) -:: -:: #3 BuildLinuxCommand.runCommand (package:flutter_tools/src/commands/build_linux.dart:105:5) -:: -:: #4 FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart:1663:27) -:: -:: #5 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) -:: -:: #6 CommandRunner.runCommand (package:args/command_runner.dart:212:13) -:: -:: #7 FlutterCommandRunner.runCommand. (package:flutter_tools/src/runner/flutter_command_runner.dart:496:9) -:: -:: #8 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) -:: -:: #9 FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:431:5) -:: -:: #10 FlutterCommandRunner.run. (package:flutter_tools/src/runner/flutter_command_runner.dart:307:33) -:: -:: #11 run.. (package:flutter_tools/runner.dart:104:11) -:: -:: #12 AppContext.run. (package:flutter_tools/src/base/context.dart:154:19) -:: -:: #13 main (package:flutter_tools/executable.dart:103:3) -:: -Recommended resolution: Review the scriptlet and make sure it's correct. -For more information, check out: https://documentation.ubuntu.com/snapcraft/8.11.1/reference/plugins/ -Full execution log: '/root/.local/state/snapcraft/log/snapcraft-20261007-101731.139260.log' diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-build-retry.log b/delivery/nextcloud-explicit-adoption/evidence/snap-build-retry.log deleted file mode 100644 index 8ffae82e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-build-retry.log +++ /dev/null @@ -1,6224 +0,0 @@ -Get:1 http://archive.ubuntu.com/ubuntu noble InRelease [256 kB] -Get:2 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB] -Get:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] -Get:4 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [50.0 kB] -Get:5 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] -Get:6 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1808 kB] -Get:7 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1943 kB] -Get:8 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [331 kB] -Get:9 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [19.3 MB] -Get:10 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1545 kB] -Get:11 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages [1323 kB] -Get:12 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [117 kB] -Get:13 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [2165 kB] -Get:14 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [2138 kB] -Get:15 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1701 kB] -Get:16 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [56.2 kB] -Get:17 http://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Packages [671 B] -Get:18 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [36.0 kB] -Get:19 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [49.0 kB] -Fetched 33.2 MB in 4s (7806 kB/s) -Reading package lists... -Cleaning all parts -Initialising lifecycle -Installing build-packages -The following snaps are required but not installed as the application is running inside docker or podman container: gnome-46-2404, gnome-46-2404-sdk, core24, node/24/stable, gtk-common-themes, mesa-2404. -Please ensure the environment is properly setup before continuing. -Ignore this message if the appropriate measures have already been taken. -Pulling busymark -Fetching stage-packages -Downloading package: fontconfig -/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/fontconfig_2.15.0-1.1ubuntu2_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) - acq.run() -Downloading package: libvulkan1 -Downloading package: libsvtav1enc1d1 -Downloading package: libhwy1t64 -Downloading package: libxcb-present0 -Downloading package: yaru-theme-icon -Downloading package: libyajl2 -Downloading package: libv4lconvert0t64 -Downloading package: libgomp1 -Downloading package: libzxing3 -Downloading package: libpulse0 -Downloading package: libwebpmux3 -Downloading package: libopenal-data -Downloading package: libltc11 -Downloading package: libvpl2 -Downloading package: libserd-0-0 -Downloading package: libvpx9 -Downloading package: libxxf86vm1 -Downloading package: libcodec2-1.2 -Downloading package: librubberband2 -Downloading package: libsharpyuv0 -Downloading package: libnghttp2-14 -Downloading package: openssh-client -Downloading package: libglx-mesa0 -Downloading package: libtwolame0 -Downloading package: gstreamer1.0-plugins-ugly -Downloading package: libzvbi-common -Downloading package: libjack-jackd2-0 -Downloading package: libfreeaptx0 -Downloading package: libdatrie1 -Downloading package: libthai0 -Downloading package: libssh-4 -Downloading package: libxrender1 -Downloading package: libldap2 -Downloading package: libglvnd0 -Downloading package: libproxy1v5 -Downloading package: libgdbm-compat4t64 -Downloading package: libraptor2-0 -Downloading package: libsensors-config -Downloading package: hicolor-icon-theme -Downloading package: git -Downloading package: libglib2.0-bin -Downloading package: perl -Downloading package: libx11-xcb1 -Downloading package: libxshmfence1 -Downloading package: libfluidsynth3 -Downloading package: libunwind8 -Downloading package: libdecor-0-0 -Downloading package: libpango-1.0-0 -Downloading package: libvo-aacenc0 -Downloading package: libwavpack1 -Downloading package: libavtp0 -Downloading package: libsrt1.5-gnutls -Downloading package: libwayland-cursor0 -Downloading package: libx264-164 -Downloading package: libshine3 -Downloading package: libaom3 -Downloading package: lsb-base -Downloading package: libjpeg-turbo8 -Downloading package: libv4l-0t64 -Downloading package: libavahi-common-data -Downloading package: libcolord2 -Downloading package: libpsl5t64 -Downloading package: libx265-199 -Downloading package: libass9 -Downloading package: libsasl2-2 -Downloading package: libxcb-dri3-0 -Downloading package: libcairo2 -Downloading package: libgbm1 -Downloading package: libxcursor1 -Downloading package: libbluray2 -Downloading package: libvorbisfile3 -Downloading package: libdv4t64 -Downloading package: libblas3 -Downloading package: libdeflate0 -Downloading package: libqrencode4 -Downloading package: libjpeg8 -Downloading package: x11-common -Downloading package: libiec61883-0 -Downloading package: libsphinxbase3t64 -Downloading package: libbs2b0 -Downloading package: libfftw3-double3 -Downloading package: libglx0 -Downloading package: libgme0 -Downloading package: libdav1d7 -Downloading package: libcaca0 -Downloading package: libfribidi0 -Downloading package: mesa-libgallium -Downloading package: libraw1394-11 -Downloading package: librtmp1 -Downloading package: adwaita-icon-theme -Downloading package: libgpm2 -Downloading package: libtiff6 -Downloading package: libgfortran5 -Downloading package: libpixman-1-0 -Downloading package: libtag1v5 -Downloading package: libvidstab1.1 -Downloading package: libva-x11-2 -Downloading package: librist4 -Downloading package: libgsm1 -Downloading package: libgupnp-1.6-0 -Downloading package: libcjson1 -Downloading package: libshout3 -Downloading package: libxau6 -Downloading package: libgtk2.0-0t64 -Downloading package: libxcb1 -Downloading package: libgstreamer-gl1.0-0 -Downloading package: libssh-gcrypt-4 -Downloading package: libllvm20 -Downloading package: libxcomposite1 -Downloading package: libmfx1 -Downloading package: libmpcdec6 -Downloading package: libnuma1 -Downloading package: libcdio19t64 -Downloading package: libdirectfb-1.7-7t64 -Downloading package: libxdamage1 -Downloading package: libgdk-pixbuf-2.0-0 -Downloading package: libsasl2-modules-db -Downloading package: libfaad2 -Downloading package: timgm6mb-soundfont -Downloading package: libcairo-gobject2 -Downloading package: fonts-noto-mono -Downloading package: liblerc4 -Downloading package: ubuntu-mono -Downloading package: libgupnp-igd-1.6-0 -Downloading package: libgdbm6t64 -Downloading package: libxml2 -Downloading package: libglib2.0-data -Downloading package: humanity-icon-theme -Downloading package: libgtk2.0-common -Downloading package: libgraphite2-3 -Downloading package: util-linux -Downloading package: libdconf1 -Downloading package: libfontconfig1 -Downloading package: libcups2t64 -Downloading package: libvdpau1 -Downloading package: libsbc1 -Downloading package: libmodplug1 -Downloading package: libopenexr-3-1-30 -Downloading package: libopenh264-7 -Downloading package: libpostproc57 -Downloading package: libxss1 -Downloading package: shared-mime-info -Downloading package: libatspi2.0-0t64 -Downloading package: glib-networking-common -Downloading package: libgles2 -Downloading package: libgl1-mesa-dri -Downloading package: libcurl3t64-gnutls -Downloading package: libasound2t64 -Downloading package: libxrandr2 -Downloading package: libjxl0.7 -Downloading package: fontconfig-config -Downloading package: gtk2-engines-murrine -Downloading package: libmp3lame0 -Downloading package: libsoxr0 -Downloading package: libx11-data -Downloading package: libsoup-3.0-0 -Downloading package: libgudev-1.0-0 -Downloading package: libgstreamer-plugins-good1.0-0 -Downloading package: libavc1394-0 -Downloading package: libsodium23 -Downloading package: libudfread0 -Downloading package: libjson-glib-1.0-common -Downloading package: libmjpegutils-2.1-0t64 -Downloading package: gnome-themes-extra-data -Downloading package: libmbedcrypto7t64 -Downloading package: libsnappy1v5 -Downloading package: libsndio7.0 -Downloading package: libopus0 -Downloading package: libpangocairo-1.0-0 -Downloading package: libnorm1t64 -Downloading package: libxtst6 -Downloading package: glib-networking-services -Downloading package: libmysofa1 -Downloading package: yaru-theme-gtk -Downloading package: libavcodec60 -Downloading package: libzimg2 -Downloading package: libgstreamer-plugins-bad1.0-0 -Downloading package: libxcb-render0 -Downloading package: libusb-1.0-0 -Downloading package: libvisual-0.4-0 -Downloading package: libgssdp-1.6-0 -Downloading package: libimath-3-1-29t64 -Downloading package: libzvbi0t64 -Downloading package: gsettings-desktop-schemas -Downloading package: fonts-noto-core -Downloading package: libdvdread8t64 -Downloading package: gstreamer1.0-plugins-good -Downloading package: libwebrtc-audio-processing1 -Downloading package: libopenni2-0 -Downloading package: gstreamer1.0-plugins-base -Downloading package: libopenal1 -Downloading package: libvorbisenc2 -Downloading package: libasyncns0 -Downloading package: libunibreak5 -Downloading package: libnss3 -Downloading package: libpangoft2-1.0-0 -Downloading package: libtheora0 -Downloading package: libxvidcore4 -Downloading package: libpocketsphinx3 -Downloading package: libspandsp2t64 -Downloading package: libsndfile1 -Downloading package: libavutil58 -Downloading package: liborc-0.4-0t64 -Downloading package: libwebp7 -Downloading package: libsidplay1v5 -Downloading package: libwildmidi2 -Downloading package: libxslt1.1 -Downloading package: libswscale7 -Downloading package: fonts-dejavu-mono -Downloading package: liblc3-1 -Downloading package: libatk1.0-0t64 -Downloading package: libspeex1 -Downloading package: libmpeg2-4 -Downloading package: libasound2-data -Downloading package: adduser -Downloading package: libflac12t64 -Downloading package: libthai-data -Downloading package: libgstreamer1.0-0 -Downloading package: libdca0 -Downloading package: libavahi-common3 -Downloading package: liblrdf0 -Downloading package: librsvg2-2 -Downloading package: libsamplerate0 -Downloading package: liberror-perl -Downloading package: ocl-icd-libopencl1 -Downloading package: libxcb-glx0 -Downloading package: libldacbt-enc2 -Downloading package: libogg0 -Downloading package: libxinerama1 -Downloading package: libsord-0-0 -Downloading package: libjbig0 -Downloading package: libflite1 -Downloading package: libopenjp2-7 -Downloading package: libwayland-egl1 -Downloading package: libcdparanoia0 -Downloading package: libplacebo338 -Downloading package: libzix-0-0 -Downloading package: libvorbis0a -Downloading package: libsdl2-2.0-0 -Downloading package: libdw1t64 -Downloading package: libjson-glib-1.0-0 -Downloading package: perl-base -Downloading package: libspa-0.2-modules -Downloading package: libzmq5 -Downloading package: libdrm-amdgpu1 -Downloading package: gtk2-engines-pixbuf -Downloading package: dconf-gsettings-backend -Downloading package: libchromaprint1 -Downloading package: libsensors5 -Downloading package: libxcb-randr0 -Downloading package: libvo-amrwbenc0 -Downloading package: libswresample4 -Downloading package: librabbitmq4 -Downloading package: libpipewire-0.3-0t64 -Downloading package: gtk-update-icon-cache -Downloading package: libxcb-xkb1 -Downloading package: libsrtp2-1 -Downloading package: libxext6 -Downloading package: libsoup-3.0-common -Downloading package: libgtk-3-common -Downloading package: libdvdnav4 -Downloading package: libdc1394-25 -Downloading package: libmplex2-2.1-0t64 -Downloading package: liba52-0.7.4 -Downloading package: libnice10 -Downloading package: libmpeg2encpp-2.1-0t64 -Downloading package: libharfbuzz0b -Downloading package: fonts-dejavu-core -Downloading package: libinstpatch-1.0-2 -Downloading package: libsoundtouch1 -Downloading package: libavformat60 -Downloading package: libaa1 -Downloading package: liblilv-0-0 -Downloading package: libmpg123-0t64 -Downloading package: gstreamer1.0-plugins-bad -Downloading package: libslang2 -Downloading package: libegl-mesa0 -Downloading package: session-migration -Downloading package: libva-drm2 -Downloading package: libxcb-shm0 -Downloading package: libgtk-3-0t64 -Downloading package: gnome-themes-extra -Downloading package: dconf-service -Downloading package: perl-modules-5.38 -Downloading package: libgl1 -Downloading package: libzbar0t64 -Downloading package: libegl1 -Downloading package: libx11-6 -Downloading package: libgstreamer-plugins-base1.0-0 -Downloading package: libtag1v5-vanilla -Downloading package: libwayland-client0 -Downloading package: gstreamer1.0-libav -Downloading package: liblapack3 -Downloading package: libopenmpt0t64 -Downloading package: libperl5.38t64 -Downloading package: libxkbcommon-x11-0 -Downloading package: liblcms2-2 -Downloading package: git-man -Downloading package: libatk-bridge2.0-0t64 -Downloading package: libde265-0 -Downloading package: libepoxy0 -Downloading package: libpgm-5.3-0t64 -Downloading package: libxcb-sync1 -Downloading package: libicu74 -Downloading package: libneon27t64 -Downloading package: at-spi2-common -Downloading package: libavahi-client3 -Downloading package: glib-networking -Downloading package: librav1e0 -Downloading package: libva2 -Downloading package: libdrm-intel1 -Downloading package: libxfixes3 -Downloading package: libxdmcp6 -Downloading package: libncurses6 -Downloading package: libxi6 -Downloading package: iso-codes -Downloading package: libxcb-xfixes0 -Downloading package: libavfilter9 -Downloading package: libnspr4 -Downloading package: libsratom-0-0 -Downloading package: libgdk-pixbuf2.0-common -Extracting stage package: fontconfig -Extracting stage package: libvulkan1 -Extracting stage package: libsvtav1enc1d1 -Extracting stage package: libhwy1t64 -Extracting stage package: libxcb-present0 -Extracting stage package: yaru-theme-icon -Extracting stage package: libyajl2 -Extracting stage package: libv4lconvert0t64 -Extracting stage package: libgomp1 -Extracting stage package: libzxing3 -Extracting stage package: libpulse0 -Extracting stage package: libwebpmux3 -Extracting stage package: libopenal-data -Extracting stage package: libltc11 -Extracting stage package: libvpl2 -Extracting stage package: libserd-0-0 -Extracting stage package: libvpx9 -Extracting stage package: libxxf86vm1 -Extracting stage package: libcodec2-1.2 -Extracting stage package: librubberband2 -Extracting stage package: libsharpyuv0 -Extracting stage package: libnghttp2-14 -Extracting stage package: openssh-client -Extracting stage package: libglx-mesa0 -Extracting stage package: libtwolame0 -Extracting stage package: gstreamer1.0-plugins-ugly -Extracting stage package: libzvbi-common -Extracting stage package: libjack-jackd2-0 -Extracting stage package: libfreeaptx0 -Extracting stage package: libdatrie1 -Extracting stage package: libthai0 -Extracting stage package: libssh-4 -Extracting stage package: libxrender1 -Extracting stage package: libldap2 -Extracting stage package: libglvnd0 -Extracting stage package: libproxy1v5 -Extracting stage package: libgdbm-compat4t64 -Extracting stage package: libraptor2-0 -Extracting stage package: libsensors-config -Extracting stage package: hicolor-icon-theme -Extracting stage package: git -Extracting stage package: libglib2.0-bin -Extracting stage package: perl -Extracting stage package: libx11-xcb1 -Extracting stage package: libxshmfence1 -Extracting stage package: libfluidsynth3 -Extracting stage package: libunwind8 -Extracting stage package: libdecor-0-0 -Extracting stage package: libpango-1.0-0 -Extracting stage package: libvo-aacenc0 -Extracting stage package: libwavpack1 -Extracting stage package: libavtp0 -Extracting stage package: libsrt1.5-gnutls -Extracting stage package: libwayland-cursor0 -Extracting stage package: libx264-164 -Extracting stage package: libshine3 -Extracting stage package: libaom3 -Extracting stage package: lsb-base -Extracting stage package: libjpeg-turbo8 -Extracting stage package: libv4l-0t64 -Extracting stage package: libavahi-common-data -Extracting stage package: libcolord2 -Extracting stage package: libpsl5t64 -Extracting stage package: libx265-199 -Extracting stage package: libass9 -Extracting stage package: libsasl2-2 -Extracting stage package: libxcb-dri3-0 -Extracting stage package: libcairo2 -Extracting stage package: libgbm1 -Extracting stage package: libxcursor1 -Extracting stage package: libbluray2 -Extracting stage package: libvorbisfile3 -Extracting stage package: libdv4t64 -Extracting stage package: libblas3 -Extracting stage package: libdeflate0 -Extracting stage package: libqrencode4 -Extracting stage package: libjpeg8 -Extracting stage package: x11-common -Extracting stage package: libiec61883-0 -Extracting stage package: libsphinxbase3t64 -Extracting stage package: libbs2b0 -Extracting stage package: libfftw3-double3 -Extracting stage package: libglx0 -Extracting stage package: libgme0 -Extracting stage package: libdav1d7 -Extracting stage package: libcaca0 -Extracting stage package: libfribidi0 -Extracting stage package: mesa-libgallium -Extracting stage package: libraw1394-11 -Extracting stage package: librtmp1 -Extracting stage package: adwaita-icon-theme -Extracting stage package: libgpm2 -Extracting stage package: libtiff6 -Extracting stage package: libgfortran5 -Extracting stage package: libpixman-1-0 -Extracting stage package: libtag1v5 -Extracting stage package: libvidstab1.1 -Extracting stage package: libva-x11-2 -Extracting stage package: librist4 -Extracting stage package: libgsm1 -Extracting stage package: libgupnp-1.6-0 -Extracting stage package: libcjson1 -Extracting stage package: libshout3 -Extracting stage package: libxau6 -Extracting stage package: libgtk2.0-0t64 -Extracting stage package: libxcb1 -Extracting stage package: libgstreamer-gl1.0-0 -Extracting stage package: libssh-gcrypt-4 -Extracting stage package: libllvm20 -Extracting stage package: libxcomposite1 -Extracting stage package: libmfx1 -Extracting stage package: libmpcdec6 -Extracting stage package: libnuma1 -Extracting stage package: libcdio19t64 -Extracting stage package: libdirectfb-1.7-7t64 -Extracting stage package: libxdamage1 -Extracting stage package: libgdk-pixbuf-2.0-0 -Extracting stage package: libsasl2-modules-db -Extracting stage package: libfaad2 -Extracting stage package: timgm6mb-soundfont -Extracting stage package: libcairo-gobject2 -Extracting stage package: fonts-noto-mono -Extracting stage package: liblerc4 -Extracting stage package: ubuntu-mono -Extracting stage package: libgupnp-igd-1.6-0 -Extracting stage package: libgdbm6t64 -Extracting stage package: libxml2 -Extracting stage package: libglib2.0-data -Extracting stage package: humanity-icon-theme -Extracting stage package: libgtk2.0-common -Extracting stage package: libgraphite2-3 -Extracting stage package: util-linux -Extracting stage package: libdconf1 -Extracting stage package: libfontconfig1 -Extracting stage package: libcups2t64 -Extracting stage package: libvdpau1 -Extracting stage package: libsbc1 -Extracting stage package: libmodplug1 -Extracting stage package: libopenexr-3-1-30 -Extracting stage package: libopenh264-7 -Extracting stage package: libpostproc57 -Extracting stage package: libxss1 -Extracting stage package: shared-mime-info -Extracting stage package: libatspi2.0-0t64 -Extracting stage package: glib-networking-common -Extracting stage package: libgles2 -Extracting stage package: libgl1-mesa-dri -Extracting stage package: libcurl3t64-gnutls -Extracting stage package: libasound2t64 -Extracting stage package: libxrandr2 -Extracting stage package: libjxl0.7 -Extracting stage package: fontconfig-config -Extracting stage package: gtk2-engines-murrine -Extracting stage package: libmp3lame0 -Extracting stage package: libsoxr0 -Extracting stage package: libx11-data -Extracting stage package: libsoup-3.0-0 -Extracting stage package: libgudev-1.0-0 -Extracting stage package: libgstreamer-plugins-good1.0-0 -Extracting stage package: libavc1394-0 -Extracting stage package: libsodium23 -Extracting stage package: libudfread0 -Extracting stage package: libjson-glib-1.0-common -Extracting stage package: libmjpegutils-2.1-0t64 -Extracting stage package: gnome-themes-extra-data -Extracting stage package: libmbedcrypto7t64 -Extracting stage package: libsnappy1v5 -Extracting stage package: libsndio7.0 -Extracting stage package: libopus0 -Extracting stage package: libpangocairo-1.0-0 -Extracting stage package: libnorm1t64 -Extracting stage package: libxtst6 -Extracting stage package: glib-networking-services -Extracting stage package: libmysofa1 -Extracting stage package: yaru-theme-gtk -Extracting stage package: libavcodec60 -Extracting stage package: libzimg2 -Extracting stage package: libgstreamer-plugins-bad1.0-0 -Extracting stage package: libxcb-render0 -Extracting stage package: libusb-1.0-0 -Extracting stage package: libvisual-0.4-0 -Extracting stage package: libgssdp-1.6-0 -Extracting stage package: libimath-3-1-29t64 -Extracting stage package: libzvbi0t64 -Extracting stage package: gsettings-desktop-schemas -Extracting stage package: fonts-noto-core -Extracting stage package: libdvdread8t64 -Extracting stage package: gstreamer1.0-plugins-good -Extracting stage package: libwebrtc-audio-processing1 -Extracting stage package: libopenni2-0 -Extracting stage package: gstreamer1.0-plugins-base -Extracting stage package: libopenal1 -Extracting stage package: libvorbisenc2 -Extracting stage package: libasyncns0 -Extracting stage package: libunibreak5 -Extracting stage package: libnss3 -Extracting stage package: libpangoft2-1.0-0 -Extracting stage package: libtheora0 -Extracting stage package: libxvidcore4 -Extracting stage package: libpocketsphinx3 -Extracting stage package: libspandsp2t64 -Extracting stage package: libsndfile1 -Extracting stage package: libavutil58 -Extracting stage package: liborc-0.4-0t64 -Extracting stage package: libwebp7 -Extracting stage package: libsidplay1v5 -Extracting stage package: libwildmidi2 -Extracting stage package: libxslt1.1 -Extracting stage package: libswscale7 -Extracting stage package: fonts-dejavu-mono -Extracting stage package: liblc3-1 -Extracting stage package: libatk1.0-0t64 -Extracting stage package: libspeex1 -Extracting stage package: libmpeg2-4 -Extracting stage package: libasound2-data -Extracting stage package: adduser -Extracting stage package: libflac12t64 -Extracting stage package: libthai-data -Extracting stage package: libgstreamer1.0-0 -Extracting stage package: libdca0 -Extracting stage package: libavahi-common3 -Extracting stage package: liblrdf0 -Extracting stage package: librsvg2-2 -Extracting stage package: libsamplerate0 -Extracting stage package: liberror-perl -Extracting stage package: ocl-icd-libopencl1 -Extracting stage package: libxcb-glx0 -Extracting stage package: libldacbt-enc2 -Extracting stage package: libogg0 -Extracting stage package: libxinerama1 -Extracting stage package: libsord-0-0 -Extracting stage package: libjbig0 -Extracting stage package: libflite1 -Extracting stage package: libopenjp2-7 -Extracting stage package: libwayland-egl1 -Extracting stage package: libcdparanoia0 -Extracting stage package: libplacebo338 -Extracting stage package: libzix-0-0 -Extracting stage package: libvorbis0a -Extracting stage package: libsdl2-2.0-0 -Extracting stage package: libdw1t64 -Extracting stage package: libjson-glib-1.0-0 -Extracting stage package: perl-base -Extracting stage package: libspa-0.2-modules -Extracting stage package: libzmq5 -Extracting stage package: libdrm-amdgpu1 -Extracting stage package: gtk2-engines-pixbuf -Extracting stage package: dconf-gsettings-backend -Extracting stage package: libchromaprint1 -Extracting stage package: libsensors5 -Extracting stage package: libxcb-randr0 -Extracting stage package: libvo-amrwbenc0 -Extracting stage package: libswresample4 -Extracting stage package: librabbitmq4 -Extracting stage package: libpipewire-0.3-0t64 -Extracting stage package: gtk-update-icon-cache -Extracting stage package: libxcb-xkb1 -Extracting stage package: libsrtp2-1 -Extracting stage package: libxext6 -Extracting stage package: libsoup-3.0-common -Extracting stage package: libgtk-3-common -Extracting stage package: libdvdnav4 -Extracting stage package: libdc1394-25 -Extracting stage package: libmplex2-2.1-0t64 -Extracting stage package: liba52-0.7.4 -Extracting stage package: libnice10 -Extracting stage package: libmpeg2encpp-2.1-0t64 -Extracting stage package: libharfbuzz0b -Extracting stage package: fonts-dejavu-core -Extracting stage package: libinstpatch-1.0-2 -Extracting stage package: libsoundtouch1 -Extracting stage package: libavformat60 -Extracting stage package: libaa1 -Extracting stage package: liblilv-0-0 -Extracting stage package: libmpg123-0t64 -Extracting stage package: gstreamer1.0-plugins-bad -Extracting stage package: libslang2 -Extracting stage package: libegl-mesa0 -Extracting stage package: session-migration -Extracting stage package: libva-drm2 -Extracting stage package: libxcb-shm0 -Extracting stage package: libgtk-3-0t64 -Extracting stage package: gnome-themes-extra -Extracting stage package: dconf-service -Extracting stage package: perl-modules-5.38 -Extracting stage package: libgl1 -Extracting stage package: libzbar0t64 -Extracting stage package: libegl1 -Extracting stage package: libx11-6 -Extracting stage package: libgstreamer-plugins-base1.0-0 -Extracting stage package: libtag1v5-vanilla -Extracting stage package: libwayland-client0 -Extracting stage package: gstreamer1.0-libav -Extracting stage package: liblapack3 -Extracting stage package: libopenmpt0t64 -Extracting stage package: libperl5.38t64 -Extracting stage package: libxkbcommon-x11-0 -Extracting stage package: liblcms2-2 -Extracting stage package: git-man -Extracting stage package: libatk-bridge2.0-0t64 -Extracting stage package: libde265-0 -Extracting stage package: libepoxy0 -Extracting stage package: libpgm-5.3-0t64 -Extracting stage package: libxcb-sync1 -Extracting stage package: libicu74 -Extracting stage package: libneon27t64 -Extracting stage package: at-spi2-common -Extracting stage package: libavahi-client3 -Extracting stage package: glib-networking -Extracting stage package: librav1e0 -Extracting stage package: libva2 -Extracting stage package: libdrm-intel1 -Extracting stage package: libxfixes3 -Extracting stage package: libxdmcp6 -Extracting stage package: libncurses6 -Extracting stage package: libxi6 -Extracting stage package: iso-codes -Extracting stage package: libxcb-xfixes0 -Extracting stage package: libavfilter9 -Extracting stage package: libnspr4 -Extracting stage package: libsratom-0-0 -Extracting stage package: libgdk-pixbuf2.0-common -Pulling desktop-integration -Pulling gnome/sdk -Building busymark -Removing suid/guid from /project/parts/busymark/install/usr/bin/su -Removing suid/guid from /project/parts/busymark/install/usr/lib/openssh/ssh-keysign -:: + rm -rf /project/parts/busymark/build/build -:: + rm -rf /project/parts/busymark/build/.dart_tool -:: + rm -rf /project/parts/busymark/build/linux/flutter/ephemeral -:: + flutter_sdk=/project/parts/busymark/build/flutter-distro -:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD -:: ++ true -:: + flutter_sdk_version= -:: + '[' '!' -x /project/parts/busymark/build/flutter-distro/bin/flutter ']' -:: + rm -rf /project/parts/busymark/build/flutter-distro -:: + git clone --depth 1 --branch 3.47.5 https://github.com/flutter/flutter.git /project/parts/busymark/build/flutter-distro -:: Cloning into '/project/parts/busymark/build/flutter-distro'... -:: Note: switching to '6a19cca56475dbfba1478ee68d7bd0c2ef891da1'. -:: -:: You are in 'detached HEAD' state. You can look around, make experimental -:: changes and commit them, and you can discard any commits you make in this -:: state without impacting any branches by switching back to a branch. -:: -:: If you want to create a new branch to retain commits you create, you may -:: do so (now or later) by using -c with the switch command. Example: -:: -:: git switch -c -:: -:: Or undo this operation with: -:: -:: git switch - -:: -:: Turn off this advice by setting config variable advice.detachedHead to false -:: -:: Updating files: 95% (15307/16074) Updating files: 96% (15432/16074) Updating files: 97% (15592/16074) Updating files: 98% (15753/16074) Updating files: 99% (15914/16074) Updating files: 100% (16074/16074) Updating files: 100% (16074/16074), done. -:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD -:: + test 3.47.5 = 3.47.5 -:: + export CI=true -:: + CI=true -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check precache --linux -:: Downloading Linux x64 Dart SDK from Flutter engine af7e796e161ae0bb1ff0758c71a7105418bd9ded... -:: % Total % Received % Xferd Average Speed Time Time Time Current -:: Dload Upload Total Spent Left Speed -:: 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 5 227M 5 12.2M 0 0 13.2M 0 0:00:17 --:--:-- 0:00:17 13.2M 20 227M 20 47.3M 0 0 24.6M 0 0:00:09 0:00:01 0:00:08 24.6M 36 227M 36 83.8M 0 0 28.7M 0 0:00:07 0:00:02 0:00:05 28.7M 52 227M 52 118M 0 0 30.3M 0 0:00:07 0:00:03 0:00:04 30.3M 67 227M 67 153M 0 0 31.1M 0 0:00:07 0:00:04 0:00:03 31.1M 80 227M 80 182M 0 0 30.8M 0 0:00:07 0:00:05 0:00:02 34.0M 96 227M 96 218M 0 0 31.6M 0 0:00:07 0:00:06 0:00:01 34.3M 100 227M 100 227M 0 0 31.7M 0 0:00:07 0:00:07 --:--:-- 33.8M -:: Building flutter tool... -:: Resolving dependencies... -:: Downloading packages... -:: + _fe_analyzer_shared 95.0.0 (109.0.0 available) -:: + analyzer 10.1.0 (14.5.0 available) -:: + archive 3.6.1 (4.3.0 available) -:: + args 2.7.0 -:: + async 2.13.1 -:: + boolean_selector 2.1.2 -:: + browser_launcher 1.1.3 (1.2.0 available) -:: + built_collection 5.1.1 (5.1.2 available) -:: + built_value 8.12.6 (8.13.0 available) -:: + checked_yaml 2.0.4 -:: + cli_config 0.2.0 -:: + clock 1.1.2 (1.1.3 available) -:: + code_assets 1.2.1 (2.1.0 available) -:: + code_builder 4.11.1 (4.12.0 available) -:: + collection 1.19.1 -:: + completion 1.0.2 -:: + convert 3.1.2 -:: + coverage 1.15.1 -:: + crypto 3.0.7 -:: + csslib 1.0.2 -:: + dap 1.4.0 -:: + dart_service_protocol_shared 0.0.3 -:: + dart_style 3.1.7 (3.1.13 available) -:: + data_assets 0.20.0 -:: + dds 5.4.0 -:: + dds_service_extensions 2.1.0 -:: + devtools_shared 13.1.0 (14.0.0 available) -:: + dtd 4.0.0 -:: + dwds 27.1.2 (27.1.4 available) -:: + extension_discovery 2.1.0 -:: + fake_async 1.3.3 -:: + ffi 2.2.0 -:: + file 7.0.1 -:: + file_testing 3.0.2 (3.1.0 available) -:: + fixnum 1.1.1 -:: + flutter_template_images 5.0.0 (5.0.1 available) -:: + frontend_server_client 4.0.0 (4.1.0 available) -:: + glob 2.1.3 (2.2.0 available) -:: + graphs 2.3.2 -:: + hooks 2.0.2 (2.2.0 available) -:: + hooks_runner 1.5.0 (1.6.4 available) -:: + html 0.15.6 (0.15.7 available) -:: + http 1.6.0 -:: + http_multi_server 3.2.2 -:: + http_parser 4.1.2 -:: + intl 0.20.3 -:: + io 1.0.5 (1.1.0 available) -:: + js 0.7.2 (discontinued) -:: + json_annotation 4.12.0 -:: + json_rpc_2 4.1.0 -:: + logging 1.3.0 -:: + matcher 0.12.20 -:: + meta 1.18.3 (1.19.0 available) -:: + mime 2.0.0 (2.1.0 available) -:: + multicast_dns 0.3.3+1 -:: + mustache_template 2.0.5 (2.0.6 available) -:: + native_stack_traces 0.6.1 (0.7.0 available) -:: + node_preamble 2.0.2 -:: + package_config 2.2.0 (3.0.0 available) -:: + path 1.9.1 -:: + petitparser 7.0.2 (7.1.0 available) -:: + platform 3.1.6 (3.2.0 available) -:: + pool 1.5.2 (1.5.3 available) -:: + process 5.0.5 (5.0.6 available) -:: + pub_semver 2.2.0 (2.2.1 available) -:: + pubspec_parse 1.5.0 (1.6.0 available) -:: + record_use 0.6.0 (1.1.1 available) -:: + shelf 1.4.2 -:: + shelf_packages_handler 3.0.2 -:: + shelf_proxy 1.0.5 -:: + shelf_static 1.1.3 -:: + shelf_web_socket 3.0.0 -:: + source_map_stack_trace 2.1.2 -:: + source_maps 0.10.13 (0.10.14 available) -:: + source_span 1.10.2 -:: + sprintf 7.0.0 -:: + sse 4.2.0 -:: + stack_trace 1.12.1 (1.12.2 available) -:: + standard_message_codec 0.0.1+5 -:: + stream_channel 2.1.4 -:: + string_scanner 1.4.1 -:: + sync_http 0.3.1 -:: + term_glyph 1.2.2 -:: + test 1.31.1 (1.32.0 available) -:: + test_api 0.7.12 (0.7.14 available) -:: + test_core 0.6.18 (0.6.20 available) -:: + typed_data 1.4.0 -:: + unified_analytics 8.0.15 (8.0.18 available) -:: + uuid 4.5.3 (4.6.0 available) -:: + vm_service 15.2.0 (15.3.0 available) -:: + vm_service_interface 2.0.1 -:: + vm_snapshot_analysis 0.7.6 -:: + watcher 1.2.1 -:: + web 1.1.1 -:: + web_socket 1.0.1 -:: + web_socket_channel 3.0.3 -:: + webdriver 3.1.0 (3.2.0 available) -:: + webkit_inspection_protocol 1.2.1 -:: + xml 6.6.1 (7.1.0 available) -:: + yaml 3.1.3 (3.1.4 available) -:: + yaml_edit 2.2.4 -:: Changed 101 dependencies! -:: 1 package is discontinued. -:: 43 packages have newer versions incompatible with dependency constraints. -:: Try `dart pub outdated` for more information. -:: [1/11] Material Fonts 462ms -:: [2/11] Gradle Wrapper 41ms -:: [3/11] Flutter SDK -:: ├─ [1/5] sky_engine 111ms -:: ├─ [2/5] flutter_gpu 62ms -:: ├─ [3/5] flutter_patched_sdk 199ms -:: ├─ [4/5] flutter_patched_sdk_product 207ms -:: └─ [5/5] linux-x64 1,029ms -:: [4/11] Linux SDK -:: ├─ [1/3] linux-x64-debug/linux-x64-flutter-gtk 628ms -:: ├─ [2/3] linux-x64-profile/linux-x64-flutter-gtk 329ms -:: └─ [3/3] linux-x64-release/linux-x64-flutter-gtk 338ms -:: [11/11] linux-x64/font-subset 129ms -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get -:: Resolving dependencies... -:: Downloading packages... -:: _fe_analyzer_shared 99.0.0 (109.0.0 available) -:: analyzer 12.1.0 (14.5.0 available) -:: animated_vector 0.2.2 (0.2.3 available) -:: animated_vector_annotations 0.2.2 (0.3.0 available) -:: archive 4.0.9 (4.3.0 available) -:: assorted_layout_widgets 11.0.0 (13.1.0 available) -:: clock 1.1.2 (1.1.3 available) -:: code_assets 1.2.1 (2.1.0 available) -:: cross_file 0.3.5+4 (0.4.0 available) -:: dbus 0.7.13 (0.8.0 available) -:: file_selector_android 0.5.2+8 (0.5.2+11 available) -:: file_selector_ios 0.5.3+5 (0.5.3+6 available) -:: file_selector_linux 0.9.4 (0.9.4+1 available) -:: file_selector_macos 0.9.5 (0.9.5+1 available) -:: file_selector_windows 0.9.3+5 (0.9.3+6 available) -:: flutter_riverpod 3.3.2 (3.4.3 available) -:: frontend_server_client 4.0.0 (4.1.0 available) -:: glob 2.1.3 (2.2.0 available) -:: go_router 17.3.0 (18.0.2 available) -:: gsettings 0.2.8 (0.2.9 available) -:: html 0.15.6 (0.15.7 available) -:: image 4.9.1 (4.10.1 available) -:: io 1.0.5 (1.1.0 available) -:: jni 1.0.0 (1.1.0 available) -:: jni_flutter 1.0.1 (1.0.4+1 available) -:: material_color_utilities 0.13.0 (0.13.1 available) -:: mime 2.0.0 (2.1.0 available) -:: native_toolchain_c 0.19.3 (0.19.5 available) -:: objective_c 9.4.1 (9.6.2 available) -:: package_config 2.2.0 (3.0.0 available) -:: package_info_plus 10.2.1 (10.2.2 available) -:: petitparser 7.0.2 (7.1.0 available) -:: platform 3.1.6 (3.2.0 available) -:: pool 1.5.2 (1.5.3 available) -:: posix 6.5.0 (6.5.2 available) -:: pub_semver 2.2.0 (2.2.1 available) -:: riverpod 3.3.2 (3.4.3 available) -:: source_maps 0.10.13 (0.10.14 available) -:: stack_trace 1.12.1 (1.12.2 available) -:: test 1.31.1 (1.32.0 available) -:: test_api 0.7.12 (0.7.14 available) -:: test_core 0.6.18 (0.6.20 available) -:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) -:: unorm_dart 0.3.2 (0.3.3 available) -:: url_launcher 6.3.2 (6.3.3 available) -:: url_launcher_android 6.3.32 (6.3.33 available) -:: url_launcher_ios 6.4.1 (6.4.2 available) -:: url_launcher_linux 3.2.2 (3.2.3 available) -:: url_launcher_macos 3.2.5 (3.2.6 available) -:: url_launcher_windows 3.1.5 (3.1.6 available) -:: vector_graphics 1.2.2 (1.2.3 available) -:: vector_graphics_compiler 1.2.6 (1.3.0 available) -:: vector_math 2.4.2 (2.4.3 available) -:: vm_service 15.2.0 (15.3.0 available) -:: win32 6.3.0 (6.4.0 available) -:: xml 7.0.1 (7.1.0 available) -:: yaml 3.1.3 (3.1.4 available) -:: yaru 10.2.0 (11.0.0 available) -:: Got dependencies! -:: 58 packages have newer versions incompatible with dependency constraints. -:: Try `flutter pub outdated` for more information. -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart -:: [ +13 ms] Unable to locate an Android SDK. -:: [ +8 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ +27 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ +15 ms] executing: [/project/parts/busymark/build/] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart pub --suppress-analytics --directory . get --example -:: Resolving dependencies... -:: Downloading packages... -:: _fe_analyzer_shared 99.0.0 (109.0.0 available) -:: analyzer 12.1.0 (14.5.0 available) -:: animated_vector 0.2.2 (0.2.3 available) -:: animated_vector_annotations 0.2.2 (0.3.0 available) -:: archive 4.0.9 (4.3.0 available) -:: assorted_layout_widgets 11.0.0 (13.1.0 available) -:: clock 1.1.2 (1.1.3 available) -:: code_assets 1.2.1 (2.1.0 available) -:: cross_file 0.3.5+4 (0.4.0 available) -:: dbus 0.7.13 (0.8.0 available) -:: file_selector_android 0.5.2+8 (0.5.2+11 available) -:: file_selector_ios 0.5.3+5 (0.5.3+6 available) -:: file_selector_linux 0.9.4 (0.9.4+1 available) -:: file_selector_macos 0.9.5 (0.9.5+1 available) -:: file_selector_windows 0.9.3+5 (0.9.3+6 available) -:: flutter_riverpod 3.3.2 (3.4.3 available) -:: frontend_server_client 4.0.0 (4.1.0 available) -:: glob 2.1.3 (2.2.0 available) -:: go_router 17.3.0 (18.0.2 available) -:: gsettings 0.2.8 (0.2.9 available) -:: html 0.15.6 (0.15.7 available) -:: image 4.9.1 (4.10.1 available) -:: io 1.0.5 (1.1.0 available) -:: jni 1.0.0 (1.1.0 available) -:: jni_flutter 1.0.1 (1.0.4+1 available) -:: material_color_utilities 0.13.0 (0.13.1 available) -:: mime 2.0.0 (2.1.0 available) -:: native_toolchain_c 0.19.3 (0.19.5 available) -:: objective_c 9.4.1 (9.6.2 available) -:: package_config 2.2.0 (3.0.0 available) -:: package_info_plus 10.2.1 (10.2.2 available) -:: petitparser 7.0.2 (7.1.0 available) -:: platform 3.1.6 (3.2.0 available) -:: pool 1.5.2 (1.5.3 available) -:: posix 6.5.0 (6.5.2 available) -:: pub_semver 2.2.0 (2.2.1 available) -:: riverpod 3.3.2 (3.4.3 available) -:: source_maps 0.10.13 (0.10.14 available) -:: stack_trace 1.12.1 (1.12.2 available) -:: test 1.31.1 (1.32.0 available) -:: test_api 0.7.12 (0.7.14 available) -:: test_core 0.6.18 (0.6.20 available) -:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) -:: unorm_dart 0.3.2 (0.3.3 available) -:: url_launcher 6.3.2 (6.3.3 available) -:: url_launcher_android 6.3.32 (6.3.33 available) -:: url_launcher_ios 6.4.1 (6.4.2 available) -:: url_launcher_linux 3.2.2 (3.2.3 available) -:: url_launcher_macos 3.2.5 (3.2.6 available) -:: url_launcher_windows 3.1.5 (3.1.6 available) -:: vector_graphics 1.2.2 (1.2.3 available) -:: vector_graphics_compiler 1.2.6 (1.3.0 available) -:: vector_math 2.4.2 (2.4.3 available) -:: vm_service 15.2.0 (15.3.0 available) -:: win32 6.3.0 (6.4.0 available) -:: xml 7.0.1 (7.1.0 available) -:: yaml 3.1.3 (3.1.4 available) -:: yaru 10.2.0 (11.0.0 available) -:: Got dependencies! -:: 58 packages have newer versions incompatible with dependency constraints. -:: Try `flutter pub outdated` for more information. -:: [ +596 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ +5 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ +6 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ +4 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ +3 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ +3 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ +3 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +29 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ +2 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ +3 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ +4 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ +3 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ +2 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ +23 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ +3 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ +33 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ +2 ms] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ +3 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ +1 ms] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ +1 ms] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ +1 ms] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ +1 ms] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ +42 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ +1 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ +4 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ +1 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ +1 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ +2 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ +2 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +13 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ +2 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ +1 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ +12 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ +2 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ +34 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ +1 ms] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ +2 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ +1 ms] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ +1 ms] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ +1 ms] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ +13 ms] Skipping generating generated_plugin_registrant.h because it is up-to-date. -:: [ +5 ms] Skipping generating generated_plugin_registrant.cc because it is up-to-date. -:: [ +1 ms] Skipping generating generated_plugins.cmake because it is up-to-date. -:: [ +29 ms] Building Linux application... -:: [ +4 ms] executing: [/project/parts/busymark/build/build/linux/x64/release/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DFLUTTER_TARGET_PLATFORM=linux-x64 /project/parts/busymark/build/linux -:: [ +546 ms] -- The CXX compiler identification is Clang 18.1.3 -:: [ +34 ms] -- Detecting CXX compiler ABI info -:: [ +219 ms] -- Detecting CXX compiler ABI info - done -:: [ +10 ms] -- Check for working CXX compiler: /usr/bin/clang++ - skipped -:: [ +1 ms] -- Detecting CXX compile features -:: [ ] -- Detecting CXX compile features - done -:: [ +7 ms] -- Found PkgConfig: /snap/gnome-46-2404-sdk/current/usr/bin/pkg-config (found version "1.8.1") -:: [ ] -- Checking for module 'gtk+-3.0' -:: [ +36 ms] -- Found gtk+-3.0, version 3.24.50 -:: [ +205 ms] -- Checking for module 'glib-2.0' -:: [ +9 ms] -- Found glib-2.0, version 2.84.4 -:: [ +20 ms] -- Checking for module 'gio-2.0' -:: [ +15 ms] -- Found gio-2.0, version 2.84.4 -:: [ +33 ms] -- Checking for module 'libhandy-1' -:: [ +16 ms] -- Found libhandy-1, version 1.8.3 -:: [ +194 ms] -- Checking for module 'libsecret-1' -:: [ +17 ms] -- Found libsecret-1, version 0.21.7 -:: [ +38 ms] -- Checking for module 'webkit2gtk-4.1' -:: [ +28 ms] -- Found webkit2gtk-4.1, version 2.52.6 -:: [ +294 ms] -- The C compiler identification is Clang 18.1.3 -:: [ +37 ms] -- Detecting C compiler ABI info -:: [ +145 ms] -- Detecting C compiler ABI info - done -:: [ +10 ms] -- Check for working C compiler: /usr/bin/clang - skipped -:: [ ] -- Detecting C compile features -:: [ ] -- Detecting C compile features - done -:: [ +19 ms] -- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JVM) -:: [ +2 ms] -- Configuring done (1.9s) -:: [ +61 ms] -- Generating done (0.1s) -:: [ +11 ms] -- Build files have been written to: /project/parts/busymark/build/build/linux/x64/release -:: [ +130 ms] executing: ninja -C /project/parts/busymark/build/build/linux/x64/release install -:: [ +11 ms] ninja: Entering directory `/project/parts/busymark/build/build/linux/x64/release' -:: [+8327 ms] [1/34] Preparing pinned Typst compiler for PDF export -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 2 16.6M 2 412k 0 0 547k 0 0:00:31 --:--:-- 0:00:31 547k -:: [ ] 39 16.6M 39 6780k 0 0 3868k 0 0:00:04 0:00:01 0:00:03 6374k -:: [ ] 100 16.6M 100 16.6M 0 0 7219k 0 0:00:02 0:00:02 --:--:-- 10.1M -:: [ ] Prepared Typst 0.15.1 in /project/parts/busymark/build/build/linux/x64/release/typst/linux-x86_64 -:: [ +893 ms] [2/34] Preparing checksum-pinned D2 renderer -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 20.2M 0 125k 0 0 164k 0 0:02:05 --:--:-- 0:02:05 164k -:: [ ] 22 20.2M 22 4637k 0 0 2645k 0 0:00:07 0:00:01 0:00:06 4548k -:: [ ] 47 20.2M 47 9853k 0 0 3577k 0 0:00:05 0:00:02 0:00:03 4881k -:: [ ] 70 20.2M 70 14.1M 0 0 3065k 0 0:00:06 0:00:04 0:00:02 3622k -:: [ ] 70 20.2M 70 14.1M 0 0 3044k 0 0:00:06 0:00:04 0:00:02 3592k -:: [ ] 100 20.2M 100 20.2M 0 0 3790k 0 0:00:05 0:00:05 --:--:-- 4378k -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] Prepared D2 0.7.1 in /project/parts/busymark/build/build/linux/x64/release/d2/linux-x86_64 -:: [+24267 ms] [3/34] Preparing pinned offline visualization web engines -:: [ ] npm warn deprecated nomnom@1.5.2: Package no longer supported. Contact support@npmjs.com for more info. -:: [ ] added 435 packages in 18s -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 846k 0 846k 0 0 513k 0 --:--:-- 0:00:01 --:--:-- 856k -:: [ ] 100 3362k 0 3362k 0 0 1279k 0 --:--:-- 0:00:02 --:--:-- 1707k -:: [ ] 100 5395k 0 5395k 0 0 1716k 0 --:--:-- 0:00:03 --:--:-- 2173k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 3 2584k 3 98424 0 0 341k 0 0:00:07 --:--:-- 0:00:07 340k -:: [ ] 100 2584k 100 2584k 0 0 5367k 0 --:--:-- --:--:-- --:--:-- 5362k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 109k 100 109k 0 0 437k 0 --:--:-- --:--:-- --:--:-- 438k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 2862k 100 2862k 0 0 6445k 0 --:--:-- --:--:-- --:--:-- 6461k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 50065 100 50065 0 0 302k 0 --:--:-- --:--:-- --:--:-- 303k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 109k 100 109k 0 0 510k 0 --:--:-- --:--:-- --:--:-- 511k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 20 7334k 20 1494k 0 0 2477k 0 0:00:02 --:--:-- 0:00:02 2474k -:: [ ] 100 7334k 100 7334k 0 0 8346k 0 --:--:-- --:--:-- --:--:-- 8344k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 13.2M 0 93311 0 0 403k 0 0:00:33 --:--:-- 0:00:33 401k -:: [ ] 100 13.2M 100 13.2M 0 0 16.4M 0 --:--:-- --:--:-- --:--:-- 16.4M -:: [ ] ▲ [WARNING] Cannot find base config file "../../tsconfig.json" [tsconfig.json] -:: [ ] ../../../../../../../../tmp/tmp.OP53EgZCt4/tool/mermaid-source/tsconfig.json:2:13: -:: [ ] 2 │ "extends": "../../tsconfig.json", -:: [ ] ╵ ~~~~~~~~~~~~~~~~~~~~~ -:: [ ] Prepared offline visualization web assets in /project/parts/busymark/build/build/linux/x64/release/visualization/web -:: [+40813 ms] [4/34] Generating /project/parts/busymark/build/linux/flutter/ephemeral/libflutter_linux_gtk.so, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_value.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_view.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_ -:: [ ] [ +15 ms] Unable to locate an Android SDK. -:: [ ] [ +9 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ ] [ +9 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ +46 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ +1 ms] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ ] [ +9 ms] Initializing file store -:: [ ] [ +28 ms] build_hooks: Starting due to {} -:: [ ] [ +1 ms] gen_localizations: Starting due to {} -:: [ +2 ms] [ +788 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/package_config.json} -:: [ ] [ +2 ms] unpack_linux: Starting due to {} -:: [ ] [ +36 ms] unpack_linux: Complete -:: [ ] [ +236 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ ] [ +4 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ ] [ +8 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ ] [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ ] [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ ] [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ ] [ +10 ms] Running build hooks for linux_x64. -:: [ ] [ +4 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ ] [ +20 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ ] [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ ] [ +3 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +3 ms] [ +21 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/hook/build.dart`. -:: [ ] [ +22 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ ] [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ ] [ +1 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ ] [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ ] [ ] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ ] [ ] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ ] [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ ] [ +15 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ ] [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ ] [ +1 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ ] [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ ] [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ ] [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ ] [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ ] [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ ] [ +22 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ ] [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ ] [ +53 ms] gen_dart_plugin_registrant: Complete -:: [ ] [ +738 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/objective_c/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/output.json", -:: [ ] "package_name": "objective_c", -:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +4 ms] [ +1 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/input.json )`. -:: [ ] [ +313 ms] output.json contents: -:: [ ] { -:: [ ] "assets_for_linking": {}, -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 10:50:35.000" -:: [ ] } -:: [ +4 ms] [ +25 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill.d /project/parts/busymark/build/packages/busymark_spellcheck_native/hook/build.dart`. -:: [ ] [+1783 ms] gen_localizations: Complete -:: [ ] [ +43 ms] kernel_snapshot_program: Starting due to {} -:: [ +13 ms] [ +10 ms] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dartaotruntime /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/snapshots/frontend_server_aot.dart.snapshot --sdk-root /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/common/flutter_patched_sdk_product/ --target=flutter --no-print-incremental-dependencies -DFLUTTER_BUILD_NAME=0.6.1 -DFLUTTER_VERSION=3.47.5 -DFLUTTER_CHANNEL=[user-branch] -DFLUTTER_GIT_URL=https://github.com/flutter/flutter.git -DFLUTTER_FRAMEWORK_REVISION=6a19cca564 -DFLUTTER_ENGINE_REVISION=af7e796e16 -DFLUTTER_DART_VERSION=3.13.4 -Ddart.vm.profile=false -Ddart.vm.product=true --delete-tostring-package-uri=dart:ui --delete-tostring-package-uri=package:flutter --aot --tfa --target-os linux --packages /project/parts/busymark/build/.dart_tool/package_config.json --output-dill /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --depfile /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/kernel_snapshot_program.d --source file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --source package:flutter/src/dart_plugin_registrant.dart -Dflutter.dart_plugin_registrant=file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --verbosity=error --recorded-uses=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/recorded_uses.json package:busymark/main.dart -:: [ ] [+3078 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ +1 ms] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/output.json", -:: [ ] "package_name": "busymark_spellcheck_native", -:: [ ] "package_root": "/project/parts/busymark/build/packages/busymark_spellcheck_native/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +3 ms] [ +1 ms] Running `(cd /project/parts/busymark/build/packages/busymark_spellcheck_native/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/input.json )`. -:: [ ] [+22688 ms] output.json contents: -:: [ ] { -:: [ ] "assets": [ -:: [ ] { -:: [ ] "encoding": { -:: [ +1 ms] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/cd73a1e2e2/libbusymark_spellcheck_native.so", -:: [ ] "id": "package:busymark_spellcheck_native/busymark_spellcheck_native_bindings_generated.dart", -:: [ ] "link_mode": { -:: [ ] "type": "dynamic_loading_bundle" -:: [ ] } -:: [ ] }, -:: [ ] "type": "code_assets/code" -:: [ ] } -:: [ ] ], -:: [ ] "assets_for_linking": {}, -:: [ ] "dependencies": [ -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx", -:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx", -:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in", -:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx", -:: [ +1 ms] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx" -:: [ ] ], -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 10:50:40.000" -:: [ ] } -:: [ +6 ms] [ +47 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/hook/build.dart`. -:: [ ] [ +747 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/output.json", -:: [ ] "package_name": "sqlite3", -:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +7 ms] [ +1 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/input.json )`. -:: [ ] [ +987 ms] output.json contents: -:: [ ] { -:: [ ] "assets": [ -:: [ ] { -:: [ ] "encoding": { -:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/download-0f947ebe/libsqlite3.so", -:: [ ] "id": "package:sqlite3/src/ffi/libsqlite3.g.dart", -:: [ ] "link_mode": { -:: [ ] "type": "dynamic_loading_bundle" -:: [ ] } -:: [ ] }, -:: [ ] "type": "code_assets/code" -:: [ ] } -:: [ ] ], -:: [ ] "assets_for_linking": {}, -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 10:51:04.000" -:: [ ] } -:: [ ] [ +15 ms] Running build hooks for linux_x64 done. -:: [ ] [ +1 ms] build_hooks: Complete -:: [ ] [+6018 ms] kernel_snapshot_program: Complete -:: [ ] [+1069 ms] link_hooks: Starting due to {} -:: [ +6 ms] [ +1 ms] aot_elf_release: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/flutter-distro/packages/flutter_tools/lib/src/build_system/targets/common.dart,/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so} -:: [ ] [ +1 ms] targetingApplePlatform = false -:: [ ] [ ] extractAppleDebugSymbols = true -:: [ ] [ ] targetingAndroidPlatform = false -:: [ ] [ ] Will strip AOT snapshot during build. -:: [ +1 ms] [ ] executing: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64-release/gen_snapshot --deterministic --snapshot_kind=app-aot-elf --elf=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so --strip /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill -:: [ ] [ +14 ms] Running link hooks for linux_x64. -:: [ ] [ +13 ms] Running link hooks for linux_x64 done. -:: [ ] [ +3 ms] link_hooks: Complete -:: [ ] [ +1 ms] install_code_assets: Starting due to {} -:: [ ] [ +9 ms] Copying native assets to /project/parts/busymark/build/build/native_assets/linux/. -:: [ ] [ +2 ms] Copying native assets done. -:: [ +1 ms] [ ] Writing native assets json to file:///project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json. -:: [ ] [ +1 ms] Writing /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json done. -:: [ ] [ ] install_code_assets: Complete -:: [ ] [+29515 ms] aot_elf_release: Complete -:: [ +2 ms] [ +103 ms] linux_aot_bundle: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/build/lib/libapp.so} -:: [ ] [ +183 ms] linux_aot_bundle: Complete -:: [ ] [ +102 ms] release_bundle_linux-x64_assets: Starting due to {} -:: [ +7 ms] [ +94 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders/ink_sparkle.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] -:: [ +5 ms] [ +1 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders/stretch_effect.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] -:: [ +2 ms] [ +43 ms] Running command: /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/const_finder.dart.snapshot --kernel-file /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --class-library-uri package:flutter/src/widgets/icon_data.dart --class-name IconData --annotation-class-name _StaticIconProvider --annotation-class-library-uri package:flutter/src/widgets/icon_data.dart -:: [ +1 ms] [+1188 ms] Expected to find fontFamily for constant IconData with codepoint: 128842, but found fontFamily: null. This usually means you are relying on the system font. Alternatively, font families in an IconData class can be provided in the assets section of your pubspec.yaml, or you are missing "uses-material-design: true". -:: [ +1 ms] [ +1 ms] Expected to find fonts for (packages/yaru/YaruIcons, MaterialIcons, packages/cupertino_icons/CupertinoIcons), but found (MaterialIcons, packages/yaru/YaruIcons). This usually means you are referring to font families in an IconData class but not including them in the assets section of your pubspec.yaml, are missing the package that would include them, or are missing "uses-material-design: true". -:: [ +7 ms] [ +1 ms] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/packages/yaru/assets/yaru_icons.otf /root/.pub-cache/hosted/pub.dev/yaru-10.2.0/assets/yaru_icons.otf, using codepoints 57724 57723 57952 58031 58004 58087 57763 57862 57935 57945 57958 57799 57778 57937 57907 57846 57850 57890 57848 57564 58100 57845 58015 57647 57786 57547 57732 58149 57607 57622 57556 58143 58041 58094 57785 57936 57932 57668 58081 57756 57631 57853 57873 57869 58146 57666 57660 57743 57685 57688 57542 57684 58009 57614 57686 57483 57573 57802 57502 58104 57820 57485 57960 57777 57891 57581 57803 57828 57844 57822 58034 57623 57830 58011 57956 57541 58089 57562 57490 57492 57871 57868 57721 57722 57747 58086 57507 57832 57906 57880 58090 57717 -:: [ +2 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/fonts/MaterialIcons-Regular.otf /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/material_fonts/MaterialIcons-Regular.otf, using codepoints 58061 984332 57490 62832 57706 58332 57502 57501 57496 58372 -:: [ +1 ms] [ +11 ms] Font asset "yaru_icons.otf" was tree-shaken, reducing it from 203588 to 18772 bytes (90.8% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. -:: [ +1 ms] [ ] Font asset "MaterialIcons-Regular.otf" was tree-shaken, reducing it from 1645184 to 1748 bytes (99.9% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. -:: [ ] [ ] release_bundle_linux-x64_assets: Complete -:: [ ] [ +58 ms] Persisting file store -:: [ ] [ +14 ms] Done persisting file store -:: [ ] [ +37 ms] build succeeded. -:: [ ] [ ] "flutter assemble" took 70,367ms. -:: [ ] [ ] Running 1 shutdown hook -:: [ ] [ ] Shutdown hooks complete -:: [ ] [ ] exiting with code 0 -:: [+1049 ms] [5/34] Building CXX object runner/CMakeFiles/busymark.dir/main.cc.o -:: [ +54 ms] [6/34] Building CXX object plugins/screen_retriever_linux/CMakeFiles/screen_retriever_linux_plugin.dir/screen_retriever_linux_plugin.cc.o -:: [ ] [7/34] Building CXX object plugins/gtk/CMakeFiles/gtk_plugin.dir/gtk_plugin.cc.o -:: [ +31 ms] [8/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window.cc.o -:: [ +28 ms] [9/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window_linux_plugin.cc.o -:: [ +12 ms] [10/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/url_launcher_plugin.cc.o -:: [ +55 ms] [11/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/file_selector_plugin.cc.o -:: [ +8 ms] [12/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/messages.g.cc.o -:: [ +124 ms] [13/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/messages.g.cc.o -:: [ +27 ms] [14/34] Building CXX object runner/CMakeFiles/busymark.dir/secure_credential_host.cc.o -:: [ +52 ms] [15/34] Linking CXX shared library plugins/screen_retriever_linux/libscreen_retriever_linux_plugin.so -:: [ +9 ms] [16/34] Linking CXX shared library plugins/yaru_window_linux/libyaru_window_linux_plugin.so -:: [ +11 ms] [17/34] Linking CXX shared library plugins/gtk/libgtk_plugin.so -:: [ +26 ms] [18/34] Linking CXX shared library plugins/url_launcher_linux/liburl_launcher_linux_plugin.so -:: [ +45 ms] [19/34] Building CXX object runner/CMakeFiles/busymark.dir/rich_clipboard_host.cc.o -:: [ +5 ms] [20/34] Building CXX object plugins/window_manager/CMakeFiles/window_manager_plugin.dir/window_manager_plugin.cc.o -:: [ +13 ms] [21/34] Linking CXX shared library plugins/file_selector_linux/libfile_selector_linux_plugin.so -:: [ +33 ms] [22/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_window_preferences.cc.o -:: [ +35 ms] [23/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent_host.cc.o -:: [ +36 ms] [24/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent.cc.o -:: [ +9 ms] [25/34] Linking CXX shared library plugins/window_manager/libwindow_manager_plugin.so -:: [ +80 ms] [26/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_header_icons.cc.o -:: [ +16 ms] [27/34] Building CXX object runner/CMakeFiles/busymark.dir/linux_chrome_host.cc.o -:: [ +130 ms] [28/34] Building CXX object runner/CMakeFiles/busymark.dir/my_application.cc.o -:: [ +39 ms] [29/34] Building CXX object runner/CMakeFiles/busymark.dir/__/flutter/generated_plugin_registrant.cc.o -:: [ +51 ms] [30/34] Building CXX object runner/CMakeFiles/busymark.dir/writerside_dialog_host.cc.o -:: [ +184 ms] [31/34] Building CXX object runner/CMakeFiles/busymark.dir/web_render_host.cc.o -:: [ +58 ms] [32/34] Building CXX object runner/CMakeFiles/busymark.dir/video_player_host.cc.o -:: [ +291 ms] [33/34] Linking CXX executable intermediates_do_not_run/busymark -:: [ ] [33/34] Install the project... -:: [ +9 ms] -- Install configuration: "Release" -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/typst -:: [ +30 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMarchen-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMusic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPersian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansShavian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNushu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansChakma-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsage-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMono-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansUgaritic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinagh-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLepcha-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeroitic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiLe-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElbasan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGrantha-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsmanya-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifAhom-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuginese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOgham-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDogra-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCuneiform-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTangut-Regular.ttf -:: [ +11 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBatak-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLydian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAvestan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansManichaean-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMongolian-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSiddham-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBalinese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansYi-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGothic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSogdian-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhoenician-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTirhuta-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoyombo-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMultani-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLimbu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRejang-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRunic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDeseret-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMro-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCypriot-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHatran-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearA-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansVai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhojki-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuhid-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSignWriting-Regular.ttf -:: [ +14 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMahajani-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCarian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearB-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBrahmi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols2-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSyriac-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewa-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPermic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElymaic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansModi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMandaic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldItalic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWancho-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMath-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagalog-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSharada-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTakri-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGrantha-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDuployan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBassaVah-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLycian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNKo-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSamaritan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMiao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNabataean-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKaithi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanunoo-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiViet-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Bold.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCoptic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-core/copyright -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-mono/copyright -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/d2 -:: [ +31 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/package-lock.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/THIRD_PARTY_NOTICES.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/LICENSE.BSD -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/license.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.BSD -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.source-map -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/license -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/license -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/render-engines.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/scalar.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/harness.html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/viz-global.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/bootstrap.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/dictionaries.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_NO.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_hyph_NO.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_hyph_et_EE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_et_EE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB_thes.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_GB.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_lightproof_en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/WordNet_license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_US.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_AU.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_ZA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_CA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_US.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/README_fa_IR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/license-thes.readme -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_hyph_pt_BR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_pt_BR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-thes -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-dict.adoc -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-thes -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-dict -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-vi.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/README.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl_PL.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_ru_RU.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/README.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/LICENSE.txt -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_th_uk_UA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_hyph_uk_UA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_uk_UA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hyph_es.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_th_es.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hunspell_es.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_it_IT.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_hyph_it_IT.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.1st -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_README -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_th_it_IT.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_de_DE_frami.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.1.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv3 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.0.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_OASIS.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_thesaurus.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv2 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_hyph_de.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_extension_owner.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/README_ar.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/COPYING.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR/README_ko_KR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/README_hi_IN.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/CHECKSUMS.sha256 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/DEPENDENCIES.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/Apache-2.0.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.MPL -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.myspell -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.hunspell -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.LESSER -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/busymark -:: [ ] -- Set non-toolchain portion of runtime path of "/project/parts/busymark/build/build/linux/x64/release/bundle/busymark" to "$ORIGIN/lib" -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/applications/io.busystack.busymark.desktop -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/metainfo/io.busystack.busymark.metainfo.xml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/icudtl.dat -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libflutter_linux_gtk.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libfile_selector_linux_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libgtk_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libscreen_retriever_linux_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/liburl_launcher_linux_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libwindow_manager_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libyaru_window_linux_plugin.so -:: [ ] -- Up-to-date: /project/parts/busymark/build/build/linux/x64/release/bundle/lib -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libbusymark_spellcheck_native.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libsqlite3.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts/MaterialIcons-Regular.otf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/html.css -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/markdown.typ -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling/dictionaries.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding/busymark_logo.svg -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside/templates.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/stretch_effect.frag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/ink_sparkle.frag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/UbuntuMono-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-R.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-RI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-M.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-MI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-B.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-LI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-BI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-L.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/yaru_icons.otf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NativeAssetsManifest.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/version.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NOTICES.Z -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/AssetManifest.bin -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/FontManifest.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libapp.so -:: [ +8 ms] Building Linux application... (completed in 79.8s) -:: [ +2 ms] ✓ Built build/linux/x64/release/bundle/busymark -:: [ ] "flutter linux" took 80,867ms. -:: [ ] Running 1 shutdown hook -:: [ ] Shutdown hooks complete -:: [ ] exiting with code 0 -:: + cp -r build/linux/x64/release/bundle/busymark build/linux/x64/release/bundle/data build/linux/x64/release/bundle/lib build/linux/x64/release/bundle/libexec build/linux/x64/release/bundle/share /project/parts/busymark/install/ -Skipping pull for busymark (already ran) -Skipping build for busymark (already ran) -Staging busymark (required to build 'desktop-integration') -Building desktop-integration -Building gnome/sdk -:: + make -j16 GPU_WRAPPER=gpu-2404-wrapper -:: make: 'Makefile' is up to date. -:: + make -j16 install GPU_WRAPPER=gpu-2404-wrapper DESTDIR=/project/parts/gnome/sdk/install -:: install -D -m755 "hooks-configure-fonts" "/project/parts/gnome/sdk/install/snap/command-chain"/"hooks-configure-fonts" -:: install -D -m755 "desktop-launch" "/project/parts/gnome/sdk/install/snap/command-chain"/"desktop-launch" -:: install -D -m755 "run" "/project/parts/gnome/sdk/install/snap/command-chain"/"run" -:: install -D -m755 "gpu-2404-wrapper" "/project/parts/gnome/sdk/install/snap/command-chain"/"gpu-2404-wrapper" -Skipping stage for busymark (already ran) -Staging desktop-integration -Staging gnome/sdk -Priming busymark -Patch ELF file: 'busymark' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=['$ORIGIN/lib'] - Proposed rpath=['$ORIGIN/usr/lib/x86_64-linux-gnu', '$ORIGIN/lib', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libbusymark_spellcheck_native.so' - Current rpath=['$ORIGIN'] - Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libfile_selector_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libflutter_linux_gtk.so' - Current rpath=['$ORIGIN'] - Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libgtk_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libscreen_retriever_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libsqlite3.so' - Current rpath=['$ORIGIN'] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/liburl_launcher_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libwindow_manager_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libyaru_window_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/addpart' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/choom' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/chrt' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/delpart' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/dmesg' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fallocate' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-cache' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-cat' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-conflist' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-list' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-match' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-pattern' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-query' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-scan' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-validate' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/findmnt' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/flock' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gapplication' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gdbus' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/getopt' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gio' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/git' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/git-shell' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gresource' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gsettings' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gtk-update-icon-cache' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/hardlink' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ionice' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ipcmk' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ipcrm' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ipcs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/last' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsblk' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lscpu' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsipc' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lslocks' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lslogins' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsmem' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsns' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/mcookie' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/mesg' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/more' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/mountpoint' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/namei' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/nsenter' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/partx' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/perl' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/perl5.38-x86_64-linux-gnu' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/perl5.38.2' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/prlimit' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/rename.ul' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/resizepart' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/rev' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/scalar' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/scp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/session-migration' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setarch' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setpriv' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setsid' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setterm' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/sftp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-add' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-agent' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-keygen' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-keyscan' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/su' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/taskset' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/uclampset' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/unshare' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/update-mime-database' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/utmpdump' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/wdctl' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/whereis' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-daemon' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-http-backend' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-http-fetch' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-http-push' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-imap-send' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-remote-http' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-sh-i18n--envsubst' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-shell' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/scalar' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/openssh/ssh-keysign' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/openssh/ssh-pkcs11-helper' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/openssh/ssh-sk-helper' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libDummyDevice.so.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libOniFile.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPS1080.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPSLink.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/blas/libblas.so.3.12.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libx11_plugin.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ati128.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ep9x.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gl.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gles2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i810.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i830.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_mach64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_matrox.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_neomagic.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nsc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nvidia.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_pxa3xx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_sis315.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_tdfx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_input_hub.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_joystick.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_keyboard.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_linux_input.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_lirc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_mutouch.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_penmount.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_ps2mouse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_serialmouse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_sonypi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_wm97xx_ts.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_zytronic.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBFont/libidirectfbfont_dgiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_dfiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_gif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_v4l.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBWindows/libidirectfbwindows_default.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IWater/libiwater_default.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_devmem.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_dummy.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_fbdev.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/wm/libdirectfbwm_default.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/dri/libdril_dri.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gbm/dri_gbm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ani.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-gif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-icns.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pnm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tga.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xbm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognomeproxy.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '$ORIGIN/../../libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsta52dec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaccurip.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaes.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstanalyticsoverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaom.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasfmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstassrender.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiobuffersplit.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofxbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiolatency.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixmatrix.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiovisualizers.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautoconvert.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavtp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbayer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbluez.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbs2b.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbz2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstchromaprint.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstclosedcaption.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodec2json.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodecalpha.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodectimestamper.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoloreffects.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcolormanagement.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcurl.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdash.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdc1394.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstde265.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebugutilsbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdecklink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdirectfb.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtls.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtsdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvb.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsubenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsuboverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdlpcmdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdread.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdspu.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdsub.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaceoverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfbdevsink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfestival.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfieldanalysis.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflite.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfluidsynthmidi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfreeverb.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfrei0r.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgaudieffects.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgeometrictransform.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgme.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgsm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgtkwayland.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsthls.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3tag.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinsertbin.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinter.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterlace.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstipcpipeline.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivfparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivtc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjp2kdecimator.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstkms.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstladspa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlc3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstldac.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlegacyrawparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibav.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../blas', '$ORIGIN/../lapack', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlv2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmidi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmodplug.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2dec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2enc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsdemux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsdemux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmplex.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmsdk.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmusepack.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmxf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstneonhttpsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnetsim.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnvcodec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenal.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenaptx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenexr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenh264.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenjpeg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenmpt.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenni2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopusparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpcapparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpnm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstproxy.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqroverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqsv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrealmedia.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstremovesilence.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstresindvd.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrfbsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrist.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrsvg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanagerbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtponvif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsbc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsctp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsdpelem.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsegmentclip.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsid.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsiren.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmooth.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmoothstreaming.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsndfile.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoundtouch.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspandsp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeed.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrt.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrtp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsvtav1.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstswitchbin.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstteletext.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttimecode.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttranscode.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstttmlsubs.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstunixfd.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvcgadget.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvch264.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstv4l2codecs.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstva.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofiltersbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoframe_audiolevel.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideosignal.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvmnc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoaacenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoamrwbenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvulkan.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwaylandsink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebrtc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwildmidi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx264.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx265.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4mdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzbar.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzxing.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libadwaita.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libmurrine.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libpixmap.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-am-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cedilla.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cyrillic-translit.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-inuktitut.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ipa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-multipress.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-thai.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-er.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-viqr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-xim.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-lpr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-test.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../blas', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL.so.1.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libFLAC.so.12.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGL.so.1.7.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLESv2.so.2.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIex-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIlmThread-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libImath-3_1.so.29.8.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLLVM.so.20.1' - Current rpath=['$ORIGIN/../lib'] - Proposed rpath=['$ORIGIN/../lib', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLerc.so.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXR-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRCore-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenNI2.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.3000.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouch.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSvtAv1Enc.so.1.7.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libWildMidi.so.2.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libX11.so.6.4.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXau.so.6.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXext.so.6.4.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXi.so.6.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXss.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libZXing.so.2.2.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liba52-0.7.4.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaom.so.3.8.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasound.so.2.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libass.so.9.2.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasyncns.so.0.3.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.25209.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatspi.so.0.0.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-client.so.3.2.9' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-common.so.3.5.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavcodec.so.60.31.102' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavfilter.so.9.12.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/blas', '$ORIGIN/lapack', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavformat.so.60.16.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavutil.so.58.29.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbluray.so.2.4.3' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbs2b.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca.so.0.99.20' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo-gobject.so.2.11800.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo.so.2.11800.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_interface.so.0.10.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdio.so.19.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libchromaprint.so.1.5.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson.so.1.7.17' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcodec2.so.1.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcups.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.8.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdatrie.so.1.4.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdav1d.so.7.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdc1394.so.25.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdca.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libde265.so.0.1.8' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdecor-0.so.0.200.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdeflate.so.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirect-1.7.so.7.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirectfb-1.7.so.7.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.125.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.125.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdnav.so.4.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdread.so.8.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdw-0.190.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libepoxy.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad.so.2.11.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3.so.3.6.10' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lang.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_awb.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal16.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_rms.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_slt.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmulex.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_usenglish.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfluidsynth.so.3.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfontconfig.so.1.12.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libform.so.6.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeaptx.so.0.1.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreebl3.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfribidi.so.0.4.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfusion-1.7.so.7.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm.so.6.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm_compat.so.4.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.33' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.4200.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgme.so.0.6.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgpm.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgraphite2.so.3.2.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsm.so.1.0.19' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgssdp-1.6.so.0.106.3' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstadaptivedemux-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstanalytics-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbadaudio-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecparsers-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecs-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcuda-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstgl-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstinsertbin-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstisoff-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmpegts-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmse-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplay-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsctp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsturidownloader-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstva-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvulkan-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwayland-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtc-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtcnice-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.33' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk2.0-0t64/gtk-query-immodules-2.0' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgudev-1.0.so.0.3.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-1.6.so.0.106.6' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-igd-1.6.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.60830.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy.so.1.0.7' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicui18n.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutu.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuuc.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2.2.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjack.so.0.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjbig.so.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjpeg.so.8.2.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.800.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl.so.0.7.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl_threads.so.0.7.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblber.so.2.0.200' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblc3.so.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblcms2.so.2.0.14' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldacBT_enc.so.2.0.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldap.so.2.0.200' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblilv-0.so.0.24.22' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblrdf.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libltc.so.11.2.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmbedcrypto.so.2.28.8' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx.so.1.35' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmjpegutils-2.1.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmodplug.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmp3lame.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpcdec.so.6.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2.so.0.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2encpp-2.1.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpg123.so.0.48.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmplex2-2.1.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmysofa.so.1.3.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libncurses.so.6.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libneon.so.27.6.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnghttp2.so.14.26.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnice.so.10.13.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnorm.so.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnspr4.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnss3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssckbi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssdbm3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssutil3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnuma.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libogg.so.0.8.5' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenal.so.1.23.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenh264.so.2.4.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenjp2.so.2.5.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenmpt.so.0.4.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopus.so.0.9.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.38.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libperl.so.5.38.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpgm-5.3.so.0.0.128' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpipewire-0.3.so.0.1005.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpixman-1.so.0.42.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplacebo.so.338' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplc4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplds4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpocketsphinx.so.3.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/lapack', '$ORIGIN', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpostproc.so.57.3.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy/libpxbackend-1.0.so' - Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy.so.0.5.4' - Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] - Proposed rpath=['$ORIGIN', '$ORIGIN/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpsl.so.5.3.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse-simple.so.0.1.1' - Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse.so.0.24.2' - Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libqrencode.so.4.1.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librabbitmq.so.4.5.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraptor2.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librav1e.so.0.7.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraw1394.so.11.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librist.so.4.3.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librtmp.so.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librubberband.so.2.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsamplerate.so.0.2.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsbc.so.1.3.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsensors.so.5.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libserd-0.so.0.32.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsharpyuv.so.0.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshine.so.3.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsidplay.so.1.0.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libslang.so.2.3.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsmime3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsnappy.so.1.1.10' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndfile.so.1.0.37' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndio.so.7.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsodium.so.23.3.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoftokn3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsord-0.so.0.16.16' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoup-3.0.so.0.7.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoxr.so.0.1.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspandsp.so.2.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspeex.so.1.5.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/blas', '$ORIGIN/lapack', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsratom-0.so.0.6.16' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrt-gnutls.so.1.5.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrtp2.so.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh-gcrypt.so.4.9.6' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh.so.4.9.6' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssl3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswresample.so.4.12.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswscale.so.7.5.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libthai.so.0.3.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheora.so.0.3.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoradec.so.1.1.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoraenc.so.1.1.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtiff.so.6.0.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtwolame.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libudfread.so.0.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunibreak.so.5.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind.so.8.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libusb-1.0.so.0.4.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/plugins/libv4l-mplane.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l2convert.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l1.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l2.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov511-decomp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov518-decomp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-drm.so.2.2000.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-x11.so.2.2000.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva.so.2.2000.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvdpau.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvidstab.so.1.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-aacenc.so.0.0.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-amrwbenc.so.0.0.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbis.so.0.4.9' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisenc.so.2.0.12' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisfile.so.3.3.8' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpl.so.2.9' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpx.so.9.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvulkan.so.1.3.275' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebp.so.7.1.8' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebpmux.so.3.0.13' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebrtc_audio_processing.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx264.so.164' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx265.so.199' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xkb.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxml2.so.2.9.14' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxslt.so.1.1.39' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxvidcore.so.4.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libyajl.so.2.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzbar.so.0.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzimg.so.2.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzix-0.so.0.4.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzmq.so.5.2.5' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi.so.0.13.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_h264la_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevc_fei_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevcd_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevce_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp8d_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9d_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9e_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/B/B.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Bzip2/Bzip2.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Zlib/Zlib.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Cwd/Cwd.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/DB_File/DB_File.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Data/Dumper/Dumper.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Devel/Peek/Peek.so' -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/MD5/MD5.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/SHA/SHA.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Byte/Byte.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/CN/CN.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/EBCDIC/EBCDIC.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Encode.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/JP/JP.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/KR/KR.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Symbol/Symbol.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/TW/TW.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Unicode/Unicode.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/File/Glob/Glob.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Filter/Util/Call/Call.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/GDBM_File/GDBM_File.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/FieldHash/FieldHash.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/I18N/Langinfo/Langinfo.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IO/IO.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IPC/SysV/SysV.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/List/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/MIME/Base64/Base64.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Math/BigInt/FastCalc/FastCalc.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/NDBM_File/NDBM_File.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/ODBM_File/ODBM_File.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Opcode/Opcode.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/POSIX/POSIX.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/encoding/encoding.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/mmap/mmap.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/scalar/scalar.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/via/via.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/SDBM_File/SDBM_File.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Socket/Socket.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Storable/Storable.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Hostname/Hostname.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Syslog/Syslog.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/HiRes/HiRes.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/Piece/Piece.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Collate/Collate.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Normalize/Normalize.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/attributes/attributes.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/mro/mro.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/re/re.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/shared/shared.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/threads.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Cwd/Cwd.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/File/Glob/Glob.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Hash/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/IO/IO.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/List/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/POSIX/POSIX.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Socket/Socket.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/attributes/attributes.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/re/re.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-16.1.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/sasl2/libsasldb.so.2.0.25' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-null.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-webrtc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/alsa/libspa-alsa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audioconvert/libspa-audioconvert.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiomixer/libspa-audiomixer.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiotestsrc/libspa-audiotestsrc.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/avb/libspa-avb.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/control/libspa-control.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-dbus.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-journal.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/test/libspa-test.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/v4l2/libspa-v4l2.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videoconvert/libspa-videoconvert.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videotestsrc/libspa-videotestsrc.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/vdpau/libvdpau_trace.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/vpl/libvpl_wayland.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/libexec/dconf-service' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/libexec/glib-pacrunner' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '$ORIGIN/../lib/x86_64-linux-gnu/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/agetty' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blkdiscard' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blkid' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blkzone' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blockdev' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/chcpu' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/chmem' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/ctrlaltdel' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/findfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsck' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsck.cramfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsck.minix' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsfreeze' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fstrim' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/isosize' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/ldattach' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs.bfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs.cramfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs.minix' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkswap' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/pivot_root' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/readprofile' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/rtcwake' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/runuser' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/sulogin' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/swaplabel' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/switch_root' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/wipefs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/zramctl' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Priming desktop-integration -:: + craftctl default -:: /tmp/tmpu_zsri9k/scriptlet.sh: line 5: craftctl: command not found -'override-prime' in part 'desktop-integration' failed with code 127. -Detailed information: -:: + craftctl default -:: /tmp/tmpu_zsri9k/scriptlet.sh: line 5: craftctl: command not found -Recommended resolution: Review the scriptlet and make sure it's correct. -For more information, check out: https://documentation.ubuntu.com/snapcraft/8.11.1/reference/plugins/ -Full execution log: '/root/.local/state/snapcraft/log/snapcraft-20261007-103700.189670.log' diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-build.log b/delivery/nextcloud-explicit-adoption/evidence/snap-build.log deleted file mode 100644 index b209caa5..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-build.log +++ /dev/null @@ -1,24 +0,0 @@ -Get:1 http://archive.ubuntu.com/ubuntu noble InRelease [256 kB] -Get:2 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] -Get:3 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB] -Get:4 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [19.3 MB] -Get:5 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB] -Get:6 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [331 kB] -Get:7 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [117 kB] -Get:8 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1808 kB] -Get:9 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1701 kB] -Get:10 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [56.2 kB] -Get:11 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [2165 kB] -Get:12 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [2138 kB] -Get:13 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [49.0 kB] -Get:14 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [36.0 kB] -Get:15 http://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Packages [671 B] -Get:16 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1545 kB] -Get:17 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [50.0 kB] -Get:18 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages [1323 kB] -Get:19 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1943 kB] -Fetched 33.2 MB in 5s (6815 kB/s) -Reading package lists... -Cleaning all parts -Failed to pull source: unable to determine source type of '/usr/share/snapcraft/extensions/desktop/command-chain'. -Full execution log: '/root/.local/state/snapcraft/log/snapcraft-20261007-101447.479536.log' diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-clean-final.log b/delivery/nextcloud-explicit-adoption/evidence/snap-clean-final.log deleted file mode 100644 index a36917c8..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-clean-final.log +++ /dev/null @@ -1,8850 +0,0 @@ -Cleaning all parts -Initialising lifecycle -Installing build-packages -The following snaps are required but not installed as the application is running inside docker or podman container: core24, mesa-2404, gnome-46-2404, node/24/stable, gnome-46-2404-sdk, gtk-common-themes. -Please ensure the environment is properly setup before continuing. -Ignore this message if the appropriate measures have already been taken. -Pulling busymark -Fetching stage-packages -Downloading package: fontconfig -/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/fontconfig_2.15.0-1.1ubuntu2_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) - acq.run() -Downloading package: libvulkan1 -Downloading package: libsvtav1enc1d1 -Downloading package: libhwy1t64 -Downloading package: libxcb-present0 -Downloading package: yaru-theme-icon -Downloading package: libyajl2 -Downloading package: libv4lconvert0t64 -Downloading package: libgomp1 -Downloading package: libzxing3 -Downloading package: libpulse0 -Downloading package: libwebpmux3 -Downloading package: libopenal-data -Downloading package: libltc11 -Downloading package: libvpl2 -Downloading package: libserd-0-0 -Downloading package: libvpx9 -Downloading package: libxxf86vm1 -Downloading package: libcodec2-1.2 -Downloading package: librubberband2 -Downloading package: libsharpyuv0 -Downloading package: libnghttp2-14 -Downloading package: openssh-client -Downloading package: libglx-mesa0 -Downloading package: libtwolame0 -Downloading package: gstreamer1.0-plugins-ugly -Downloading package: libzvbi-common -Downloading package: libjack-jackd2-0 -Downloading package: libfreeaptx0 -Downloading package: libdatrie1 -Downloading package: libthai0 -Downloading package: libssh-4 -Downloading package: libxrender1 -Downloading package: libldap2 -Downloading package: libglvnd0 -Downloading package: libproxy1v5 -Downloading package: libgdbm-compat4t64 -Downloading package: libraptor2-0 -Downloading package: libsensors-config -Downloading package: hicolor-icon-theme -Downloading package: git -Downloading package: libglib2.0-bin -Downloading package: perl -Downloading package: libx11-xcb1 -Downloading package: libxshmfence1 -Downloading package: libfluidsynth3 -Downloading package: libunwind8 -Downloading package: libdecor-0-0 -Downloading package: libpango-1.0-0 -Downloading package: libvo-aacenc0 -Downloading package: libwavpack1 -Downloading package: libavtp0 -Downloading package: libsrt1.5-gnutls -Downloading package: libwayland-cursor0 -Downloading package: libx264-164 -Downloading package: libshine3 -Downloading package: libaom3 -Downloading package: lsb-base -Downloading package: libjpeg-turbo8 -Downloading package: libv4l-0t64 -Downloading package: libavahi-common-data -Downloading package: libcolord2 -Downloading package: libpsl5t64 -Downloading package: libx265-199 -Downloading package: libass9 -Downloading package: libsasl2-2 -Downloading package: libxcb-dri3-0 -Downloading package: libcairo2 -Downloading package: libgbm1 -Downloading package: libxcursor1 -Downloading package: libbluray2 -Downloading package: libvorbisfile3 -Downloading package: libdv4t64 -Downloading package: libblas3 -Downloading package: libdeflate0 -Downloading package: libqrencode4 -Downloading package: libjpeg8 -Downloading package: x11-common -Downloading package: libiec61883-0 -Downloading package: libsphinxbase3t64 -Downloading package: libbs2b0 -Downloading package: libfftw3-double3 -Downloading package: libglx0 -Downloading package: libgme0 -Downloading package: libdav1d7 -Downloading package: libcaca0 -Downloading package: libfribidi0 -Downloading package: mesa-libgallium -Downloading package: libraw1394-11 -Downloading package: librtmp1 -Downloading package: adwaita-icon-theme -Downloading package: libgpm2 -Downloading package: libtiff6 -Downloading package: libgfortran5 -Downloading package: libpixman-1-0 -Downloading package: libtag1v5 -Downloading package: libvidstab1.1 -Downloading package: libva-x11-2 -Downloading package: librist4 -Downloading package: libgsm1 -Downloading package: libgupnp-1.6-0 -Downloading package: libcjson1 -Downloading package: libshout3 -Downloading package: libxau6 -Downloading package: libgtk2.0-0t64 -Downloading package: libxcb1 -Downloading package: libgstreamer-gl1.0-0 -Downloading package: libssh-gcrypt-4 -Downloading package: libllvm20 -Downloading package: libxcomposite1 -Downloading package: libmfx1 -Downloading package: libmpcdec6 -Downloading package: libnuma1 -Downloading package: libcdio19t64 -Downloading package: libdirectfb-1.7-7t64 -Downloading package: libxdamage1 -Downloading package: libgdk-pixbuf-2.0-0 -Downloading package: libsasl2-modules-db -Downloading package: libfaad2 -Downloading package: timgm6mb-soundfont -Downloading package: libcairo-gobject2 -Downloading package: fonts-noto-mono -Downloading package: liblerc4 -Downloading package: ubuntu-mono -Downloading package: libgupnp-igd-1.6-0 -Downloading package: libgdbm6t64 -Downloading package: libxml2 -Downloading package: libglib2.0-data -Downloading package: humanity-icon-theme -Downloading package: libgtk2.0-common -Downloading package: libgraphite2-3 -Downloading package: util-linux -Downloading package: libdconf1 -Downloading package: libfontconfig1 -Downloading package: libcups2t64 -Downloading package: libvdpau1 -Downloading package: libsbc1 -Downloading package: libmodplug1 -Downloading package: libopenexr-3-1-30 -Downloading package: libopenh264-7 -Downloading package: libpostproc57 -Downloading package: libxss1 -Downloading package: shared-mime-info -Downloading package: libatspi2.0-0t64 -Downloading package: glib-networking-common -Downloading package: libgles2 -Downloading package: libgl1-mesa-dri -Downloading package: libcurl3t64-gnutls -Downloading package: libasound2t64 -Downloading package: libxrandr2 -Downloading package: libjxl0.7 -Downloading package: fontconfig-config -Downloading package: gtk2-engines-murrine -Downloading package: libmp3lame0 -Downloading package: libsoxr0 -Downloading package: libx11-data -Downloading package: libsoup-3.0-0 -Downloading package: libgudev-1.0-0 -Downloading package: libgstreamer-plugins-good1.0-0 -Downloading package: libavc1394-0 -Downloading package: libsodium23 -Downloading package: libudfread0 -Downloading package: libjson-glib-1.0-common -Downloading package: libmjpegutils-2.1-0t64 -Downloading package: gnome-themes-extra-data -Downloading package: libmbedcrypto7t64 -Downloading package: libsnappy1v5 -Downloading package: libsndio7.0 -Downloading package: libopus0 -Downloading package: libpangocairo-1.0-0 -Downloading package: libnorm1t64 -Downloading package: libxtst6 -Downloading package: glib-networking-services -Downloading package: libmysofa1 -Downloading package: yaru-theme-gtk -Downloading package: libavcodec60 -Downloading package: libzimg2 -Downloading package: libgstreamer-plugins-bad1.0-0 -Downloading package: libxcb-render0 -Downloading package: libusb-1.0-0 -Downloading package: libvisual-0.4-0 -Downloading package: libgssdp-1.6-0 -Downloading package: libimath-3-1-29t64 -Downloading package: libzvbi0t64 -Downloading package: gsettings-desktop-schemas -Downloading package: fonts-noto-core -Downloading package: libdvdread8t64 -Downloading package: gstreamer1.0-plugins-good -Downloading package: libwebrtc-audio-processing1 -Downloading package: libopenni2-0 -Downloading package: gstreamer1.0-plugins-base -Downloading package: libopenal1 -Downloading package: libvorbisenc2 -Downloading package: libasyncns0 -Downloading package: libunibreak5 -Downloading package: libnss3 -Downloading package: libpangoft2-1.0-0 -Downloading package: libtheora0 -Downloading package: libxvidcore4 -Downloading package: libpocketsphinx3 -Downloading package: libspandsp2t64 -Downloading package: libsndfile1 -Downloading package: libavutil58 -Downloading package: liborc-0.4-0t64 -Downloading package: libwebp7 -Downloading package: libsidplay1v5 -Downloading package: libwildmidi2 -Downloading package: libxslt1.1 -Downloading package: libswscale7 -Downloading package: fonts-dejavu-mono -Downloading package: liblc3-1 -Downloading package: libatk1.0-0t64 -Downloading package: libspeex1 -Downloading package: libmpeg2-4 -Downloading package: libasound2-data -Downloading package: adduser -Downloading package: libflac12t64 -Downloading package: libthai-data -Downloading package: libgstreamer1.0-0 -Downloading package: libdca0 -Downloading package: libavahi-common3 -Downloading package: liblrdf0 -Downloading package: librsvg2-2 -Downloading package: libsamplerate0 -Downloading package: liberror-perl -Downloading package: ocl-icd-libopencl1 -Downloading package: libxcb-glx0 -Downloading package: libldacbt-enc2 -Downloading package: libogg0 -Downloading package: libxinerama1 -Downloading package: libsord-0-0 -Downloading package: libjbig0 -Downloading package: libflite1 -Downloading package: libopenjp2-7 -Downloading package: libwayland-egl1 -Downloading package: libcdparanoia0 -Downloading package: libplacebo338 -Downloading package: libzix-0-0 -Downloading package: libvorbis0a -Downloading package: libsdl2-2.0-0 -Downloading package: libdw1t64 -Downloading package: libjson-glib-1.0-0 -Downloading package: perl-base -Downloading package: libspa-0.2-modules -Downloading package: libzmq5 -Downloading package: libdrm-amdgpu1 -Downloading package: gtk2-engines-pixbuf -Downloading package: dconf-gsettings-backend -Downloading package: libchromaprint1 -Downloading package: libsensors5 -Downloading package: libxcb-randr0 -Downloading package: libvo-amrwbenc0 -Downloading package: libswresample4 -Downloading package: librabbitmq4 -Downloading package: libpipewire-0.3-0t64 -Downloading package: gtk-update-icon-cache -Downloading package: libxcb-xkb1 -Downloading package: libsrtp2-1 -Downloading package: libxext6 -Downloading package: libsoup-3.0-common -Downloading package: libgtk-3-common -Downloading package: libdvdnav4 -Downloading package: libdc1394-25 -Downloading package: libmplex2-2.1-0t64 -Downloading package: liba52-0.7.4 -Downloading package: libnice10 -Downloading package: libmpeg2encpp-2.1-0t64 -Downloading package: libharfbuzz0b -Downloading package: fonts-dejavu-core -Downloading package: libinstpatch-1.0-2 -Downloading package: libsoundtouch1 -Downloading package: libavformat60 -Downloading package: libaa1 -Downloading package: liblilv-0-0 -Downloading package: libmpg123-0t64 -Downloading package: gstreamer1.0-plugins-bad -Downloading package: libslang2 -Downloading package: libegl-mesa0 -Downloading package: session-migration -Downloading package: libva-drm2 -Downloading package: libxcb-shm0 -Downloading package: libgtk-3-0t64 -Downloading package: gnome-themes-extra -Downloading package: dconf-service -Downloading package: perl-modules-5.38 -Downloading package: libgl1 -Downloading package: libzbar0t64 -Downloading package: libegl1 -Downloading package: libx11-6 -Downloading package: libgstreamer-plugins-base1.0-0 -Downloading package: libtag1v5-vanilla -Downloading package: libwayland-client0 -Downloading package: gstreamer1.0-libav -Downloading package: liblapack3 -Downloading package: libopenmpt0t64 -Downloading package: libperl5.38t64 -Downloading package: libxkbcommon-x11-0 -Downloading package: liblcms2-2 -Downloading package: git-man -Downloading package: libatk-bridge2.0-0t64 -Downloading package: libde265-0 -Downloading package: libepoxy0 -Downloading package: libpgm-5.3-0t64 -Downloading package: libxcb-sync1 -Downloading package: libicu74 -Downloading package: libneon27t64 -Downloading package: at-spi2-common -Downloading package: libavahi-client3 -Downloading package: glib-networking -Downloading package: librav1e0 -Downloading package: libva2 -Downloading package: libdrm-intel1 -Downloading package: libxfixes3 -Downloading package: libxdmcp6 -Downloading package: libncurses6 -Downloading package: libxi6 -Downloading package: iso-codes -Downloading package: libxcb-xfixes0 -Downloading package: libavfilter9 -Downloading package: libnspr4 -Downloading package: libsratom-0-0 -Downloading package: libgdk-pixbuf2.0-common -Extracting stage package: fontconfig -Extracting stage package: libvulkan1 -Extracting stage package: libsvtav1enc1d1 -Extracting stage package: libhwy1t64 -Extracting stage package: libxcb-present0 -Extracting stage package: yaru-theme-icon -Extracting stage package: libyajl2 -Extracting stage package: libv4lconvert0t64 -Extracting stage package: libgomp1 -Extracting stage package: libzxing3 -Extracting stage package: libpulse0 -Extracting stage package: libwebpmux3 -Extracting stage package: libopenal-data -Extracting stage package: libltc11 -Extracting stage package: libvpl2 -Extracting stage package: libserd-0-0 -Extracting stage package: libvpx9 -Extracting stage package: libxxf86vm1 -Extracting stage package: libcodec2-1.2 -Extracting stage package: librubberband2 -Extracting stage package: libsharpyuv0 -Extracting stage package: libnghttp2-14 -Extracting stage package: openssh-client -Extracting stage package: libglx-mesa0 -Extracting stage package: libtwolame0 -Extracting stage package: gstreamer1.0-plugins-ugly -Extracting stage package: libzvbi-common -Extracting stage package: libjack-jackd2-0 -Extracting stage package: libfreeaptx0 -Extracting stage package: libdatrie1 -Extracting stage package: libthai0 -Extracting stage package: libssh-4 -Extracting stage package: libxrender1 -Extracting stage package: libldap2 -Extracting stage package: libglvnd0 -Extracting stage package: libproxy1v5 -Extracting stage package: libgdbm-compat4t64 -Extracting stage package: libraptor2-0 -Extracting stage package: libsensors-config -Extracting stage package: hicolor-icon-theme -Extracting stage package: git -Extracting stage package: libglib2.0-bin -Extracting stage package: perl -Extracting stage package: libx11-xcb1 -Extracting stage package: libxshmfence1 -Extracting stage package: libfluidsynth3 -Extracting stage package: libunwind8 -Extracting stage package: libdecor-0-0 -Extracting stage package: libpango-1.0-0 -Extracting stage package: libvo-aacenc0 -Extracting stage package: libwavpack1 -Extracting stage package: libavtp0 -Extracting stage package: libsrt1.5-gnutls -Extracting stage package: libwayland-cursor0 -Extracting stage package: libx264-164 -Extracting stage package: libshine3 -Extracting stage package: libaom3 -Extracting stage package: lsb-base -Extracting stage package: libjpeg-turbo8 -Extracting stage package: libv4l-0t64 -Extracting stage package: libavahi-common-data -Extracting stage package: libcolord2 -Extracting stage package: libpsl5t64 -Extracting stage package: libx265-199 -Extracting stage package: libass9 -Extracting stage package: libsasl2-2 -Extracting stage package: libxcb-dri3-0 -Extracting stage package: libcairo2 -Extracting stage package: libgbm1 -Extracting stage package: libxcursor1 -Extracting stage package: libbluray2 -Extracting stage package: libvorbisfile3 -Extracting stage package: libdv4t64 -Extracting stage package: libblas3 -Extracting stage package: libdeflate0 -Extracting stage package: libqrencode4 -Extracting stage package: libjpeg8 -Extracting stage package: x11-common -Extracting stage package: libiec61883-0 -Extracting stage package: libsphinxbase3t64 -Extracting stage package: libbs2b0 -Extracting stage package: libfftw3-double3 -Extracting stage package: libglx0 -Extracting stage package: libgme0 -Extracting stage package: libdav1d7 -Extracting stage package: libcaca0 -Extracting stage package: libfribidi0 -Extracting stage package: mesa-libgallium -Extracting stage package: libraw1394-11 -Extracting stage package: librtmp1 -Extracting stage package: adwaita-icon-theme -Extracting stage package: libgpm2 -Extracting stage package: libtiff6 -Extracting stage package: libgfortran5 -Extracting stage package: libpixman-1-0 -Extracting stage package: libtag1v5 -Extracting stage package: libvidstab1.1 -Extracting stage package: libva-x11-2 -Extracting stage package: librist4 -Extracting stage package: libgsm1 -Extracting stage package: libgupnp-1.6-0 -Extracting stage package: libcjson1 -Extracting stage package: libshout3 -Extracting stage package: libxau6 -Extracting stage package: libgtk2.0-0t64 -Extracting stage package: libxcb1 -Extracting stage package: libgstreamer-gl1.0-0 -Extracting stage package: libssh-gcrypt-4 -Extracting stage package: libllvm20 -Extracting stage package: libxcomposite1 -Extracting stage package: libmfx1 -Extracting stage package: libmpcdec6 -Extracting stage package: libnuma1 -Extracting stage package: libcdio19t64 -Extracting stage package: libdirectfb-1.7-7t64 -Extracting stage package: libxdamage1 -Extracting stage package: libgdk-pixbuf-2.0-0 -Extracting stage package: libsasl2-modules-db -Extracting stage package: libfaad2 -Extracting stage package: timgm6mb-soundfont -Extracting stage package: libcairo-gobject2 -Extracting stage package: fonts-noto-mono -Extracting stage package: liblerc4 -Extracting stage package: ubuntu-mono -Extracting stage package: libgupnp-igd-1.6-0 -Extracting stage package: libgdbm6t64 -Extracting stage package: libxml2 -Extracting stage package: libglib2.0-data -Extracting stage package: humanity-icon-theme -Extracting stage package: libgtk2.0-common -Extracting stage package: libgraphite2-3 -Extracting stage package: util-linux -Extracting stage package: libdconf1 -Extracting stage package: libfontconfig1 -Extracting stage package: libcups2t64 -Extracting stage package: libvdpau1 -Extracting stage package: libsbc1 -Extracting stage package: libmodplug1 -Extracting stage package: libopenexr-3-1-30 -Extracting stage package: libopenh264-7 -Extracting stage package: libpostproc57 -Extracting stage package: libxss1 -Extracting stage package: shared-mime-info -Extracting stage package: libatspi2.0-0t64 -Extracting stage package: glib-networking-common -Extracting stage package: libgles2 -Extracting stage package: libgl1-mesa-dri -Extracting stage package: libcurl3t64-gnutls -Extracting stage package: libasound2t64 -Extracting stage package: libxrandr2 -Extracting stage package: libjxl0.7 -Extracting stage package: fontconfig-config -Extracting stage package: gtk2-engines-murrine -Extracting stage package: libmp3lame0 -Extracting stage package: libsoxr0 -Extracting stage package: libx11-data -Extracting stage package: libsoup-3.0-0 -Extracting stage package: libgudev-1.0-0 -Extracting stage package: libgstreamer-plugins-good1.0-0 -Extracting stage package: libavc1394-0 -Extracting stage package: libsodium23 -Extracting stage package: libudfread0 -Extracting stage package: libjson-glib-1.0-common -Extracting stage package: libmjpegutils-2.1-0t64 -Extracting stage package: gnome-themes-extra-data -Extracting stage package: libmbedcrypto7t64 -Extracting stage package: libsnappy1v5 -Extracting stage package: libsndio7.0 -Extracting stage package: libopus0 -Extracting stage package: libpangocairo-1.0-0 -Extracting stage package: libnorm1t64 -Extracting stage package: libxtst6 -Extracting stage package: glib-networking-services -Extracting stage package: libmysofa1 -Extracting stage package: yaru-theme-gtk -Extracting stage package: libavcodec60 -Extracting stage package: libzimg2 -Extracting stage package: libgstreamer-plugins-bad1.0-0 -Extracting stage package: libxcb-render0 -Extracting stage package: libusb-1.0-0 -Extracting stage package: libvisual-0.4-0 -Extracting stage package: libgssdp-1.6-0 -Extracting stage package: libimath-3-1-29t64 -Extracting stage package: libzvbi0t64 -Extracting stage package: gsettings-desktop-schemas -Extracting stage package: fonts-noto-core -Extracting stage package: libdvdread8t64 -Extracting stage package: gstreamer1.0-plugins-good -Extracting stage package: libwebrtc-audio-processing1 -Extracting stage package: libopenni2-0 -Extracting stage package: gstreamer1.0-plugins-base -Extracting stage package: libopenal1 -Extracting stage package: libvorbisenc2 -Extracting stage package: libasyncns0 -Extracting stage package: libunibreak5 -Extracting stage package: libnss3 -Extracting stage package: libpangoft2-1.0-0 -Extracting stage package: libtheora0 -Extracting stage package: libxvidcore4 -Extracting stage package: libpocketsphinx3 -Extracting stage package: libspandsp2t64 -Extracting stage package: libsndfile1 -Extracting stage package: libavutil58 -Extracting stage package: liborc-0.4-0t64 -Extracting stage package: libwebp7 -Extracting stage package: libsidplay1v5 -Extracting stage package: libwildmidi2 -Extracting stage package: libxslt1.1 -Extracting stage package: libswscale7 -Extracting stage package: fonts-dejavu-mono -Extracting stage package: liblc3-1 -Extracting stage package: libatk1.0-0t64 -Extracting stage package: libspeex1 -Extracting stage package: libmpeg2-4 -Extracting stage package: libasound2-data -Extracting stage package: adduser -Extracting stage package: libflac12t64 -Extracting stage package: libthai-data -Extracting stage package: libgstreamer1.0-0 -Extracting stage package: libdca0 -Extracting stage package: libavahi-common3 -Extracting stage package: liblrdf0 -Extracting stage package: librsvg2-2 -Extracting stage package: libsamplerate0 -Extracting stage package: liberror-perl -Extracting stage package: ocl-icd-libopencl1 -Extracting stage package: libxcb-glx0 -Extracting stage package: libldacbt-enc2 -Extracting stage package: libogg0 -Extracting stage package: libxinerama1 -Extracting stage package: libsord-0-0 -Extracting stage package: libjbig0 -Extracting stage package: libflite1 -Extracting stage package: libopenjp2-7 -Extracting stage package: libwayland-egl1 -Extracting stage package: libcdparanoia0 -Extracting stage package: libplacebo338 -Extracting stage package: libzix-0-0 -Extracting stage package: libvorbis0a -Extracting stage package: libsdl2-2.0-0 -Extracting stage package: libdw1t64 -Extracting stage package: libjson-glib-1.0-0 -Extracting stage package: perl-base -Extracting stage package: libspa-0.2-modules -Extracting stage package: libzmq5 -Extracting stage package: libdrm-amdgpu1 -Extracting stage package: gtk2-engines-pixbuf -Extracting stage package: dconf-gsettings-backend -Extracting stage package: libchromaprint1 -Extracting stage package: libsensors5 -Extracting stage package: libxcb-randr0 -Extracting stage package: libvo-amrwbenc0 -Extracting stage package: libswresample4 -Extracting stage package: librabbitmq4 -Extracting stage package: libpipewire-0.3-0t64 -Extracting stage package: gtk-update-icon-cache -Extracting stage package: libxcb-xkb1 -Extracting stage package: libsrtp2-1 -Extracting stage package: libxext6 -Extracting stage package: libsoup-3.0-common -Extracting stage package: libgtk-3-common -Extracting stage package: libdvdnav4 -Extracting stage package: libdc1394-25 -Extracting stage package: libmplex2-2.1-0t64 -Extracting stage package: liba52-0.7.4 -Extracting stage package: libnice10 -Extracting stage package: libmpeg2encpp-2.1-0t64 -Extracting stage package: libharfbuzz0b -Extracting stage package: fonts-dejavu-core -Extracting stage package: libinstpatch-1.0-2 -Extracting stage package: libsoundtouch1 -Extracting stage package: libavformat60 -Extracting stage package: libaa1 -Extracting stage package: liblilv-0-0 -Extracting stage package: libmpg123-0t64 -Extracting stage package: gstreamer1.0-plugins-bad -Extracting stage package: libslang2 -Extracting stage package: libegl-mesa0 -Extracting stage package: session-migration -Extracting stage package: libva-drm2 -Extracting stage package: libxcb-shm0 -Extracting stage package: libgtk-3-0t64 -Extracting stage package: gnome-themes-extra -Extracting stage package: dconf-service -Extracting stage package: perl-modules-5.38 -Extracting stage package: libgl1 -Extracting stage package: libzbar0t64 -Extracting stage package: libegl1 -Extracting stage package: libx11-6 -Extracting stage package: libgstreamer-plugins-base1.0-0 -Extracting stage package: libtag1v5-vanilla -Extracting stage package: libwayland-client0 -Extracting stage package: gstreamer1.0-libav -Extracting stage package: liblapack3 -Extracting stage package: libopenmpt0t64 -Extracting stage package: libperl5.38t64 -Extracting stage package: libxkbcommon-x11-0 -Extracting stage package: liblcms2-2 -Extracting stage package: git-man -Extracting stage package: libatk-bridge2.0-0t64 -Extracting stage package: libde265-0 -Extracting stage package: libepoxy0 -Extracting stage package: libpgm-5.3-0t64 -Extracting stage package: libxcb-sync1 -Extracting stage package: libicu74 -Extracting stage package: libneon27t64 -Extracting stage package: at-spi2-common -Extracting stage package: libavahi-client3 -Extracting stage package: glib-networking -Extracting stage package: librav1e0 -Extracting stage package: libva2 -Extracting stage package: libdrm-intel1 -Extracting stage package: libxfixes3 -Extracting stage package: libxdmcp6 -Extracting stage package: libncurses6 -Extracting stage package: libxi6 -Extracting stage package: iso-codes -Extracting stage package: libxcb-xfixes0 -Extracting stage package: libavfilter9 -Extracting stage package: libnspr4 -Extracting stage package: libsratom-0-0 -Extracting stage package: libgdk-pixbuf2.0-common -Pulling desktop-integration -Pulling gnome/sdk -Building busymark -Removing suid/guid from /project/parts/busymark/install/usr/bin/su -Removing suid/guid from /project/parts/busymark/install/usr/lib/openssh/ssh-keysign -:: + rm -rf /project/parts/busymark/build/build -:: + rm -rf /project/parts/busymark/build/.dart_tool -:: + rm -rf /project/parts/busymark/build/linux/flutter/ephemeral -:: + flutter_sdk=/project/parts/busymark/build/flutter-distro -:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD -:: ++ true -:: + flutter_sdk_version= -:: + '[' '!' -x /project/parts/busymark/build/flutter-distro/bin/flutter ']' -:: + rm -rf /project/parts/busymark/build/flutter-distro -:: + git clone --depth 1 --branch 3.47.5 https://github.com/flutter/flutter.git /project/parts/busymark/build/flutter-distro -:: Cloning into '/project/parts/busymark/build/flutter-distro'... -:: Note: switching to '6a19cca56475dbfba1478ee68d7bd0c2ef891da1'. -:: -:: You are in 'detached HEAD' state. You can look around, make experimental -:: changes and commit them, and you can discard any commits you make in this -:: state without impacting any branches by switching back to a branch. -:: -:: If you want to create a new branch to retain commits you create, you may -:: do so (now or later) by using -c with the switch command. Example: -:: -:: git switch -c -:: -:: Or undo this operation with: -:: -:: git switch - -:: -:: Turn off this advice by setting config variable advice.detachedHead to false -:: -:: ++ git -C /project/parts/busymark/build/flutter-distro describe --tags --exact-match HEAD -:: + test 3.47.5 = 3.47.5 -:: + export CI=true -:: + CI=true -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check precache --linux -:: Downloading Linux x64 Dart SDK from Flutter engine af7e796e161ae0bb1ff0758c71a7105418bd9ded... -:: % Total % Received % Xferd Average Speed Time Time Time Current -:: Dload Upload Total Spent Left Speed -:: 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 227M 0 3999 0 0 17864 0 3:42:42 --:--:-- 3:42:42 17852 8 227M 8 19.9M 0 0 16.4M 0 0:00:13 0:00:01 0:00:12 16.4M 18 227M 18 41.3M 0 0 18.7M 0 0:00:12 0:00:02 0:00:10 18.6M 22 227M 22 50.3M 0 0 12.8M 0 0:00:17 0:00:03 0:00:14 12.8M 26 227M 26 59.7M 0 0 14.1M 0 0:00:16 0:00:04 0:00:12 14.1M 40 227M 40 93.0M 0 0 17.8M 0 0:00:12 0:00:05 0:00:07 18.6M 55 227M 55 126M 0 0 20.4M 0 0:00:11 0:00:06 0:00:05 21.3M 67 227M 67 154M 0 0 21.4M 0 0:00:10 0:00:07 0:00:03 22.6M 81 227M 81 186M 0 0 16.1M 0 0:00:14 0:00:11 0:00:03 17.7M 86 227M 86 196M 0 0 15.8M 0 0:00:14 0:00:12 0:00:02 16.7M 95 227M 95 216M 0 0 16.1M 0 0:00:14 0:00:13 0:00:01 15.0M 100 227M 100 227M 0 0 16.2M 0 0:00:14 0:00:14 --:--:-- 12.8M -:: Building flutter tool... -:: Resolving dependencies... -:: Downloading packages... -:: + _fe_analyzer_shared 95.0.0 (109.0.0 available) -:: + analyzer 10.1.0 (14.5.0 available) -:: + archive 3.6.1 (4.3.0 available) -:: + args 2.7.0 -:: + async 2.13.1 -:: + boolean_selector 2.1.2 -:: + browser_launcher 1.1.3 (1.2.0 available) -:: + built_collection 5.1.1 (5.1.2 available) -:: + built_value 8.12.6 (8.13.0 available) -:: + checked_yaml 2.0.4 -:: + cli_config 0.2.0 -:: + clock 1.1.2 (1.1.3 available) -:: + code_assets 1.2.1 (2.1.0 available) -:: + code_builder 4.11.1 (4.12.0 available) -:: + collection 1.19.1 -:: + completion 1.0.2 -:: + convert 3.1.2 -:: + coverage 1.15.1 -:: + crypto 3.0.7 -:: + csslib 1.0.2 -:: + dap 1.4.0 -:: + dart_service_protocol_shared 0.0.3 -:: + dart_style 3.1.7 (3.1.13 available) -:: + data_assets 0.20.0 -:: + dds 5.4.0 -:: + dds_service_extensions 2.1.0 -:: + devtools_shared 13.1.0 (14.0.0 available) -:: + dtd 4.0.0 -:: + dwds 27.1.2 (27.1.4 available) -:: + extension_discovery 2.1.0 -:: + fake_async 1.3.3 -:: + ffi 2.2.0 -:: + file 7.0.1 -:: + file_testing 3.0.2 (3.1.0 available) -:: + fixnum 1.1.1 -:: + flutter_template_images 5.0.0 (5.0.1 available) -:: + frontend_server_client 4.0.0 (4.1.0 available) -:: + glob 2.1.3 (2.2.0 available) -:: + graphs 2.3.2 -:: + hooks 2.0.2 (2.2.0 available) -:: + hooks_runner 1.5.0 (1.6.4 available) -:: + html 0.15.6 (0.15.7 available) -:: + http 1.6.0 -:: + http_multi_server 3.2.2 -:: + http_parser 4.1.2 -:: + intl 0.20.3 -:: + io 1.0.5 (1.1.0 available) -:: + js 0.7.2 (discontinued) -:: + json_annotation 4.12.0 -:: + json_rpc_2 4.1.0 -:: + logging 1.3.0 -:: + matcher 0.12.20 -:: + meta 1.18.3 (1.19.0 available) -:: + mime 2.0.0 (2.1.0 available) -:: + multicast_dns 0.3.3+1 -:: + mustache_template 2.0.5 (2.0.6 available) -:: + native_stack_traces 0.6.1 (0.7.0 available) -:: + node_preamble 2.0.2 -:: + package_config 2.2.0 (3.0.0 available) -:: + path 1.9.1 -:: + petitparser 7.0.2 (7.1.0 available) -:: + platform 3.1.6 (3.2.0 available) -:: + pool 1.5.2 (1.5.3 available) -:: + process 5.0.5 (5.0.6 available) -:: + pub_semver 2.2.0 (2.2.1 available) -:: + pubspec_parse 1.5.0 (1.6.0 available) -:: + record_use 0.6.0 (1.1.1 available) -:: + shelf 1.4.2 -:: + shelf_packages_handler 3.0.2 -:: + shelf_proxy 1.0.5 -:: + shelf_static 1.1.3 -:: + shelf_web_socket 3.0.0 -:: + source_map_stack_trace 2.1.2 -:: + source_maps 0.10.13 (0.10.14 available) -:: + source_span 1.10.2 -:: + sprintf 7.0.0 -:: + sse 4.2.0 -:: + stack_trace 1.12.1 (1.12.2 available) -:: + standard_message_codec 0.0.1+5 -:: + stream_channel 2.1.4 -:: + string_scanner 1.4.1 -:: + sync_http 0.3.1 -:: + term_glyph 1.2.2 -:: + test 1.31.1 (1.32.0 available) -:: + test_api 0.7.12 (0.7.14 available) -:: + test_core 0.6.18 (0.6.20 available) -:: + typed_data 1.4.0 -:: + unified_analytics 8.0.15 (8.0.18 available) -:: + uuid 4.5.3 (4.6.0 available) -:: + vm_service 15.2.0 (15.3.0 available) -:: + vm_service_interface 2.0.1 -:: + vm_snapshot_analysis 0.7.6 -:: + watcher 1.2.1 -:: + web 1.1.1 -:: + web_socket 1.0.1 -:: + web_socket_channel 3.0.3 -:: + webdriver 3.1.0 (3.2.0 available) -:: + webkit_inspection_protocol 1.2.1 -:: + xml 6.6.1 (7.1.0 available) -:: + yaml 3.1.3 (3.1.4 available) -:: + yaml_edit 2.2.4 -:: Changed 101 dependencies! -:: 1 package is discontinued. -:: 43 packages have newer versions incompatible with dependency constraints. -:: Try `dart pub outdated` for more information. -:: [1/11] Material Fonts 476ms -:: [2/11] Gradle Wrapper 52ms -:: [3/11] Flutter SDK -:: ├─ [1/5] sky_engine 99ms -:: ├─ [2/5] flutter_gpu 44ms -:: ├─ [3/5] flutter_patched_sdk 174ms -:: ├─ [4/5] flutter_patched_sdk_product 209ms -:: └─ [5/5] linux-x64 1,201ms -:: [4/11] Linux SDK -:: ├─ [1/3] linux-x64-debug/linux-x64-flutter-gtk 859ms -:: ├─ [2/3] linux-x64-profile/linux-x64-flutter-gtk 373ms -:: └─ [3/3] linux-x64-release/linux-x64-flutter-gtk 315ms -:: [11/11] linux-x64/font-subset 123ms -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check pub get -:: Resolving dependencies... -:: Downloading packages... -:: _fe_analyzer_shared 99.0.0 (109.0.0 available) -:: analyzer 12.1.0 (14.5.0 available) -:: animated_vector 0.2.2 (0.2.3 available) -:: animated_vector_annotations 0.2.2 (0.3.0 available) -:: archive 4.0.9 (4.3.0 available) -:: assorted_layout_widgets 11.0.0 (13.1.0 available) -:: clock 1.1.2 (1.1.3 available) -:: code_assets 1.2.1 (2.1.0 available) -:: cross_file 0.3.5+4 (0.4.0 available) -:: dbus 0.7.13 (0.8.0 available) -:: file_selector_android 0.5.2+8 (0.5.2+11 available) -:: file_selector_ios 0.5.3+5 (0.5.3+6 available) -:: file_selector_linux 0.9.4 (0.9.4+1 available) -:: file_selector_macos 0.9.5 (0.9.5+1 available) -:: file_selector_windows 0.9.3+5 (0.9.3+6 available) -:: flutter_riverpod 3.3.2 (3.4.3 available) -:: frontend_server_client 4.0.0 (4.1.0 available) -:: glob 2.1.3 (2.2.0 available) -:: go_router 17.3.0 (18.0.2 available) -:: gsettings 0.2.8 (0.2.9 available) -:: html 0.15.6 (0.15.7 available) -:: image 4.9.1 (4.10.1 available) -:: io 1.0.5 (1.1.0 available) -:: jni 1.0.0 (1.1.0 available) -:: jni_flutter 1.0.1 (1.0.4+1 available) -:: material_color_utilities 0.13.0 (0.13.1 available) -:: mime 2.0.0 (2.1.0 available) -:: native_toolchain_c 0.19.3 (0.19.5 available) -:: objective_c 9.4.1 (9.6.2 available) -:: package_config 2.2.0 (3.0.0 available) -:: package_info_plus 10.2.1 (10.2.2 available) -:: petitparser 7.0.2 (7.1.0 available) -:: platform 3.1.6 (3.2.0 available) -:: pool 1.5.2 (1.5.3 available) -:: posix 6.5.0 (6.5.2 available) -:: pub_semver 2.2.0 (2.2.1 available) -:: riverpod 3.3.2 (3.4.3 available) -:: source_maps 0.10.13 (0.10.14 available) -:: stack_trace 1.12.1 (1.12.2 available) -:: test 1.31.1 (1.32.0 available) -:: test_api 0.7.12 (0.7.14 available) -:: test_core 0.6.18 (0.6.20 available) -:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) -:: unorm_dart 0.3.2 (0.3.3 available) -:: url_launcher 6.3.2 (6.3.3 available) -:: url_launcher_android 6.3.32 (6.3.33 available) -:: url_launcher_ios 6.4.1 (6.4.2 available) -:: url_launcher_linux 3.2.2 (3.2.3 available) -:: url_launcher_macos 3.2.5 (3.2.6 available) -:: url_launcher_windows 3.1.5 (3.1.6 available) -:: vector_graphics 1.2.2 (1.2.3 available) -:: vector_graphics_compiler 1.2.6 (1.3.0 available) -:: vector_math 2.4.2 (2.4.3 available) -:: vm_service 15.2.0 (15.3.0 available) -:: win32 6.3.0 (6.4.0 available) -:: xml 7.0.1 (7.1.0 available) -:: yaml 3.1.3 (3.1.4 available) -:: yaru 10.2.0 (11.0.0 available) -:: Got dependencies! -:: 58 packages have newer versions incompatible with dependency constraints. -:: Try `flutter pub outdated` for more information. -:: + /project/parts/busymark/build/flutter-distro/bin/flutter --no-version-check build linux --release --verbose --target lib/main.dart -:: [ +12 ms] Unable to locate an Android SDK. -:: [ +8 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ +29 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ +13 ms] executing: [/project/parts/busymark/build/] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart pub --suppress-analytics --directory . get --example -:: Resolving dependencies... -:: Downloading packages... -:: _fe_analyzer_shared 99.0.0 (109.0.0 available) -:: analyzer 12.1.0 (14.5.0 available) -:: animated_vector 0.2.2 (0.2.3 available) -:: animated_vector_annotations 0.2.2 (0.3.0 available) -:: archive 4.0.9 (4.3.0 available) -:: assorted_layout_widgets 11.0.0 (13.1.0 available) -:: clock 1.1.2 (1.1.3 available) -:: code_assets 1.2.1 (2.1.0 available) -:: cross_file 0.3.5+4 (0.4.0 available) -:: dbus 0.7.13 (0.8.0 available) -:: file_selector_android 0.5.2+8 (0.5.2+11 available) -:: file_selector_ios 0.5.3+5 (0.5.3+6 available) -:: file_selector_linux 0.9.4 (0.9.4+1 available) -:: file_selector_macos 0.9.5 (0.9.5+1 available) -:: file_selector_windows 0.9.3+5 (0.9.3+6 available) -:: flutter_riverpod 3.3.2 (3.4.3 available) -:: frontend_server_client 4.0.0 (4.1.0 available) -:: glob 2.1.3 (2.2.0 available) -:: go_router 17.3.0 (18.0.2 available) -:: gsettings 0.2.8 (0.2.9 available) -:: html 0.15.6 (0.15.7 available) -:: image 4.9.1 (4.10.1 available) -:: io 1.0.5 (1.1.0 available) -:: jni 1.0.0 (1.1.0 available) -:: jni_flutter 1.0.1 (1.0.4+1 available) -:: material_color_utilities 0.13.0 (0.13.1 available) -:: mime 2.0.0 (2.1.0 available) -:: native_toolchain_c 0.19.3 (0.19.5 available) -:: objective_c 9.4.1 (9.6.2 available) -:: package_config 2.2.0 (3.0.0 available) -:: package_info_plus 10.2.1 (10.2.2 available) -:: petitparser 7.0.2 (7.1.0 available) -:: platform 3.1.6 (3.2.0 available) -:: pool 1.5.2 (1.5.3 available) -:: posix 6.5.0 (6.5.2 available) -:: pub_semver 2.2.0 (2.2.1 available) -:: riverpod 3.3.2 (3.4.3 available) -:: source_maps 0.10.13 (0.10.14 available) -:: stack_trace 1.12.1 (1.12.2 available) -:: test 1.31.1 (1.32.0 available) -:: test_api 0.7.12 (0.7.14 available) -:: test_core 0.6.18 (0.6.20 available) -:: ubuntu_localizations 0.5.2+3 (0.5.2+4 available) -:: unorm_dart 0.3.2 (0.3.3 available) -:: url_launcher 6.3.2 (6.3.3 available) -:: url_launcher_android 6.3.32 (6.3.33 available) -:: url_launcher_ios 6.4.1 (6.4.2 available) -:: url_launcher_linux 3.2.2 (3.2.3 available) -:: url_launcher_macos 3.2.5 (3.2.6 available) -:: url_launcher_windows 3.1.5 (3.1.6 available) -:: vector_graphics 1.2.2 (1.2.3 available) -:: vector_graphics_compiler 1.2.6 (1.3.0 available) -:: vector_math 2.4.2 (2.4.3 available) -:: vm_service 15.2.0 (15.3.0 available) -:: win32 6.3.0 (6.4.0 available) -:: xml 7.0.1 (7.1.0 available) -:: yaml 3.1.3 (3.1.4 available) -:: yaru 10.2.0 (11.0.0 available) -:: Got dependencies! -:: 58 packages have newer versions incompatible with dependency constraints. -:: Try `flutter pub outdated` for more information. -:: [ +506 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ +4 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ +3 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ +2 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +20 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ +1 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ +17 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ +2 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ +28 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ +24 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ ] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ +2 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ ] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ ] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ ] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ +1 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ ] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ ] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ +1 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +7 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ ] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ ] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ ] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ ] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ ] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ ] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ +7 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ ] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ +1 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ ] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ +1 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ ] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ ] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ +1 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ +16 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ +1 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ +10 ms] Skipping generating generated_plugin_registrant.h because it is up-to-date. -:: [ +3 ms] Skipping generating generated_plugin_registrant.cc because it is up-to-date. -:: [ ] Skipping generating generated_plugins.cmake because it is up-to-date. -:: [ +17 ms] Building Linux application... -:: [ +2 ms] executing: [/project/parts/busymark/build/build/linux/x64/release/] cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DFLUTTER_TARGET_PLATFORM=linux-x64 /project/parts/busymark/build/linux -:: [+4068 ms] -- The CXX compiler identification is Clang 18.1.3 -:: [ +54 ms] -- Detecting CXX compiler ABI info -:: [ +160 ms] -- Detecting CXX compiler ABI info - done -:: [ +6 ms] -- Check for working CXX compiler: /usr/bin/clang++ - skipped -:: [ ] -- Detecting CXX compile features -:: [ +1 ms] -- Detecting CXX compile features - done -:: [ +9 ms] -- Found PkgConfig: /snap/gnome-46-2404-sdk/current/usr/bin/pkg-config (found version "1.8.1") -:: [ ] -- Checking for module 'gtk+-3.0' -:: [ +21 ms] -- Found gtk+-3.0, version 3.24.50 -:: [+5395 ms] -- Checking for module 'glib-2.0' -:: [ +7 ms] -- Found glib-2.0, version 2.84.4 -:: [ +18 ms] -- Checking for module 'gio-2.0' -:: [ +8 ms] -- Found gio-2.0, version 2.84.4 -:: [ +172 ms] -- Checking for module 'libhandy-1' -:: [ +18 ms] -- Found libhandy-1, version 1.8.3 -:: [ +177 ms] -- Checking for module 'libsecret-1' -:: [ +8 ms] -- Found libsecret-1, version 0.21.7 -:: [ +25 ms] -- Checking for module 'webkit2gtk-4.1' -:: [ +16 ms] -- Found webkit2gtk-4.1, version 2.52.6 -:: [+4442 ms] -- The C compiler identification is Clang 18.1.3 -:: [ +39 ms] -- Detecting C compiler ABI info -:: [ +144 ms] -- Detecting C compiler ABI info - done -:: [ +6 ms] -- Check for working C compiler: /usr/bin/clang - skipped -:: [ ] -- Detecting C compile features -:: [ ] -- Detecting C compile features - done -:: [ +13 ms] -- Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JVM) -:: [ +1 ms] -- Configuring done (11.4s) -:: [ +38 ms] -- Generating done (0.0s) -:: [ +7 ms] -- Build files have been written to: /project/parts/busymark/build/build/linux/x64/release -:: [ +8 ms] executing: ninja -C /project/parts/busymark/build/build/linux/x64/release install -:: [ +5 ms] ninja: Entering directory `/project/parts/busymark/build/build/linux/x64/release' -:: [+2835 ms] [1/34] Preparing checksum-pinned D2 renderer -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 22 20.2M 22 4758k 0 0 3831k 0 0:00:05 0:00:01 0:00:04 3831k -:: [ ] 100 20.2M 100 20.2M 0 0 9611k 0 0:00:02 0:00:02 --:--:-- 17.0M -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance' -:: [ ] Prepared D2 0.7.1 in /project/parts/busymark/build/build/linux/x64/release/d2/linux-x86_64 -:: [+2403 ms] [2/34] Preparing pinned Typst compiler for PDF export -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 22 16.6M 22 3868k 0 0 3114k 0 0:00:05 0:00:01 0:00:04 3114k -:: [ ] 96 16.6M 96 16.0M 0 0 7320k 0 0:00:02 0:00:02 --:--:-- 12.2M -:: [ ] 100 16.6M 100 16.6M 0 0 7476k 0 0:00:02 0:00:02 --:--:-- 12.4M -:: [ ] Prepared Typst 0.15.1 in /project/parts/busymark/build/build/linux/x64/release/typst/linux-x86_64 -:: [+21119 ms] [3/34] Preparing pinned offline visualization web engines -:: [ ] npm warn deprecated nomnom@1.5.2: Package no longer supported. Contact support@npmjs.com for more info. -:: [ ] added 435 packages in 13s -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 330k 0 330k 0 0 216k 0 --:--:-- 0:00:01 --:--:-- 368k -:: [ ] 100 1757k 0 1757k 0 0 695k 0 --:--:-- 0:00:02 --:--:-- 925k -:: [ ] 100 4105k 0 4105k 0 0 1166k 0 --:--:-- 0:00:03 --:--:-- 1420k -:: [ ] 100 5395k 0 5395k 0 0 1373k 0 --:--:-- 0:00:03 --:--:-- 1635k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 2 2584k 2 64598 0 0 150k 0 0:00:17 --:--:-- 0:00:17 150k -:: [ ] 100 2584k 100 2584k 0 0 4098k 0 --:--:-- --:--:-- --:--:-- 4096k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 109k 100 109k 0 0 371k 0 --:--:-- --:--:-- --:--:-- 372k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 3 2862k 3 97591 0 0 248k 0 0:00:11 --:--:-- 0:00:11 248k -:: [ ] 100 2862k 100 2862k 0 0 4152k 0 --:--:-- --:--:-- --:--:-- 4148k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 50065 100 50065 0 0 205k 0 --:--:-- --:--:-- --:--:-- 206k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 109k 100 109k 0 0 467k 0 --:--:-- --:--:-- --:--:-- 469k -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 100 7334k 100 7334k 0 0 9.9M 0 --:--:-- --:--:-- --:--:-- 9.9M -:: [ ] % Total % Received % Xferd Average Speed Time Time Time Current -:: [ ] Dload Upload Total Spent Left Speed -:: [ ] 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 -:: [ ] 68 13.2M 68 9270k 0 0 11.4M 0 0:00:01 --:--:-- 0:00:01 11.4M -:: [ ] 100 13.2M 100 13.2M 0 0 14.2M 0 --:--:-- --:--:-- --:--:-- 14.2M -:: [ ] ▲ [WARNING] Cannot find base config file "../../tsconfig.json" [tsconfig.json] -:: [ ] ../../../../../../../../tmp/tmp.cel4iLv5IW/tool/mermaid-source/tsconfig.json:2:13: -:: [ ] 2 │ "extends": "../../tsconfig.json", -:: [ ] ╵ ~~~~~~~~~~~~~~~~~~~~~ -:: [ ] Prepared offline visualization web assets in /project/parts/busymark/build/build/linux/x64/release/visualization/web -:: [+69683 ms] [4/34] Generating /project/parts/busymark/build/linux/flutter/ephemeral/libflutter_linux_gtk.so, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_basic_message_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_binary_messenger.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_dart_project.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_engine.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_json_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_call.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_channel.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_method_response.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registrar.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_plugin_registry.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_message_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_standard_method_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_string_codec.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_value.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/fl_view.h, /project/parts/busymark/build/linux/flutter/ephemeral/flutter_linux/flutter_linux.h, _phony_ -:: [ +1 ms] [ +14 ms] Unable to locate an Android SDK. -:: [ ] [ +12 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ ] [ +8 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ +47 ms] Artifact Instance of 'MaterialFonts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'GradleWrapper' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterEngineStamp' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'LegacyCanvasKitRemover' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterSdk' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update. -:: [ ] [ +1 ms] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'IosUsbArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'FontSubsetArtifacts' is not required, skipping update. -:: [ ] [ ] Artifact Instance of 'PubDependencies' is not required, skipping update. -:: [ ] [ +10 ms] Initializing file store -:: [ ] [ +46 ms] build_hooks: Starting due to {} -:: [ ] [ +2 ms] gen_localizations: Starting due to {} -:: [ +1 ms] [ +956 ms] gen_dart_plugin_registrant: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/package_config.json} -:: [ ] [ +3 ms] unpack_linux: Starting due to {} -:: [ ] [ +41 ms] unpack_linux: Complete -:: [ ] [ +682 ms] Found plugin yaru_window at /root/.pub-cache/hosted/pub.dev/yaru_window-0.2.2/ -:: [ ] [ +3 ms] Found plugin yaru_window_web at /root/.pub-cache/hosted/pub.dev/yaru_window_web-0.0.4/ -:: [ ] [ +5 ms] Found plugin yaru_window_manager at /root/.pub-cache/hosted/pub.dev/yaru_window_manager-0.1.3/ -:: [ ] [ +2 ms] Found plugin window_manager at /root/.pub-cache/hosted/pub.dev/window_manager-0.5.2/ -:: [ ] [ +2 ms] Found plugin screen_retriever at /root/.pub-cache/hosted/pub.dev/screen_retriever-0.2.2/ -:: [ ] [ +1 ms] Found plugin screen_retriever_windows at /root/.pub-cache/hosted/pub.dev/screen_retriever_windows-0.2.2/ -:: [ ] [ +11 ms] Running build hooks for linux_x64. -:: [ ] [ +4 ms] Found plugin screen_retriever_macos at /root/.pub-cache/hosted/pub.dev/screen_retriever_macos-0.2.2/ -:: [ ] [ +16 ms] Found plugin screen_retriever_linux at /root/.pub-cache/hosted/pub.dev/screen_retriever_linux-0.2.2/ -:: [ ] [ +1 ms] Found plugin yaru_window_linux at /root/.pub-cache/hosted/pub.dev/yaru_window_linux-0.2.2/ -:: [ ] [ +2 ms] Found plugin gtk at /root/.pub-cache/hosted/pub.dev/gtk-2.2.0/ -:: [ +1 ms] [ +20 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/hook/build.dart`. -:: [ ] [ +26 ms] Found plugin url_launcher at /root/.pub-cache/hosted/pub.dev/url_launcher-6.3.2/ -:: [ ] [ +1 ms] Found plugin url_launcher_windows at /root/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.5/ -:: [ ] [ +2 ms] Found plugin url_launcher_web at /root/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.3/ -:: [ ] [ +1 ms] Found plugin url_launcher_macos at /root/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.5/ -:: [ ] [ +1 ms] Found plugin url_launcher_linux at /root/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.2/ -:: [ ] [ +1 ms] Found plugin url_launcher_ios at /root/.pub-cache/hosted/pub.dev/url_launcher_ios-6.4.1/ -:: [ ] [ +2 ms] Found plugin url_launcher_android at /root/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.32/ -:: [ ] [ +18 ms] Found plugin path_provider at /root/.pub-cache/hosted/pub.dev/path_provider-2.1.6/ -:: [ ] [ +1 ms] Found plugin path_provider_windows at /root/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/ -:: [ ] [ +2 ms] Found plugin path_provider_linux at /root/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.2/ -:: [ ] [ +1 ms] Found plugin path_provider_foundation at /root/.pub-cache/hosted/pub.dev/path_provider_foundation-2.6.0/ -:: [ ] [ +2 ms] Found plugin path_provider_android at /root/.pub-cache/hosted/pub.dev/path_provider_android-2.3.1/ -:: [ ] [ +1 ms] Found plugin jni_flutter at /root/.pub-cache/hosted/pub.dev/jni_flutter-1.0.1/ -:: [ ] [ +1 ms] Found plugin jni at /root/.pub-cache/hosted/pub.dev/jni-1.0.0/ -:: [ ] [ +2 ms] Found plugin package_info_plus at /root/.pub-cache/hosted/pub.dev/package_info_plus-10.2.1/ -:: [ ] [ +29 ms] Found plugin file_selector at /root/.pub-cache/hosted/pub.dev/file_selector-1.1.0/ -:: [ ] [ +1 ms] Found plugin file_selector_windows at /root/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+5/ -:: [ ] [ +2 ms] Found plugin file_selector_web at /root/.pub-cache/hosted/pub.dev/file_selector_web-0.9.5/ -:: [ ] [ ] Found plugin file_selector_macos at /root/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.5/ -:: [ ] [ ] Found plugin file_selector_linux at /root/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.4/ -:: [ ] [ ] Found plugin file_selector_ios at /root/.pub-cache/hosted/pub.dev/file_selector_ios-0.5.3+5/ -:: [ ] [ ] Found plugin file_selector_android at /root/.pub-cache/hosted/pub.dev/file_selector_android-0.5.2+8/ -:: [ ] [ +273 ms] gen_dart_plugin_registrant: Complete -:: [ ] [+2531 ms] gen_localizations: Complete -:: [ ] [ +59 ms] kernel_snapshot_program: Starting due to {} -:: [ +20 ms] [ +6 ms] /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dartaotruntime /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/snapshots/frontend_server_aot.dart.snapshot --sdk-root /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/common/flutter_patched_sdk_product/ --target=flutter --no-print-incremental-dependencies -DFLUTTER_BUILD_NAME=0.6.1 -DFLUTTER_VERSION=3.47.5 -DFLUTTER_CHANNEL=[user-branch] -DFLUTTER_GIT_URL=https://github.com/flutter/flutter.git -DFLUTTER_FRAMEWORK_REVISION=6a19cca564 -DFLUTTER_ENGINE_REVISION=af7e796e16 -DFLUTTER_DART_VERSION=3.13.4 -Ddart.vm.profile=false -Ddart.vm.product=true --delete-tostring-package-uri=dart:ui --delete-tostring-package-uri=package:flutter --aot --tfa --target-os linux --packages /project/parts/busymark/build/.dart_tool/package_config.json --output-dill /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --depfile /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/kernel_snapshot_program.d --source file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --source package:flutter/src/dart_plugin_registrant.dart -Dflutter.dart_plugin_registrant=file:///project/parts/busymark/build/.dart_tool/flutter_build/dart_plugin_registrant.dart --verbosity=error --recorded-uses=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/recorded_uses.json package:busymark/main.dart -:: [ ] [+1687 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/objective_c/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/output.json", -:: [ ] "package_name": "objective_c", -:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +9 ms] [ +2 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/objective_c-9.4.1/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/objective_c/cd73a1e2e2/input.json )`. -:: [ ] [ +307 ms] output.json contents: -:: [ ] { -:: [ ] "assets_for_linking": {}, -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 11:30:25.000" -:: [ ] } -:: [ +3 ms] [ +25 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill.d /project/parts/busymark/build/packages/busymark_spellcheck_native/hook/build.dart`. -:: [ ] [+1597 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/output.json", -:: [ ] "package_name": "busymark_spellcheck_native", -:: [ ] "package_root": "/project/parts/busymark/build/packages/busymark_spellcheck_native/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +5 ms] [ +1 ms] Running `(cd /project/parts/busymark/build/packages/busymark_spellcheck_native/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/busymark_spellcheck_native/cd73a1e2e2/input.json )`. -:: [ ] [+30383 ms] output.json contents: -:: [ ] { -:: [ ] "assets": [ -:: [ ] { -:: [ ] "encoding": { -:: [ ] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/busymark_spellcheck_native/build/cd73a1e2e2/libbusymark_spellcheck_native.so", -:: [ ] "id": "package:busymark_spellcheck_native/busymark_spellcheck_native_bindings_generated.dart", -:: [ ] "link_mode": { -:: [ ] "type": "dynamic_loading_bundle" -:: [ ] } -:: [ ] }, -:: [ ] "type": "code_assets/code" -:: [ ] } -:: [ ] ], -:: [ ] "assets_for_linking": {}, -:: [ ] "dependencies": [ -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx", -:: [ ] "/project/parts/busymark/build/packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx" -:: [ ] ], -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 11:30:27.000" -:: [ ] } -:: [ +1 ms] [ +63 ms] Running `/project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart compile kernel --packages=/project/parts/busymark/build/.dart_tool/package_config.json --output=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --depfile=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill.d /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/hook/build.dart`. -:: [ ] [+1194 ms] input.json contents: -:: [ ] { -:: [ ] "assets": {}, -:: [ ] "config": { -:: [ ] "build_asset_types": [ -:: [ ] "code_assets/code" -:: [ ] ], -:: [ ] "extensions": { -:: [ ] "code_assets": { -:: [ ] "c_compiler": { -:: [ ] "ar": "/usr/bin/ar", -:: [ ] "cc": "/usr/lib/llvm-18/bin/clang", -:: [ ] "ld": "/usr/bin/ld" -:: [ ] }, -:: [ ] "link_mode_preference": "dynamic", -:: [ ] "target_architecture": "x64", -:: [ ] "target_os": "linux" -:: [ ] } -:: [ ] }, -:: [ ] "linking_enabled": true -:: [ ] }, -:: [ ] "out_dir_shared": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/", -:: [ ] "out_file": "/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/output.json", -:: [ ] "package_name": "sqlite3", -:: [ ] "package_root": "/root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/", -:: [ ] "user_defines": {} -:: [ ] } -:: [ +4 ms] [ +2 ms] Running `(cd /root/.pub-cache/hosted/pub.dev/sqlite3-3.7.0/; HOME=/root PATH=/snap/gnome-46-2404-sdk/current/usr/bin:/project/parts/busymark/build/flutter-distro/bin:/project/parts/busymark/install/usr/sbin:/project/parts/busymark/install/usr/bin:/usr/libexec/snapcraft:/snap/node/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart --packages=/project/parts/busymark/build/.dart_tool/package_config.json /project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/hook.dill --config=/project/parts/busymark/build/.dart_tool/hooks_runner/sqlite3/cd73a1e2e2/input.json )`. -:: [ ] [+1255 ms] output.json contents: -:: [ ] { -:: [ ] "assets": [ -:: [ ] { -:: [ ] "encoding": { -:: [ +2 ms] "file": "/project/parts/busymark/build/.dart_tool/hooks_runner/shared/sqlite3/build/download-0f947ebe/libsqlite3.so", -:: [ ] "id": "package:sqlite3/src/ffi/libsqlite3.g.dart", -:: [ ] "link_mode": { -:: [ ] "type": "dynamic_loading_bundle" -:: [ ] } -:: [ ] }, -:: [ ] "type": "code_assets/code" -:: [ ] } -:: [ ] ], -:: [ ] "assets_for_linking": {}, -:: [ ] "status": "success", -:: [ ] "timestamp": "2026-10-07 11:30:58.000" -:: [ ] } -:: [ ] [ +16 ms] Running build hooks for linux_x64 done. -:: [ ] [ +2 ms] build_hooks: Complete -:: [ ] [+12513 ms] kernel_snapshot_program: Complete -:: [ ] [+1669 ms] link_hooks: Starting due to {} -:: [ +5 ms] [ +1 ms] aot_elf_release: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/flutter-distro/packages/flutter_tools/lib/src/build_system/targets/common.dart,/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp,/project/parts/busymark/build/flutter-distro/bin/cache/engine.stamp, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so} -:: [ ] [ +1 ms] targetingApplePlatform = false -:: [ ] [ ] extractAppleDebugSymbols = true -:: [ ] [ ] targetingAndroidPlatform = false -:: [ ] [ ] Will strip AOT snapshot during build. -:: [ +1 ms] [ ] executing: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64-release/gen_snapshot --deterministic --snapshot_kind=app-aot-elf --elf=/project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so --strip /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill -:: [ ] [ +17 ms] Running link hooks for linux_x64. -:: [ ] [ +21 ms] Running link hooks for linux_x64 done. -:: [ ] [ +5 ms] link_hooks: Complete -:: [ ] [ +2 ms] install_code_assets: Starting due to {} -:: [ ] [ +11 ms] Copying native assets to /project/parts/busymark/build/build/native_assets/linux/. -:: [ ] [ +3 ms] Copying native assets done. -:: [ ] [ ] Writing native assets json to file:///project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json. -:: [ ] [ +1 ms] Writing /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/native_assets.json done. -:: [ ] [ ] install_code_assets: Complete -:: [ ] [+32922 ms] aot_elf_release: Complete -:: [ +1 ms] [ +108 ms] linux_aot_bundle: Starting due to {InvalidatedReasonKind.inputChanged: The following inputs have updated contents: /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.so, InvalidatedReasonKind.outputSetAddition: The following outputs were added to the output set: /project/parts/busymark/build/build/lib/libapp.so} -:: [ ] [ +326 ms] linux_aot_bundle: Complete -:: [ ] [ +111 ms] release_bundle_linux-x64_assets: Starting due to {} -:: [ +4 ms] [+2016 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/ink_sparkle.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders/ink_sparkle.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/material/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] -:: [ +5 ms] [ +3 ms] impellerc command: [/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/impellerc, --sksl, --runtime-stage-gles, --runtime-stage-gles3, --runtime-stage-vulkan, --iplr, --sl=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag, --spirv=/project/parts/busymark/build/build/flutter_assets/shaders/stretch_effect.frag.spirv, --input=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders/stretch_effect.frag, --input-type=frag, --include=/project/parts/busymark/build/flutter-distro/packages/flutter/lib/src/widgets/shaders, --include=/project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/shader_lib] -:: [ +2 ms] [ +60 ms] Running command: /project/parts/busymark/build/flutter-distro/bin/cache/dart-sdk/bin/dart /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/const_finder.dart.snapshot --kernel-file /project/parts/busymark/build/.dart_tool/flutter_build/467be8443ffdd3ad120659937dd0f14c/app.dill --class-library-uri package:flutter/src/widgets/icon_data.dart --class-name IconData --annotation-class-name _StaticIconProvider --annotation-class-library-uri package:flutter/src/widgets/icon_data.dart -:: [ +1 ms] [+1665 ms] Expected to find fontFamily for constant IconData with codepoint: 128842, but found fontFamily: null. This usually means you are relying on the system font. Alternatively, font families in an IconData class can be provided in the assets section of your pubspec.yaml, or you are missing "uses-material-design: true". -:: [ +1 ms] [ +1 ms] Expected to find fonts for (packages/yaru/YaruIcons, MaterialIcons, packages/cupertino_icons/CupertinoIcons), but found (MaterialIcons, packages/yaru/YaruIcons). This usually means you are referring to font families in an IconData class but not including them in the assets section of your pubspec.yaml, are missing the package that would include them, or are missing "uses-material-design: true". -:: [ +2 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/fonts/MaterialIcons-Regular.otf /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/material_fonts/MaterialIcons-Regular.otf, using codepoints 58061 984332 57490 62832 57706 58332 57502 57501 57496 58372 -:: [ +6 ms] [ ] Running font-subset: /project/parts/busymark/build/flutter-distro/bin/cache/artifacts/engine/linux-x64/font-subset /project/parts/busymark/build/build/flutter_assets/packages/yaru/assets/yaru_icons.otf /root/.pub-cache/hosted/pub.dev/yaru-10.2.0/assets/yaru_icons.otf, using codepoints 57724 57723 57952 58031 58004 58087 57763 57862 57935 57945 57958 57799 57778 57937 57907 57846 57850 57890 57848 57564 58100 57845 58015 57647 57786 57547 57732 58149 57607 57622 57556 58143 58041 58094 57785 57936 57932 57668 58081 57756 57631 57853 57873 57869 58146 57666 57660 57743 57685 57688 57542 57684 58009 57614 57686 57483 57573 57802 57502 58104 57820 57485 57960 57777 57891 57581 57803 57828 57844 57822 58034 57623 57830 58011 57956 57541 58089 57562 57490 57492 57871 57868 57721 57722 57747 58086 57507 57832 57906 57880 58090 57717 -:: [ ] [+2626 ms] Font asset "yaru_icons.otf" was tree-shaken, reducing it from 203588 to 18772 bytes (90.8% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. -:: [ ] [ ] Font asset "MaterialIcons-Regular.otf" was tree-shaken, reducing it from 1645184 to 1748 bytes (99.9% reduction). Tree-shaking can be disabled by providing the --no-tree-shake-icons flag when building your app. -:: [ ] [ +31 ms] release_bundle_linux-x64_assets: Complete -:: [ ] [ +57 ms] Persisting file store -:: [ ] [ +18 ms] Done persisting file store -:: [ ] [ +57 ms] build succeeded. -:: [ ] [ ] "flutter assemble" took 95,653ms. -:: [ ] [ ] Running 1 shutdown hook -:: [ ] [ ] Shutdown hooks complete -:: [ ] [ ] exiting with code 0 -:: [+1300 ms] [5/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/url_launcher_plugin.cc.o -:: [ +80 ms] [6/34] Building CXX object runner/CMakeFiles/busymark.dir/main.cc.o -:: [ +5 ms] [7/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window_linux_plugin.cc.o -:: [ +4 ms] [8/34] Building CXX object plugins/gtk/CMakeFiles/gtk_plugin.dir/gtk_plugin.cc.o -:: [ +89 ms] [9/34] Building CXX object plugins/screen_retriever_linux/CMakeFiles/screen_retriever_linux_plugin.dir/screen_retriever_linux_plugin.cc.o -:: [ +22 ms] [10/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/messages.g.cc.o -:: [ +158 ms] [11/34] Building CXX object runner/CMakeFiles/busymark.dir/secure_credential_host.cc.o -:: [ +257 ms] [12/34] Linking CXX shared library plugins/screen_retriever_linux/libscreen_retriever_linux_plugin.so -:: [ +23 ms] [13/34] Building CXX object plugins/yaru_window_linux/CMakeFiles/yaru_window_linux_plugin.dir/yaru_window.cc.o -:: [ +37 ms] [14/34] Linking CXX shared library plugins/gtk/libgtk_plugin.so -:: [ +42 ms] [15/34] Building CXX object plugins/file_selector_linux/CMakeFiles/file_selector_linux_plugin.dir/file_selector_plugin.cc.o -:: [ +149 ms] [16/34] Building CXX object plugins/url_launcher_linux/CMakeFiles/url_launcher_linux_plugin.dir/messages.g.cc.o -:: [ +2 ms] [17/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent.cc.o -:: [ +22 ms] [18/34] Building CXX object plugins/window_manager/CMakeFiles/window_manager_plugin.dir/window_manager_plugin.cc.o -:: [ +8 ms] [19/34] Linking CXX shared library plugins/yaru_window_linux/libyaru_window_linux_plugin.so -:: [ +90 ms] [20/34] Building CXX object runner/CMakeFiles/busymark.dir/rich_clipboard_host.cc.o -:: [ +120 ms] [21/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_window_preferences.cc.o -:: [ +4 ms] [22/34] Linking CXX shared library plugins/file_selector_linux/libfile_selector_linux_plugin.so -:: [ +40 ms] [23/34] Linking CXX shared library plugins/url_launcher_linux/liburl_launcher_linux_plugin.so -:: [ +26 ms] [24/34] Building CXX object runner/CMakeFiles/busymark.dir/linux_chrome_host.cc.o -:: [ +1 ms] [25/34] Linking CXX shared library plugins/window_manager/libwindow_manager_plugin.so -:: [ +255 ms] [26/34] Building CXX object runner/CMakeFiles/busymark.dir/writerside_dialog_host.cc.o -:: [ +182 ms] [27/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_header_icons.cc.o -:: [ +19 ms] [28/34] Building CXX object runner/CMakeFiles/busymark.dir/gtk_accent_host.cc.o -:: [ +16 ms] [29/34] Building CXX object runner/CMakeFiles/busymark.dir/__/flutter/generated_plugin_registrant.cc.o -:: [ +42 ms] [30/34] Building CXX object runner/CMakeFiles/busymark.dir/my_application.cc.o -:: [ +103 ms] [31/34] Building CXX object runner/CMakeFiles/busymark.dir/web_render_host.cc.o -:: [ +283 ms] [32/34] Building CXX object runner/CMakeFiles/busymark.dir/video_player_host.cc.o -:: [ +681 ms] [33/34] Linking CXX executable intermediates_do_not_run/busymark -:: [ ] [33/34] Install the project... -:: [ +10 ms] -- Install configuration: "Release" -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/typst -:: [ +171 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMarchen-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMusic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPersian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansShavian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNushu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansChakma-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsage-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoMono-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansUgaritic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifArmenian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhmer-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinagh-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLepcha-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeroitic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiLe-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElbasan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGrantha-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOsmanya-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifAhom-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuginese-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOgham-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDogra-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCuneiform-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTelugu-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTelugu-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBalinese-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThai-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNaskhArabic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTangut-Regular.ttf -:: [ +13 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBengali-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGujarati-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBatak-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLydian-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Regular.ttf -:: [ +11 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAvestan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Regular.ttf -:: [ +7 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Bold.ttf -:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansManichaean-Regular.ttf -:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Bold.ttf -:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMyanmar-Bold.ttf -:: [ +7 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Regular.ttf -:: [ +7 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf -:: [ +8 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Bold.ttf -:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMongolian-Regular.ttf -:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-Bold.ttf -:: [ +13 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSiddham-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf -:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Regular.ttf -:: [ +7 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifBalinese-Regular.ttf -:: [ +8 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansYi-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGothic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSogdian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPhoenician-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTamil-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSinhala-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTirhuta-Regular.ttf -:: [ +10 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifYezidi-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoyombo-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMultani-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDevanagari-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLimbu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLao-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLisu-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansJavanese-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRejang-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOriya-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansRunic-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArabic-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGeorgian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDeseret-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiTham-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMro-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCypriot-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHatran-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearA-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansVai-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKhojki-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Bold.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlam-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBuhid-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSignWriting-Regular.ttf -:: [ +16 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBengali-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKayahLi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMahajani-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifSinhala-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKannada-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifThai-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhojki-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCarian-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTibetan-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLinearB-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHebrew-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBrahmi-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols2-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMalayalam-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSyriac-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNewa-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifHebrew-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCherokee-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCham-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldPermic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedLao-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansElymaic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansEthiopic-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSundanese-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansModi-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMono-Bold.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMandaic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifGujarati-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOldItalic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansWancho-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifLao-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMath-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoKufiArabic-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKhmer-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-Italic.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSans-BoldItalic.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTagalog-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifKannada-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBamum-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoRashiHebrew-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSharada-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansArmenian-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTakri-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansGrantha-Regular.ttf -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansDuployan-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansBassaVah-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansOlChiki-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansLycian-Regular.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansThaana-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSymbols-Bold.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNKo-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerifTamil-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoLoopedThai-Bold.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansSamaritan-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansMiao-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansNabataean-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansKaithi-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansHanunoo-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansTaiViet-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSerif-Bold.ttf -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/fonts/NotoSansCoptic-Regular.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-core/copyright -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/fonts-noto-mono/copyright -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/typst/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/libexec/busymark/d2 -:: [ +140 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/d2/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/package-lock.json -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/scalar-api-reference/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__unist/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-force/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/style-mod/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dispatch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-geo/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__metadata/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-validator-identifier/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/decode-named-character-reference/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-stringify/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/clsx/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-dom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zod/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-contour/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-location/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lodash-es/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse5/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/defu/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/postcss/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dompurify/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-interpolate/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__json/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__sidebar/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__themes/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-parse5/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tagged-tag/license -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-normalize-identifier/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-label/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-encode/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/swrv/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit-parents/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSV/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-whitespace-sensitive-tag-names/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-html4/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/devlop/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/zwitch/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-sanitize/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__mathjax-newcm-font/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/marked/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fuse.js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale-chromatic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estree-walker/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-sankey/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-reference/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__snippetz/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tinyexec/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-hast/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/THIRD_PARTY_NOTICES.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/PACKAGE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__node/LICENSE -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/PACKAGE -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/eventsource-parser/LICENSE -:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/csstype/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/es-toolkit/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__ms/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-polygon/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-combine-extensions/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-json/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dequal/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tslib/LICENSE.txt -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/guess-json-indent/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/bail/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__workspace-store/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esutils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__helper-string-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonpointer/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__icons/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/roughjs/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/microdiff/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-upgrader/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-transition/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-javascript/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/wicked-good-xpath/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lru-cache/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__oas-utils/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-manager-detector/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__integrations/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-footnote/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__hast/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unhead/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-table/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hachure-fill/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@marijn__find-cluster-break/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/time-span/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__virtual-core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__geojson/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/radix-vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-absolute-url/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-drag/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@swc__helpers/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-path/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-has-property/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-raw/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-scurry/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@replit__codemirror-css-color-picker/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema-traverse/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-contour/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/estraverse/LICENSE.BSD -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__provider-utils/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__helpers/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-element/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-title/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__mdast/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/identifier-regex/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/layout-base/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__highlight/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@plantuml__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-brush/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-sanitize/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-parse/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-hierarchy/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@tanstack__vue-virtual/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-cose-bilkent/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-destination/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/path-data-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-slice/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/picocolors/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dayjs/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-raw/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-axis/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@phosphor-icons__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-symbol/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-visit/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__runtime-core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__view/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cose-base/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__javascript/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rimraf/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-plain-obj/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dispatch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-string/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/JSONSelect/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities-legacy/license -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__reactivity/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@jridgewell__sourcemap-codec/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-timer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/focus-trap/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-fetch/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-delaunay/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mathjax__src/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-sanitize-uri/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/truncate-json/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/require-from-string/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwind-merge/LICENSE.md -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-chunked/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/amdefine/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/robust-predicates/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-classify-character/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__shared/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-table/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__utils/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__code-highlight/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esprima/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/reserved-identifiers/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-force/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale-chromatic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-codemirror/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-object/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/chalk/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-path/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__html/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-event/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-time-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__web-bluetooth/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cytoscape-fcose/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ebnf-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-demi/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nanoid/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-find-after/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__tailwindcss/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-dsv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__lr/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/space-separated-tokens/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/commander/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-ssr/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/make-asynchronous/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-xml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-shape/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-delaunay/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pathe/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-subtokenize/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trough/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__agent-chat/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mhchemparser/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-external-links/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-numeric-character-reference/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/leven/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-parse/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/pretty-ms/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-gfm/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@antfu__install-pkg/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-tagfilter/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/uuid/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-brush/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-selection/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tailwindcss/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/entities/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/highlight.js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/import-meta-resolve/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-types/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-color/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ms/license.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/undici-types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-dom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hastscript/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/internmap/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/safer-buffer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__common/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unified/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-scale/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/balanced-match/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-to-markdown/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__language/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-obj/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-identifier/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-embedded/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-random/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/set-cookie-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-task-list-item/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/brace-expansion/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-color/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-task-list-item/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-strikethrough/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stylis/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-position/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/is-regexp/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-character/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/stringify-entities/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mj-context-menu/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-interpolate/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-polygon/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/get-own-enumerable-keys/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-curve/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-random/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rw/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.BSD -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escodegen/LICENSE.source-map -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/tabbable/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/nomnom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-autolink-literal/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-ease/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map-js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/debug/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-phrasing/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__validation/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lex-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-hierarchy/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/parse-ms/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@braintree__sanitize-url/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/character-entities/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/comma-separated-tokens/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__dom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/underscore/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-is/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/source-map/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-toasts/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-drag/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/json-schema/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-phrasing/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hookable/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/delaunator/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/longest-streak/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/escape-string-regexp/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__openapi-parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-space/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-format/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@unhead__vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__json-magic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/function-timeout/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/property-information/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@chevrotain__types/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__trusted-types/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-html-tag-name/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-worker/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__state/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__asyncapi-upgrader/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@floating-ui__core/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__utils/license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@standard-schema__spec/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mermaid/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/speech-rule-engine/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__components/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-parse5/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/rehype-format/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-draft-04/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-zoom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-strikethrough/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/package-json-from-dist/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__blocks/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__server-renderer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-chord/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/flatted/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-dsv/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-time-format/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/argparse/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/points-on-path/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/type-fest/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison-lex/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minipass/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-whitespace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ajv-formats/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__typebox/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__autocomplete/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/js-base64/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-axis/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-find-and-replace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/unist-util-stringify-position/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-selection/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-factory-whitespace/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-parse-selector/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ccount/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-transition/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@headlessui__vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/esbuild/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-core-commonmark/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__core/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-minify-whitespace/license -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-from-html/license -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/iconv-lite/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-yaml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/crelt/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@xmldom__xmldom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/khroma/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/w3c-keyname/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cjson/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ungap__structured-clone/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/aria-hidden/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-resolve-all/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-util-decode-string/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/markdown-table/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/lowlight/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__xml/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@ai-sdk__gateway/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__debug/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__har-format/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vercel__oidc/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-html/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@mermaid-js__parser/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__schemas/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/trim-lines/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-zoom/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__api-client/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-component-type-helpers/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/html-void-elements/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/p-timeout/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/neverpanic/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-shape/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ai/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@opentelemetry__api/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-css/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-uri/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@upsetjs__venn.js/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-geo/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-rehype/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__commands/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vueuse__shared/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jison/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/dagre-d3-es/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue-sonner/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-from-markdown/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/extend/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/remark-stringify/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonc-parser/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/jsonlint/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/convert-hrtime/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/cva/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/fast-deep-equal/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-ease/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-quadtree/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__date/LICENSE -:: [ +40 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/micromark-extension-gfm-autolink-literal/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@internationalized__number/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lang-html/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@codemirror__lint/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@lezer__css/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/magic-string/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/ts-dedent/LICENSE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/colors/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/PACKAGE -:: [ +9 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@vue__compiler-sfc/LICENSE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/PACKAGE -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-scale/LICENSE -:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/PACKAGE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-array/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/PACKAGE -:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@scalar__use-hooks/LICENSE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/PACKAGE -:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@iconify__types/license.txt -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/PACKAGE -:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@babel__parser/LICENSE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-array/LICENSE -:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/PACKAGE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-is-body-ok-link/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/PACKAGE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-quadtree/LICENSE -:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64 -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@esbuild__linux-x64/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/PACKAGE -:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/d3-fetch/LICENSE -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/PACKAGE -:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-chord/LICENSE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/web-namespaces/license -:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/PACKAGE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/hast-util-to-text/license -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/PACKAGE -:: [ +4 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/mdast-util-gfm-footnote/license -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/PACKAGE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/string-byte-length/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/PACKAGE -:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/super-regex/license -:: [ +3 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vfile-message/license -:: [ +6 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/PACKAGE -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/glob/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/vue/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/minimatch/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/PACKAGE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/npm/@types__d3-timer/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/licenses/mermaid/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/render-engines.js -:: [ +165 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/scalar.js -:: [ +10 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/harness.html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/viz-global.js -:: [ +5 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/bootstrap.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.js -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/reference.html -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/visualization/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/dictionaries.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_NO.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README_hyph_NO.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/README -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/no/COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_hyph_et_EE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/et_EE/README_et_EE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_GB_thes.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_GB.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_lightproof_en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/WordNet_license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_US.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_AU.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_ZA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_en_CA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/en/README_hyph_en_US.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/README_fa_IR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fa_IR/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/license-thes.readme -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_hyph_pt_BR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pt_BR/README_pt_BR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-thes -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/README-dict.adoc -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-thes -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/id/LICENSE-dict -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/vi/LICENSES-vi.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/tr_TR/README.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_en.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl_PL.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/pl_PL/README_pl.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_ru_RU.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/README.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/nl_NL/LICENSE.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_th_uk_UA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_hyph_uk_UA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/uk_UA/README_uk_UA.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hyph_es.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_th_es.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/README_hunspell_es.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/es/LICENSE.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_it_IT.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_hyph_it_IT.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.1st -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_license.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_README -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/th_it_IT_COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_README.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/legacy/it_IT_COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/it_IT/README_th_it_IT.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_de_DE_frami.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.1.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv3 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_LGPL_v2.0.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_OASIS.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_thesaurus.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/COPYING_GPLv2 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_hyph_de.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/de/README_extension_owner.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/README_ar.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ar/COPYING.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/ko_KR/README_ko_KR.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/licenses/hi_IN/README_hi_IN.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/CHECKSUMS.sha256 -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/NOTICE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/busymark/spelling/VERSION -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/LICENSE -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/DEPENDENCIES.md -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/Apache-2.0.txt -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.MPL -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.myspell -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/license.hunspell -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/licenses/busymark-spellcheck/hunspell/COPYING.LESSER -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/busymark -:: [ ] -- Set non-toolchain portion of runtime path of "/project/parts/busymark/build/build/linux/x64/release/bundle/busymark" to "$ORIGIN/lib" -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/applications/io.busystack.busymark.desktop -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/metainfo/io.busystack.busymark.metainfo.xml -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/icudtl.dat -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libflutter_linux_gtk.so -:: [ +45 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libfile_selector_linux_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libgtk_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libscreen_retriever_linux_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/liburl_launcher_linux_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libwindow_manager_plugin.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libyaru_window_linux_plugin.so -:: [ ] -- Up-to-date: /project/parts/busymark/build/build/linux/x64/release/bundle/lib -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libbusymark_spellcheck_native.so -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libsqlite3.so -:: [ +2 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/fonts/MaterialIcons-Regular.otf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/html.css -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/export/markdown.typ -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/spelling/dictionaries.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/branding/busymark_logo.svg -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/assets/writerside/templates.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/stretch_effect.frag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/shaders/ink_sparkle.frag -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/UbuntuMono-Regular.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-R.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-RI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-M.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-MI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-B.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-LI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-BI.ttf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/fonts/Ubuntu-L.ttf -:: [ +1 ms] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/packages/yaru/assets/yaru_icons.otf -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NativeAssetsManifest.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/version.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/NOTICES.Z -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/AssetManifest.bin -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/data/flutter_assets/FontManifest.json -:: [ ] -- Installing: /project/parts/busymark/build/build/linux/x64/release/bundle/lib/libapp.so -:: [ +42 ms] Building Linux application... (completed in 117.0s) -:: [ +9 ms] ✓ Built build/linux/x64/release/bundle/busymark -:: [ +1 ms] "flutter linux" took 117,807ms. -:: [ +2 ms] Running 1 shutdown hook -:: [ ] Shutdown hooks complete -:: [ ] exiting with code 0 -:: + cp -r build/linux/x64/release/bundle/busymark build/linux/x64/release/bundle/data build/linux/x64/release/bundle/lib build/linux/x64/release/bundle/libexec build/linux/x64/release/bundle/share /project/parts/busymark/install/ -Skipping pull for busymark (already ran) -Skipping build for busymark (already ran) -Staging busymark (required to build 'desktop-integration') -Building desktop-integration -Building gnome/sdk -:: + make -j16 GPU_WRAPPER=gpu-2404-wrapper -:: make: 'Makefile' is up to date. -:: + make -j16 install GPU_WRAPPER=gpu-2404-wrapper DESTDIR=/project/parts/gnome/sdk/install -:: install -D -m755 "hooks-configure-fonts" "/project/parts/gnome/sdk/install/snap/command-chain"/"hooks-configure-fonts" -:: install -D -m755 "desktop-launch" "/project/parts/gnome/sdk/install/snap/command-chain"/"desktop-launch" -:: install -D -m755 "run" "/project/parts/gnome/sdk/install/snap/command-chain"/"run" -:: install -D -m755 "gpu-2404-wrapper" "/project/parts/gnome/sdk/install/snap/command-chain"/"gpu-2404-wrapper" -Skipping stage for busymark (already ran) -Staging desktop-integration -Staging gnome/sdk -Priming busymark -Patch ELF file: 'busymark' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=['$ORIGIN/lib'] - Proposed rpath=['$ORIGIN/usr/lib/x86_64-linux-gnu', '$ORIGIN/lib', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libbusymark_spellcheck_native.so' - Current rpath=['$ORIGIN'] - Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libfile_selector_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libflutter_linux_gtk.so' - Current rpath=['$ORIGIN'] - Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libgtk_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libscreen_retriever_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libsqlite3.so' - Current rpath=['$ORIGIN'] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/liburl_launcher_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libwindow_manager_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN', '$ORIGIN/../usr/lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'lib/libyaru_window_linux_plugin.so' - Current rpath=['/project/parts/busymark/build/linux/flutter/ephemeral', '/snap/gnome-46-2404-sdk/current/usr/lib/x86_64-linux-gnu'] - Proposed rpath=['$ORIGIN/../usr/lib/x86_64-linux-gnu', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/addpart' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/choom' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/chrt' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/delpart' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/dmesg' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fallocate' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-cache' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-cat' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-conflist' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-list' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-match' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-pattern' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-query' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-scan' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/fc-validate' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/findmnt' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/flock' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gapplication' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gdbus' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/getopt' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gio' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/git' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/git-shell' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gresource' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gsettings' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/gtk-update-icon-cache' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/hardlink' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ionice' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ipcmk' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ipcrm' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ipcs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/last' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsblk' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lscpu' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsipc' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lslocks' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lslogins' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsmem' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/lsns' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/mcookie' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/mesg' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/more' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/mountpoint' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/namei' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/nsenter' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/partx' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/perl' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/perl5.38-x86_64-linux-gnu' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/perl5.38.2' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/prlimit' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/rename.ul' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/resizepart' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/rev' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/scalar' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/scp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/session-migration' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setarch' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setpriv' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setsid' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/setterm' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/sftp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-add' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-agent' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-keygen' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/ssh-keyscan' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/su' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/taskset' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/uclampset' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/unshare' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/update-mime-database' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/utmpdump' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/wdctl' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/bin/whereis' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-daemon' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-http-backend' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-http-fetch' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-http-push' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-imap-send' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-remote-http' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../x86_64-linux-gnu', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-sh-i18n--envsubst' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/git-shell' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/git-core/scalar' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/openssh/ssh-keysign' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/openssh/ssh-pkcs11-helper' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/openssh/ssh-sk-helper' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libDummyDevice.so.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libOniFile.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPS1080.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/OpenNI2/Drivers/libPSLink.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/blas/libblas.so.3.12.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/caca/libx11_plugin.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ati128.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_ep9x.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gl.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_gles2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i810.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_i830.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_mach64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_matrox.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_neomagic.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nsc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_nvidia.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_pxa3xx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_sis315.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/gfxdrivers/libdirectfb_tdfx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_input_hub.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_joystick.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_keyboard.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_linux_input.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_lirc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_mutouch.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_penmount.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_ps2mouse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_serialmouse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_sonypi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_wm97xx_ts.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/inputdrivers/libdirectfb_zytronic.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBFont/libidirectfbfont_dgiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_dfiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_gif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBVideoProvider/libidirectfbvideoprovider_v4l.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IDirectFBWindows/libidirectfbwindows_default.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/interfaces/IWater/libiwater_default.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_devmem.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_dummy.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/systems/libdirectfb_fbdev.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/directfb-1.7-7/wm/libdirectfbwm_default.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/dri/libdril_dri.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gbm/dri_gbm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ani.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-gif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-icns.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pnm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tga.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xbm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognomeproxy.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '$ORIGIN/../../libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsta52dec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaccurip.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadpcmenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaes.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaiff.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstanalyticsoverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaom.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstasfmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstassrender.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiobuffersplit.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofxbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiolatency.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixmatrix.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiovisualizers.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautoconvert.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavtp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbayer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbluez.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbs2b.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbz2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstchromaprint.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstclosedcaption.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodec2json.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodecalpha.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcodectimestamper.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoloreffects.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcolormanagement.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcurl.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdash.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdc1394.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstde265.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebugutilsbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdecklink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdirectfb.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtls.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtsdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvb.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsubenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvbsuboverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdlpcmdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdread.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdspu.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdvdsub.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfaceoverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfbdevsink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfestival.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfieldanalysis.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflite.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfluidsynthmidi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfreeverb.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstfrei0r.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgaudieffects.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgeometrictransform.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgme.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgsm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgtkwayland.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsthls.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3tag.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinsertbin.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinter.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterlace.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstipcpipeline.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivfparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstivtc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjp2kdecimator.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstkms.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstladspa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlc3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstldac.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlegacyrawparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibav.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../blas', '$ORIGIN/../lapack', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlv2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmidi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmodplug.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2dec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpeg2enc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsdemux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegpsmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsdemux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpegtsmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmplex.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmsdk.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmusepack.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmxf.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstneonhttpsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnetsim.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnvcodec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenal.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenaptx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenexr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenh264.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenjpeg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenmpt.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopenni2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopusparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpcapparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpnm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstproxy.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqroverlay.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstqsv.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrealmedia.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstremovesilence.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstresindvd.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrfbsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrist.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrsvg.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtmp2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanagerbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtponvif.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsbc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsctp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsdpelem.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsegmentclip.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshm.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsid.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsiren.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmooth.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmoothstreaming.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsndfile.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoundtouch.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspandsp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeed.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrt.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsrtp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsvtav1.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstswitchbin.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstteletext.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttimecode.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttranscode.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstttmlsubs.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstunixfd.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvcgadget.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstuvch264.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstv4l2codecs.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstva.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofiltersbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoframe_audiolevel.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoparsersbad.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideosignal.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvmnc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoaacenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvoamrwbenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvulkan.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwaylandsink.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebp.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwebrtc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwildmidi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx264.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstx265.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4mdec.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzbar.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstzxing.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libadwaita.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libmurrine.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/engines/libpixmap.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-am-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cedilla.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-cyrillic-translit.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-inuktitut.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ipa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-multipress.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-thai.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-er.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ti-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-viqr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-xim.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-lpr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/printbackends/libprintbackend-test.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '$ORIGIN/../blas', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL.so.1.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libFLAC.so.12.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGL.so.1.7.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLESv2.so.2.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libGLdispatch.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIex-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libIlmThread-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libImath-3_1.so.29.8.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLLVM.so.20.1' - Current rpath=['$ORIGIN/../lib'] - Proposed rpath=['$ORIGIN/../lib', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libLerc.so.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXR-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRCore-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libOpenNI2.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.3000.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouch.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libSvtAv1Enc.so.1.7.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libWildMidi.so.2.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libX11.so.6.4.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXau.so.6.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcomposite.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXcursor.so.1.0.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXext.so.6.4.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXi.so.6.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrandr.so.2.2.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXss.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libXxf86vm.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libZXing.so.2.2.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liba52-0.7.4.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libaom.so.3.8.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasound.so.2.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libass.so.9.2.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libasyncns.so.0.3.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-1.0.so.0.25209.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libatspi.so.0.0.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-client.so.3.2.9' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavahi-common.so.3.5.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavcodec.so.60.31.102' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavfilter.so.9.12.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/lapack', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavformat.so.60.16.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libavutil.so.58.29.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbluray.so.2.4.3' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libbs2b.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcaca.so.0.99.20' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo-gobject.so.2.11800.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcairo.so.2.11800.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_interface.so.0.10.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcdio.so.19.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libchromaprint.so.1.5.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson.so.1.7.17' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcodec2.so.1.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcups.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.8.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdatrie.so.1.4.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdav1d.so.7.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdc1394.so.25.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdca.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libde265.so.0.1.8' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdecor-0.so.0.200.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdeflate.so.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirect-1.7.so.7.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdirectfb-1.7.so.7.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_amdgpu.so.1.125.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdrm_intel.so.1.125.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdnav.so.4.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdvdread.so.8.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libdw-0.190.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libepoxy.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad.so.2.11.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3.so.3.6.10' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lang.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_awb.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_kal16.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_rms.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmu_us_slt.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_cmulex.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libflite_usenglish.so.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfluidsynth.so.3.2.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfontconfig.so.1.12.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libform.so.6.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeaptx.so.0.1.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreebl3.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfribidi.so.0.4.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libfusion-1.7.so.7.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgallium-25.2.8-0ubuntu0.24.04.4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgbm.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm.so.6.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdbm_compat.so.4.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0.2400.33' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.4200.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgme.so.0.6.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgpm.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgraphite2.so.3.2.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsm.so.1.0.19' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgssdp-1.6.so.0.106.3' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstadaptivedemux-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstanalytics-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbadaudio-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecparsers-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcodecs-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstcuda-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstgl-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstinsertbin-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstisoff-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmpegts-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstmse-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplay-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsctp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgsturidownloader-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstva-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstvulkan-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwayland-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtc-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgstwebrtcnice-1.0.so.0.2402.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0.2400.33' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgtk2.0-0t64/gtk-query-immodules-2.0' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgudev-1.0.so.0.3.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-1.6.so.0.106.6' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libgupnp-igd-1.6.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libharfbuzz.so.0.60830.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy.so.1.0.7' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicui18n.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicutu.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libicuuc.so.74.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libinstpatch-1.0.so.2.2.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjack.so.0.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjbig.so.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjpeg.so.8.2.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.800.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl.so.0.7.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libjxl_threads.so.0.7.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblber.so.2.0.200' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblc3.so.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblcms2.so.2.0.14' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldacBT_enc.so.2.0.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libldap.so.2.0.200' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblilv-0.so.0.24.22' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liblrdf.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libltc.so.11.2.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmbedcrypto.so.2.28.8' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfx.so.1.35' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmjpegutils-2.1.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmodplug.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmp3lame.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpcdec.so.6.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2.so.0.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpeg2encpp-2.1.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmpg123.so.0.48.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmplex2-2.1.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libmysofa.so.1.3.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libncurses.so.6.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libneon.so.27.6.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnghttp2.so.14.26.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnice.so.10.13.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnorm.so.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnspr4.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnss3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssckbi.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssdbm3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnssutil3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libnuma.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libogg.so.0.8.5' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenal.so.1.23.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenh264.so.2.4.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenjp2.so.2.5.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopenmpt.so.0.4.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libopus.so.0.9.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-0.4.so.0.38.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libperl.so.5.38.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpgm-5.3.so.0.0.128' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpipewire-0.3.so.0.1005.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpixman-1.so.0.42.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplacebo.so.338' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplc4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libplds4.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpocketsphinx.so.3.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/lapack', '$ORIGIN/blas', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpostproc.so.57.3.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy/libpxbackend-1.0.so' - Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libproxy.so.0.5.4' - Current rpath=['/usr/lib/x86_64-linux-gnu/libproxy'] - Proposed rpath=['$ORIGIN/libproxy', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpsl.so.5.3.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse-simple.so.0.1.1' - Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libpulse.so.0.24.2' - Current rpath=['/usr/lib/x86_64-linux-gnu/pulseaudio'] - Proposed rpath=['$ORIGIN', '$ORIGIN/pulseaudio', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libqrencode.so.4.1.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librabbitmq.so.4.5.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraptor2.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librav1e.so.0.7.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libraw1394.so.11.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librist.so.4.3.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librtmp.so.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/librubberband.so.2.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsamplerate.so.0.2.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsbc.so.1.3.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsensors.so.5.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libserd-0.so.0.32.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsharpyuv.so.0.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshine.so.3.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsidplay.so.1.0.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libslang.so.2.3.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsmime3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsnappy.so.1.1.10' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndfile.so.1.0.37' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsndio.so.7.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsodium.so.23.3.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoftokn3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsord-0.so.0.16.16' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoup-3.0.so.0.7.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsoxr.so.0.1.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspandsp.so.2.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libspeex.so.1.5.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/pulseaudio', '$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN/lapack', '$ORIGIN/blas', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsratom-0.so.0.6.16' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrt-gnutls.so.1.5.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libsrtp2.so.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh-gcrypt.so.4.9.6' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssh.so.4.9.6' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libssl3.so' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswresample.so.4.12.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libswscale.so.7.5.100' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libthai.so.0.3.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheora.so.0.3.10' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoradec.so.1.1.4' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtheoraenc.so.1.1.2' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtiff.so.6.0.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libtwolame.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libudfread.so.0.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunibreak.so.5.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libunwind.so.8.0.1' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libusb-1.0.so.0.4.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/plugins/libv4l-mplane.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l1compat.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l/v4l2convert.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l1.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4l2.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov511-decomp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libv4lconvert0/ov518-decomp' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-drm.so.2.2000.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva-x11.so.2.2000.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libva.so.2.2000.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvdpau.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvidstab.so.1.1' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-aacenc.so.0.0.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvo-amrwbenc.so.0.0.4' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbis.so.0.4.9' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisenc.so.2.0.12' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvorbisfile.so.3.3.8' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpl.so.2.9' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvpx.so.9.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libvulkan.so.1.3.275' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebp.so.7.1.8' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebpmux.so.3.0.13' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libwebrtc_audio_processing.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx264.so.164' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libx265.so.199' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-glx.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-present.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-randr.so.0.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-sync.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb-xkb.so.1.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so.0.0.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxml2.so.2.9.14' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxshmfence.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxslt.so.1.1.39' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libxvidcore.so.4.3' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libyajl.so.2.1.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzbar.so.0.3.0' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzimg.so.2.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzix-0.so.0.4.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzmq.so.5.2.5' - Current rpath=[] - Proposed rpath=['$ORIGIN', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/libzvbi.so.0.13.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_h264la_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevc_fei_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevcd_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_hevce_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp8d_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9d_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/mfx/libmfx_vp9e_hw64.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/B/B.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Bzip2/Bzip2.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Compress/Raw/Zlib/Zlib.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Cwd/Cwd.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/DB_File/DB_File.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Data/Dumper/Dumper.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Devel/Peek/Peek.so' -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/MD5/MD5.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Digest/SHA/SHA.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Byte/Byte.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/CN/CN.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/EBCDIC/EBCDIC.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Encode.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/JP/JP.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/KR/KR.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Symbol/Symbol.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/TW/TW.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Encode/Unicode/Unicode.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/File/Glob/Glob.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Filter/Util/Call/Call.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/GDBM_File/GDBM_File.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/FieldHash/FieldHash.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Hash/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/I18N/Langinfo/Langinfo.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IO/IO.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/IPC/SysV/SysV.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/List/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/MIME/Base64/Base64.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Math/BigInt/FastCalc/FastCalc.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/NDBM_File/NDBM_File.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/ODBM_File/ODBM_File.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../../../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Opcode/Opcode.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/POSIX/POSIX.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/encoding/encoding.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/mmap/mmap.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/scalar/scalar.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/PerlIO/via/via.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/SDBM_File/SDBM_File.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Socket/Socket.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Storable/Storable.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Hostname/Hostname.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Sys/Syslog/Syslog.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/HiRes/HiRes.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Time/Piece/Piece.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Collate/Collate.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/Unicode/Normalize/Normalize.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/attributes/attributes.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/mro/mro.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/re/re.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/shared/shared.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl/5.38.2/auto/threads/threads.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Cwd/Cwd.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/File/Glob/Glob.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Hash/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/IO/IO.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/List/Util/Util.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/POSIX/POSIX.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/Socket/Socket.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/attributes/attributes.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/perl-base/auto/re/re.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/pulseaudio/libpulsecommon-16.1.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/sasl2/libsasldb.so.2.0.25' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-null.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/aec/libspa-aec-webrtc.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/alsa/libspa-alsa.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/../..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audioconvert/libspa-audioconvert.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiomixer/libspa-audiomixer.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/audiotestsrc/libspa-audiotestsrc.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/avb/libspa-avb.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/control/libspa-control.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-dbus.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-journal.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/support/libspa-support.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/test/libspa-test.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/v4l2/libspa-v4l2.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videoconvert/libspa-videoconvert.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/spa-0.2/videotestsrc/libspa-videotestsrc.so' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/vdpau/libvdpau_trace.so.1.0.0' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/lib/x86_64-linux-gnu/vpl/libvpl_wayland.so' - Current rpath=[] - Proposed rpath=['$ORIGIN/..', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/libexec/dconf-service' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/libexec/glib-pacrunner' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['$ORIGIN/../lib/x86_64-linux-gnu', '$ORIGIN/../lib/x86_64-linux-gnu/libproxy', '/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/agetty' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blkdiscard' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blkid' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blkzone' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/blockdev' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/chcpu' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/chmem' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/ctrlaltdel' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/findfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsck' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsck.cramfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsck.minix' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fsfreeze' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/fstrim' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/isosize' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/ldattach' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs.bfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs.cramfs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkfs.minix' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/mkswap' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/pivot_root' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/readprofile' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/rtcwake' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/runuser' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/sulogin' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/swaplabel' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/switch_root' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/wipefs' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Patch ELF file: 'usr/sbin/zramctl' - Interpreter='/snap/core24/current/lib64/ld-linux-x86-64.so.2' - Current rpath=[] - Proposed rpath=['/snap/core24/current/lib/x86_64-linux-gnu'] -Priming desktop-integration -:: + craftctl default -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/busymark -:: + existing_rpath='$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/usr/lib/x86_64-linux-gnu:$ORIGIN/lib:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/busymark -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libapp.so -:: + existing_rpath= -:: + '[' -n '' ']' -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libbusymark_spellcheck_native.so -:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libbusymark_spellcheck_native.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libfile_selector_linux_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libfile_selector_linux_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libflutter_linux_gtk.so -:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libflutter_linux_gtk.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libgtk_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libgtk_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libscreen_retriever_linux_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libscreen_retriever_linux_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libsqlite3.so -:: + existing_rpath='$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libsqlite3.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/liburl_launcher_linux_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/liburl_launcher_linux_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libwindow_manager_plugin.so -:: + existing_rpath='$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN:$ORIGIN/../usr/lib/x86_64-linux-gnu:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libwindow_manager_plugin.so -:: + for bundled_elf in "/project/prime/busymark" "/project/prime/lib"/*.so -:: ++ patchelf --print-rpath /project/prime/lib/libyaru_window_linux_plugin.so -:: + existing_rpath='$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' -:: + '[' -n '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' ']' -:: + patchelf --set-rpath '$ORIGIN/../usr/lib/x86_64-linux-gnu:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/lib/libyaru_window_linux_plugin.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + continue -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgst1394.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaasink.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadaptivedemux2.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstadder.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalaw.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalpha.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstalphacolor.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapetag.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstapp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioconvert.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiofx.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiomixer.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioparsers.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiorate.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudioresample.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstaudiotestsrc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstauparse.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstavi.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstbasedebug.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcacasink.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcairo.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcamerabin.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcdparanoia.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcompositor.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoreelements.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcoretracers.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstcutter.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebug.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdeinterlace.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdsd.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdtmf.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdv.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsteffectv.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstencoding.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstequalizer.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflac.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflv.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstflxdec.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgdkpixbuf.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgio.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstgoom2k1.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsticydemux.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstid3demux.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstimagefreeze.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstinterleave.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstisomp4.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjack.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpeg.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstjpegformat.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlame.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlevel.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstlibvisual.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmatroska.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmonoscope.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmpg123.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmulaw.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultifile.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstmultipart.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnavigationtest.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstogg.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstopus.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoss4.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstossaudio.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstoverlaycomposition.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpbtypes.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstplayback.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpng.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstpulseaudio.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrawparse.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstreplaygain.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtpmanager.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstrtsp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshapewipe.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstshout2.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsmpte.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsoup.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspectrum.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstspeex.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstsubparse.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttaglib.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttcp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttheora.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttwolame.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsttypefindfunctions.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstudp.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideobox.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideoconvertscale.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideocrop.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideofilter.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideomixer.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideorate.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvideotestsrc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvolume.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvorbis.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvpx.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavenc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavpack.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwavparse.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstximagesrc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstxingmux.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgsty4menc.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-plugin-scanner -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-ptp-helper -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-am-et.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-broadway.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cedilla.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-cyrillic-translit.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-inuktitut.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ipa.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-multipress.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-thai.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-er.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-ti-et.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-viqr.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-wayland.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-cups.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/printbackends/libprintbackend-file.so -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgdk-3.so.0.2409.32 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libX11.so.6.4.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXdamage.so.1.1.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libXfixes.so.3.1.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstallocators-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstbasecamerabinsrc-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcheck-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstcontroller-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstfft-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstnet-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstphotography-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstriff-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtp-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstrtsp-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstsdp-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0.2402.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libgtk-3.so.0.2409.32 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.5200.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.5200.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.5200.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-client.so.0.22.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-cursor.so.0.22.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libwayland-egl.so.1.22.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 -:: + '[' '!' -e /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 ']' -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0 -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs -:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs ']' -:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer10Bands.prs -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs -:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs ']' -:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstIirEqualizer3Bands.prs -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs -:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs ']' -:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstQTMux.prs -:: + IFS= -:: + read -r runtime_path -:: + case "$runtime_path" in -:: + private_path=/project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs -:: + '[' '!' -e /project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs ']' -:: + rm -f /project/prime/usr/share/gstreamer-1.0/presets/GstVP8Enc.prs -:: + IFS= -:: + read -r runtime_path -:: + patchelf --set-rpath '$ORIGIN/lapack:$ORIGIN/blas:$ORIGIN:/snap/core24/current/lib/x86_64-linux-gnu' /project/prime/usr/lib/x86_64-linux-gnu/libsphinxbase.so.3.0.0 -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0 /project/prime/usr/lib/x86_64-linux-gnu/caca/libgl_plugin.so.0.0.0 -:: + rm -f /project/prime/usr/lib/x86_64-linux-gnu/librsvg-2.so.2 /project/prime/usr/lib/x86_64-linux-gnu/librsvg-2.so.2.50.0 -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoKufiArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoKufiArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoKufiArabic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedLao-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoLoopedThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoLoopedThai-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoMono-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoMusic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoMusic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoNaskhArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoNaskhArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNaskhArabic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoNastaliqUrdu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoNastaliqUrdu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoNastaliqUrdu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoRashiHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoRashiHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoRashiHebrew-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSans-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlam-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlamUnjoined-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAdlamUnjoined-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAdlamUnjoined-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAnatolianHieroglyphs-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAnatolianHieroglyphs-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArabic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArabic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArabic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArmenian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansArmenian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansArmenian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansAvestan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansAvestan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBalinese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBalinese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBalinese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBamum-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBamum-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBamum-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBassaVah-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBassaVah-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBatak-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBatak-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBengali-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBengali-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBengali-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBhaiksuki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBhaiksuki-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBrahmi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBrahmi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBuginese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBuginese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansBuhid-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansBuhid-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCanadianAboriginal-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCanadianAboriginal-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCanadianAboriginal-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCarian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCarian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCaucasianAlbanian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCaucasianAlbanian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansChakma-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansChakma-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCham-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCham-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCherokee-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCherokee-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCherokee-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCoptic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCoptic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCuneiform-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCuneiform-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansCypriot-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansCypriot-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDeseret-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDeseret-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDevanagari-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDevanagari-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDevanagari-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-BoldItalic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Italic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDisplay-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDisplay-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansDuployan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansDuployan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEgyptianHieroglyphs-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEgyptianHieroglyphs-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansElbasan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansElbasan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansElymaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansElymaic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEthiopic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansEthiopic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansEthiopic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGeorgian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGeorgian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGeorgian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGlagolitic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGlagolitic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGothic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGothic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGrantha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGrantha-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGujarati-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGujarati-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGujarati-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGunjalaGondi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGunjalaGondi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGurmukhi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansGurmukhi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansGurmukhi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanifiRohingya-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanifiRohingya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanifiRohingya-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHanunoo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHanunoo-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHatran-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHatran-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansImperialAramaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansImperialAramaic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansIndicSiyaqNumbers-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansIndicSiyaqNumbers-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansInscriptionalPahlavi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalPahlavi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansInscriptionalParthian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansInscriptionalParthian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansJavanese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansJavanese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansJavanese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKaithi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKaithi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKannada-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKannada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKannada-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKayahLi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKayahLi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKayahLi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKharoshthi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKharoshthi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhmer-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhmer-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhmer-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhojki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhojki-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansKhudawadi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansKhudawadi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLao-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLepcha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLepcha-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLimbu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLimbu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLinearA-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearA-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLinearB-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLinearB-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLisu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLisu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLisu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLycian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLycian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansLydian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansLydian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMahajani-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMahajani-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMalayalam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMalayalam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMandaic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMandaic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansManichaean-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansManichaean-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMarchen-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMarchen-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMasaramGondi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMasaramGondi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMath-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMath-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMayanNumerals-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMayanNumerals-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMedefaidrin-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMedefaidrin-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMedefaidrin-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeeteiMayek-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeeteiMayek-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeeteiMayek-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMendeKikakui-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMendeKikakui-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMeroitic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMeroitic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMiao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMiao-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansModi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansModi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMongolian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMongolian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMono-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMono-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMono-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMro-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMro-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMultani-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMultani-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMyanmar-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansMyanmar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansMyanmar-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNKo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNKo-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNabataean-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNabataean-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNewTaiLue-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNewTaiLue-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNewa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNewa-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansNushu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansNushu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOgham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOgham-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOlChiki-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOlChiki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOlChiki-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldHungarian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldHungarian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldItalic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldItalic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldNorthArabian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldNorthArabian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldPermic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPermic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldPersian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldPersian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldSogdian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSogdian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldSouthArabian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldSouthArabian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOldTurkic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOldTurkic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOriya-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOriya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOriya-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOsage-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOsage-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansOsmanya-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansOsmanya-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPahawhHmong-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPahawhHmong-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPalmyrene-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPalmyrene-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPauCinHau-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPauCinHau-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPhagsPa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPhagsPa-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPhoenician-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPhoenician-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansPsalterPahlavi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansPsalterPahlavi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansRejang-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansRejang-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansRunic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansRunic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSamaritan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSamaritan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSaurashtra-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSaurashtra-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSharada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSharada-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansShavian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansShavian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSiddham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSiddham-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSignWriting-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSignWriting-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSinhala-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSinhala-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSinhala-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSogdian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSogdian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoraSompeng-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoraSompeng-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoraSompeng-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSoyombo-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSoyombo-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSundanese-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSundanese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSundanese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSylotiNagri-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSylotiNagri-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSymbols2-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSymbols2-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansSyriac-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansSyriac-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTagalog-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTagalog-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTagbanwa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTagbanwa-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiLe-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiLe-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiTham-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiTham-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiTham-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTaiViet-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTaiViet-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTakri-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTakri-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamil-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamil-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamil-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTamilSupplement-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTamilSupplement-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTelugu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTelugu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTelugu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThaana-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThaana-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThaana-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinagh-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinagh-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAPT-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAPT-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAdrar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAdrar-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAgrawImazighen-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAgrawImazighen-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAhaggar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAhaggar-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAir-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAir-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghAzawagh-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghAzawagh-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghGhat-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghGhat-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghHawad-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghHawad-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghRhissaIxa-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghRhissaIxa-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghSIL-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghSIL-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTifinaghTawellemmet-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTifinaghTawellemmet-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansTirhuta-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansTirhuta-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansUgaritic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansUgaritic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansVai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansVai-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansWancho-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansWancho-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansWarangCiti-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansWarangCiti-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansYi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansYi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSansZanabazarSquare-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSansZanabazarSquare-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerif-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifAhom-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifAhom-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifArmenian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifArmenian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifArmenian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBalinese-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBalinese-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBengali-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifBengali-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifBengali-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDevanagari-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDevanagari-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDevanagari-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-BoldItalic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-BoldItalic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Italic.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Italic.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDisplay-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDisplay-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifDogra-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifDogra-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifEthiopic-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifEthiopic-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifEthiopic-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGeorgian-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGeorgian-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGeorgian-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGrantha-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGrantha-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGujarati-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGujarati-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGujarati-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGurmukhi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifGurmukhi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifGurmukhi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifHebrew-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifHebrew-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifHebrew-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKannada-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKannada-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKannada-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhmer-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhmer-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhmer-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhojki-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifKhojki-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifKhojki-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifLao-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifLao-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifLao-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMalayalam-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMalayalam-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMalayalam-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMyanmar-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifMyanmar-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifMyanmar-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifNyiakengPuachueHmong-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifNyiakengPuachueHmong-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifSinhala-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifSinhala-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifSinhala-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamil-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamil-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamil-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamilSlanted-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTamilSlanted-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTamilSlanted-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTangut-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTangut-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTelugu-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTelugu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTelugu-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifThai-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifThai-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifThai-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTibetan-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifTibetan-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifTibetan-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifYezidi-Bold.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Bold.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoSerifYezidi-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoSerifYezidi-Regular.ttf -:: + for bundled_font in "/project/prime/share/busymark/fonts"/Noto*.ttf -:: + staged_font=/project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf -:: + test -f /project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf -:: + cmp -s /project/prime/share/busymark/fonts/NotoTraditionalNushu-Regular.ttf /project/prime/usr/share/fonts/truetype/noto/NotoTraditionalNushu-Regular.ttf -:: + rm -rf /project/prime/share/busymark/fonts -:: + ln -s ../../usr/share/fonts/truetype/noto /project/prime/share/busymark/fonts -:: + mkdir -p /project/prime/share/themes /project/prime/share/icons -:: + for resource_kind in themes icons -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru -:: + resource_name=Yaru -:: + linked_resource=/project/prime/share/themes/Yaru -:: + rm -rf /project/prime/share/themes/Yaru -:: + ln -s ../../usr/share/themes/Yaru /project/prime/share/themes/Yaru -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-bark -:: + resource_name=Yaru-bark -:: + linked_resource=/project/prime/share/themes/Yaru-bark -:: + rm -rf /project/prime/share/themes/Yaru-bark -:: + ln -s ../../usr/share/themes/Yaru-bark /project/prime/share/themes/Yaru-bark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-bark-dark -:: + resource_name=Yaru-bark-dark -:: + linked_resource=/project/prime/share/themes/Yaru-bark-dark -:: + rm -rf /project/prime/share/themes/Yaru-bark-dark -:: + ln -s ../../usr/share/themes/Yaru-bark-dark /project/prime/share/themes/Yaru-bark-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-blue -:: + resource_name=Yaru-blue -:: + linked_resource=/project/prime/share/themes/Yaru-blue -:: + rm -rf /project/prime/share/themes/Yaru-blue -:: + ln -s ../../usr/share/themes/Yaru-blue /project/prime/share/themes/Yaru-blue -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-blue-dark -:: + resource_name=Yaru-blue-dark -:: + linked_resource=/project/prime/share/themes/Yaru-blue-dark -:: + rm -rf /project/prime/share/themes/Yaru-blue-dark -:: + ln -s ../../usr/share/themes/Yaru-blue-dark /project/prime/share/themes/Yaru-blue-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-dark -:: + resource_name=Yaru-dark -:: + linked_resource=/project/prime/share/themes/Yaru-dark -:: + rm -rf /project/prime/share/themes/Yaru-dark -:: + ln -s ../../usr/share/themes/Yaru-dark /project/prime/share/themes/Yaru-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-dark-hdpi -:: + resource_name=Yaru-dark-hdpi -:: + linked_resource=/project/prime/share/themes/Yaru-dark-hdpi -:: + rm -rf /project/prime/share/themes/Yaru-dark-hdpi -:: + ln -s ../../usr/share/themes/Yaru-dark-hdpi /project/prime/share/themes/Yaru-dark-hdpi -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-dark-xhdpi -:: + resource_name=Yaru-dark-xhdpi -:: + linked_resource=/project/prime/share/themes/Yaru-dark-xhdpi -:: + rm -rf /project/prime/share/themes/Yaru-dark-xhdpi -:: + ln -s ../../usr/share/themes/Yaru-dark-xhdpi /project/prime/share/themes/Yaru-dark-xhdpi -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-hdpi -:: + resource_name=Yaru-hdpi -:: + linked_resource=/project/prime/share/themes/Yaru-hdpi -:: + rm -rf /project/prime/share/themes/Yaru-hdpi -:: + ln -s ../../usr/share/themes/Yaru-hdpi /project/prime/share/themes/Yaru-hdpi -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-magenta -:: + resource_name=Yaru-magenta -:: + linked_resource=/project/prime/share/themes/Yaru-magenta -:: + rm -rf /project/prime/share/themes/Yaru-magenta -:: + ln -s ../../usr/share/themes/Yaru-magenta /project/prime/share/themes/Yaru-magenta -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-magenta-dark -:: + resource_name=Yaru-magenta-dark -:: + linked_resource=/project/prime/share/themes/Yaru-magenta-dark -:: + rm -rf /project/prime/share/themes/Yaru-magenta-dark -:: + ln -s ../../usr/share/themes/Yaru-magenta-dark /project/prime/share/themes/Yaru-magenta-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-olive -:: + resource_name=Yaru-olive -:: + linked_resource=/project/prime/share/themes/Yaru-olive -:: + rm -rf /project/prime/share/themes/Yaru-olive -:: + ln -s ../../usr/share/themes/Yaru-olive /project/prime/share/themes/Yaru-olive -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-olive-dark -:: + resource_name=Yaru-olive-dark -:: + linked_resource=/project/prime/share/themes/Yaru-olive-dark -:: + rm -rf /project/prime/share/themes/Yaru-olive-dark -:: + ln -s ../../usr/share/themes/Yaru-olive-dark /project/prime/share/themes/Yaru-olive-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-prussiangreen -:: + resource_name=Yaru-prussiangreen -:: + linked_resource=/project/prime/share/themes/Yaru-prussiangreen -:: + rm -rf /project/prime/share/themes/Yaru-prussiangreen -:: + ln -s ../../usr/share/themes/Yaru-prussiangreen /project/prime/share/themes/Yaru-prussiangreen -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-prussiangreen-dark -:: + resource_name=Yaru-prussiangreen-dark -:: + linked_resource=/project/prime/share/themes/Yaru-prussiangreen-dark -:: + rm -rf /project/prime/share/themes/Yaru-prussiangreen-dark -:: + ln -s ../../usr/share/themes/Yaru-prussiangreen-dark /project/prime/share/themes/Yaru-prussiangreen-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-purple -:: + resource_name=Yaru-purple -:: + linked_resource=/project/prime/share/themes/Yaru-purple -:: + rm -rf /project/prime/share/themes/Yaru-purple -:: + ln -s ../../usr/share/themes/Yaru-purple /project/prime/share/themes/Yaru-purple -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-purple-dark -:: + resource_name=Yaru-purple-dark -:: + linked_resource=/project/prime/share/themes/Yaru-purple-dark -:: + rm -rf /project/prime/share/themes/Yaru-purple-dark -:: + ln -s ../../usr/share/themes/Yaru-purple-dark /project/prime/share/themes/Yaru-purple-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-red -:: + resource_name=Yaru-red -:: + linked_resource=/project/prime/share/themes/Yaru-red -:: + rm -rf /project/prime/share/themes/Yaru-red -:: + ln -s ../../usr/share/themes/Yaru-red /project/prime/share/themes/Yaru-red -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-red-dark -:: + resource_name=Yaru-red-dark -:: + linked_resource=/project/prime/share/themes/Yaru-red-dark -:: + rm -rf /project/prime/share/themes/Yaru-red-dark -:: + ln -s ../../usr/share/themes/Yaru-red-dark /project/prime/share/themes/Yaru-red-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-sage -:: + resource_name=Yaru-sage -:: + linked_resource=/project/prime/share/themes/Yaru-sage -:: + rm -rf /project/prime/share/themes/Yaru-sage -:: + ln -s ../../usr/share/themes/Yaru-sage /project/prime/share/themes/Yaru-sage -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-sage-dark -:: + resource_name=Yaru-sage-dark -:: + linked_resource=/project/prime/share/themes/Yaru-sage-dark -:: + rm -rf /project/prime/share/themes/Yaru-sage-dark -:: + ln -s ../../usr/share/themes/Yaru-sage-dark /project/prime/share/themes/Yaru-sage-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-viridian -:: + resource_name=Yaru-viridian -:: + linked_resource=/project/prime/share/themes/Yaru-viridian -:: + rm -rf /project/prime/share/themes/Yaru-viridian -:: + ln -s ../../usr/share/themes/Yaru-viridian /project/prime/share/themes/Yaru-viridian -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-viridian-dark -:: + resource_name=Yaru-viridian-dark -:: + linked_resource=/project/prime/share/themes/Yaru-viridian-dark -:: + rm -rf /project/prime/share/themes/Yaru-viridian-dark -:: + ln -s ../../usr/share/themes/Yaru-viridian-dark /project/prime/share/themes/Yaru-viridian-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/themes/Yaru-xhdpi -:: + resource_name=Yaru-xhdpi -:: + linked_resource=/project/prime/share/themes/Yaru-xhdpi -:: + rm -rf /project/prime/share/themes/Yaru-xhdpi -:: + ln -s ../../usr/share/themes/Yaru-xhdpi /project/prime/share/themes/Yaru-xhdpi -:: + for resource_kind in themes icons -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru -:: + resource_name=Yaru -:: + linked_resource=/project/prime/share/icons/Yaru -:: + rm -rf /project/prime/share/icons/Yaru -:: + ln -s ../../usr/share/icons/Yaru /project/prime/share/icons/Yaru -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-bark -:: + resource_name=Yaru-bark -:: + linked_resource=/project/prime/share/icons/Yaru-bark -:: + rm -rf /project/prime/share/icons/Yaru-bark -:: + ln -s ../../usr/share/icons/Yaru-bark /project/prime/share/icons/Yaru-bark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-bark-dark -:: + resource_name=Yaru-bark-dark -:: + linked_resource=/project/prime/share/icons/Yaru-bark-dark -:: + rm -rf /project/prime/share/icons/Yaru-bark-dark -:: + ln -s ../../usr/share/icons/Yaru-bark-dark /project/prime/share/icons/Yaru-bark-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-blue -:: + resource_name=Yaru-blue -:: + linked_resource=/project/prime/share/icons/Yaru-blue -:: + rm -rf /project/prime/share/icons/Yaru-blue -:: + ln -s ../../usr/share/icons/Yaru-blue /project/prime/share/icons/Yaru-blue -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-blue-dark -:: + resource_name=Yaru-blue-dark -:: + linked_resource=/project/prime/share/icons/Yaru-blue-dark -:: + rm -rf /project/prime/share/icons/Yaru-blue-dark -:: + ln -s ../../usr/share/icons/Yaru-blue-dark /project/prime/share/icons/Yaru-blue-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-dark -:: + resource_name=Yaru-dark -:: + linked_resource=/project/prime/share/icons/Yaru-dark -:: + rm -rf /project/prime/share/icons/Yaru-dark -:: + ln -s ../../usr/share/icons/Yaru-dark /project/prime/share/icons/Yaru-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-magenta -:: + resource_name=Yaru-magenta -:: + linked_resource=/project/prime/share/icons/Yaru-magenta -:: + rm -rf /project/prime/share/icons/Yaru-magenta -:: + ln -s ../../usr/share/icons/Yaru-magenta /project/prime/share/icons/Yaru-magenta -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-magenta-dark -:: + resource_name=Yaru-magenta-dark -:: + linked_resource=/project/prime/share/icons/Yaru-magenta-dark -:: + rm -rf /project/prime/share/icons/Yaru-magenta-dark -:: + ln -s ../../usr/share/icons/Yaru-magenta-dark /project/prime/share/icons/Yaru-magenta-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-olive -:: + resource_name=Yaru-olive -:: + linked_resource=/project/prime/share/icons/Yaru-olive -:: + rm -rf /project/prime/share/icons/Yaru-olive -:: + ln -s ../../usr/share/icons/Yaru-olive /project/prime/share/icons/Yaru-olive -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-olive-dark -:: + resource_name=Yaru-olive-dark -:: + linked_resource=/project/prime/share/icons/Yaru-olive-dark -:: + rm -rf /project/prime/share/icons/Yaru-olive-dark -:: + ln -s ../../usr/share/icons/Yaru-olive-dark /project/prime/share/icons/Yaru-olive-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-prussiangreen -:: + resource_name=Yaru-prussiangreen -:: + linked_resource=/project/prime/share/icons/Yaru-prussiangreen -:: + rm -rf /project/prime/share/icons/Yaru-prussiangreen -:: + ln -s ../../usr/share/icons/Yaru-prussiangreen /project/prime/share/icons/Yaru-prussiangreen -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-prussiangreen-dark -:: + resource_name=Yaru-prussiangreen-dark -:: + linked_resource=/project/prime/share/icons/Yaru-prussiangreen-dark -:: + rm -rf /project/prime/share/icons/Yaru-prussiangreen-dark -:: + ln -s ../../usr/share/icons/Yaru-prussiangreen-dark /project/prime/share/icons/Yaru-prussiangreen-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-purple -:: + resource_name=Yaru-purple -:: + linked_resource=/project/prime/share/icons/Yaru-purple -:: + rm -rf /project/prime/share/icons/Yaru-purple -:: + ln -s ../../usr/share/icons/Yaru-purple /project/prime/share/icons/Yaru-purple -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-purple-dark -:: + resource_name=Yaru-purple-dark -:: + linked_resource=/project/prime/share/icons/Yaru-purple-dark -:: + rm -rf /project/prime/share/icons/Yaru-purple-dark -:: + ln -s ../../usr/share/icons/Yaru-purple-dark /project/prime/share/icons/Yaru-purple-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-red -:: + resource_name=Yaru-red -:: + linked_resource=/project/prime/share/icons/Yaru-red -:: + rm -rf /project/prime/share/icons/Yaru-red -:: + ln -s ../../usr/share/icons/Yaru-red /project/prime/share/icons/Yaru-red -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-red-dark -:: + resource_name=Yaru-red-dark -:: + linked_resource=/project/prime/share/icons/Yaru-red-dark -:: + rm -rf /project/prime/share/icons/Yaru-red-dark -:: + ln -s ../../usr/share/icons/Yaru-red-dark /project/prime/share/icons/Yaru-red-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-sage -:: + resource_name=Yaru-sage -:: + linked_resource=/project/prime/share/icons/Yaru-sage -:: + rm -rf /project/prime/share/icons/Yaru-sage -:: + ln -s ../../usr/share/icons/Yaru-sage /project/prime/share/icons/Yaru-sage -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-sage-dark -:: + resource_name=Yaru-sage-dark -:: + linked_resource=/project/prime/share/icons/Yaru-sage-dark -:: + rm -rf /project/prime/share/icons/Yaru-sage-dark -:: + ln -s ../../usr/share/icons/Yaru-sage-dark /project/prime/share/icons/Yaru-sage-dark -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-viridian -:: + resource_name=Yaru-viridian -:: + linked_resource=/project/prime/share/icons/Yaru-viridian -:: + rm -rf /project/prime/share/icons/Yaru-viridian -:: + ln -s ../../usr/share/icons/Yaru-viridian /project/prime/share/icons/Yaru-viridian -:: + for staged_resource in "/project/prime/usr/share/$resource_kind"/Yaru* -:: + test -e /project/prime/usr/share/icons/Yaru-viridian-dark -:: + resource_name=Yaru-viridian-dark -:: + linked_resource=/project/prime/share/icons/Yaru-viridian-dark -:: + rm -rf /project/prime/share/icons/Yaru-viridian-dark -:: + ln -s ../../usr/share/icons/Yaru-viridian-dark /project/prime/share/icons/Yaru-viridian-dark -:: + install -Dm644 /project/linux/io.busystack.busymark.desktop /project/prime/share/applications/io.busystack.busymark.desktop -:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/meta/gui/io.busystack.busymark.svg -:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/meta/gui/icon.svg -:: + install -Dm644 /project/linux/io.busystack.busymark.metainfo.xml /project/prime/share/metainfo/io.busystack.busymark.metainfo.xml -:: + install -Dm644 /project/assets/branding/busymark_logo.svg /project/prime/share/icons/hicolor/scalable/apps/io.busystack.busymark.svg -Priming gnome/sdk -Packing... -Reading snap metadata... -Running linters... -Running linter: classic -Running linter: library -Lint warnings: -- library: libEGL_mesa.so.0: unused library 'usr/lib/x86_64-linux-gnu/libEGL_mesa.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libGLX_mesa.so.0: unused library 'usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libOpenEXRUtil-3_1.so.30: unused library 'usr/lib/x86_64-linux-gnu/libOpenEXRUtil-3_1.so.30.5.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libSoundTouchDll.so.1: unused library 'usr/lib/x86_64-linux-gnu/libSoundTouchDll.so.1.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libXtst.so.6: unused library 'usr/lib/x86_64-linux-gnu/libXtst.so.6.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libaa.so.1: unused library 'usr/lib/x86_64-linux-gnu/libaa.so.1.0.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libavc1394.so.0: unused library 'usr/lib/x86_64-linux-gnu/libavc1394.so.0.3.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcaca++.so.0: unused library 'usr/lib/x86_64-linux-gnu/libcaca++.so.0.99.20'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcdda_paranoia.so.0: unused library 'usr/lib/x86_64-linux-gnu/libcdda_paranoia.so.0.10.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcjson_utils.so.1: unused library 'usr/lib/x86_64-linux-gnu/libcjson_utils.so.1.7.17'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcolord.so.2: unused library 'usr/lib/x86_64-linux-gnu/libcolord.so.2.0.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libcolordprivate.so.2: unused library 'usr/lib/x86_64-linux-gnu/libcolordprivate.so.2.0.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libdconf.so.1: unused library 'usr/lib/x86_64-linux-gnu/libdconf.so.1.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libdv.so.4: unused library 'usr/lib/x86_64-linux-gnu/libdv.so.4.0.3'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libexslt.so.0: unused library 'usr/lib/x86_64-linux-gnu/libexslt.so.0.8.21'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfaad_drm.so.2: unused library 'usr/lib/x86_64-linux-gnu/libfaad_drm.so.2.11.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfftw3_omp.so.3: unused library 'usr/lib/x86_64-linux-gnu/libfftw3_omp.so.3.6.10'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfftw3_threads.so.3: unused library 'usr/lib/x86_64-linux-gnu/libfftw3_threads.so.3.6.10'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libflite_cmu_grapheme_lang.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lang.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libflite_cmu_grapheme_lex.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_grapheme_lex.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libflite_cmu_indic_lex.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_indic_lex.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libflite_cmu_time_awb.so.1: unused library 'usr/lib/x86_64-linux-gnu/libflite_cmu_time_awb.so.2.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libform.so.6: unused library 'usr/lib/x86_64-linux-gnu/libform.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfreebl3.so: unused library 'usr/lib/x86_64-linux-gnu/libfreebl3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libfreeblpriv3.so: unused library 'usr/lib/x86_64-linux-gnu/libfreeblpriv3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libgstdxva-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgstdxva-1.0.so.0.2402.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libgstplayer-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgstplayer-1.0.so.0.2402.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libgsttranscoder-1.0.so.0: unused library 'usr/lib/x86_64-linux-gnu/libgsttranscoder-1.0.so.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libhwy_contrib.so.1: unused library 'usr/lib/x86_64-linux-gnu/libhwy_contrib.so.1.0.7'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libhwy_test.so.1: unused library 'usr/lib/x86_64-linux-gnu/libhwy_test.so.1.0.7'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libicuio.so.74: unused library 'usr/lib/x86_64-linux-gnu/libicuio.so.74.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libicutest.so.74: unused library 'usr/lib/x86_64-linux-gnu/libicutest.so.74.2'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libiec61883.so.0: unused library 'usr/lib/x86_64-linux-gnu/libiec61883.so.0.1.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libjacknet.so.0: unused library 'usr/lib/x86_64-linux-gnu/libjacknet.so.0.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libjackserver.so.0: unused library 'usr/lib/x86_64-linux-gnu/libjackserver.so.0.1.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libmenu.so.6: unused library 'usr/lib/x86_64-linux-gnu/libmenu.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libmfx-tracer.so.1: unused library 'usr/lib/x86_64-linux-gnu/libmfx-tracer.so.1.35'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libmfxhw64.so.1: unused library 'usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libmpeg2convert.so.0: unused library 'usr/lib/x86_64-linux-gnu/libmpeg2convert.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libnssckbi.so: unused library 'usr/lib/x86_64-linux-gnu/libnssckbi.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libnssdbm3.so: unused library 'usr/lib/x86_64-linux-gnu/libnssdbm3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: liborc-test-0.4.so.0: unused library 'usr/lib/x86_64-linux-gnu/liborc-test-0.4.so.0.38.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libpanel.so.6: unused library 'usr/lib/x86_64-linux-gnu/libpanel.so.6.4'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: librom1394.so.0: unused library 'usr/lib/x86_64-linux-gnu/librom1394.so.0.3.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libshout.so.3: unused library 'usr/lib/x86_64-linux-gnu/libshout.so.3.2.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libsmime3.so: unused library 'usr/lib/x86_64-linux-gnu/libsmime3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libsoftokn3.so: unused library 'usr/lib/x86_64-linux-gnu/libsoftokn3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libsphinxad.so.3: unused library 'usr/lib/x86_64-linux-gnu/libsphinxad.so.3.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libssl3.so: unused library 'usr/lib/x86_64-linux-gnu/libssl3.so'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libtag.so.1: unused library 'usr/lib/x86_64-linux-gnu/libtag.so.1.19.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libunwind-coredump.so.0: unused library 'usr/lib/x86_64-linux-gnu/libunwind-coredump.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libunwind-ptrace.so.0: unused library 'usr/lib/x86_64-linux-gnu/libunwind-ptrace.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libunwind-x86_64.so.8: unused library 'usr/lib/x86_64-linux-gnu/libunwind-x86_64.so.8.0.1'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libvisual-0.4.so.0: unused library 'usr/lib/x86_64-linux-gnu/libvisual-0.4.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libwavpack.so.1: unused library 'usr/lib/x86_64-linux-gnu/libwavpack.so.1.2.5'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -- library: libzvbi-chains.so.0: unused library 'usr/lib/x86_64-linux-gnu/libzvbi-chains.so.0.0.0'. (https://documentation.ubuntu.com/snapcraft/stable/how-to/debugging/use-the-library-linter) -Creating snap package... -Packed busymark_0.6.1_amd64.snap diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-confinement.log b/delivery/nextcloud-explicit-adoption/evidence/snap-confinement.log deleted file mode 100644 index 5986a8c8..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-confinement.log +++ /dev/null @@ -1,7 +0,0 @@ - snap.busymark.busymark - snap.busymark.hook.configure -browser-support busymark:browser-support :browser-support - -network busymark:network :network - -password-manager-service busymark:password-manager-service :password-manager-service manual -wayland busymark:wayland :wayland - -x11 busymark:x11 :x11 - diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-confirmation.png b/delivery/nextcloud-explicit-adoption/evidence/snap-confirmation.png deleted file mode 100644 index 59400fbd07acdc56eedc14f8d66955a06390275b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 108227 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-connected-state.json b/delivery/nextcloud-explicit-adoption/evidence/snap-connected-state.json deleted file mode 100644 index 0ac35519..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-connected-state.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 184, - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791373094, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "base": { - "id": 184, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791373094, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - } - ], - "attachments": [] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-connected.png b/delivery/nextcloud-explicit-adoption/evidence/snap-connected.png deleted file mode 100644 index 48c4904aab656dfa8aedeb6a4c9e965e324faecc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22104 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-newer-edit.json b/delivery/nextcloud-explicit-adoption/evidence/snap-newer-edit.json deleted file mode 100644 index 04710809..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-newer-edit.json +++ /dev/null @@ -1,132 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 184, - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791373094, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "base": { - "id": 184, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791373094, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - }, - { - "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": null, - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n\nNewer local Snap edit", - "title": "New note", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 0, - "etag": null, - "base": null, - "remote": { - "id": 223, - "etag": "4f254d7cd882c0d2fc128669b80b3301", - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin]()\n", - "title": "New note (3)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791375017, - "error": false - }, - "creationAttempt": { - "id": "0200f54d-ee84-400d-bba3-f77e0d503780", - "revision": 44, - "localContent": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", - "wireBody": "{\"content\":\"BusyMark GUI submitted Snap\\n\\n[attachment.bin]()\\n\",\"title\":\"New note\",\"category\":\"\",\"favorite\":false,\"modified\":1791375017}", - "knownServerIds": [ - 89, - 90, - 98, - 94, - 183, - 184 - ], - "candidateServerIds": [ - 223 - ], - "separateNoteLocalId": null - }, - "revision": 66, - "ackRevision": 0, - "editorRevision": 66, - "editorContentDigest": "11546c64358c13cb52bf1ce8bfc63be9bc7321bf857b9e43267af9c54a96e47b", - "syncState": "creationUncertain", - "errorMessage": "Possible server notes were found. Review and deliberately use one or create a separate note." - }, - { - "localId": "4360e315-af41-48f7-b1f1-d7e8ee63f592", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 223, - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin]()\n", - "title": "New note (3)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791375017, - "etag": "4f254d7cd882c0d2fc128669b80b3301", - "base": { - "id": 223, - "etag": "4f254d7cd882c0d2fc128669b80b3301", - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin]()\n", - "title": "New note (3)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791375017, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - } - ], - "attachments": [ - { - "id": "2875b68e-250c-41f9-a951-b4b85a792096", - "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "filename": "attachment.bin", - "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", - "remotePath": null, - "state": "pending", - "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "byteCount": 1024 - } - ] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-draft.json b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-draft.json deleted file mode 100644 index 58210cb6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-draft.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 184, - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791373094, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "base": { - "id": 184, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791373094, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - }, - { - "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": null, - "content": "BusyMark GUI submitted Snap", - "title": "New note", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 0, - "etag": null, - "base": null, - "remote": null, - "creationAttempt": null, - "revision": 43, - "ackRevision": 0, - "editorRevision": 43, - "editorContentDigest": "b65bda3f7ead8963e4dece34cd2263a81d40a88a1afd3846e1ee6b2d698ce335", - "syncState": "offline", - "errorMessage": "Nextcloud is unreachable. Local changes are preserved." - } - ], - "attachments": [] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-restarted.json b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-restarted.json deleted file mode 100644 index 35746cd9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-restarted.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 184, - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791373094, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "base": { - "id": 184, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791373094, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - }, - { - "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": null, - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", - "title": "New note", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 0, - "etag": null, - "base": null, - "remote": null, - "creationAttempt": null, - "revision": 44, - "ackRevision": 0, - "editorRevision": 44, - "editorContentDigest": "8972d11ea6e3b68a3cac10228de42f8871e1b91f837b757252595ce509af3247", - "syncState": "offline", - "errorMessage": "Nextcloud is unreachable. Local changes are preserved." - } - ], - "attachments": [ - { - "id": "2875b68e-250c-41f9-a951-b4b85a792096", - "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "filename": "attachment.bin", - "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", - "remotePath": null, - "state": "pending", - "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "byteCount": 1024 - } - ] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.json b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.json deleted file mode 100644 index 35746cd9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 184, - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791373094, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "base": { - "id": 184, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791373094, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - }, - { - "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": null, - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", - "title": "New note", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 0, - "etag": null, - "base": null, - "remote": null, - "creationAttempt": null, - "revision": 44, - "ackRevision": 0, - "editorRevision": 44, - "editorContentDigest": "8972d11ea6e3b68a3cac10228de42f8871e1b91f837b757252595ce509af3247", - "syncState": "offline", - "errorMessage": "Nextcloud is unreachable. Local changes are preserved." - } - ], - "attachments": [ - { - "id": "2875b68e-250c-41f9-a951-b4b85a792096", - "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "filename": "attachment.bin", - "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", - "remotePath": null, - "state": "pending", - "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "byteCount": 1024 - } - ] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.png b/delivery/nextcloud-explicit-adoption/evidence/snap-offline-staged.png deleted file mode 100644 index b103355a41a3663eda07891cd561502ff3edaeaa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 80058 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 - from snapcraft.application import main -ModuleNotFoundError: No module named 'snapcraft' diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-restart-checks.json b/delivery/nextcloud-explicit-adoption/evidence/snap-restart-checks.json deleted file mode 100644 index fe353efa..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-restart-checks.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "ok": true, - "stableLocalId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "serverNoteId": 223, - "acknowledgedRevision": 67, - "accountRestored": true, - "attachmentBytesRetained": 1024 -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-final.log b/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-final.log deleted file mode 100644 index 88aa016c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-final.log +++ /dev/null @@ -1,42 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:30691): IBUS-WARNING **: 12:34:47.165: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:30691): WARNING **: 12:34:47.762: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:30691): WARNING **: 12:34:47.763: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:30794): GLib-GIO-WARNING **: 12:34:54.778: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:30815): GLib-GIO-WARNING **: 12:34:55.617: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox -busymark 0.6.1 installed -Warning: Schema “org.gnome.system.locale” has path “/system/locale/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy” has path “/system/proxy/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.http” has path “/system/proxy/http/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.https” has path “/system/proxy/https/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.ftp” has path “/system/proxy/ftp/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -Warning: Schema “org.gnome.system.proxy.socks” has path “/system/proxy/socks/”. Paths starting with “/apps/”, “/desktop/” or “/system/” are deprecated. -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:32025): IBUS-WARNING **: 12:38:20.868: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:32025): WARNING **: 12:38:21.609: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:32025): WARNING **: 12:38:21.611: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:32402): GLib-GIO-WARNING **: 12:38:28.373: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:32425): GLib-GIO-WARNING **: 12:38:30.913: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:32769): IBUS-WARNING **: 12:39:42.078: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:32769): WARNING **: 12:39:42.926: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:32769): WARNING **: 12:39:42.929: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:32869): GLib-GIO-WARNING **: 12:39:51.109: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:32888): GLib-GIO-WARNING **: 12:39:52.716: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:33247): GLib-GIO-WARNING **: 12:41:39.221: Error releasing name io.busystack.busymark.Sandboxed.WebProcess-f07c2334-05e4-4980-9445-a7ed10b0c09e: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.48" (uid=1000 pid=33247 comm="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitWeb" label="snap.busymark.busymark (enforce)") interface="org.freedesktop.DBus" member="ReleaseName" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-first-timeout.log b/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-first-timeout.log deleted file mode 100644 index 2ec1d6b2..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-smokes-first-timeout.log +++ /dev/null @@ -1,11 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:30203): IBUS-WARNING **: 12:30:09.290: Failed to mkdir /home/tester/snap/busymark/x2/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:30203): WARNING **: 12:30:09.865: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:30203): WARNING **: 12:30:09.866: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:30359): GLib-GIO-WARNING **: 12:30:16.141: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:30379): GLib-GIO-WARNING **: 12:30:17.497: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-source-identity.json b/delivery/nextcloud-explicit-adoption/evidence/snap-source-identity.json deleted file mode 100644 index 6dea8c03..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-source-identity.json +++ /dev/null @@ -1,577 +0,0 @@ -{ - "ok": true, - "compilationInputCount": 568, - "recipeSha256": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", - "snapSha256": "2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce", - "builder": "Snapcraft 8.11.1, official core24 image, clean --destructive-mode then pack --destructive-mode, actual unchanged recipe", - "buildSourceFiles": { - "lib/main.dart": "f7bb63a6768713a00033b93c91f80327ead164aa9f52058b1c4bc1bf0309a0f9", - "lib/l10n/generated/app_localizations_zh.dart": "2cf6059c3922729f1e46e80414247938afc77f7b6a7b5b7e11b861151f30be5f", - "lib/l10n/generated/app_localizations_vi.dart": "c110fd1e4ed46d432e0fb8c2b0cc762cebba9313a2766a05ed04d164a7ae8909", - "lib/l10n/generated/app_localizations_fr.dart": "00400058186b9ed58239cb556c447007a64b4eaeb19de3057569e5c272cd9df4", - "lib/l10n/generated/app_localizations_et.dart": "10313057337bbaaa7b89235bf3607e9640e5dceb8f77de9d906ed2eb514ab752", - "lib/l10n/generated/app_localizations_es.dart": "78e60f93f9ad461a0f243bf0536a5214f5628adce4936260f04afcf46bd85913", - "lib/l10n/generated/app_localizations_pt.dart": "c6ec16a359c7989a80a83194c787fe5e3c1a5e0ed96f0c771216efc6b39b5a9d", - "lib/l10n/generated/app_localizations.dart": "ad73e41dcc9acd860871b70703286e601e24cbfacb5851c55e0d33dc1faa2ab1", - "lib/l10n/generated/app_localizations_de.dart": "e76b9869523b23f187b8b1f5b988f72baddd71752cc23d16f93a8e3168c15b81", - "lib/l10n/generated/app_localizations_hi.dart": "a2449c0cc26fcde6ae975884e53cc7d708c8db1733be7e8a04736d86ff84036c", - "lib/l10n/generated/app_localizations_ko.dart": "961b04bab3e2775d85641d2a80b378a8ff57162852c195299d08baeb56b4783e", - "lib/l10n/generated/app_localizations_tr.dart": "ef69f4062b38801dc56c73f70ed189104812ffa7ff9457e08182f648ba54da0b", - "lib/l10n/generated/app_localizations_fa.dart": "693e8b9f77f44dcd60e6639e83617d22497462a1fea1112be0162c87c75ef362", - "lib/l10n/generated/app_localizations_uk.dart": "9de3a293fe201fe94472c8488435a274ade0e8ae9f839f7cf828ff83a476aa9c", - "lib/l10n/generated/app_localizations_en.dart": "bd3434b9b442747b87d77ed20513324e181dcb915b0d3df8a0cd77a8ab2e87b4", - "lib/l10n/generated/app_localizations_pl.dart": "068a2007ebd70c532bf2e464eb7c838db9b479cfa5b0e4a6a85d7df0b2dc7133", - "lib/l10n/generated/app_localizations_it.dart": "e15c0ce91901a010343281c0e47de725d84358ab64978ffe51e5d4d1af495708", - "lib/l10n/generated/app_localizations_ja.dart": "5e54f2c792c0cdae2bb3559118977aaa5091f3e6056dddac112930a6d4a6da9e", - "lib/l10n/generated/app_localizations_nb.dart": "b3a2dd2be808d7c9cbce22ccc74f646dbc06fde373862d066840c1e39bf34f5e", - "lib/l10n/generated/app_localizations_ru.dart": "43a664251ddf725025500771e1c1bb4a1b6610c489b3c319fa136cfd2812d10e", - "lib/l10n/generated/app_localizations_nl.dart": "2887454a3434d801c2437371427f0f7fee1b07f1aa1169d6510031d379f3a720", - "lib/l10n/generated/app_localizations_ar.dart": "3e56395c16a3e433271ad1924f1acb15f05d06b8ed1c6992a7089c078947d5de", - "lib/l10n/generated/app_localizations_id.dart": "a6404e286b789f16b8e16f54fba8d66f6a34f72621fabb7684930e743347e255", - "lib/src/comparison/source_comparison.dart": "2aa99d0a5c9927f89c031f43fab3b219d46a8e83b565379d1fb4273e01262dab", - "lib/src/assets/asset_limits.dart": "fe4c11a909e26e8a15d49fe6bdfab419dcdddd93abca220ea757275716a52ea1", - "lib/src/assets/asset_ingestion_service.dart": "13979a6362239563c7544453f660b2527ad533d8168fcc60726d652edb4d261e", - "lib/src/assets/document_media_context.dart": "9036a4d4cb94209d1df5c86d1c457185ab6f82bffaace3fa8341c87349e405f8", - "lib/src/assets/provider_asset_ingestion_service.dart": "1c43cf37fc15c7fe80ce3ef4358ccfd41e394526dfea813f396c26bb0601cf83", - "lib/src/assets/asset_input_service.dart": "33b7c943cc32579d2fdf2edb8fc5a0ca23e64d15c09a87bc183f9a7abd7a57a1", - "lib/src/core/diagnostic.dart": "d27354413aa4d067ae25e359da29c9510cc4d3bcb4b9b7e82a5637fadca74e4a", - "lib/src/core/path_utils.dart": "47878599a28bc4d77a337ce6add6f8a5c38b652b82ee8cf871ed72b712fe2339", - "lib/src/core/atomic_file_writer.dart": "7e1d69d059556cb7a0957ede9c51073c7cdcbc3cfd96c080805f55861f6c28fd", - "lib/src/core/source_span.dart": "13328190cd80041b0414e7a875c4a6c6123c52c7440d2dcbc97b9ea778f62127", - "lib/src/core/input_observer.dart": "81960f8b740427c7ff7ea703c5a8e0aa1ae34cee792e4420414837cca9d07edd", - "lib/src/core/busymark_temporary_path.dart": "236bfbfe1f30cf1d73d0932535a1404f09dc9f1ebb75fd1eba4b555b7ec9c004", - "lib/src/core/local_image_resolver.dart": "1120f3887a407b5a054f81167dc3df4cc0cdebf81915c20476ea5f3cf87bb012", - "lib/src/core/uri_utils.dart": "9ea653086c87ac05af78409e1d73ae2e227b86b3c802163847e85008f059447d", - "lib/src/core/busymark_exception.dart": "580cb56cd470c0355308d2287f59c40700ebebef4c80e51b5b769fa7c8d580ee", - "lib/src/core/diagnostic_localizations.dart": "0d27de95e04d9588ff03d32738a7d59eeba54d1d94e6fea61857af493ac789ba", - "lib/src/core/debug_log.dart": "36007a0bdbaca4e570d8926b5146f2d041932993ba8fb005cc3de4c6d7b6a37a", - "lib/src/core/anchored_path_guard.dart": "f2adf63e49142b58cc315700314feb45349b771af4eb845c166db18f787a4d3d", - "lib/src/core/linux_atomic_file_api.dart": "07b323c55cbe312d34065287eea3fed359b6ef22f3b0bebde7448bded384ea6b", - "lib/src/markdown/writerside_variable_syntax.dart": "fd58ffef14df11a7b2e93a94045cdba9d95fe1ddf7a9a927bc11816ad0fd0824", - "lib/src/markdown/markdown_fence.dart": "f2cb8956737b64546684f23f2a1227906c0549d5d3c646801770894d12427726", - "lib/src/markdown/markdown_source_map.dart": "d67f6350cddda46b337fbfc3884e5325eff0060f4bb6cac0c96f53b5df1558e3", - "lib/src/markdown/markdown_model.dart": "a3c2e3fcbb6c5cc11d62353607e80572aef60de0f175b4bedd755b74201c38a7", - "lib/src/markdown/markdown_parser.dart": "511242d5f489cab3d3512a775836883d3e532816f17b242295ed22f787ad1d46", - "lib/src/markdown/busymark_markdown_serializer.dart": "b8d722297052e284b98a9428ae1f43db25df0017ba7327418257153f001ec585", - "lib/src/markdown/math_syntax.dart": "89ca9433768024d7ccb5ca198a7c291ca72cf619a26fe4596e26947402f65b7b", - "lib/src/markdown/authored_html_diagnostics.dart": "a75b1a14e8d11fd2d1ab3c9451c45284faa917dc738bc73f8b904762f2285ecd", - "lib/src/markdown/markdown_front_matter.dart": "e169c6be40614e7b9922956072427adeb39c48ae6ccbf3f4ad6df7710029004f", - "lib/src/markdown/busymark_document.dart": "55bd5d92597bfc72e4c805712a35717678dac848e3782944328c1fc728a115fa", - "lib/src/markdown/raw_html_adapter.dart": "50e65d4988326c8ddde9c3795a1925988b24cdb94de54f1d52d40c98e5d11caf", - "lib/src/markdown/markdown_source_structure.dart": "7adf1adb47174c61f3f6339b7999878870a49bb859399e069da334baba4f113c", - "lib/src/markdown/markdown_source_annotation.dart": "f6049e32798ef15b5c0b26b95d2bb889daabf4bf91581f46c2061497d35a1e7b", - "lib/src/markdown/markdown_section_editor.dart": "54bebed32db9268db56186cff0e4de9f414bda21ea58ff46f8422948b5e48a03", - "lib/src/markdown/document_outline.dart": "836789d9b985c988ae6cf1926e2f526ea1d0cfebc4a69cd16ca7301d280409cc", - "lib/src/markdown/table_grid.dart": "0fbbcbb6031fd28da05a2a11ccf9b0b0ccba6a9e8c83a15ad3975ba901a6c9a5", - "lib/src/markdown/busymark_preview_builder.dart": "dde16b9dc67b7daa9573420f8c5896a3659c51d76f67a9cc36e26134f59320a2", - "lib/src/markdown/markdown_ast_adapter.dart": "b26b7664398acb29bcc169e5a5939705835acc0d2dc4772c7f5eca6617e6274d", - "lib/src/markdown/raw_html_policy.dart": "6fdbac58be1f2a22e52c08cd0550a4b0e4b528ad4ba81d59d86829009edfb7c9", - "lib/src/markdown/preview_model.dart": "8a00ceb7e143ead23603d558600932a358a63b1afe8c1255646408018e218e56", - "lib/src/spellcheck/spelling_text_patterns.dart": "c80b1418c0acfadd8f6fdbfd772657e6df48b3086e0351a7fcbd9dfe7af3bf93", - "lib/src/spellcheck/markdown_spelling_projection.dart": "17753741d3484ee3f11db511db9825005e33706842ea0e735e1fa7627ee3314f", - "lib/src/spellcheck/wysiwyg_spelling_projection.dart": "fd57482a5c47b6310383abcbaa44b91c498c362ae6e880558941a9e2407232e0", - "lib/src/spellcheck/spelling_dictionary_importer.dart": "07d6bd25411abf39108a1de8e9ab9befbe2013ed2ec1bf24d2aa34d0ce4f3eb3", - "lib/src/spellcheck/spelling_replacement.dart": "e4b5b0a40e640569521b1dc7c36eff3faf66d8ad9da254b061975d3f5e67f003", - "lib/src/spellcheck/spelling_language.dart": "99c7760139bfe007599d6b9f897d750ee86696253857f42d2354027f297d19a0", - "lib/src/spellcheck/spelling_projection.dart": "7f6ceedb9e79abcfd3679acb4cc56087d1bd85fd61704f54ab6a02613660784e", - "lib/src/spellcheck/spelling_session_controller.dart": "5b679e0b2b595d9ca3446550a214d75fa169545fa90e1d19dd8d4465e6467b1d", - "lib/src/spellcheck/spelling_word_store.dart": "08fa43855823c9795eb99e662346cf29cb2530d09e0953f258395414e6f20655", - "lib/src/spellcheck/spelling_dictionary_installer.dart": "eb983f196de5dd4fccfb00b99e49569bb5e27ee9bca722267317f43fd0afec29", - "lib/src/spellcheck/spelling_coordinator.dart": "d5ed439d82e66232613bba9f6c10127dfda3b0dc26d48728bfd8de215239d048", - "lib/src/spellcheck/writerside_spelling_projection.dart": "9c4da13ec0f1de24343abd5028d12441e0798e71b097f5c23eeff0c485a908b2", - "lib/src/spellcheck/spelling_catalog.dart": "47ece3d3be98dfe94fba93571958bc2192b8cdaf97f466051fbc96bf3e736872", - "lib/src/spellcheck/spelling_inline_projection.dart": "bf8b0f92a67658eecd0c716b54118d9677c4c7722dcbb2d434d0f3bb1cdc9d33", - "lib/src/spellcheck/spelling_worker.dart": "cbc1363b897ccc4106903d9bd3b3fbd907a3c343e9c38fd07a9307d13d823bbc", - "lib/src/spellcheck/spelling_release_smoke.dart": "2ab365412bc2acf4ec0ed4416527be913abae10666884c49e3ab5a7994af5250", - "lib/src/spellcheck/spelling_dictionary_downloader.dart": "aeaabe2efaa08cdbb2f79601cafda63385b3096344c0ee1ed79a912603c3d4bf", - "lib/src/export/html_export_links.dart": "8fd6a1abbbfeadfbaa19501c81a2b1f4c3f2397db0d65c8d947ca83dc8b198b9", - "lib/src/export/writerside_pdf_export_ui.dart": "494784364d607ba81f0e88d7f44346312fe16bb16507359da96bbbf60d0c55a1", - "lib/src/export/html_export_ui.dart": "83252c2a909bb3f80793933068e8cbb3c577991d2a8783447d556119288dbf31", - "lib/src/export/html_export_models.dart": "cf884d4cb723a7b403a5b22eace862f9d007f4153cea936dbb49555112480eb9", - "lib/src/export/html_export_service.dart": "ecdf33cd8e2008bf49da3b9f3f68806cfbd77a690e9f29cb5105563acc586f1e", - "lib/src/export/html_release_smoke.dart": "46b30032287c5f3969690bbf79e40232804942ee5446e46d0a2d2e5b7aa89462", - "lib/src/export/markdown_export_document.dart": "aef4f811f4411ab91dacc5a46b4aaf0f01c2629b1b1f535263db81054328e3df", - "lib/src/export/html_export_styles.dart": "e74e813e387ff325e2aa2fcba38e9f6e5b666ccd1a0a4a002ecd4d9d96c51a6b", - "lib/src/export/markdown_pdf_models.dart": "af44b9119c4c6ad0bd96938ffc9d97486c6dbfc76f1d004b96e8cfa6e6550fc0", - "lib/src/export/openapi_static_export_mapper.dart": "9d35f48697570755680a1997c21cbe2b8c102efe0afa5450c7f09849f282c3d4", - "lib/src/export/html_export_assets.dart": "268614a658c58332859ccd1bff93a385ad5c5d577a8dd906e7c6f3adbd41aa69", - "lib/src/export/workspace_export_ui.dart": "b499f480f25ced3a60eee0a39ef1c47916b4adea721038fb079e3c44c5ede29f", - "lib/src/export/markdown_export_assets.dart": "821ac8858d59aa5c78db544666b0b272f0f961e91e8f2d4bf30c90523a80f9d8", - "lib/src/export/typst_compiler.dart": "0ccd531689d2385ed67c9c52d296219385021a28fadad4721cadd3b92cdbb870", - "lib/src/export/markdown_math_export.dart": "92f6d2922d21b644d751076936f6b380ccc4ad130334facaec19e25a27d3bf4d", - "lib/src/export/html_export_publisher.dart": "49ca4c59a8d2e4cb6c0e4f1da8699e512525bd03652c99dc621bd265e7c8cd92", - "lib/src/export/markdown_visualization_export.dart": "4e3707331306bacbd043f90ba0a9f1d22d06072554d4d0fa1cfb5d688635ffd3", - "lib/src/export/markdown_export_mapper.dart": "ce1ba649532ccebb769f207f3873530a9bc2b997a0ed8da2255fa705ea452fb3", - "lib/src/export/typst_payload_builder.dart": "86ea4f6763dcf7293e8e20d77e4e76514b6e7deff8960d63844acd5e005d0a8e", - "lib/src/export/markdown_copy_export_service.dart": "4cdcd9054699042de0e9e8dd06ba111618d00eef9de4228ccaf093ddc985a8ae", - "lib/src/export/writerside_pdf_models.dart": "7ce9195b1278f5fe88a0aab01ba2789fbce669ca1c7e8f8cf2262c60f7828c73", - "lib/src/export/html_publication_plan.dart": "fbbe63664a77bee1353e3bc47407b9cd78cfaf9d25ce7a225d9f74fff4482a55", - "lib/src/export/html_document_writer.dart": "4cfcb1872794e57114cbe1908562bf6c7ff73d6b8c7023e33618b8c60574b3d3", - "lib/src/export/export_options.dart": "f1f9968c89b5efee87ddab5a9a38ef89fd065be342e8f8575e4bbb9ed8bb1d20", - "lib/src/export/export_metadata_mapper.dart": "59d2da61ed86663ff892c9853a317e3e9c234d3360169689c40e94d617b7cda7", - "lib/src/export/pdf_title_page.dart": "3f41ff4a2333d7fa3a91405f995c1d6ac80bf960d39122a1c6e97c7241583274", - "lib/src/export/markdown_pdf_export_ui.dart": "c9a2aae40c7396132e016bc345c79de96a62826709d03700eff9608805547b21", - "lib/src/export/pdf_footnotes.dart": "c9db428963e62bbc598e2ea8b3e8524fd4a5bcc0b9748953887e4c59b3d56a53", - "lib/src/export/html_rich_content.dart": "259bd86ffbe2dfd7498e6c969e9a3a3f0bae53bd4ffa8fce2178dc7939cea42b", - "lib/src/export/export_options_editor.dart": "84714b2535be481250437524fbadb3b7ed799f29caee5d01f62d283e7b084c87", - "lib/src/export/writerside_pdf_export_service.dart": "a18cf74c528d067559a84c76ebca2553d4994550e6865704b23dec4a74e3cb2a", - "lib/src/export/markdown_pdf_export_service.dart": "9707c181f70ac43bea769f514d078c8a6ab437e50ae239597cd65de72ff5fad6", - "lib/src/clipboard/clipboard_models.dart": "c47e0106cdb6ab4a7b83e4128d9b98580a3607c54e525191c09a65bc82a9d3f2", - "lib/src/clipboard/clipboard_history_controller.dart": "da28f2520aa8a6de74beb65738e7a4d353860b8a704ed9aa396fbd329b9e0622", - "lib/src/clipboard/clipboard_history_panel.dart": "1f9e23546822674c89dd92d6b9fba059e86dbc3463fb5c0641663edc84dd6cd5", - "lib/src/clipboard/clipboard_insertion.dart": "164399691117dffb735bedc74bfee7890c9f7e89a911ca217d80ce1dfc37adea", - "lib/src/search/workspace_search_scope.dart": "c596d38f63a27f008c0423a3262192d740ae0268dbe6b88e4bdf8a5af00f91c1", - "lib/src/search/search_replace_service.dart": "cb9789c2353f6939247e4d5667e19d88804c1a2a47abeac90c307db584ddde7d", - "lib/src/editor/writerside_video_view.dart": "c3ea77a26e0a1273e06c45d7ff2d36744eba3bbde53ee4aa44b82f37bf306839", - "lib/src/editor/document_collapsible.dart": "19a6f7356948a7df91fd06de18760182a464db6cd54d42444ed23ce2658a11ea", - "lib/src/editor/clipboard_paste_resolver.dart": "de2f78b1d5c4c7c84cae2c11aec4d68981eaaea7c8ffabf756fb667765f199ca", - "lib/src/editor/document_surface.dart": "0673bb8461fdfefbaa0d74ba0d417b718bba5c98e6c65724f9451ca322233f12", - "lib/src/editor/document_text_direction.dart": "f5dc44f084d8713585853372041803ea9476656e5a9aa5c76c6bae457f453ee5", - "lib/src/editor/document_text_geometry.dart": "aee3c4df5a8f6c0714e64c0cd4bdb26d144f52eab7190082dbc8ada765b34fbd", - "lib/src/editor/source_highlighter.dart": "3861da06bc30dce0391269015253672539fd7d7c6b1120d28c6951bd149fee31", - "lib/src/editor/document_layout.dart": "6a4d6ffe1f06cd60dae42a1d35d89c788a3f22f8c89f2066640de53d782cc22e", - "lib/src/editor/source_folding.dart": "99e8174cea0a8c76fd28f69a9101fc54783fea37b18ec188acafc804db7c0196", - "lib/src/editor/document_list_marker.dart": "5dd78498e9146a1f17d1d46f62d3c67ca605d8a0d4c6934883c6e68a1375869a", - "lib/src/editor/editor_text_context_menu.dart": "1980e9bc0e9be96700f337d3a7397bb92eb7f7a7e5250f192efbd09fbd631e00", - "lib/src/editor/source_language.dart": "d6436f581b61592ba9838be2ff11ff4db7cc935e060b41f8425fcbc8d2be0af4", - "lib/src/editor/inline_semantics.dart": "d0fdc6b2dc31f4b24a9cf103fd2ff7634d8fc7caa06741533cc93610c1b5b220", - "lib/src/editor/writerside_video_player_host.dart": "e52a230eca0f45ca96dd4002d77b80fe69d994ed4c992be7c410eca46a2d9886", - "lib/src/editor/markdown_image_view.dart": "051f057423b29476b34bc8fbbc334fa2741ec98c117e079d13a7813fe69c31c3", - "lib/src/editor/document_callout.dart": "0394b8ce9d46bfe464a6f171fcc1e446a822507dc5392eb30f0b4e55e12fdde9", - "lib/src/editor/clipboard_local_image_path.dart": "85164c4c5cbf227ed6f06108b267e0c572ecfe0e9d12824dc0d5a718431b7f27", - "lib/src/editor/document_thematic_break.dart": "f7af4c85138f3198323608596ebfdd720e4514d67655c4288ab989b6d30e5145", - "lib/src/editor/document_code_block.dart": "140be4216b15342a830ecfc50506d6356378d1667c22cc433986201fde2c3fd4", - "lib/src/editor/editor_shortcuts.dart": "a57b4e4db7d1fff7d3d825b7ada4e2652b18f63e3b54a33f16722e243cc5cf7a", - "lib/src/math/math_providers.dart": "eb69799dc75898df1523497ce1383026e504427897ce15656c85e5ae23f31f09", - "lib/src/math/math_models.dart": "4c857bd76c59f03c473a3569fdd65e62575e16682db390059d310a35f87b53d8", - "lib/src/math/math_coordinator.dart": "03b05f7d79f0ff749a5a81e0e10f1c02517ead55e47fec52eaa6595e18f53704", - "lib/src/math/math_widget.dart": "bb1a239c707a8500a5f41a9c7ba94427e28a6271fabd6d5b5b00286a3694fe0b", - "lib/src/math/math_renderer.dart": "3c93fa6c3cb5e97fb53b8e0d7595426f0d7295ceba6a116b61d263ae3b71a440", - "lib/src/math/math_svg_preprocessor.dart": "be9fffd40ea4f1fe0c8514d2b8e12f24e68ec179b7bf08b4d5ea5ea46a29dd0b", - "lib/src/math/math_cache.dart": "35bd052b169aebf57ebe3c7a5309c5ec763ca7c61a463fe8c865e9398d39b777", - "lib/src/platform/linux_gtk_accent_service.dart": "804d43e87b4ca13c3eae0a091cd172f9b624b9903fe20415082df04886385481", - "lib/src/platform/gtk_header_icon_service.dart": "ec7742a4d6be403b0caff09c2a68d78f6e0093e50986c3fb284dfb69e4c3c660", - "lib/src/platform/gtk_animation_settings_service.dart": "c0efadec0398b234a446420d1da6e186c57ce2bfee503545e1db52d9e5edb782", - "lib/src/platform/linux_header_bar_service.dart": "115273f518b6df8404b4682b9228732bd1c4c901fc39898738c32cbaa266b51b", - "lib/src/platform/gtk_window_preferences_service.dart": "68dd0a6c9e0f1b6f52eab8e594fdee273a4b86f9f681e02d26bc89ddd4dfe938", - "lib/src/platform/native_menu_service.dart": "39e58157d2b990e2dd14ddae7d01f30e66ba9def5bb3ef10d1fe8481f967dd4c", - "lib/src/platform/rich_clipboard_service.dart": "0ab8ea108af54e966185d57cb09dffe0513e3b7491dbacb544cb9394b34e3907", - "lib/src/platform/native_writerside_dialog_service.dart": "de3a461a840d748ee81ef2368068a81155a59d694af31822a6ba49abab5ebd4f", - "lib/src/platform/header_bar_configuration.dart": "30058be37cc11460426305c77bd93bd53376b078abe308144ffdd913acb47d97", - "lib/src/visualization/d2_renderer.dart": "550b5f6429451d038b05f74cabdda7faa861c827aecd55c15aaa82e0a0e38eca", - "lib/src/visualization/openapi_dependency_resolver.dart": "cb799526366bd3728e3e33192003675635439859d3fbbd958b0d6066c6545006", - "lib/src/visualization/web_visualization_renderer.dart": "758556808e20bb99d66344813dff87b28ae5656ede2accce9ae0cf913bf378c3", - "lib/src/visualization/visualization_card.dart": "001ae6551d5d54a3e1503bec9e8ccd456a4ce098387c0898d8bad59ad2cae973", - "lib/src/visualization/visualization_models.dart": "b5e139d3701e2fbdd6986ad4b45276d80e162dada0dbe7ac087b5f0ec029f57d", - "lib/src/visualization/web_render_host.dart": "e4afd5a5216ca338e4ff8b4661ea44c68f5dad77998fd107fcf6bb3be6a69c42", - "lib/src/visualization/visualization_providers.dart": "fc3bd779358fbbb10fa8195f866e0cd19a5f7631f61f68361d5d87505eaa27b5", - "lib/src/visualization/visualization_renderer.dart": "b2143594994f00784ac73762befd84f7dd4e6973058b076c3f6f955fba50fca8", - "lib/src/visualization/visualization_raster_sizing.dart": "6f929642494db3fcafe22de3053d0037960b14d2910a4fdc5763fa945dab10f1", - "lib/src/visualization/visualization_release_smoke.dart": "285fad51f211dcb4a7cb595569181b8dbcffa165cf54dbf99ddbe28a86f483cf", - "lib/src/visualization/visualization_cache.dart": "7209e739344878719adf6ece640da49b8d80301a04e8369a9f237ec1a351d162", - "lib/src/visualization/generated_svg_normalizer.dart": "a09b2a7b6572dc3724c3526b9f0410f743d31e7953239ee1e48d7498aea5878d", - "lib/src/visualization/visualization_coordinator.dart": "92e3eae4e70c7ef3c4fca1e715c3fa3df66c8cc05cf51af4ac586c1bed0c920c", - "lib/src/local_history/local_history_panel.dart": "cc0331682d71fe0984b248a7d40bfd4db2cd4666edaf5ceb24fab00a261ddda3", - "lib/src/local_history/local_history_comparison_view.dart": "3fa9bdb4f31cf15b950a3abe8c404236106760bf7cd3d3ee0999d65feec3660e", - "lib/src/local_history/local_history_models.dart": "7fd7af25b059bf974415b686cc50b41615298548415e4fd2ae4329b8e205b781", - "lib/src/local_history/local_history_controller.dart": "f293684c27fa8cd4db2e1ef297bbb5d87571d983f0acf111a853c05eda27cc8d", - "lib/src/local_history/local_history_store.dart": "f44cf8122fe8cd349183f5325166cbbf17f2217b1e0d615f5de4a68bf5e7690b", - "lib/src/feedback/feedback_metadata.dart": "bd5d3143861575cc5d70c74bb1c49a5ad4d868b39a15e89e6cc548dd3f1d49af", - "lib/src/feedback/feedback_submission.dart": "1f104b45c4f4e37b8feffe0f7ae1349db4ea13ba5c258bfb8fa73d482600580d", - "lib/src/feedback/feedback_service.dart": "f702ab6cd0cbed67b43943116aeeb8cc220cc6064ea1c84c96dc73b2d32a2385", - "lib/src/workspace/workspace_controller.dart": "07cd7fbdcef74b8820bb60d6cc0c2388fb7f95921952467e59e4e0ad81a2b29e", - "lib/src/workspace/workspace_tabs.dart": "b4788061339705181210afd7588e7879ee15eb5f08ae6315eb69c51c77dc1612", - "lib/src/workspace/text_format_metadata.dart": "e86dfa98d8b20c9581bbe77ce700f55a427e8f20bbbb5819799b32c5f3cf0f87", - "lib/src/workspace/workspace_service.dart": "982d985bd7098f0e8c65a856c82a37318b965c7c04327a3f3b75fd170b584c95", - "lib/src/workspace/recovery_persistence.dart": "b940a15f5e390694f9f294ac3ebf3e103fb2cf6effa49d6acd4111cf1c175826", - "lib/src/workspace/workspace_file_snapshot.dart": "a266ea4046c98902d7be1b5ae8580da09e520b0470061d8b9c0fbc8aaac8fd69", - "lib/src/workspace/workspace_glyphs.dart": "281c198ad0afe834470250ffd2840acba3b69b79a1f86d8fe6e44b71afaf6ca0", - "lib/src/workspace/document_origin.dart": "3ec75a42243b2f5a53461a4fbc4266ac4bbd136e8df941343b3dc4389ee784f0", - "lib/src/workspace/workspace_model.dart": "fdf76be407e2c28810534c7b402180186a96e1b5fe4d5df126492eb3887ba898", - "lib/src/workspace/document_buffer.dart": "ff1a2282ade901670c89763634bf1c5fed82ac46c92e52c56a84222253214d31", - "lib/src/workspace/workspace_safety.dart": "82f4191fd3efd68c1d20aac806141c891873712afe3d43c1acfd42cc280b832f", - "lib/src/workspace/workspace_file_monitor.dart": "411c909aaac415acbdb6dfd305e18601d7321408d971efa8f5626007025165ef", - "lib/src/workspace/workspace_message.dart": "f497a2e2e242abbea4a6eddf2686c5edd1efd2b47923bc3a01b5b2edb3abaaf8", - "lib/src/workspace/session_persistence.dart": "faee39ca442c02a570cc2db286ca6dece9db0a2acef16305bc6d5bad0025cad6", - "lib/src/ai/ai_provider.dart": "7276b6655aed05a7e9d517fcf04b754addd8c2a12ad054ec35e0722f70e1d573", - "lib/src/ai/ollama_ai_provider.dart": "2a2714cf4cf81397c659cde8e8eb18fc1d05dbad5fb961273578fc1ce4781fe3", - "lib/src/ai/ai_coordinator.dart": "23bb171bfdceb6165807d465991ae4042017c93ffc5bee1add7dfe9783cea5dc", - "lib/src/ai/ai_providers.dart": "6b839ae7c063e5bd0da2d0e0cd31eb4881f59a9ef43b35b03190cf5d0cacb1c0", - "lib/src/ai/ai_models.dart": "af5a25d4c1080e57b94b9a557a5f795c25da8a6d7bb92b3681d5a5afb48598fa", - "lib/src/ai/gemini_ai_provider.dart": "1e7c598cd06039892a2d41eb550cab512fe4d9fc622dcaed8b0b0e553b4a1d16", - "lib/src/ai/ai_secret_store.dart": "06cac3e65bb0b9537b9904e21ee65fdb3e923623b357cdc63055279e5dd3a04a", - "lib/src/ai/ai_policy.dart": "76506b236ff8da45447d4b619dd8976d9fc98992df463e8db23a9f288062ca6f", - "lib/src/ai/ai_edit_ui.dart": "74cfd3074d85a1743c8882e869eb6e17c2244d3a449b477e0ab8cd5cc86b05bb", - "lib/src/ai/openai_ai_provider.dart": "564e62e6f2cec1baf60feb0808bcb7d8c71ac81b770db6671c37e7a5031b0cc6", - "lib/src/ai/ai_http_transport.dart": "871a58495b2d711017d1509d5233fa0a9f23117e2c22e402ebc6ed7eb715dd09", - "lib/src/ai/ai_markdown_edit_resolver.dart": "1592aa7094b4b36c81e6e4f2efd310b59f68591e9cded57339a3ba7ff7987831", - "lib/src/ai/ai_usage_store.dart": "ae77e75ccd2be1e9ce736cb7a875b7f3d4c7342cf8200722cd7c621f23504ae9", - "lib/src/ai/sse_decoder.dart": "d5dd646cf6d6a89a94ffdcb5274909ad18aca31ff2d575050448e1a618d9d933", - "lib/src/ai/ai_configuration.dart": "222115d102b7fe2afeaf82d4184c09979340b8f981d10be5fcaca9505bf5b44b", - "lib/src/ai/ai_provider_registry.dart": "8cf3f2e47da18a964fd3ceb0828ba64d6c9004ad4a9671310b640b83d1c5863b", - "lib/src/ai/ndjson_decoder.dart": "28aa2849b4b6cc6b83352e89484426effe13d84ddd5b18a60d3fbe9672cf122b", - "lib/src/writerside/writerside_topic_file_editor.dart": "412e149f90fd5531ed75474deeb97cd17b75440efc875dc0ded590099b018a2e", - "lib/src/writerside/writerside_title_editor.dart": "9795207c58a1fda824983c1d1a1ad1835a8d911751c588425114cc131f642581", - "lib/src/writerside/writerside_topic_creator.dart": "77be4c90d8f053bcaf13cc0caf9326b4b0810f00f9c0d38e76e806a0a4cb4854", - "lib/src/writerside/writerside_toc_presentation.dart": "ccb500471e2ca1a2576e63338d8bf4286bbf7a395c152d2a1f23946ebd9f0dd1", - "lib/src/writerside/writerside_topic_removal_service.dart": "b7ee13e9c7123ba07e5a161a2f8f75ba3a0eeff6b6c35b7635d793aa4d7b5276", - "lib/src/writerside/writerside_table_view.dart": "da6ffded35c588153b76889fbb5cfa24bb8a0e72e8fa35ac534b335939b20c2f", - "lib/src/writerside/writerside_topic_file_name.dart": "9f6390f8de9dafa6f37e091b6d775e650bdf82947503ada6d66d559f3b0787d2", - "lib/src/writerside/writerside_code_selection.dart": "4a734d1a6f07cbf12436c17ff1b7eccb7b82d314d4b4ac9789e29358f1776063", - "lib/src/writerside/writerside_summary_exporter.dart": "5e6a7e8a5118f47519f43c4875111a0edfc804258d5d3b47951f2b82da47b0f9", - "lib/src/writerside/writerside_execution.dart": "3ec792be71a0a37c79324c94791251c285859b8344d38a89f4f5cb55abedf6a1", - "lib/src/writerside/writerside_tabs_view.dart": "0d695611a0161d4a641e1aef1fdf51594b15fc42acd15010cbd3366cb46086a4", - "lib/src/writerside/writerside_toc_editor.dart": "fac2efc7469591961ba89f9e0d7f360fd08ff1359696dfc8a84c445a63c47faa", - "lib/src/writerside/writerside_html_reference_scanner.dart": "e9478bbfecb8e631c791a99cce4040149342dd4b788463776a78882b471e11c9", - "lib/src/writerside/writerside_toc_navigation.dart": "23578550c1fb73b170ca94c1f17af00e95c02eeacf8082ce3680ef2c5f6da185", - "lib/src/writerside/writerside_document_parser.dart": "9464e9d7c5b9e0f75439dd0a5c16b4a2b834806d8420e8ee1d8b05ab8982dd71", - "lib/src/writerside/writerside_project_creator.dart": "e3cd11012e904ec319d408032445df70ef56b7829910d6125115927fb8a4bfeb", - "lib/src/writerside/writerside_web_file_name.dart": "5283d08ef4be3fe17b4260b6b13be065462ec3f5361600dcc8c271353cfb3fe7", - "lib/src/writerside/writerside_parsers.dart": "38db5fd08263ae09bc6bf9d0ef30a1ef951759834905aef0073c90e152945385", - "lib/src/writerside/writerside_diagram_source_loader.dart": "6ca2433da703cb6ab0289933f846ac22a675d0620838a980e66765ef147cce61", - "lib/src/writerside/writerside_module_service.dart": "a4a26b6d2905d263da65f3f17313dfc29a2d50b67c1c86203839dfb66bf3eae1", - "lib/src/writerside/writerside_document_serializer.dart": "ff273817f788fc4f055e6da942e93d79526636bb2086bbef8edf1e685244c42d", - "lib/src/writerside/writerside_tree_resolver.dart": "9668782aa1ae5fcfe6569098e193577fbea8de88cba97851fd70348089789bb3", - "lib/src/writerside/writerside_document_resolver.dart": "2b4ecde2485f54bcdd7c8b976db1c0e6251e1c20c8b942ef5455da5180288dff", - "lib/src/writerside/writerside_document.dart": "21fe733602468e5e0dd04b9bf0293d3cfc2abe3f0d4d91f2b602c3836c223fa4", - "lib/src/writerside/writerside_instance_service.dart": "c723d468b97783a8f51a1d67af9f1bf7fcedaa94d573aae0547503510f86af97", - "lib/src/writerside/writerside_model.dart": "937c260ca115085810e2de761453223597b4d830f1e33e160654c4a9c75d21de", - "lib/src/writerside/writerside_schema.dart": "40a85d9de9072061ee00f5e3a12de300b3f5c01f210f281f813b7b89b54dd11a", - "lib/src/writerside/writerside_source_loader.dart": "9606b62c6d12207c114491c94da485f01ab8e3cec5f56b65b022434f9353aa4d", - "lib/src/writerside/writerside_template_service.dart": "5c1a5e52b582408333c554313675d527c2ba0f4b2c0fb2953b6f3975c7f59f17", - "lib/src/writerside/writerside_schema_data.dart": "f92ca667449390557d634ed0bb7af20565288f4e0d3d8d7737b2e59f10397d45", - "lib/src/writerside/writerside_project.dart": "d5887a7ee8b0b2a2ce376be64bb3dced831a489b2b25c01f11811ee47ac3bca0", - "lib/src/writerside/writerside_video.dart": "e179b209051760f954aa2cb73600e5060b596d45c1d97b455ebac3d3aa69cb76", - "lib/src/writerside/writerside_document_renderer.dart": "e4010c548e9bb04c6dd2bda3c3b0de0017ec8650aea2259ccc4d767b31d56aa3", - "lib/src/writerside/writerside_input_snapshot.dart": "8508b5d3b8d45f979f53a01a866476f9d2353621cbd9ad4a700cc5be08bfb7ad", - "lib/src/writerside/writerside_reference_data.dart": "eaf088b436adfed165516af0ce47241442e5e0ff3708081a158d4d09c6336b70", - "lib/src/app/window_control_service.dart": "654e2bf94382a6c60558e77b9d7b84bd9e426c9707195155db4388194984fa4c", - "lib/src/app/command_palette.dart": "4197b7849e48ab86176fa3919c1768c0d3c89e0d92a8b046f6c5250ca5b7445c", - "lib/src/app/system_accent.dart": "d2b83ae7529d9f221d88bde4c5b88daa54b385a9c75b8f1f6ef25b2b1d44084a", - "lib/src/app/command_registry.dart": "059a87232e1229d0836fd870d44bd2c5b1442c3287d38bb2b7680fb4c23f7242", - "lib/src/app/localization.dart": "abee827107fe38559ffb882db1558f63cc21f54b7856fb2ca2e5611d3b242044", - "lib/src/app/busymark_shortcuts.dart": "6258329c54e12fccdb2a81db88a4ed526c274b6e5e9b5812158dd218a359a6bc", - "lib/src/app/busymark_search_field.dart": "ab90c830c87c422ba297d7b1a13925a45fd627535c8655bff3306df75dcfdab2", - "lib/src/app/busymark_toast.dart": "a414b21806b5c27f2bd957eb59d3dcc6007ad143e0b855e641d6262a4333a9cc", - "lib/src/app/startup_path.dart": "e620cc1ce80ff96d0b4b0fb019569676402430196fe2846d834bc06468fe1960", - "lib/src/app/busymark_main_menu.dart": "499b8d1aee2103e2867e7477e43a166364eab9029f2823fbd649f989449a8934", - "lib/src/app/app_locale.dart": "3cc22acde43a996e4a704ddc91309f9ad9114ee6331a9359a8175aa7a972063e", - "lib/src/app/app_theme.dart": "7a678e640d235c8faf8f738bd6cf0545d52abc066525f4abda2d060538ba4001", - "lib/src/app/busymark_app.dart": "6840730d8f37b6eb2dc150fc59962afcf36e97e07b82392f860aefafbfa901c1", - "lib/src/app/busymark_glyphs.dart": "cbd9651ec452510558aaddba61022e1426485353bc89f3ed7371b69c3603e1ad", - "lib/src/app/app_shortcuts.dart": "d0d0cb92e0d273b671b763db42f003146563aa3aeab5debf0666c189e9036f78", - "lib/src/app/app_settings.dart": "e9decd5285c280d5db59cc63f2a5301b709a01b3ab5dc2b6fcee45a93d03593d", - "lib/src/app/busymark_dialog_identity.dart": "f0780ac7bc5468b590786cd475251fee8a4a46712215f202cdcf4cee42e66178", - "lib/src/app/app_router.dart": "00024347e23c44b553945b3e5557deba133049ada6c2c7e2bb1658d9558dfd3c", - "lib/src/app/app_metadata.dart": "d38ce08adf4038224767303c232c860e76f566bcbff898b83d24b8b96e6c9cf5", - "lib/src/app/busymark_design.dart": "3e602db9a507071ef1634cc713648cf162fd437c9e4cf9985e904c580b97130a", - "lib/src/app/busymark_dialogs.dart": "e23a6917b6761a60ed6402f407c5e461938b100770123f4c62563ddcf3bc5d72", - "lib/src/app/busymark_motion_widgets.dart": "e2d85208058fdb7e14e276c078690ac54573f4b354cea2cdb7b9170efc69a4b9", - "lib/src/app/linux/linux_window_host.dart": "53e2aa7dbe557c905359a12d7b01affda6151a3ac750d69becb8baf724806d43", - "lib/src/app/linux/linux_header_style.dart": "9a012cc52c72ad0c9c1fb3be5f04544ccfe3f313c443c993e16ee4aa14c9d1d1", - "lib/src/app/linux/linux_page_frame.dart": "474608aa3b36f7e43e538322939a586f6a3987df6adb9ab1a16fa4ccc0cbc199", - "lib/src/workspace/presentation/writerside_toc_dialogs.dart": "90e073fd5b4c30ad4e69781eaebc1c9413b5cdf4eb4a656e5dae040f5a7d0a68", - "lib/src/workspace/presentation/workspace_screen.dart": "15445c36afc9535a88bce847ecfc36bb03cd9cf03bcd60d4904e01c9fda81e19", - "lib/src/workspace/presentation/writerside_instance_dialog.dart": "33fe4f42eb0d7ebaee22d7f5865b7189e45611b1c710064fff59c6223acfc29b", - "lib/src/workspace/presentation/document_status_bar.dart": "1229eecf7eb9ee7acd18e0f04c6e87d6f9d9f98bb3fce61932ab82c0b5a3512b", - "lib/src/workspace/presentation/welcome_screen.dart": "e2ae3c9c218be94e340ff3a4b04a1301cefc70963598a10af6a9592927110c69", - "lib/src/workspace/presentation/writerside_markdown_import_dialog.dart": "36985fa586f1b9874d88ceb8a8b7dc0cb378432cc74c0e8b098dd173f167e42f", - "lib/src/workspace/presentation/document_format_indicator.dart": "34eca3bc1afcbd4098eb919242d3e33fbd151d4036e52eb6d96be5990aac5872", - "lib/src/workspace/presentation/writerside_template_dialogs.dart": "635d6ac5d764646960e5bfaa73c0da432133bf03b2ece1264f694db6ab00cccc", - "lib/src/workspace/presentation/settings_screen.dart": "0eeac34b179c0f8910f6f8b871a99479aa1a9ac8342a368531bb12fa84971d65", - "lib/src/feedback/presentation/feedback_dialog.dart": "dc7d37dc1a93f35b43da4a0deddcd3a6b6cc1f9cbaca4484667ed930c2c52932", - "lib/src/git/application/git_gateway.dart": "0dde99f8c24c83ad6abe4365c023b3bf31096c54dc4dd3e9c25bb0bab9dc525e", - "lib/src/git/application/git_use_cases.dart": "acdefafd64f871c6299f084c5f4bd7bc1fbeea3de306fc3bc2633465a1e35ec7", - "lib/src/git/application/git_controller.dart": "0166e73c3910c6677a2e2673be115603bb0bc165b8b65d98b6effbb7e42463bf", - "lib/src/git/presentation/git_file_status_colors.dart": "f26feff460268725c9dcf8b83ac58a5425ce4007fe65f8c86a82baa0f62c7077", - "lib/src/git/presentation/git_changes_view.dart": "4ef7ec1dbaffb0077cb7f39efab45262d1df4ae773699bfc20b7bd4b86a718a7", - "lib/src/git/presentation/git_author_identity_dialog.dart": "f7e89acd106a7a3bc62f4dcb8b522c144facf009ba1421a97cd21b7c118cbb69", - "lib/src/git/presentation/git_diff_viewer.dart": "4c5d67e074b4e40657f9236050c0b789adaee5dafcd0f444341a0c65f32e8b8e", - "lib/src/git/presentation/git_history_view.dart": "d4455b8be45c5a4d4614561996edc2f10c8259fe8823aa98f22d4c16c61b87a3", - "lib/src/git/presentation/git_sidebar_tab.dart": "f44b0d36ed25d71787cb63d84ad2ff6f2d94898fe9a5ae028bd813afbfeaf6a2", - "lib/src/git/domain/git_diff_parser.dart": "57377d8b309d5c3f7e024b2d6294dc9cc1bc4468b0bdd9aaab4cef386a6b1198", - "lib/src/git/domain/git_log_parser.dart": "8008314c9c93078db3df2b981ac052a43a2f03ba75eda2b4a3cb1e9c107878a6", - "lib/src/git/domain/git_status_parser.dart": "94fe8d98386cf96f6b1978dee279b07710b6ef9f967527268f455400ff2c2202", - "lib/src/git/domain/git_models.dart": "6c5a6a1bc803f1d80820c9db7a7b3f1ef1a78f8eaa17a621270e0ef81ff8e8e8", - "lib/src/git/data/git_executable_locator.dart": "764e9149415e9c0c4e72a7667127b2e1e8e52a0e3a63b3b908b16cddc7866934", - "lib/src/git/data/git_process_runner.dart": "59d01ae75ee622ce033bfdf5bd544e9b378fd24b6dff0f3f90453bb5ee29bd47", - "lib/src/git/data/git_cli_gateway.dart": "6cfff753640882d3d3afeaedd05329a1b0c3f31fd1385836d781c0eb895af19a", - "lib/src/editor/source/source_hidden_ranges.dart": "33c78b6973db2490a75de8470dd6e2b7bd5d8f4a556bc1436c8f803098792c03", - "lib/src/editor/source/source_document.dart": "9c2562c6ed6c5ff5769dcf559b71424fc1d8b8b0325533d482170e89466f9395", - "lib/src/editor/source/source_intrinsic_width.dart": "567e55f6aeaa0cc0e305c38bb32f37f180c3c57223a2fc627a1d52d4c43055a5", - "lib/src/editor/source/source_gutter.dart": "2e318b55ab977397a1b884dbe75543df0553fcd256f9e6a35c66476543649c0b", - "lib/src/editor/source/source_line_index.dart": "6dd3355a9dce3c6521d84bdbf049073b26d9c9953f3342e5ce4ff8cc68817987", - "lib/src/editor/source/source_highlighting.dart": "88e1d95e163302fc472e92a9bc3c73e18dea44bac9e33f08bdeb5325f85cc338", - "lib/src/editor/source/source_folding.dart": "99a6feced2fb7bd5cab56bec89188ae6074c881432f678e0876fd28575293d88", - "lib/src/editor/source/source_commands.dart": "ee445a92b457546c2469f42b198fe7330212b3d14611d0663e03e6274fbc5ac7", - "lib/src/editor/source/source_editor.dart": "ec21409c030fb38a11eb74d2a75cd02df89866aaaa0efbda8fa94e94ff1b65bd", - "lib/src/editor/source/source_autocomplete.dart": "6d8851278274d6acd0b097b5a71ae929928c9a69c0320f52be1f889e4ad44871", - "lib/src/editor/source/source_read_only_view.dart": "99286ab99ade39543c07d573a23783f8c0f56bf3c91bb33fd8d8fd4e09dbcc33", - "lib/src/editor/source/source_paste_engine.dart": "dd4d430b433215c7b8836be04ec763673c7cbd85bec582b0a0aeba57d9c36c8c", - "lib/src/editor/source/source_search.dart": "d9a06a8de7e3f05203b925067acbb34a16e0622e78476c6f6d3cb4ec99566e41", - "lib/src/editor/source/source_controller.dart": "ab00b5d51cd5efc19e771d186923d022788f11d8622ddc2af21586f394180901", - "lib/src/editor/source/source_diagnostics.dart": "20b30b19125a1cf7c8deac7f8aa4da2d8305b18786355b23fda3f31c6e487ad3", - "lib/src/editor/wysiwyg/wysiwyg_document_controller.dart": "3b05e06a64e530586847925067e68ed3a1c20715434f263dffe1b4b1adcbac74", - "lib/src/editor/wysiwyg/wysiwyg_session_state.dart": "454e9afa2f0fc15720b50f5fdd17f645c7463d8c9cbb553d8926a43398602bf9", - "lib/src/editor/wysiwyg/wysiwyg_block_widgets.dart": "948245c49e419c5a8d9ba1f74349292297c779d5c3a3ec3a0396e5b83429ddb7", - "lib/src/editor/wysiwyg/wysiwyg_commands.dart": "cc212fe423405257e4ef7988d781b6285aeb0803fc3cf57b4be3e05afb2b9390", - "lib/src/editor/wysiwyg/wysiwyg_editor.dart": "1665bf6c08eeb0111a4d3822c1c9b4af4d5b6048089b5992985b7b63b2ca8b1b", - "lib/src/editor/wysiwyg/wysiwyg_clipboard_fragment.dart": "a4466eedb6ea21dfa952cbb041ec572b97a25813c9657bfd9c6b2c51d7da8348", - "lib/src/editor/wysiwyg/wysiwyg_clipboard_html.dart": "16797344be7856aef0367808de8b9c59dae1379c0115abbba4155e21fdfb994a", - "lib/src/editor/wysiwyg/wysiwyg_toolbar.dart": "e3029284b76b4cf800ebadd4cb60fe1201896f9226f9e911dcb913b4ef0c54ad", - "lib/src/editor/wysiwyg/wysiwyg_visualization_navigation.dart": "fce906dfcf4ed96e2869e8e6437ada2f563eb0c36dcaa0622b3a6c665953c9e1", - "lib/src/editor/wysiwyg/wysiwyg_inline_controller.dart": "19832f50162dd2143696140255b6985f9312d1c8dbdd0cc1ffc259633498c632", - "lib/src/nextcloud_notes/application/notes_repository.dart": "b68f0014ca2e671d605012deae2c57421a4738ecfaf9ff86b80324358f5d71da", - "lib/src/nextcloud_notes/application/attachment_markdown.dart": "f74125b2e173fc847a88ee7a674f7928f092a7d2fc0a217f4349356be9113d44", - "lib/src/nextcloud_notes/application/notes_media.dart": "b1723b90674c131b9f23dd17b3a38d52035f6375b4c97007ba356b28013740d1", - "lib/src/nextcloud_notes/application/nextcloud_connection.dart": "40e9cf545a8b8c2ac9107b79016a28a4fc1a14ad8815aafc07e347978b772e10", - "lib/src/nextcloud_notes/presentation/nextcloud_settings.dart": "d0d1ea6cba7aabfb59833f39890d85affd86705f297556ca2119a4bc882cb554", - "lib/src/nextcloud_notes/presentation/notes_sidebar.dart": "bf0aa7e7d5dfa542d5719c0890d1e5d9809c5193eed41ff403c51e2c7efff23b", - "lib/src/nextcloud_notes/domain/notes_conflict.dart": "9a5a73bea64518684f96f10650de4bb87da30e522c9f81512cbd59ede2dc1fd8", - "lib/src/nextcloud_notes/domain/notes_models.dart": "7512674d30bbddfe59e18d1b0466e93771b531b0073719b1b7dcf6065b52f007", - "lib/src/nextcloud_notes/data/notes_attachment_references.dart": "529f8a0294b5a835b5794b8832f6986ca0607b96f28e380da4241898e38b0189", - "lib/src/nextcloud_notes/data/notes_secret_store.dart": "6b7a1421f20cc9bed7f4c0bb697d3acf2a8eeffb2597b6bf845399c05e07563b", - "lib/src/nextcloud_notes/data/server_uri.dart": "a86378012ea47688284d50bfc3b25d585fb9b0d4b841359024769c2acf815b22", - "lib/src/nextcloud_notes/data/login_flow.dart": "258f0bd543d94808176c5be26776a6a816fab1f4961d81512d842d586515c096", - "lib/src/nextcloud_notes/data/notes_store.dart": "0560a30df4217c11bb3969d0b3113428b6bfdee44fb05688a5e240b2c260ac3d", - "lib/src/nextcloud_notes/data/notes_capabilities.dart": "268e10e0a644492357bc4ac8eda9fa31c976f2bd097797c133387ac306191dce", - "lib/src/nextcloud_notes/data/notes_api_client.dart": "700f74aeca3e9d83ca4889a2e85f7403d12243d975a2ac07b1f770e5c589c754", - "lib/l10n/app_it.arb": "74bf3268ad3e77b49469868c43ab341de509b8289ffd78fe258fc18b682ea694", - "lib/l10n/app_nb.arb": "5aa50249f89ef8cef8577b5518b9bb5e3ad1b647c5990502d29fedeec25e0b21", - "lib/l10n/app_id.arb": "1610a2bf9cf8e6033e426dfd493d27efe1f7b98325eac7378e60543894ce342a", - "lib/l10n/app_hi.arb": "d4937a8398800909db22458474150303db79ab5f921e8b2d712f24bc920a13a9", - "lib/l10n/app_fa.arb": "41dafeb4daa06ed4cadcf06211ed69db98d9d68cd0fd68bcb208c0047f259f9a", - "lib/l10n/app_de.arb": "4c08616a2ade79cee2b57e71b0f690331c5b5cdbece84fdd928458ee40dc514e", - "lib/l10n/app_zh_CN.arb": "f3cad9cbdba825fd053ff293b7acc44c80cc702b82be79d099d6f1d5dae17655", - "lib/l10n/app_ar.arb": "039691b2aa89c975fc656f9ba5a1f168f09a4b106e43ad3fc2c3fe065008cb59", - "lib/l10n/app_pt_BR.arb": "01e5e9b508974e06aa8e3c4922c8f112c61095ab4b12624ef19e2193e4bbb921", - "lib/l10n/app_ru.arb": "fb577b6f8997438f6d6306ffbf86a367135a81dce8e1846c20aee48ecc6a7fb4", - "lib/l10n/app_vi.arb": "f7752ed5cc1ed766fa2f5340cd43eba65cf711e08a292be45da0f95df2e7f4f9", - "lib/l10n/app_nl.arb": "e1e2c58ea52b33ab9e6f6a99308520abaa575ffbeb1ed929871cea8506cf96d6", - "lib/l10n/app_fr.arb": "e79bdf65ca16ee3443e0e3218971d184ebd4cb5c2cd252218b6509c87444c18a", - "lib/l10n/app_es.arb": "ab3afc8e396fc8e80865d1892fca886ff63676f0e94ae6bcbd99ebaeefb823dd", - "lib/l10n/app_ko.arb": "17aa0c04d1bd03eaed998399de81de8345a1edabb0dafc19351789b45b2b8597", - "lib/l10n/app_pl.arb": "b6d81032246d67840a15ce41e1b4bb274a45945c2ea159c72551a76cd31c1e16", - "lib/l10n/app_zh.arb": "492baefd14c0f3627baf81a20296dd30408c4db104c1860dad0400446686a2da", - "lib/l10n/app_tr.arb": "eb505765012f3c8a2bc5cf01ed9b727c742411ff8b8c4abb9db457025d1ab9cb", - "lib/l10n/app_ja.arb": "8aebaf9e495ba0fcc117b97cbb9e5391438080cfdb8757bed508de6c00f2d4e2", - "lib/l10n/app_et.arb": "ff18db8cdbb027b2f43ffe027fbeb784b0251a3708cd45fa36b6000d16009d1a", - "lib/l10n/app_pt.arb": "e901e0252e79b9bd5d31321cc28007c85ec0e7e44ac88b77513b2c4e0e0e8b32", - "lib/l10n/app_uk.arb": "9bbead1ecf2bba435ea8f327fa44e19e1bd167e5fba0d000237c1d66d7ade118", - "lib/l10n/app_en.arb": "c215af29845d20d074d7599fc89c33c8a75d3ba0b32a158070300feb6290a36b", - "pubspec.lock": "6062c9287c8030d89989584d023b649c990ed5ca7bb40cb5941d6a48d1bcc9a7", - "pubspec.yaml": "b095829f4ed4f68ccf3d254f873b81f80edfccea1cb930dddd8de804865f211a", - "snap/snapcraft.yaml": "c337fa68d95a589562aa10ab1c63e809b900c711ff53466fd79a9ffd53bc7d1d", - "assets/branding/busymark_logo.svg": "dfc2bff2b49a268eede8c0ed49054bc575c415c697736cd84bfc728c5a210381", - "assets/export/html.css": "7b0b65c6c4d5fffc00b52833a7fbc43414dd988490d141d18db0ee683e664a95", - "assets/export/markdown.typ": "9a15349c348bca0742263a6d1228cc93ce850a4b5e046bf12e4a8f4bc6d89851", - "assets/spelling/CHECKSUMS.sha256": "3e09d517676fd8c18ac05a7b5a327404c046e1b5eb6bd97764417c43cd7251dd", - "assets/spelling/NOTICE": "4575a8d402694008656ed3cda93d158f58adbd0ae54a8b9b47824e53f9f7d19e", - "assets/spelling/VERSION": "8b037210fca77dc4fb8f6f0573e1578717d73f429cbb25e8f10b54d314800a11", - "assets/spelling/dictionaries.json": "4fa250112cfbee3fcf3e2dc1cc1f9b60bc556f439bdc0310e35dce19ed5b8bd3", - "assets/spelling/licenses/ar/COPYING.txt": "73480d918cd78d655508e80aa88c022cbd53634524a0f714b5f2519f2cf19124", - "assets/spelling/licenses/ar/README_ar.txt": "5ead684ae5211ccf615686959e24bd21ef6eebbb6195997529fda08b993f615e", - "assets/spelling/licenses/de/COPYING_GPLv2": "e7431ac20e815b6797369e802f9e4bb1b0082485060d8b096235f035d741bd89", - "assets/spelling/licenses/de/COPYING_GPLv3": "8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903", - "assets/spelling/licenses/de/COPYING_LGPL_v2.0.txt": "b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c", - "assets/spelling/licenses/de/COPYING_LGPL_v2.1.txt": "dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551", - "assets/spelling/licenses/de/COPYING_OASIS.txt": "2d9d81e88ecd0e837122f4688ca7a6a5bd7bb41bff6e21ff5d4663eb43372db3", - "assets/spelling/licenses/de/README_de_DE_frami.txt": "c141f4f79c428b7348b5012836f4ad3db4d124f288f15effc22696dc876512ae", - "assets/spelling/licenses/de/README_extension_owner.txt": "7662cbc363fdee12bc03a5295148587bb76923c121792a401115e654fea37b5c", - "assets/spelling/licenses/de/README_hyph_de.txt": "be7b3c67a66ea7185a69a3ce3b1e712cd6bb904dce8ac0eecdefd2f1a948baf3", - "assets/spelling/licenses/de/README_thesaurus.txt": "405accab10106f6d09152f2f5865ec3545fbcf40817b5416b4b99a077f303a87", - "assets/spelling/licenses/en/README.txt": "b8dd4d2ace5358adf5e6ddfac720871188e6f211cf56af97db631f4ee53e0ff3", - "assets/spelling/licenses/en/README_en_AU.txt": "f0897dcfdf058bcfc93fbc8e7e1b5da4c27ae9e175ee3a9242e887f02eb84a8b", - "assets/spelling/licenses/en/README_en_CA.txt": "86700e39b2307dda4c087ad3505a1e634a5b4d518ab808c398a16d21ebe957e2", - "assets/spelling/licenses/en/README_en_GB.txt": "18b5833de60a52ffcb6e5b6b5048bb5a5d910acfecd5b096985b77058223880c", - "assets/spelling/licenses/en/README_en_GB_thes.txt": "cc8abeac37067747d66d5365e8163145be6f3c23f488005074bf255bac89f2e4", - "assets/spelling/licenses/en/README_en_US.txt": "168b4c01cb841f766a72f310b065c04d09cff46376c37a81d799593ce751c371", - "assets/spelling/licenses/en/README_en_ZA.txt": "116ade99dd4a92715b21ae5b358a1a8cc814c76c0d6e582fdba4870835d1a6e2", - "assets/spelling/licenses/en/README_hyph_en_GB.txt": "6f3d1dddcf62d2d452801bd86289ad5826a30d15a502c0825f5c73715372db50", - "assets/spelling/licenses/en/README_hyph_en_US.txt": "9bcae072bff45cc0333d6b3c508c92d85b9065fc861c743c1506b303eba3f4a1", - "assets/spelling/licenses/en/README_lightproof_en.txt": "2271b9893955aa0abae1193cf56a66badaa906c0af030edd46113d10c59f2e24", - "assets/spelling/licenses/en/WordNet_license.txt": "23dbc4f3ea771304e5ab3e5709843813d2619f3c0cfc81229b53fcdb9985f29a", - "assets/spelling/licenses/en/license.txt": "df84246204e3c54cd24aebbc23714235f5fc41d754d53b65444a2afbf070130f", - "assets/spelling/licenses/es/LICENSE.md": "2b70fd5cb8d3b34cc6ae322c969557a2270b99017594addb2531ef5ffd9e1b17", - "assets/spelling/licenses/es/README_hunspell_es.txt": "0b5c39a863ecb61f5c5631ec1cd977667ef9bda6da6f90e80e9fc0edcbfadd97", - "assets/spelling/licenses/es/README_hyph_es.txt": "1f1088dce1140d981660faf3f5acc825e74aa1f943a8bec88cb046e4c528a1fb", - "assets/spelling/licenses/es/README_th_es.txt": "c721aad5e8f15297d4a8aa30b31a1bec1a4cbbeaeec6b2633cd64e2b0fafab30", - "assets/spelling/licenses/et_EE/README_et_EE.txt": "4cff6a48ea9168d545316ab96bac24eff4745bf198cbdd9f57eb10a9d8f93f0d", - "assets/spelling/licenses/et_EE/README_hyph_et_EE.txt": "da273b8ec03e35774a426e9df047ad85253ec9e61a5c056f019d57c1395ef1cb", - "assets/spelling/licenses/fa_IR/LICENSE": "7429736f069a84049bcfbee436e5cea3a3fd9b98348d880d9e43ebcf39721989", - "assets/spelling/licenses/fa_IR/README_fa_IR.txt": "aa1450d6eab0d140719048e7277204bae086947fe5d8cd834d115c0dd0cf7a81", - "assets/spelling/licenses/fr_FR/dictionaries/README_dict_fr.txt": "4a25abf740ad6ba5e8d0cfc0d2ffadc3c13c303f8fe389f323b061a389350f83", - "assets/spelling/licenses/fr_FR/dictionaries/README_hyph_fr.txt": "6951d9806c65c7f757d303061ca49cd7a1ddeddc552147f5c29de6540821f2cf", - "assets/spelling/licenses/fr_FR/dictionaries/README_thes_fr.txt": "431a690c5be7741eeaa0e9654aeb75ed2b0af337492e622e8393d090b4612b3e", - "assets/spelling/licenses/hi_IN/COPYING": "204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994", - "assets/spelling/licenses/hi_IN/README_hi_IN.txt": "2b373a1e07efe18e89c04c7f69bd540681a5926edcb478a4331d0df387861487", - "assets/spelling/licenses/id/LICENSE-dict": "97628afebc60f026f5c2b25d7491c46a5c4ee61f693e7cfa07fbd2c03605979b", - "assets/spelling/licenses/id/LICENSE-thes": "1f3360c2c2fbe9918f3658a20fcd2f64113a11726b7327ca1df7220c433689e1", - "assets/spelling/licenses/id/README-dict.adoc": "7c18fabf4169a4b7f0f7effac5309c26294d8cb354d9ed5cbc8ea2868abcf942", - "assets/spelling/licenses/id/README-thes": "6bbe6d0559d00b6e05acc9477cebfbf0da2b183b4c541cf47f7153dc7e3dfda5", - "assets/spelling/licenses/it_IT/README_hyph_it_IT.txt": "e6f356c3c49bc6016b6a635c20b468468eef6d011953a7051bbdfd56e17f0d3b", - "assets/spelling/licenses/it_IT/README_it_IT.txt": "34c3e93595cf3cf5f3afc9bc0d98eea12593750383f1e82ed1d3ca29f9681283", - "assets/spelling/licenses/it_IT/README_th_it_IT.txt": "07cd83b0d7664ebc620f589524069549f6ead33bccedb7f27d04ed0311e62905", - "assets/spelling/licenses/it_IT/legacy/it_IT_COPYING": "3e41d215a0d9ce21c1fa982d48d2958d539a51011f469f741b51f97e2595ec7e", - "assets/spelling/licenses/it_IT/legacy/it_IT_README.1st": "0328874f246fa9511fb19be6fc38db57f1351b00356e7c7187de59529fb04e6f", - "assets/spelling/licenses/it_IT/legacy/it_IT_README.txt": "ec6332fd60cca5d4cd1b69c78aebae33bb49ccea856ed1d69722e3a23f0dfc82", - "assets/spelling/licenses/it_IT/legacy/it_IT_license.txt": "4de624abc748506298e7be68f2213e422673b43e1674da4b376804096b87dcec", - "assets/spelling/licenses/it_IT/legacy/th_it_IT_COPYING": "3e41d215a0d9ce21c1fa982d48d2958d539a51011f469f741b51f97e2595ec7e", - "assets/spelling/licenses/it_IT/legacy/th_it_IT_README": "3097ecbc3ebd844266b556768748b7c07bde915dd5dd0b70eee30670a91a2599", - "assets/spelling/licenses/ko_KR/README_ko_KR.txt": "e0b13b74b287a71bc668a756fe0d1bcfe5adafb860acab0d81e71593333e1724", - "assets/spelling/licenses/nl_NL/LICENSE.txt": "2189c248cbc054445aeac6cd65b87eebd0a115efeb55ed498b0f2a73441805dd", - "assets/spelling/licenses/nl_NL/README.md": "aa4685a78f32d0d24a67dd5043ef4e39acc8720c3e416fe5d201985980dbc004", - "assets/spelling/licenses/no/COPYING": "e7431ac20e815b6797369e802f9e4bb1b0082485060d8b096235f035d741bd89", - "assets/spelling/licenses/no/README": "0fb3b682bbe5fd3fe23a22d26cc7c417115016bb5f40ec4cf5a62aabe6e5c9c9", - "assets/spelling/licenses/no/README_NO.txt": "0fb3b682bbe5fd3fe23a22d26cc7c417115016bb5f40ec4cf5a62aabe6e5c9c9", - "assets/spelling/licenses/no/README_hyph_NO.txt": "5dd6d4fa61585062d8774afff75d0c51d76bb8126078fef0c0e69740eb093ce0", - "assets/spelling/licenses/pl_PL/README_en.txt": "fb5f9b4a0643821cf88775c0932810c1cd05f236136c913e3eaf1e24806f3f44", - "assets/spelling/licenses/pl_PL/README_pl.txt": "ce3ad7ab1d3a8b767b8f7dcc870796fbda76bc7ad8cde22f6312b0cf86a5bd11", - "assets/spelling/licenses/pl_PL/README_pl_PL.txt": "e691ed1e79934293b0cd6996a14af1520ff893c02f920c09ed0c90aa5f0a8abc", - "assets/spelling/licenses/pt_BR/README_Lightproof_pt_BR.txt": "9300db07784a8575743e68cd4c9b966c66f9212c708bd3bbf0190df61e75114a", - "assets/spelling/licenses/pt_BR/README_en.txt": "bb064f3db7ba5f5536da7d079773f692c5f928822e8aebc3d78259ff6cceb9e5", - "assets/spelling/licenses/pt_BR/README_hyph_pt_BR.txt": "07400608865ce4c964cc443a9f354c733ca7f3f7d31f4463222b927cb7c54b87", - "assets/spelling/licenses/pt_BR/README_pt_BR.txt": "9974ce691fdc1fe731717d7a2dc668244405fdc2bf9bf3367eb9b29e85177c88", - "assets/spelling/licenses/pt_BR/license-thes.readme": "253031afa265c7bec5d2e195c659129a7ff254f9d57c57a08eba4a9051868840", - "assets/spelling/licenses/ru_RU/README_Lightproof_ru_RU.txt": "8de865eb2f5a83a182d96964d1fe0eee05ae0d68a94f9e9938e4f6349075f5c4", - "assets/spelling/licenses/ru_RU/README_ru_RU.txt": "262af2f6ad70a61e5ee1332ff44fa8ee50edca819cf33207d8ad6ba6a0c9be52", - "assets/spelling/licenses/ru_RU/README_thes_ru_RU_M_aot_and_v2.txt": "faf06127db60c80b4deefc26a86b3c8a18e1ba46e89d29db8f232501ea850b69", - "assets/spelling/licenses/tr_TR/LICENSE": "3f3d9e0024b1921b067d6f7f88deb4a60cbe7a78e76c64e3f1d7fc3b779b9d04", - "assets/spelling/licenses/tr_TR/README.txt": "18750c09a1e666a6d34854b92dfdc0353c3bfe39008b412d539f52821ecdbdec", - "assets/spelling/licenses/uk_UA/README_hyph_uk_UA.txt": "b5866714694f0e9a7c9d044984b4b39ec6289ade07fa7d2a083a31f5072f3529", - "assets/spelling/licenses/uk_UA/README_th_uk_UA.txt": "29aed1f76c8552b9ba22b00f9f3a5f8316498f95b50f5c1aad3a9743a560ba6c", - "assets/spelling/licenses/uk_UA/README_uk_UA.txt": "664436fee625b4a3e712483947d1711a2f467670f4c389bcf10abca2a564e1dc", - "assets/spelling/licenses/vi/LICENSES-en.txt": "d32e4c8faf974bdeb87da10a5951556b33744cf9b50a7f06125074e11f30d7f6", - "assets/spelling/licenses/vi/LICENSES-vi.txt": "e300eee4d3fd59e2886e785b63f6ded6badc7b9c6883cf73e365b59635d6128d", - "assets/writerside/TGDP-LICENSE": "21b8bf433e69c8d8339de0dd28e5fba4f59c405d01f9a7582c05abe1b99eef21", - "assets/writerside/templates.json": "5c8e1dc03d5252fc0bef448eddadd9f5137272eccf771f961a81680418b0a70c", - "linux/.gitignore": "5ded4f1a9d10d34bf6ee5beb0711d88ee2ef07b0f07ace9ed77935a246e8eb82", - "linux/CMakeLists.txt": "5cc7a01d2531071ea0e5963189c9062c02ac278080ab3ca85904c05c89f24a0b", - "linux/flutter/CMakeLists.txt": "787189e2623313cfee590a0b553338eb9fc68b3af922ddd77c5d39c75f989aeb", - "linux/flutter/generated_plugin_registrant.cc": "6905d91aa4b19ccbca2d15c2dd5af6edb5c5617eb1aa59c59793a271d4edb525", - "linux/flutter/generated_plugin_registrant.h": "00f93bb5b1faefdede8f6065df327522900fb0b8efee86bacf424fd947ed14bb", - "linux/flutter/generated_plugins.cmake": "e4df84c18b9ed8f736e2ac6b41e729953080b659175b35c6976ba521f6d68941", - "linux/io.busystack.busymark.desktop": "4ac6cb8435535f657b43c36a48f7d49428d049a83fd895e42fd1a19527bdbd78", - "linux/io.busystack.busymark.metainfo.xml": "05e7d9068a8c900a7d6a2fef34ff618724eee5f5d81da84b9e34abcc95f7c069", - "linux/runner/CMakeLists.txt": "7acfb32ce6f475c611f2608c187a4fdad85fdb127c3964ec5b39f7bbf6c4c097", - "linux/runner/credential_key_policy.h": "1475590e3a729ac1ff977381b97bdc19c27ed68474617e7b35066dc0e8a66b93", - "linux/runner/gtk_accent.cc": "6dc88751a5e90721893136e525f6be262ee52b774feea1e4b09fe42b7ab1bd21", - "linux/runner/gtk_accent.h": "5e9beec7bc2c9d93055250552a5e51936858950b3a96f3f7359ae9d11579829e", - "linux/runner/gtk_accent_host.cc": "7cd07bcef5b4e6d6f25cba8d1324b7030f1801b6a566f4cefe49d579032754f6", - "linux/runner/gtk_accent_host.h": "25f66de951f83a28ba18c36885df7c2b89e7159ea18cb4658f73a47a7cb226b6", - "linux/runner/gtk_header_icons.cc": "6d7e0d02cbed993b7c2783ad0c8bc0c9703f9ffd4c0ba4d00149c5c9f0f12984", - "linux/runner/gtk_header_icons.h": "b9b8579c4a03b6f5ba146719f6a759504a0dc5127e0c5460a5112d3a64eb2e4e", - "linux/runner/gtk_window_preferences.cc": "336d25df249e5ccdc1e3f593306ebc2259adc98f1b7208ecd5f6ff873c4d6329", - "linux/runner/gtk_window_preferences.h": "b8222fe12212da3c009147977477b1196aa8d881341af1007c1dfe161d4714fa", - "linux/runner/linux_chrome_host.cc": "1af116d3cacd9bf7c778541c8f73a98aef1821a0f9483af2163aee186d7a6c86", - "linux/runner/linux_chrome_host.h": "465800ae17a7dbbe8e601a678f9b31d34ad1d3b94150377e4c769e09084b6db4", - "linux/runner/main.cc": "ea23f7cdf74091d63bba29ef60486370b766157b848f0cfe62bd8b1c1695a0c1", - "linux/runner/my_application.cc": "0e946ba6545746531227e637fcd212f45a2e91f0b000bcec0d2c5bcb7a2fe0ca", - "linux/runner/my_application.h": "a4218d7ac0db8a9a6716daf216b2d4fc6bdc7ac647e3183078b2c962ebdfcf70", - "linux/runner/rich_clipboard_host.cc": "fd389a7d006497dd6b6946a7939b3d3e2bbfff64e4ec79bf86f80027b4febcdf", - "linux/runner/rich_clipboard_host.h": "4b3d8d69f57f452f682cb180212856ed379f2d4b39cbc558b3f1724edcb011f6", - "linux/runner/secure_credential_host.cc": "bef3147238daff28eb738cc619ab0939e5aa9069886f028644c384ab8f41c519", - "linux/runner/secure_credential_host.h": "e1cfbaafd690590aa65fb251f474b892a80606b0ddff15660c22ebd13d9db3ea", - "linux/runner/video_player_host.cc": "4e226d327111539cd7b9ac99bc29f2f9635f4df0a7ed45a5dcc5c4c3e36c6104", - "linux/runner/video_player_host.h": "cf2c9c11e8416eb15a79f067ad485582f8c3630875eda84874f18cc64c4c407d", - "linux/runner/web_render_host.cc": "4a4bf8a9762d6c56c3b5ebd79943d7b870c6e47f720568b47b7f7d79237c4fc4", - "linux/runner/web_render_host.h": "0b44dfcc13b64248d7869901d521c486635e2fac297a969d19c1355dbe448328", - "linux/runner/writerside_dialog_host.cc": "60455609795c298c4f510c7e43b5e75f1b8fa393901142dd6b1cc641ff2b6fe9", - "linux/runner/writerside_dialog_host.h": "028656f71da31933cedc05d0d760d1061bfc539b3ae7db58ca65d5ac3bc1b7e8", - "packages/busymark_spellcheck_native/.gitignore": "ade895c6374f13aafb7e03437feca1dd64fda1f5891c312e53130cdf4c027b64", - "packages/busymark_spellcheck_native/.metadata": "e7588290b8eeb8f0497a65ec65755bd24302660e4faa5ac125ea3e92d76fc595", - "packages/busymark_spellcheck_native/CHANGELOG.md": "d050fbf6b182559dd80bc2515f5dcc8c6375da25daf33636d15331bead5c8d48", - "packages/busymark_spellcheck_native/DEPENDENCIES.md": "d26003331e6214376cc0f4108cab7ed00fe12d8c27d56df83dd5f8b4255b2865", - "packages/busymark_spellcheck_native/LICENSE": "a1cae206f17a9accefe0e4b3ed908cfecfb609d38da2bed69e48c66f4f990a64", - "packages/busymark_spellcheck_native/README.md": "fea1b35afca64f30d2f433e68da86899d70cf0c675cc3c4d95e47d0d79688b5f", - "packages/busymark_spellcheck_native/analysis_options.yaml": "0349d6d825f26f0468bb3715590961481ab4d97e5ae0bf8cd1d2922e700e5794", - "packages/busymark_spellcheck_native/ffigen.yaml": "873f0969143d6a8264daf55e04903627b202b41ec9ced483fcd12c832864fa5e", - "packages/busymark_spellcheck_native/hook/build.dart": "1dba88a2d61297ab98865aa115ca5098f07028c4ed872c4d7ea08094c4bfe8f1", - "packages/busymark_spellcheck_native/lib/busymark_spellcheck_native.dart": "a37e98fc693c92cb259d0792986db0aacc901a3ee2813e5bb4fdeede80f494a3", - "packages/busymark_spellcheck_native/lib/busymark_spellcheck_native_bindings_generated.dart": "5967abfc97c1f862cc3a06120ea1cf8a89ae389e8c26576f3e067eb72b74024c", - "packages/busymark_spellcheck_native/lib/src/native_dictionary.dart": "28dbfb9fae2cc7257b99c5625f88c35df520d9c082926aff2794dae80ce95a2a", - "packages/busymark_spellcheck_native/pubspec.yaml": "d3ccb083ce2ea487257e89c887e85644a3e84e7e729b235ab526b830afcab0a8", - "packages/busymark_spellcheck_native/src/busymark_spellcheck_native.cpp": "8a8537e39697ab396be7ffc15cdd5de9483df18b86c11eb914f1509bbc7d42e9", - "packages/busymark_spellcheck_native/src/busymark_spellcheck_native.h": "15505a4d995dfaae4b3bb69d47336960f939d5fed728b2fe017df2ace1275e9d", - "packages/busymark_spellcheck_native/test/busymark_spellcheck_native_test.dart": "77cfc1955feb22e9dcb6dc38b8ad11b9d33360031f594fc6e338d692b70da249", - "packages/busymark_spellcheck_native/test/fixtures/test.aff": "f5b2afc04c9a69bca21a87f1bc50879a11f3e2f282b2879f891769845c72cf98", - "packages/busymark_spellcheck_native/test/fixtures/test.dic": "d7466d6156f5f7307bc37ba4371d7f9c2f1a092686734c4ef177d8ce7435158f", - "packages/busymark_spellcheck_native/third_party/hunspell/ARCHIVE.sha256": "86f4db66bff8c06074b74986461afc4fecb0cccfd9a2464700a85ade1990cdbb", - "packages/busymark_spellcheck_native/third_party/hunspell/REVISION": "d371b4b9646b6a37d32a5b4ee4f27ef96a05628dfbfd494b239cfced8450fcf2", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING": "640d90f6ee401241ff62834d0d1b33f83049e99b8bfdfa04ed1b0a1635dde3e7", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING.LESSER": "7c6699c75f87b52bdc542db26d6b1b92892577cda46e20eceb79e2790a1c291b", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/COPYING.MPL": "53692a2ed6c6a2c6ec9b32dd0b820dfae91e0a1fcdf625ca9ed0bdf8705fcc4f", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/license.hunspell": "3f7ddd07c296edbfe0a47c7bcc82038ad347a2c4f672345b24f95c624db68513", - "packages/busymark_spellcheck_native/third_party/hunspell/licenses/license.myspell": "dcda061adeed22b26f276c01ec374f930789ae0d684e5aa8f8be309dd680ff20", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/Makefile.am": "fd7509a824d65394d3dfe722c50cf5e45f1626e50f03a94f6f01d3c7cc74506c", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.cxx": "acee5674ad818c997efebd0ef89d5a65c9d95da78777f2313091f519d927414c", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affentry.hxx": "4bd5a8ffd6b3185b0b2cdc8809e41502030a0ad802f9d5bd9716a210d1388ef3", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.cxx": "97bea198e797b42708174647e0b848f96fdfb3fc67976ca07023b63af3fb6c6d", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/affixmgr.hxx": "82226e346bfc7ad08ac9da632b38cb323086cf3ae567cb815a2532e2de2c5028", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/atypes.hxx": "e58c06e8441cd92a568d32d340dada33217abf3eac73bc178dd2f08a07ed822c", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/baseaffix.hxx": "60987570255d65973f569fed4569676a49ddb874675cb7d6994b4aa8de83a166", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.cxx": "98450eb638b8ebeb6583a30a78cc2e2718496c35641ab3ca7aab117ab7f4cc92", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/csutil.hxx": "96907f999891e33bb19fe21ccfb131cea2fdd5afa513e07e19813bab5c0c2636", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.cxx": "fe1b5fed0f5d74f4c092230c8fbf24f93ba58292f4459d97a7bc734c087365cd", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/filemgr.hxx": "7f690aedac05e832a15deb8bc6a07f4e08102f3c64d1adf75d5ba2d4934b4d90", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.cxx": "cd984a8d8dc060c8043bc3fbf839789f3b885c05b5d46a8aa45db45eb1055ec6", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hashmgr.hxx": "638a6f560da318506fed3de74c083209ef0f7875201b8805519ad6ae020b59c3", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/htypes.hxx": "73698b4755fa5c65893cdbb9d7b1420b22bfb4c597f323c5f22a5d98a29a62cc", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.cxx": "86b420e6227c8c78cfce233c49966f4c8e234fb87be93f32d8612592ff7f121a", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.h": "3426379bc96a57a46fb2a604bb9e0c0f62048f92f61c835f9fe47ed18c02e0fa", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunspell.hxx": "7cf85e6c7d97d12787f1735ef6947172402a77c69ae87d17e3274cd802c30176", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h": "7bda44c1dad647e4bd1de1345aef32b9de88222a5b19d7ca395f02932ddcc1ac", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunvisapi.h.in": "9dea3f382503feb660f1435ede7cd9fafe371c633d8eba95bd9c3f229c043517", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.cxx": "f70b29817519df2e7ed212d27c911501f7f09c3a6acd0c0c345065eb3999fbbf", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/hunzip.hxx": "2a1104a6798cbafe57c73b74201237600fc96669b9ac93b76d837ec958816c31", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/langnum.hxx": "0a8c38f97a137a70320583121a3efb9d3d56fb1032c53e3e16671c23a9c9c978", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.cxx": "33bd24aecb6542fa640ef6be315d95a157691300fe07be081fc951c971bdcb27", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/phonet.hxx": "b66ed3023f56138b28d81939e8718198791d893182eb948e92d64e77c52a6f5f", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.cxx": "0b21233bc185f4bc698c33dbf81758166a682bfd8cedaee88c63aeecd0404b62", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/replist.hxx": "c4d880bc20bc9b6487563a06ee34a9c3043f063b7fb729b0a40ec5ab4098a814", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.cxx": "7ed11c66027d9c129bc5ef48cca626659ed94e7b8a4d970a7fccf902bd32267e", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/suggestmgr.hxx": "fcd2f8c5125caf478738475e98ee83c479497e9aa10e9cf16ab95d122a680338", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/utf_info.hxx": "be4c0add3dac468b4d4cb69bfcf70909f2e3627b39bb3d079ad4989807bfc7b9", - "packages/busymark_spellcheck_native/third_party/hunspell/src/hunspell/w_char.hxx": "9133dcec20ff50528ad482f52c1a6b3206bc2381207e6a4d3ead1a256d94eef0", - "packages/busymark_spellcheck_native/tool/fetch_hunspell.sh": "22e4c75b31cb8262c21991f55123fe8b82bc8db878cb84c805fd5a2710be6f93", - "snap/gnome-46-2404-prime-exclusions.amd64": "28fd45afa604e3a77b69f96e52a5225465a7bfb8d1243a9c2b35a61cebce6fa8", - "tools/ai_ollama_qualification.dart": "49612c1b0a8a57e39b4b156449f36656be6ffb32afce853e94326a1968aff386", - "tools/build_install_snap_local.sh": "978b764eddd59b4b576c80c696fb814df75bcfc0709232a52575faf7d60bc757", - "tools/clipboard_smoke.dart": "056a7c6d8b05d7e7fc7b6b547b48f040c8ec95dc865dde65ddb81fd227a77dab", - "tools/extract_writerside_semantics.py": "0b7df9ec2fd85e2b105ba3e25136f3f489310e8fab57cb2041a38ed9885013ad", - "tools/fetch_d2.sh": "2864a38e0b9bacf0deb43ad62e913f4d15e29b95c2429023f3708021d44df31f", - "tools/fetch_spelling_dictionaries.sh": "44cd91cea58bf20d41a1471bcffb51f3a51dab5907afc4898542480e522ec0cb", - "tools/fetch_typst.sh": "49c889970fb4eb8970b97cd08593588bd221f2c3f26e7a554b3b2ff815e6967c", - "tools/fetch_visualization_web.sh": "6707f349bc5a9a0a50cf5017ee6e2a6cf0c026dcac86cf715197e980a8717988", - "tools/generate_writerside_schema.py": "0799c592152bcf26b6ced3d0d45e0214c43d39e31fbad6ab37823608509cf1a1", - "tools/gtk_accent_host_probe.cc": "0c63dc6d70f19fb08c42ec8e5fec0b2b8a7d2b4e01a2833b046061f48d65731a", - "tools/gtk_accent_probe.cc": "03d38ca6a84f6290d5eff61dac9fa1372073bccebee900e0240fb263f944d7bd", - "tools/history_visual_smoke.dart": "4fa26747ba10678ffe462c84f2cec04625f88600cda278a2fc29b0ea73587f10", - "tools/linux_native_menu_probe.py": "3e3da0b5356e89ca9b4dc27870fcdc5501c1de7166393f1cfd70c0c25bab3d25", - "tools/nextcloud_libsecret_probe.cc": "36acb2ae9798bb452ef47fc6291d8942b064fe806641c43eb9ba3c09d7a32c49", - "tools/nextcloud_login_live_acceptance.py": "a023ffc4c69e57efc78902e274ee48952664a7083dd7500388fcb923023e6b3e", - "tools/nextcloud_notes_live_acceptance.dart": "d5aae7de2a35ad08fa27e464413d03114a44c41edad93e64baf85d93e9f2f55b", - "tools/prepare_spelling_dictionaries.dart": "dce9a217ef5892a9aa15cc3c5b7475da521a6eb9c8e23367820a6dde0cb8be03", - "tools/secure_credential_policy_probe.cc": "239829f23b1c1bd6e0a7e864485fd5ebc30ac68065f32e26e918f87238d54462", - "tools/test_gtk_accent.sh": "00503759f1595e1322ee2cd51d494ec11cc79327ad9bbe5322f78eb651e041c6", - "tools/test_gtk_accent_host.sh": "e73c335815ca84c0ce59ba7be80a6a4e3ba5f927e88421552563068c43f32fef", - "tools/test_nextcloud_libsecret.sh": "7fec5b6f7faea2604951e60fe087bed5938c37b12bfd6fc24f5dfb7348c67b54", - "tools/test_secure_credential_policy.sh": "6315f00f0b58578d037a23cab6489c87c03982d02b55fb109d7365e5da2be2a5", - "tools/validate_writerside_conformance.sh": "8253c4c54fb4fb3bbf4a590a99252d0700e69ae9bd2f55d28ca22b6a71e64fb0", - "tools/verify_html_export_browser.py": "a99b8bddc468760157839529b69aacffdb0047b23e0a640a711b2a66d998a44e", - "tools/visualization/bootstrap.js": "15be4b01e7bb92e016509679927603246d41b5afb499f398f22be043a17602ef", - "tools/visualization/build_render_engines.js": "139d3dd7c654686b781a2c2eadbcaaf5bd5da1bbe6c3d8d20f5c812663dbe7e5", - "tools/visualization/generate_notices.js": "b4dc8256ef42bb112500fbd4e6f99a5b88b70db240fb24cc9b610c3e66b9146f", - "tools/visualization/harness.html": "3124bdf61a51d29828a66c4ebb835270e6c926ab8a9ed26132842b70ccc10f69", - "tools/visualization/mathjax_renderer.js": "586c8ed9f6017e6115e845498390d08c6974ed1c8875b0de1522f939ba054681", - "tools/visualization/mermaid_math_disabled.js": "fad5349d62b419ae5a3ccce5007456b44b5f1f7c92d79691702800e35e821c43", - "tools/visualization/package-lock.json": "1bdea046de42d36b9a11775668fcade742d67e18c5336122c7398c4e4c2e2ee4", - "tools/visualization/package.json": "69a0134990fe5030f93f48fb481a5b1864941ff2f3b003b6d46ef7738b05b4b2", - "tools/visualization/reference.html": "c0747c047dd4f1fc3e268748178445d3d8a35965779e6782e27217ba13feba39", - "tools/visualization/reference.js": "862d24589d1841e5be4e83028e3674d90881ca0ff77fb90ae2f7ee50fbd159d5", - "tools/visualization/render_engines.js": "36c571e797d7fbf1fdecc0b43385ab90cbec8f8cc267ec56906202df7539109e", - "tools/visualization_smoke.py": "5d2efbfaeb09670e544c4d2aaf691b3f201fb9c2342452b1c5ddd05a86d4a62c", - "tools/writerside_toc_visual_smoke.dart": "fe5b831b720f985bb429ceb0ff5c1ee09e12e151409d1adf98fa27a79c11f46c", - "tools/wysiwyg_selection_smoke.dart": "480ae202e4366c7a24be4773f2aafd145ce9deabce80187655a89f2a3a937c89" - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-first-success.json b/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-first-success.json deleted file mode 100644 index 937dc1e8..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-first-success.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "ok": true, - "observedSpellingCheckCount": 20, - "observedInstalledRevision": "x3", - "initialDictionaryInstallAssertionPassed": true, - "evidence": "The CI script reached the revision-change step only after its online dictionary assertions passed; the live read reported ok=true, error=null and all 20 check keys." -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-wayland-final.json b/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-wayland-final.json deleted file mode 100644 index afa365e5..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-spelling-wayland-final.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/snap/busymark/x5/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": false, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": true - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain-before-edit.json b/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain-before-edit.json deleted file mode 100644 index ea8c9267..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain-before-edit.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "schema": 2, - "integrity": "ok", - "accountCount": 1, - "notes": [ - { - "localId": "7ae4626b-cc28-4c7b-be63-4d0a16fcc291", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": 184, - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 1791373094, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "base": { - "id": 184, - "etag": "fc8c55106bb2b911e42e153c58ab29eb", - "content": "BusyMark GUI submitted\n\n[attachment.bin](.attachments.184/attachment.bin)\nNewer local GUI edit", - "title": "New note (2)", - "category": "", - "favorite": false, - "readonly": false, - "modified": 1791373094, - "error": false - }, - "remote": null, - "creationAttempt": null, - "revision": 1, - "ackRevision": 1, - "editorRevision": 0, - "editorContentDigest": null, - "syncState": "synced", - "errorMessage": null - }, - { - "localId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "accountId": "ff21736a-1572-4b11-9006-658c35f00037", - "serverId": null, - "content": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", - "title": "New note", - "category": "", - "favorite": false, - "readonly": false, - "error": false, - "modified": 0, - "etag": null, - "base": null, - "remote": null, - "creationAttempt": { - "id": "0200f54d-ee84-400d-bba3-f77e0d503780", - "revision": 44, - "localContent": "BusyMark GUI submitted Snap\n\n[attachment.bin](busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096)\n", - "wireBody": "{\"content\":\"BusyMark GUI submitted Snap\\n\\n[attachment.bin]()\\n\",\"title\":\"New note\",\"category\":\"\",\"favorite\":false,\"modified\":1791375017}", - "knownServerIds": [ - 89, - 90, - 98, - 94, - 183, - 184 - ], - "candidateServerIds": [], - "separateNoteLocalId": null - }, - "revision": 44, - "ackRevision": 0, - "editorRevision": 44, - "editorContentDigest": "8972d11ea6e3b68a3cac10228de42f8871e1b91f837b757252595ce509af3247", - "syncState": "creationUncertain", - "errorMessage": "Nextcloud may have created this note. Refresh and resolve the uncertain result before creating another." - } - ], - "attachments": [ - { - "id": "2875b68e-250c-41f9-a951-b4b85a792096", - "noteId": "c633bbbb-3c0b-46d1-87e6-23122585d4da", - "filename": "attachment.bin", - "reference": "busymark-attachment:ff21736a-1572-4b11-9006-658c35f00037:c633bbbb-3c0b-46d1-87e6-23122585d4da:2875b68e-250c-41f9-a951-b4b85a792096", - "remotePath": null, - "state": "pending", - "bytesSha256": "785b0751fc2c53dc14a4ce3d800e69ef9ce1009eb327ccf458afe09c242c26c9", - "byteCount": 1024 - } - ] -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain.png b/delivery/nextcloud-explicit-adoption/evidence/snap-uncertain.png deleted file mode 100644 index 745ee3dc2f6a890275373c620a5f01a88597b6b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 82610 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ℑkkC_6QN+13Z39IFz~$`Ov}CYc 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 diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-wayland-final.json b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-wayland-final.json deleted file mode 100644 index c9a4ae26..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-wayland-final.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":false,"checks":{"mermaidFormat":"png","mathJaxVersion":"4.1.3","mathJaxFontVersion":"4.1.3","newCmSequential":true,"mathVectorSvg":true,"mathExpressionIsolation":true,"mathPartialFailure":true,"webKitRecovery":true,"mathWebKitRecovery":true,"plantUmlFormat":"png","d2CssRaster":true,"d2ForeignObjectRaster":true,"openApiReference":true},"error":"Bad state: Typst visualization export failed: mermaid at line 9","stackTrace":"#0 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:286)\n\n#1 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-desktop.log b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-desktop.log deleted file mode 100644 index 602a2f8a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-desktop.log +++ /dev/null @@ -1,13 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:34335): IBUS-WARNING **: 12:59:59.831: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:34335): WARNING **: 13:00:00.417: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:34335): WARNING **: 13:00:00.419: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:34441): GLib-GIO-WARNING **: 13:00:06.544: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:34461): GLib-GIO-WARNING **: 13:00:08.899: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:34599): GLib-GIO-WARNING **: 13:00:27.394: Error releasing name io.busystack.busymark.Sandboxed.WebProcess-b46cec18-d358-479c-b36c-97331bda0f6c: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.56" (uid=1000 pid=34599 comm="/usr/lib/x86_64-linux-gnu/webkit2gtk-4.1/WebKitWeb" label="snap.busymark.busymark (enforce)") interface="org.freedesktop.DBus" member="ReleaseName" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus) diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-interpreter.log b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-interpreter.log deleted file mode 100644 index cf0ee92a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-interpreter.log +++ /dev/null @@ -1,11 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:33843): IBUS-WARNING **: 12:48:28.698: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:33843): WARNING **: 12:48:29.409: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:33843): WARNING **: 12:48:29.409: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:33947): GLib-GIO-WARNING **: 12:48:35.003: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:33962): GLib-GIO-WARNING **: 12:48:36.868: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-retry.log b/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-retry.log deleted file mode 100644 index ea365746..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-visualization-x11-retry.log +++ /dev/null @@ -1,11 +0,0 @@ -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:33430): IBUS-WARNING **: 12:43:43.184: Failed to mkdir /home/tester/snap/busymark/x3/.config/ibus/bus: Not a directory - -** (io.busystack.busymark:33430): WARNING **: 12:43:43.750: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:33430): WARNING **: 12:43:43.752: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(process:33533): GLib-GIO-WARNING **: 12:43:50.155: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:33552): GLib-GIO-WARNING **: 12:43:52.118: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-final.log b/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-final.log deleted file mode 100644 index bd73450c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-final.log +++ /dev/null @@ -1,58 +0,0 @@ -could not load cursor 'dnd-move' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-none' -could not load cursor 'dnd-move' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-none' - -(io.busystack.busymark:38838): Gdk-WARNING **: 13:49:50.620: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop - -(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:49:51.222: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:50:05.021: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:50:09.254: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:38838): IBUS-WARNING **: 13:50:09.304: Failed to mkdir /home/tester/snap/busymark/x5/.config/ibus/bus: Not a directory -Gdk-Message: 13:50:09.330: Unable to load from the cursor theme - -(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:50:10.776: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (io.busystack.busymark:38838): WARNING **: 13:50:10.808: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:38838): WARNING **: 13:50:10.809: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(io.busystack.busymark:38838): Gdk-CRITICAL **: 13:50:13.597: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(process:38943): GLib-GIO-WARNING **: 13:50:14.785: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:38973): GLib-GIO-WARNING **: 13:50:17.144: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(io.busystack.busymark:39129): Gdk-WARNING **: 13:51:20.890: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop - -(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:21.243: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:24.583: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:26.722: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:39129): IBUS-WARNING **: 13:51:26.764: Failed to mkdir /home/tester/snap/busymark/x5/.config/ibus/bus: Not a directory -Gdk-Message: 13:51:26.780: Unable to load from the cursor theme - -(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:27.700: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (io.busystack.busymark:39129): WARNING **: 13:51:27.721: Could not open /sys/class/dmi/id/chassis_type: Failed to open file “/sys/class/dmi/id/chassis_type”: Permission denied - -** (io.busystack.busymark:39129): WARNING **: 13:51:27.721: Could not open /sys/firmware/acpi/pm_profile: Failed to open file “/sys/firmware/acpi/pm_profile”: Permission denied - -(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:51:29.594: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(process:39227): GLib-GIO-WARNING **: 13:51:36.574: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(process:39246): GLib-GIO-WARNING **: 13:51:37.985: GDBus.Error:org.freedesktop.portal.Error.NotAllowed: This call is not available inside the sandbox - -(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:52:05.176: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(io.busystack.busymark:39129): Gdk-CRITICAL **: 13:52:47.182: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed diff --git a/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-socket-fixture-failure.log b/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-socket-fixture-failure.log deleted file mode 100644 index 9dcbedc4..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/snap-wayland-socket-fixture-failure.log +++ /dev/null @@ -1,8 +0,0 @@ -could not load cursor 'dnd-move' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-none' -could not load cursor 'dnd-move' -could not load cursor 'dnd-copy' -could not load cursor 'dnd-none' - -(io.busystack.busymark:38373): Gtk-WARNING **: 13:47:44.301: cannot open display: diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-integration.log b/delivery/nextcloud-explicit-adoption/evidence/spelling-integration.log deleted file mode 100644 index 38c93569..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/spelling-integration.log +++ /dev/null @@ -1,6 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/spelling_bundle_integration_test.dart -00:00 +0: real en-CA checks pasted rich content completely in both editors -00:14 +1: packaged catalog opens real regional and non-Latin dictionaries -Shell: Failure loading aff file /home/albert/busystack/busymark/build/spelling-test/installed/es-UY/dictionary.aff -00:20 +2: real en-CA checks the general Markdown fixture completely -00:23 +3: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-release.json b/delivery/nextcloud-explicit-adoption/evidence/spelling-release.json deleted file mode 100644 index 28b40751..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/spelling-release.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/snap/busymark/x3/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": false, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": true - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-resources.log b/delivery/nextcloud-explicit-adoption/evidence/spelling-resources.log deleted file mode 100644 index e69de29b..00000000 diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-denied-network.log b/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-denied-network.log deleted file mode 100644 index 527c0a49..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-denied-network.log +++ /dev/null @@ -1 +0,0 @@ -sudo: a password is required diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.json b/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.json deleted file mode 100644 index 76fa735e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "ok": true, - "checks": { - "resourceRoot": "/home/albert/busystack/busymark/build/linux/x64/release/bundle/share/busymark/spelling", - "resourceChecksumInventory": true, - "nativeDependencyNotices": true, - "availableDictionaryCount": 48, - "bundledDictionaryFileCount": 0, - "dictionaryInstalledDuringRun": true, - "installedDictionaryCount": 1, - "sessionLanguageTransition": true, - "realRichUnderline": true, - "realSourceUnderline": true, - "quotedFencedCodeExcluded": true, - "rejectedWord": "helo", - "suggestion": "hello", - "correctedSource": "This is hello.\n", - "sourceEditorTransaction": true, - "workspaceHistoryRoundTrip": true, - "formattedRichEditorTransaction": true, - "tableCellEditorTransaction": true, - "personalWordPersisted": true, - "personalWordPresentBeforeRun": false - } -} diff --git a/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.log b/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.log deleted file mode 100644 index f358d221..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/spelling-x11-online.log +++ /dev/null @@ -1,9 +0,0 @@ - -(io.busystack.busymark:851112): dbind-WARNING **: 03:38:47.799: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory - -(io.busystack.busymark:851112): Atk-CRITICAL **: 03:38:47.923: atk_socket_embed: assertion 'plug_id != NULL' failed -[IMPORTANT:flutter/shell/platform/embedder/embedder_surface_gl_impeller.cc(126)] Using the Impeller rendering backend (OpenGLESSDF). - -** (process:2): WARNING **: 03:38:49.509: Failed to connect to bus: Could not connect: No such file or directory - -** (process:2): WARNING **: 03:38:49.588: Can't connect to a11y bus: Error receiving data: Connection reset by peer diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-2.log b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-2.log deleted file mode 100644 index 417d3bdb..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-2.log +++ /dev/null @@ -1,7 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:00 +0: selecting and confirming candidate binds draft and retains newer edits -02:32 +0: selecting and confirming candidate binds draft and retains newer edits - did not complete [E] -02:32 +0: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits (did not complete) diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-final.log b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-final.log deleted file mode 100644 index 6184f82e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-final.log +++ /dev/null @@ -1,18 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:00 +0: Nextcloud settings route selects its dedicated page -00:02 +1: remote editor tabs retain note titles through metadata rename -00:08 +2: cached note list searches content and excludes clean deletion tombstones -00:11 +3: favorites and ancestor category filtering operate on cached notes -00:12 +4: moving the last selected category note clears its filter -00:13 +5: the final category can disappear without hiding uncategorized notes -00:13 +6: uncertain attachment controls remain available with fetched remote state -00:17 +7: read-only metadata stays read-only while favorite is writable and export is explicit -00:17 +8: attachment deletion warns about links and cancellation retains the file -00:19 +9: remote deletion offers explicit discard with a second confirmation -00:19 +10: merge requires explicit choices for divergent scalar metadata -00:20 +11: read-only favorite conflict offers a safe merge -00:20 +12: uncertain creation lets the user select a candidate -00:21 +13: selecting and confirming candidate binds draft and retains newer edits -00:21 +14: forbidden pending changes offer recovery without overwrite -00:22 +15: unavailable pending changes offer recovery without overwrite -00:22 +16: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-real-zone.log b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-real-zone.log deleted file mode 100644 index 53f0cb55..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation-real-zone.log +++ /dev/null @@ -1,29 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:00 +0: selecting and confirming candidate binds draft and retains newer edits -══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════ -The following StateError was thrown running a test: -Bad state: No element - -When the exception was thrown, this was the stack: -#0 Iterable.single (dart:core/iterable.dart:694:25) -#1 WidgetController.widget (package:flutter_test/src/controller.dart:828:30) -#2 main. (file:///home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart:807:12) - -#3 testWidgets.. (package:flutter_test/src/widget_tester.dart:192:15) - -#4 TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1953:5) - - -(elided one frame from package:stack_trace) - -The test description was: - selecting and confirming candidate binds draft and retains newer edits -════════════════════════════════════════════════════════════════════════════════════════════════════ -00:04 +0 -1: selecting and confirming candidate binds draft and retains newer edits [E] - Test failed. See exception logs above. - The test description was: selecting and confirming candidate binds draft and retains newer edits - -00:04 +0 -1: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation.log b/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation.log deleted file mode 100644 index c0031531..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/ui-confirmation.log +++ /dev/null @@ -1,3 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:00 +0: selecting and confirming candidate binds draft and retains newer edits -00:05 +1: All tests passed! diff --git a/delivery/nextcloud-explicit-adoption/evidence/ui-debug-trace.log b/delivery/nextcloud-explicit-adoption/evidence/ui-debug-trace.log deleted file mode 100644 index 875d5db4..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/ui-debug-trace.log +++ /dev/null @@ -1,35 +0,0 @@ -00:00 +0: loading /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -00:00 +0: selecting and confirming candidate binds draft and retains newer edits -debug: tapping confirm -debug: tapped confirm -debug: iteration 0 pumping -debug: iteration 0 waiting -debug: iteration 1 pumping -debug: candidate GET -debug: iteration 1 waiting -debug: iteration 2 pumping -debug: iteration 2 waiting -debug: iteration 3 pumping -debug: iteration 3 waiting -debug: iteration 4 pumping -debug: iteration 4 waiting -unhandled error during finalization of test: -/home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart -PathNotFoundException: Deletion failed, path = '/tmp/flutter_tools.TOVRSC/flutter_test_listener.ILVVKQ' (OS Error: No such file or directory, errno = 2) -#0 _Directory._deleteSync (dart:io/directory_impl.dart:216:7) -#1 FileSystemEntity.deleteSync (dart:io/file_system_entity.dart:425:7) -#2 ForwardingFileSystemEntity.deleteSync (package:file/src/forwarding/forwarding_file_system_entity.dart:70:16) -#3 ErrorHandlingDirectory.deleteSync. (package:flutter_tools/src/base/error_handling_io.dart:717:22) -#4 _runSync (package:flutter_tools/src/base/error_handling_io.dart:1118:16) -#5 ErrorHandlingDirectory.deleteSync (package:flutter_tools/src/base/error_handling_io.dart:716:12) -#6 FlutterPlatform._createListenerDart. (package:flutter_tools/src/test/flutter_platform.dart:786:15) -#7 FlutterPlatform._startTest.finalize (package:flutter_tools/src/test/flutter_platform.dart:591:26) - -#8 asyncGuard. (package:flutter_tools/src/base/async_guard.dart:108:24) - - -03:52 +0: selecting and confirming candidate binds draft and retains newer edits - did not complete [E] -03:52 +0: Some tests failed. - -Failing tests: - /home/albert/busystack/busymark/test/src/nextcloud_notes_ui_test.dart: selecting and confirming candidate binds draft and retains newer edits (did not complete) diff --git a/delivery/nextcloud-explicit-adoption/evidence/upstream-source-hashes.json b/delivery/nextcloud-explicit-adoption/evidence/upstream-source-hashes.json deleted file mode 100644 index 2173410e..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/upstream-source-hashes.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "6.0.1": { - "docs/api/v1.md": "75f6d70833fb79542947efeea7c5d9e6707b1056769bea0a91d158f1caff41a4", - "lib/Controller/NotesApiController.php": "ec2f4c96e4d95dd3564f498d16be20fec1dc077a9b9d41eaefc51a2b12c74ab4" - }, - "6.1.0": { - "docs/api/v1.md": "b675f4d2ab24fd7b2580f0acf3b897e90eb4a1705e9f3a351a87e6e58d1c97f7", - "lib/Controller/NotesApiController.php": "93193faafe00d9e5eae5e4f111794f95d821233373b06e7768313bf27cd13c8f" - } -} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/visualization-release-x11.json b/delivery/nextcloud-explicit-adoption/evidence/visualization-release-x11.json deleted file mode 100644 index f63de1c9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/visualization-release-x11.json +++ /dev/null @@ -1 +0,0 @@ -{"ok":false,"checks":{},"error":"PlatformException(visualization.webRenderFailed, Unsupported result type, null, null)","stackTrace":"#0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:653)\n#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:366)\n\n#2 Future.timeout. (dart:async/future_impl.dart:1061)\n\n#3 PlatformWebRenderHost._invokeCancellable (package:busymark/src/visualization/web_render_host.dart:292)\n\n#4 PlatformWebRenderHost._invokeMap (package:busymark/src/visualization/web_render_host.dart:261)\n\n#5 runVisualizationReleaseSmoke (package:busymark/src/visualization/visualization_release_smoke.dart:74)\n\n#6 main (package:busymark/main.dart:26)\n\n"} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke-mermaid.svg b/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke-mermaid.svg deleted file mode 100644 index 6a2e57b0..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke-mermaid.svg +++ /dev/null @@ -1 +0,0 @@ -MarkdownPreview \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke.pdf b/delivery/nextcloud-explicit-adoption/evidence/visualization-smoke.pdf deleted file mode 100644 index b1e36ec38e2d909d488ac9aa760dee0f782a13a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67398 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

hHw5Kp3#w zaRyaKOE_HF#SI1n1pFb@Pi2aL?D99&uIk&k!2tqgaZwq?o%Z|{_M@x*;$y!X2;jEB z)gPX({Ac6<>Q~}*1LDFz1xcAdLla;^HXv0X6gk46pzk{8**Qa67xb?X1)S!*6UlVH z7v8YEXX6Oxk^K(10oay+jq^p&ZFe^hEB8BYHa5C2m^+W$4|+>ChwIL^Fhxa>7I0}} z%>!WB009r~Vq@hF=drbPgxe@9gY@leylmWVy4l#;xY+=G1qTS!?A!nxKpCJL62N|V zARP~PM>}U5IM0sYx*%;!rypoGaQ7Yb@83-XJpUT$MShR;B0nO%%=fMJ%#^?X{3}L# z1C<^T0~#oMyVNL)cg~zG#J>a@MoCpZd$pW_Wm6Y=te+$Kf%OhckvUKklxh}aj-OC z6hF~Q%Iv0&NegjL2?WWza#-DT#mX_X4D+At5 zD=WR5R!(jgt)$rQK9>~#2RyLEE}N7D{{x=XKj2AA@6wf|%s=4CO6yT!22k>>IKYiSKDO3vb*d>Msm0Q zWF%#F;{l!db9-f^B>w?VZdW^Gq<8C222jE-elilfX=Qf%jEtPvu9zb$wp$h;tnKnG zS@3S#kd@u7D>*UAUHvO3F1s5hvvZEY-|aw7ZdV)vmMpt;04zUt`5CN2g9 zn4jtp7n76zxn6NuS@3R{+^&8DLi?^h0!Eo#ehwBB+vVqAF/dev/null' EXIT -xvfb-run -a -s '-screen 0 1280x1024x24' \ - env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ - LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ - --spelling-release-smoke="$report" -python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert not report["checks"]["dictionaryInstalledDuringRun"], report; assert report["checks"]["installedDictionaryCount"] == 1, report; assert report["checks"]["personalWordPresentBeforeRun"], report' "$report" -sudo snap connect busymark:network -trap - EXIT - - -report="$HOME/snap/busymark/common/visualization-release-x11.json" -mkdir -p "$(dirname "$report")" -timeout --signal=TERM 300s \ - xvfb-run -a -s '-screen 0 1280x1024x24' \ - env GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 \ - LIBGL_ALWAYS_SOFTWARE=1 snap run busymark \ - --visualization-release-smoke="$report" -python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report' "$report" -test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" - - -runtime_dir="/run/user/$(id -u)" -sudo install -d -m 700 -o "$(id -u)" -g "$(id -g)" "$runtime_dir" -XDG_RUNTIME_DIR="$runtime_dir" \ - weston --backend=headless-backend.so --socket=wayland-99 \ - --idle-time=0 --log="${RUNNER_TEMP}/weston-snap.log" & -weston_pid=$! -sudo snap disconnect busymark:network -trap 'sudo snap connect busymark:network >/dev/null; kill "$weston_pid" 2>/dev/null || true' EXIT -for attempt in {1..40}; do - if [ -S "$runtime_dir/wayland-99" ]; then - break - fi - if ! kill -0 "$weston_pid" 2>/dev/null; then - cat "${RUNNER_TEMP}/weston-snap.log" - exit 1 - fi - sleep 0.25 -done -test -S "$runtime_dir/wayland-99" -spelling_report="$HOME/snap/busymark/common/spelling-release-wayland.json" -XDG_RUNTIME_DIR="$runtime_dir" WAYLAND_DISPLAY=wayland-99 \ - GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 \ - LIBGL_ALWAYS_SOFTWARE=1 \ - timeout --signal=TERM 300s snap run busymark \ - --spelling-release-smoke="$spelling_report" -python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report; assert report["checks"]["sourceEditorTransaction"], report; assert report["checks"]["formattedRichEditorTransaction"], report; assert report["checks"]["tableCellEditorTransaction"], report' "$spelling_report" -report="$HOME/snap/busymark/common/visualization-release-wayland.json" -XDG_RUNTIME_DIR="$runtime_dir" WAYLAND_DISPLAY=wayland-99 \ - GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 \ - LIBGL_ALWAYS_SOFTWARE=1 \ - timeout --signal=TERM 300s snap run busymark \ - --visualization-release-smoke="$report" -python3 -c 'import json,sys; report=json.load(open(sys.argv[1], encoding="utf-8")); assert report["ok"], report' "$report" -test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" -sudo snap connect busymark:network -trap 'kill "$weston_pid" 2>/dev/null || true' EXIT diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-installed-wayland.sh b/delivery/nextcloud-explicit-adoption/evidence/vm-installed-wayland.sh deleted file mode 100644 index 909bf34a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/vm-installed-wayland.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash -set -euo pipefail -export XDG_RUNTIME_DIR=/run/user/1000 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus LP_NUM_THREADS=2 LIBGL_ALWAYS_SOFTWARE=1 BUSYMARK_RELEASE_SMOKE=1 -mkdir -p "$HOME/snap-evidence" -weston --backend=headless --renderer=pixman --socket=wayland-99 --idle-time=0 --log="$HOME/snap-evidence/weston-final.log" & -wpid=$! -sudo snap disconnect busymark:network -trap 'sudo snap connect busymark:network >/dev/null; kill "$wpid" 2>/dev/null || true' EXIT -for attempt in {1..40}; do - test ! -S "$XDG_RUNTIME_DIR/wayland-99" || break - kill -0 "$wpid" - sleep 0.25 -done -test -S "$XDG_RUNTIME_DIR/wayland-99" -export WAYLAND_DISPLAY=wayland-99 GDK_BACKEND=wayland -report="$HOME/snap/busymark/common/spelling-release-wayland-final.json" -timeout --signal=TERM 300s snap run busymark --spelling-release-smoke="$report" -python3 -c 'import json,sys; r=json.load(open(sys.argv[1])); assert r["ok"],r; assert r["checks"]["sourceEditorTransaction"] and r["checks"]["formattedRichEditorTransaction"] and r["checks"]["tableCellEditorTransaction"],r; assert not r["checks"]["dictionaryInstalledDuringRun"] and r["checks"]["personalWordPresentBeforeRun"],r' "$report" -report="$HOME/snap/busymark/common/visualization-release-wayland-final.json" -timeout --signal=TERM 300s snap run busymark --visualization-release-smoke="$report" -python3 -c 'import json,sys; r=json.load(open(sys.argv[1])); assert r["ok"],r' "$report" -test -s "$HOME/snap/busymark/common/visualization-smoke.pdf" diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-native-dependencies.log b/delivery/nextcloud-explicit-adoption/evidence/vm-native-dependencies.log deleted file mode 100644 index cb548a53..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/vm-native-dependencies.log +++ /dev/null @@ -1,186 +0,0 @@ -Reading package lists... -Building dependency tree... -Reading state information... -fonts-noto-mono is already the newest version (20201225-2). -fonts-noto-mono set to manually installed. -The following NEW packages will be installed: - fonts-noto-core libhandy-1-0 -0 upgraded, 2 newly installed, 0 to remove and 21 not upgraded. -Need to get 13.5 MB of archives. -After this operation, 44.3 MB of additional disk space will be used. -Get:1 http://archive.ubuntu.com/ubuntu noble/main amd64 fonts-noto-core all 20201225-2 [13.3 MB] -Get:2 http://archive.ubuntu.com/ubuntu noble/main amd64 libhandy-1-0 amd64 1.8.3-1build2 [232 kB] -debconf: unable to initialize frontend: Dialog -debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) -debconf: falling back to frontend: Readline -debconf: unable to initialize frontend: Readline -debconf: (This frontend requires a controlling tty.) -debconf: falling back to frontend: Teletype -dpkg-preconfigure: unable to re-open stdin: -Fetched 13.5 MB in 5s (2782 kB/s) -Selecting previously unselected package fonts-noto-core. -(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 95969 files and directories currently installed.) -Preparing to unpack .../fonts-noto-core_20201225-2_all.deb ... -Unpacking fonts-noto-core (20201225-2) ... -Selecting previously unselected package libhandy-1-0:amd64. -Preparing to unpack .../libhandy-1-0_1.8.3-1build2_amd64.deb ... -Unpacking libhandy-1-0:amd64 (1.8.3-1build2) ... -Setting up fonts-noto-core (20201225-2) ... -Setting up libhandy-1-0:amd64 (1.8.3-1build2) ... -Processing triggers for libc-bin (2.39-0ubuntu8.9) ... -Processing triggers for fontconfig (2.15.0-1.1ubuntu2) ... -debconf: unable to initialize frontend: Dialog -debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) -debconf: falling back to frontend: Readline -debconf: unable to initialize frontend: Readline -debconf: (This frontend requires a controlling tty.) -debconf: falling back to frontend: Teletype - -Running kernel seems to be up-to-date. - -No services need to be restarted. - -No containers need to be restarted. - -No user sessions are running outdated binaries. - -No VM guests are running outdated hypervisor (qemu) binaries on this host. - linux-vdso.so.1 (0x00007ffd0bbfa000) - libfile_selector_linux_plugin.so => /home/tester/busymark-release/lib/libfile_selector_linux_plugin.so (0x0000708287caa000) - libgtk_plugin.so => /home/tester/busymark-release/lib/libgtk_plugin.so (0x0000708287ca4000) - libscreen_retriever_linux_plugin.so => /home/tester/busymark-release/lib/libscreen_retriever_linux_plugin.so (0x0000708287c9e000) - liburl_launcher_linux_plugin.so => /home/tester/busymark-release/lib/liburl_launcher_linux_plugin.so (0x0000708287c97000) - libwindow_manager_plugin.so => /home/tester/busymark-release/lib/libwindow_manager_plugin.so (0x0000708287c8b000) - libyaru_window_linux_plugin.so => /home/tester/busymark-release/lib/libyaru_window_linux_plugin.so (0x0000708287c81000) - libflutter_linux_gtk.so => /home/tester/busymark-release/lib/libflutter_linux_gtk.so (0x0000708286a00000) - libhandy-1.so.0 => /lib/x86_64-linux-gnu/libhandy-1.so.0 (0x0000708287bd7000) - libsecret-1.so.0 => /lib/x86_64-linux-gnu/libsecret-1.so.0 (0x0000708287b78000) - libwebkit2gtk-4.1.so.0 => /lib/x86_64-linux-gnu/libwebkit2gtk-4.1.so.0 (0x0000708280e00000) - libgtk-3.so.0 => /lib/x86_64-linux-gnu/libgtk-3.so.0 (0x0000708280600000) - libgdk-3.so.0 => /lib/x86_64-linux-gnu/libgdk-3.so.0 (0x0000708286905000) - libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x0000708287b5a000) - libpangocairo-1.0.so.0 => /lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x0000708287b49000) - libpango-1.0.so.0 => /lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x0000708287ade000) - libharfbuzz.so.0 => /lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007082804f3000) - libatk-1.0.so.0 => /lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x0000708287ab4000) - libcairo-gobject.so.2 => /lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x0000708287aa6000) - libcairo.so.2 => /lib/x86_64-linux-gnu/libcairo.so.2 (0x00007082803af000) - libgdk_pixbuf-2.0.so.0 => /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007082868d7000) - libsoup-3.0.so.0 => /lib/x86_64-linux-gnu/libsoup-3.0.so.0 (0x0000708280315000) - libgmodule-2.0.so.0 => /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x0000708287a9f000) - libgio-2.0.so.0 => /lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x0000708280145000) - libjavascriptcoregtk-4.1.so.0 => /lib/x86_64-linux-gnu/libjavascriptcoregtk-4.1.so.0 (0x000070827e200000) - libgobject-2.0.so.0 => /lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007082800e2000) - libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x000070827e0b7000) - libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x000070827de00000) - libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x000070827dd17000) - libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x0000708280dd2000) - libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x000070827da00000) - libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007082868d2000) - libepoxy.so.0 => /lib/x86_64-linux-gnu/libepoxy.so.0 (0x000070827d8dd000) - libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x000070827dcc6000) - libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007082868cd000) - /lib64/ld-linux-x86-64.so.2 (0x0000708287cdb000) - libfribidi.so.0 => /lib/x86_64-linux-gnu/libfribidi.so.0 (0x00007082800c4000) - libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x000070827d794000) - libatomic.so.1 => /lib/x86_64-linux-gnu/libatomic.so.1 (0x00007082868c2000) - libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x000070827d6c8000) - libwebpmux.so.3 => /lib/x86_64-linux-gnu/libwebpmux.so.3 (0x00007082868b2000) - libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x000070827e089000) - libicudata.so.74 => /lib/x86_64-linux-gnu/libicudata.so.74 (0x000070827b800000) - libicui18n.so.74 => /lib/x86_64-linux-gnu/libicui18n.so.74 (0x000070827b400000) - libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x000070827d5e8000) - libjpeg.so.8 => /lib/x86_64-linux-gnu/libjpeg.so.8 (0x000070827dc43000) - libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x000070827d5b0000) - libicuuc.so.74 => /lib/x86_64-linux-gnu/libicuuc.so.74 (0x000070827b000000) - libxml2.so.2 => /lib/x86_64-linux-gnu/libxml2.so.2 (0x000070827b21e000) - libsqlite3.so.0 => /lib/x86_64-linux-gnu/libsqlite3.so.0 (0x000070827ae98000) - libxslt.so.1 => /lib/x86_64-linux-gnu/libxslt.so.1 (0x000070827d56f000) - liblcms2.so.2 => /lib/x86_64-linux-gnu/liblcms2.so.2 (0x000070827b79e000) - libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x000070827dc1e000) - libgstallocators-1.0.so.0 => /lib/x86_64-linux-gnu/libgstallocators-1.0.so.0 (0x00007082800ba000) - libgstapp-1.0.so.0 => /lib/x86_64-linux-gnu/libgstapp-1.0.so.0 (0x00007082800a4000) - libgstbase-1.0.so.0 => /lib/x86_64-linux-gnu/libgstbase-1.0.so.0 (0x000070827ae13000) - libgstreamer-1.0.so.0 => /lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 (0x000070827acc0000) - libgstpbutils-1.0.so.0 => /lib/x86_64-linux-gnu/libgstpbutils-1.0.so.0 (0x000070827b75b000) - libgstaudio-1.0.so.0 => /lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 (0x000070827ac3b000) - libgsttag-1.0.so.0 => /lib/x86_64-linux-gnu/libgsttag-1.0.so.0 (0x000070827abfa000) - libgstvideo-1.0.so.0 => /lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 (0x000070827ab25000) - libgstgl-1.0.so.0 => /lib/x86_64-linux-gnu/libgstgl-1.0.so.0 (0x000070827aa92000) - libgstfft-1.0.so.0 => /lib/x86_64-linux-gnu/libgstfft-1.0.so.0 (0x000070827dc13000) - libwebpdemux.so.2 => /lib/x86_64-linux-gnu/libwebpdemux.so.2 (0x000070827e080000) - libwebp.so.7 => /lib/x86_64-linux-gnu/libwebp.so.7 (0x000070827aa17000) - libharfbuzz-icu.so.0 => /lib/x86_64-linux-gnu/libharfbuzz-icu.so.0 (0x000070827d56a000) - libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x000070827a8da000) - libwayland-server.so.0 => /lib/x86_64-linux-gnu/libwayland-server.so.0 (0x000070827a8c4000) - libwayland-egl.so.1 => /lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x000070827d565000) - libwayland-client.so.0 => /lib/x86_64-linux-gnu/libwayland-client.so.0 (0x000070827b20e000) - libmanette-0.2.so.0 => /lib/x86_64-linux-gnu/libmanette-0.2.so.0 (0x000070827a894000) - libseccomp.so.2 => /lib/x86_64-linux-gnu/libseccomp.so.2 (0x000070827a874000) - libenchant-2.so.2 => /lib/x86_64-linux-gnu/libenchant-2.so.2 (0x000070827b74e000) - libgbm.so.1 => /lib/x86_64-linux-gnu/libgbm.so.1 (0x000070827a86d000) - libdrm.so.2 => /lib/x86_64-linux-gnu/libdrm.so.2 (0x000070827a856000) - libtasn1.so.6 => /lib/x86_64-linux-gnu/libtasn1.so.6 (0x000070827a840000) - libhyphen.so.0 => /lib/x86_64-linux-gnu/libhyphen.so.0 (0x000070827a838000) - libpangoft2-1.0.so.0 => /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x000070827a81d000) - libXi.so.6 => /lib/x86_64-linux-gnu/libXi.so.6 (0x000070827a80a000) - libatk-bridge-2.0.so.0 => /lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0 (0x000070827a7ce000) - libXfixes.so.3 => /lib/x86_64-linux-gnu/libXfixes.so.3 (0x000070827a7c6000) - libxkbcommon.so.0 => /lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x000070827a77b000) - libwayland-cursor.so.0 => /lib/x86_64-linux-gnu/libwayland-cursor.so.0 (0x000070827a771000) - libXext.so.6 => /lib/x86_64-linux-gnu/libXext.so.6 (0x000070827a75d000) - libXcursor.so.1 => /lib/x86_64-linux-gnu/libXcursor.so.1 (0x000070827a751000) - libXdamage.so.1 => /lib/x86_64-linux-gnu/libXdamage.so.1 (0x000070827a74c000) - libXcomposite.so.1 => /lib/x86_64-linux-gnu/libXcomposite.so.1 (0x000070827a747000) - libXrandr.so.2 => /lib/x86_64-linux-gnu/libXrandr.so.2 (0x000070827a738000) - libXinerama.so.1 => /lib/x86_64-linux-gnu/libXinerama.so.1 (0x000070827a733000) - libthai.so.0 => /lib/x86_64-linux-gnu/libthai.so.0 (0x000070827a728000) - libgraphite2.so.3 => /lib/x86_64-linux-gnu/libgraphite2.so.3 (0x000070827a702000) - libXrender.so.1 => /lib/x86_64-linux-gnu/libXrender.so.1 (0x000070827a6f6000) - libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x000070827a6cb000) - libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x000070827a6bc000) - libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x000070827a6b7000) - libpixman-1.so.0 => /lib/x86_64-linux-gnu/libpixman-1.so.0 (0x000070827a608000) - libpsl.so.5 => /lib/x86_64-linux-gnu/libpsl.so.5 (0x000070827a5f4000) - libbrotlidec.so.1 => /lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x000070827a5e4000) - libgssapi_krb5.so.2 => /lib/x86_64-linux-gnu/libgssapi_krb5.so.2 (0x000070827a590000) - libnghttp2.so.14 => /lib/x86_64-linux-gnu/libnghttp2.so.14 (0x000070827a565000) - libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x000070827a518000) - libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x000070827a4eb000) - libffi.so.8 => /lib/x86_64-linux-gnu/libffi.so.8 (0x000070827a4dd000) - libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x000070827a443000) - libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0 (0x000070827a42f000) - libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x000070827a422000) - liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x000070827a400000) - liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x000070827a3cc000) - libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x000070827a312000) - libunwind.so.8 => /lib/x86_64-linux-gnu/libunwind.so.8 (0x000070827a2f7000) - libdw.so.1 => /lib/x86_64-linux-gnu/libdw.so.1 (0x000070827a243000) - liborc-0.4.so.0 => /lib/x86_64-linux-gnu/liborc-0.4.so.0 (0x000070827a191000) - libGL.so.1 => /lib/x86_64-linux-gnu/libGL.so.1 (0x000070827a108000) - libEGL.so.1 => /lib/x86_64-linux-gnu/libEGL.so.1 (0x000070827a0f6000) - libX11-xcb.so.1 => /lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x000070827a0f1000) - libgudev-1.0.so.0 => /lib/x86_64-linux-gnu/libgudev-1.0.so.0 (0x000070827a0e4000) - libsharpyuv.so.0 => /lib/x86_64-linux-gnu/libsharpyuv.so.0 (0x000070827a0dc000) - libevdev.so.2 => /lib/x86_64-linux-gnu/libevdev.so.2 (0x000070827a0bc000) - libatspi.so.0 => /lib/x86_64-linux-gnu/libatspi.so.0 (0x000070827a082000) - libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x000070827a033000) - libdatrie.so.1 => /lib/x86_64-linux-gnu/libdatrie.so.1 (0x000070827a02a000) - libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x000070827a022000) - libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x000070827a01a000) - libunistring.so.5 => /lib/x86_64-linux-gnu/libunistring.so.5 (0x0000708279e6d000) - libidn2.so.0 => /lib/x86_64-linux-gnu/libidn2.so.0 (0x0000708279e4b000) - libbrotlicommon.so.1 => /lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x0000708279e28000) - libkrb5.so.3 => /lib/x86_64-linux-gnu/libkrb5.so.3 (0x0000708279d5d000) - libk5crypto.so.3 => /lib/x86_64-linux-gnu/libk5crypto.so.3 (0x0000708279d31000) - libcom_err.so.2 => /lib/x86_64-linux-gnu/libcom_err.so.2 (0x0000708279d2b000) - libkrb5support.so.0 => /lib/x86_64-linux-gnu/libkrb5support.so.0 (0x0000708279d1e000) - libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x0000708279ce3000) - libelf.so.1 => /lib/x86_64-linux-gnu/libelf.so.1 (0x0000708279cc2000) - libGLdispatch.so.0 => /lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x0000708279c0a000) - libGLX.so.0 => /lib/x86_64-linux-gnu/libGLX.so.0 (0x0000708279bd7000) - libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x0000708279ba4000) - libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x0000708279b8e000) - libkeyutils.so.1 => /lib/x86_64-linux-gnu/libkeyutils.so.1 (0x0000708279b85000) - libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x0000708279b73000) - libmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x0000708279b64000) diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-native-smokes.sh b/delivery/nextcloud-explicit-adoption/evidence/vm-native-smokes.sh deleted file mode 100644 index e411390c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/vm-native-smokes.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -set -euo pipefail -export DISPLAY=:101 XDG_RUNTIME_DIR=/run/user/1000 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus -export LIBGL_ALWAYS_SOFTWARE=1 LP_NUM_THREADS=2 BUSYMARK_RELEASE_SMOKE=1 -mkdir -p "$HOME/native-evidence" "$HOME/native-spelling-profile-final" -Xvfb :101 -screen 0 1280x1024x24 -nolisten tcp > "$HOME/native-evidence/xvfb.log" 2>&1 & -xpid=$! -trap 'kill "$xpid" 2>/dev/null || true' EXIT -sleep 2 -export XDG_DATA_HOME="$HOME/native-spelling-profile-final" GDK_BACKEND=x11 -"$HOME/busymark-release/busymark" --spelling-release-smoke="$HOME/native-evidence/spelling-online-final.json" > "$HOME/native-evidence/spelling-online.log" 2>&1 -sudo unshare --net --fork -- runuser -u tester -- env DISPLAY=:101 XDG_RUNTIME_DIR=/run/user/1000 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus XDG_DATA_HOME="$XDG_DATA_HOME" GDK_BACKEND=x11 BUSYMARK_RELEASE_SMOKE=1 LIBGL_ALWAYS_SOFTWARE=1 LP_NUM_THREADS=2 "$HOME/busymark-release/busymark" --spelling-release-smoke="$HOME/native-evidence/spelling-x11-denied-network-final.json" > "$HOME/native-evidence/spelling-x11-denied-network.log" 2>&1 -weston --backend=headless --renderer=pixman --socket=wayland-native --idle-time=0 --log="$HOME/native-evidence/weston.log" & -wpid=$! -trap 'kill "$xpid" "$wpid" 2>/dev/null || true' EXIT -sleep 3 -sudo unshare --net --fork -- runuser -u tester -- env XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-native XDG_DATA_HOME="$XDG_DATA_HOME" GDK_BACKEND=wayland BUSYMARK_RELEASE_SMOKE=1 LIBGL_ALWAYS_SOFTWARE=1 LP_NUM_THREADS=2 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus "$HOME/busymark-release/busymark" --spelling-release-smoke="$HOME/native-evidence/spelling-wayland-denied-network-final.json" > "$HOME/native-evidence/spelling-wayland-denied-network.log" 2>&1 -python3 - <<'PY' -import json,pathlib -r=pathlib.Path.home()/'native-evidence' -for p in r.glob('spelling*-final.json'): - d=json.loads(p.read_text());assert d['ok'],d - if 'denied' in p.name:assert not d['checks']['dictionaryInstalledDuringRun'] and d['checks']['personalWordPresentBeforeRun'],d -print('Native dictionary install and actual denied-network restarts passed on X11 and Wayland.') -PY diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-window-manager.log b/delivery/nextcloud-explicit-adoption/evidence/vm-window-manager.log deleted file mode 100644 index d1a693d9..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/vm-window-manager.log +++ /dev/null @@ -1,99 +0,0 @@ -Reading package lists... -Building dependency tree... -Reading state information... -The following additional packages will be installed: - libgif7 libid3tag0 libimlib2t64 libobrender32v5 libobt2v5 libspectre1 - libstartup-notification0 libxcb-util1 obconf scrot -Suggested packages: - fonts-dejavu libxml2-dev tint2 openbox-gnome-session openbox-kde-session -The following NEW packages will be installed: - libgif7 libid3tag0 libimlib2t64 libobrender32v5 libobt2v5 libspectre1 - libstartup-notification0 libxcb-util1 obconf openbox scrot -0 upgraded, 11 newly installed, 0 to remove and 21 not upgraded. -Need to get 924 kB of archives. -After this operation, 3806 kB of additional disk space will be used. -Get:1 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgif7 amd64 5.2.2-1ubuntu1.2 [35.6 kB] -Get:2 http://archive.ubuntu.com/ubuntu noble/universe amd64 libid3tag0 amd64 0.15.1b-14build1 [33.6 kB] -Get:3 http://archive.ubuntu.com/ubuntu noble/main amd64 libspectre1 amd64 0.2.12-1build2 [30.9 kB] -Get:4 http://archive.ubuntu.com/ubuntu noble/universe amd64 libimlib2t64 amd64 1.12.1-1.1build2 [208 kB] -Get:5 http://archive.ubuntu.com/ubuntu noble/universe amd64 libobt2v5 amd64 3.6.1-12build5 [33.3 kB] -Get:6 http://archive.ubuntu.com/ubuntu noble/universe amd64 libobrender32v5 amd64 3.6.1-12build5 [42.5 kB] -Get:7 http://archive.ubuntu.com/ubuntu noble/main amd64 libxcb-util1 amd64 0.4.0-1build3 [10.7 kB] -Get:8 http://archive.ubuntu.com/ubuntu noble/main amd64 libstartup-notification0 amd64 0.12-6build3 [18.4 kB] -Get:9 http://archive.ubuntu.com/ubuntu noble/universe amd64 obconf amd64 1:2.0.4+git20150213-3build1 [136 kB] -Get:10 http://archive.ubuntu.com/ubuntu noble/universe amd64 openbox amd64 3.6.1-12build5 [304 kB] -Get:11 http://archive.ubuntu.com/ubuntu noble/universe amd64 scrot amd64 1.10-1build2 [71.5 kB] -debconf: unable to initialize frontend: Dialog -debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) -debconf: falling back to frontend: Readline -debconf: unable to initialize frontend: Readline -debconf: (This frontend requires a controlling tty.) -debconf: falling back to frontend: Teletype -dpkg-preconfigure: unable to re-open stdin: -Fetched 924 kB in 3s (330 kB/s) -Selecting previously unselected package libgif7:amd64. -(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 96253 files and directories currently installed.) -Preparing to unpack .../00-libgif7_5.2.2-1ubuntu1.2_amd64.deb ... -Unpacking libgif7:amd64 (5.2.2-1ubuntu1.2) ... -Selecting previously unselected package libid3tag0:amd64. -Preparing to unpack .../01-libid3tag0_0.15.1b-14build1_amd64.deb ... -Unpacking libid3tag0:amd64 (0.15.1b-14build1) ... -Selecting previously unselected package libspectre1:amd64. -Preparing to unpack .../02-libspectre1_0.2.12-1build2_amd64.deb ... -Unpacking libspectre1:amd64 (0.2.12-1build2) ... -Selecting previously unselected package libimlib2t64:amd64. -Preparing to unpack .../03-libimlib2t64_1.12.1-1.1build2_amd64.deb ... -Unpacking libimlib2t64:amd64 (1.12.1-1.1build2) ... -Selecting previously unselected package libobt2v5:amd64. -Preparing to unpack .../04-libobt2v5_3.6.1-12build5_amd64.deb ... -Unpacking libobt2v5:amd64 (3.6.1-12build5) ... -Selecting previously unselected package libobrender32v5. -Preparing to unpack .../05-libobrender32v5_3.6.1-12build5_amd64.deb ... -Unpacking libobrender32v5 (3.6.1-12build5) ... -Selecting previously unselected package libxcb-util1:amd64. -Preparing to unpack .../06-libxcb-util1_0.4.0-1build3_amd64.deb ... -Unpacking libxcb-util1:amd64 (0.4.0-1build3) ... -Selecting previously unselected package libstartup-notification0:amd64. -Preparing to unpack .../07-libstartup-notification0_0.12-6build3_amd64.deb ... -Unpacking libstartup-notification0:amd64 (0.12-6build3) ... -Selecting previously unselected package obconf. -Preparing to unpack .../08-obconf_1%3a2.0.4+git20150213-3build1_amd64.deb ... -Unpacking obconf (1:2.0.4+git20150213-3build1) ... -Selecting previously unselected package openbox. -Preparing to unpack .../09-openbox_3.6.1-12build5_amd64.deb ... -Unpacking openbox (3.6.1-12build5) ... -Selecting previously unselected package scrot. -Preparing to unpack .../10-scrot_1.10-1build2_amd64.deb ... -Unpacking scrot (1.10-1build2) ... -Setting up libspectre1:amd64 (0.2.12-1build2) ... -Setting up libxcb-util1:amd64 (0.4.0-1build3) ... -Setting up libid3tag0:amd64 (0.15.1b-14build1) ... -Setting up libobt2v5:amd64 (3.6.1-12build5) ... -Setting up libgif7:amd64 (5.2.2-1ubuntu1.2) ... -Setting up libstartup-notification0:amd64 (0.12-6build3) ... -Setting up libimlib2t64:amd64 (1.12.1-1.1build2) ... -Setting up libobrender32v5 (3.6.1-12build5) ... -Setting up scrot (1.10-1build2) ... -Setting up obconf (1:2.0.4+git20150213-3build1) ... -Setting up openbox (3.6.1-12build5) ... -update-alternatives: using /usr/bin/openbox to provide /usr/bin/x-window-manager (x-window-manager) in auto mode -update-alternatives: using /usr/bin/openbox-session to provide /usr/bin/x-session-manager (x-session-manager) in auto mode -Processing triggers for libc-bin (2.39-0ubuntu8.9) ... -Processing triggers for man-db (2.12.0-4build2) ... -Processing triggers for shared-mime-info (2.4-4) ... -debconf: unable to initialize frontend: Dialog -debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) -debconf: falling back to frontend: Readline -debconf: unable to initialize frontend: Readline -debconf: (This frontend requires a controlling tty.) -debconf: falling back to frontend: Teletype - -Running kernel seems to be up-to-date. - -No services need to be restarted. - -No containers need to be restarted. - -No user sessions are running outdated binaries. - -No VM guests are running outdated hypervisor (qemu) binaries on this host. diff --git a/delivery/nextcloud-explicit-adoption/evidence/vm-xdg-bootstrap.log b/delivery/nextcloud-explicit-adoption/evidence/vm-xdg-bootstrap.log deleted file mode 100644 index 6e9b2b6b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/vm-xdg-bootstrap.log +++ /dev/null @@ -1,351 +0,0 @@ -Reading package lists... -Building dependency tree... -Reading state information... -The following additional packages will be installed: - cpp cpp-13 cpp-13-x86-64-linux-gnu cpp-x86-64-linux-gnu gcc-13-base - libauthen-sasl-perl libclone-perl libdata-dump-perl libencode-locale-perl - libfile-basedir-perl libfile-desktopentry-perl libfile-listing-perl - libfile-mimeinfo-perl libfont-afm-perl libhtml-form-perl libhtml-format-perl - libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl - libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl - libhttp-message-perl libhttp-negotiate-perl libio-html-perl - libio-socket-ssl-perl libio-stringy-perl libipc-system-simple-perl libisl23 - liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libmpc3 - libnet-dbus-perl libnet-http-perl libnet-smtp-ssl-perl libnet-ssleay-perl - libtie-ixhash-perl libtimedate-perl libtry-tiny-perl liburi-perl libwww-perl - libwww-robotrules-perl libx11-protocol-perl libxcb-shape0 libxml-parser-perl - libxml-twig-perl libxml-xpathengine-perl libxxf86dga1 perl-openssl-defaults - x11-utils x11-xserver-utils zutty -Suggested packages: - cpp-doc gcc-13-locales cpp-13-doc libdigest-hmac-perl libgssapi-perl - libio-compress-brotli-perl libcrypt-ssleay-perl libsub-name-perl - libbusiness-isbn-perl libregexp-ipv6-perl libauthen-ntlm-perl - libunicode-map8-perl libunicode-string-perl xml-twig-tools debhelper - mesa-utils nickle cairo-5c xorg-docs-core -Recommended packages: - luit -The following NEW packages will be installed: - cpp cpp-13 cpp-13-x86-64-linux-gnu cpp-x86-64-linux-gnu gcc-13-base - libauthen-sasl-perl libclone-perl libdata-dump-perl libencode-locale-perl - libfile-basedir-perl libfile-desktopentry-perl libfile-listing-perl - libfile-mimeinfo-perl libfont-afm-perl libhtml-form-perl libhtml-format-perl - libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl - libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl - libhttp-message-perl libhttp-negotiate-perl libio-html-perl - libio-socket-ssl-perl libio-stringy-perl libipc-system-simple-perl libisl23 - liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libmpc3 - libnet-dbus-perl libnet-http-perl libnet-smtp-ssl-perl libnet-ssleay-perl - libtie-ixhash-perl libtimedate-perl libtry-tiny-perl liburi-perl libwww-perl - libwww-robotrules-perl libx11-protocol-perl libxcb-shape0 libxml-parser-perl - libxml-twig-perl libxml-xpathengine-perl libxxf86dga1 perl-openssl-defaults - x11-utils x11-xserver-utils xdg-utils zutty -0 upgraded, 54 newly installed, 0 to remove and 21 not upgraded. -Need to get 14.6 MB of archives. -After this operation, 44.0 MB of additional disk space will be used. -Get:1 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gcc-13-base amd64 13.3.0-6ubuntu2~24.04.1 [51.6 kB] -Get:2 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libisl23 amd64 0.26-3build1.1 [680 kB] -Get:3 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libmpc3 amd64 1.3.1-1build1.1 [54.6 kB] -Get:4 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 cpp-13-x86-64-linux-gnu amd64 13.3.0-6ubuntu2~24.04.1 [10.7 MB] -Get:5 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 cpp-13 amd64 13.3.0-6ubuntu2~24.04.1 [1042 B] -Get:6 http://archive.ubuntu.com/ubuntu noble/main amd64 cpp-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [5326 B] -Get:7 http://archive.ubuntu.com/ubuntu noble/main amd64 cpp amd64 4:13.2.0-7ubuntu1 [22.4 kB] -Get:8 http://archive.ubuntu.com/ubuntu noble/main amd64 libclone-perl amd64 0.46-1build3 [10.7 kB] -Get:9 http://archive.ubuntu.com/ubuntu noble/main amd64 libdata-dump-perl all 1.25-1 [25.9 kB] -Get:10 http://archive.ubuntu.com/ubuntu noble/main amd64 libencode-locale-perl all 1.05-3 [11.6 kB] -Get:11 http://archive.ubuntu.com/ubuntu noble/main amd64 libipc-system-simple-perl all 1.30-2 [22.3 kB] -Get:12 http://archive.ubuntu.com/ubuntu noble/main amd64 libfile-basedir-perl all 0.09-2 [14.4 kB] -Get:13 http://archive.ubuntu.com/ubuntu noble/main amd64 liburi-perl all 5.27-1 [88.0 kB] -Get:14 http://archive.ubuntu.com/ubuntu noble/main amd64 libfile-desktopentry-perl all 0.22-3 [16.8 kB] -Get:15 http://archive.ubuntu.com/ubuntu noble/main amd64 libtimedate-perl all 2.3300-2 [34.0 kB] -Get:16 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libhttp-date-perl all 6.06-1ubuntu0.24.04.1 [10.6 kB] -Get:17 http://archive.ubuntu.com/ubuntu noble/main amd64 libfile-listing-perl all 6.16-1 [11.3 kB] -Get:18 http://archive.ubuntu.com/ubuntu noble/main amd64 libfile-mimeinfo-perl all 0.34-1 [42.1 kB] -Get:19 http://archive.ubuntu.com/ubuntu noble/main amd64 libfont-afm-perl all 1.20-4 [13.0 kB] -Get:20 http://archive.ubuntu.com/ubuntu noble/main amd64 libhtml-tagset-perl all 3.20-6 [11.3 kB] -Get:21 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libhtml-parser-perl amd64 3.81-1ubuntu0.1 [86.0 kB] -Get:22 http://archive.ubuntu.com/ubuntu noble/main amd64 libio-html-perl all 1.004-3 [15.9 kB] -Get:23 http://archive.ubuntu.com/ubuntu noble/main amd64 liblwp-mediatypes-perl all 6.04-2 [20.1 kB] -Get:24 http://archive.ubuntu.com/ubuntu noble/main amd64 libhttp-message-perl all 6.45-1ubuntu1 [78.2 kB] -Get:25 http://archive.ubuntu.com/ubuntu noble/main amd64 libhtml-form-perl all 6.11-1 [32.1 kB] -Get:26 http://archive.ubuntu.com/ubuntu noble/main amd64 libhtml-tree-perl all 5.07-3 [200 kB] -Get:27 http://archive.ubuntu.com/ubuntu noble/main amd64 libhtml-format-perl all 2.16-2 [36.9 kB] -Get:28 http://archive.ubuntu.com/ubuntu noble/main amd64 libhttp-cookies-perl all 6.11-1 [18.2 kB] -Get:29 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libhttp-daemon-perl all 6.16-1ubuntu0.24.04.1 [22.8 kB] -Get:30 http://archive.ubuntu.com/ubuntu noble/main amd64 libhttp-negotiate-perl all 6.01-2 [12.4 kB] -Get:31 http://archive.ubuntu.com/ubuntu noble/main amd64 perl-openssl-defaults amd64 7build3 [6626 B] -Get:32 http://archive.ubuntu.com/ubuntu noble/main amd64 libnet-ssleay-perl amd64 1.94-1build4 [316 kB] -Get:33 http://archive.ubuntu.com/ubuntu noble/main amd64 libio-socket-ssl-perl all 2.085-1 [195 kB] -Get:34 http://archive.ubuntu.com/ubuntu noble/main amd64 libio-stringy-perl all 2.111-3 [55.8 kB] -Get:35 http://archive.ubuntu.com/ubuntu noble/main amd64 libnet-http-perl all 6.23-1 [22.3 kB] -Get:36 http://archive.ubuntu.com/ubuntu noble/main amd64 libtry-tiny-perl all 0.31-2 [20.8 kB] -Get:37 http://archive.ubuntu.com/ubuntu noble/main amd64 libwww-robotrules-perl all 6.02-1 [12.6 kB] -Get:38 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libwww-perl all 6.76-1ubuntu0.1 [139 kB] -Get:39 http://archive.ubuntu.com/ubuntu noble/main amd64 liblwp-protocol-https-perl all 6.13-1 [9006 B] -Get:40 http://archive.ubuntu.com/ubuntu noble/main amd64 libnet-smtp-ssl-perl all 1.04-2 [6218 B] -Get:41 http://archive.ubuntu.com/ubuntu noble/main amd64 libmailtools-perl all 2.21-2 [80.4 kB] -Get:42 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libxml-parser-perl amd64 2.47-1ubuntu0.24.04.1 [204 kB] -Get:43 http://archive.ubuntu.com/ubuntu noble/main amd64 libxml-twig-perl all 1:3.52-2 [158 kB] -Get:44 http://archive.ubuntu.com/ubuntu noble/main amd64 libnet-dbus-perl amd64 1.2.0-2build3 [165 kB] -Get:45 http://archive.ubuntu.com/ubuntu noble/main amd64 libtie-ixhash-perl all 1.23-4 [11.3 kB] -Get:46 http://archive.ubuntu.com/ubuntu noble/main amd64 libx11-protocol-perl all 0.56-9 [122 kB] -Get:47 http://archive.ubuntu.com/ubuntu noble/main amd64 libxcb-shape0 amd64 1.15-1ubuntu2 [6100 B] -Get:48 http://archive.ubuntu.com/ubuntu noble/main amd64 libxml-xpathengine-perl all 0.14-2 [32.6 kB] -Get:49 http://archive.ubuntu.com/ubuntu noble/main amd64 libxxf86dga1 amd64 2:1.1.5-1build1 [11.6 kB] -Get:50 http://archive.ubuntu.com/ubuntu noble/main amd64 x11-utils amd64 7.7+6build2 [189 kB] -Get:51 http://archive.ubuntu.com/ubuntu noble/main amd64 x11-xserver-utils amd64 7.7+10build2 [169 kB] -Get:52 http://archive.ubuntu.com/ubuntu noble/main amd64 xdg-utils all 1.1.3-4.1ubuntu3 [62.0 kB] -Get:53 http://archive.ubuntu.com/ubuntu noble/universe amd64 zutty amd64 0.14.8.20231210+dfsg1-1 [185 kB] -Get:54 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libauthen-sasl-perl all 2.1700-1ubuntu0.1 [40.8 kB] -debconf: unable to initialize frontend: Dialog -debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) -debconf: falling back to frontend: Readline -debconf: unable to initialize frontend: Readline -debconf: (This frontend requires a controlling tty.) -debconf: falling back to frontend: Teletype -dpkg-preconfigure: unable to re-open stdin: -Fetched 14.6 MB in 4s (3884 kB/s) -Selecting previously unselected package gcc-13-base:amd64. -(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 94782 files and directories currently installed.) -Preparing to unpack .../00-gcc-13-base_13.3.0-6ubuntu2~24.04.1_amd64.deb ... -Unpacking gcc-13-base:amd64 (13.3.0-6ubuntu2~24.04.1) ... -Selecting previously unselected package libisl23:amd64. -Preparing to unpack .../01-libisl23_0.26-3build1.1_amd64.deb ... -Unpacking libisl23:amd64 (0.26-3build1.1) ... -Selecting previously unselected package libmpc3:amd64. -Preparing to unpack .../02-libmpc3_1.3.1-1build1.1_amd64.deb ... -Unpacking libmpc3:amd64 (1.3.1-1build1.1) ... -Selecting previously unselected package cpp-13-x86-64-linux-gnu. -Preparing to unpack .../03-cpp-13-x86-64-linux-gnu_13.3.0-6ubuntu2~24.04.1_amd64.deb ... -Unpacking cpp-13-x86-64-linux-gnu (13.3.0-6ubuntu2~24.04.1) ... -Selecting previously unselected package cpp-13. -Preparing to unpack .../04-cpp-13_13.3.0-6ubuntu2~24.04.1_amd64.deb ... -Unpacking cpp-13 (13.3.0-6ubuntu2~24.04.1) ... -Selecting previously unselected package cpp-x86-64-linux-gnu. -Preparing to unpack .../05-cpp-x86-64-linux-gnu_4%3a13.2.0-7ubuntu1_amd64.deb ... -Unpacking cpp-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... -Selecting previously unselected package cpp. -Preparing to unpack .../06-cpp_4%3a13.2.0-7ubuntu1_amd64.deb ... -Unpacking cpp (4:13.2.0-7ubuntu1) ... -Selecting previously unselected package libclone-perl:amd64. -Preparing to unpack .../07-libclone-perl_0.46-1build3_amd64.deb ... -Unpacking libclone-perl:amd64 (0.46-1build3) ... -Selecting previously unselected package libdata-dump-perl. -Preparing to unpack .../08-libdata-dump-perl_1.25-1_all.deb ... -Unpacking libdata-dump-perl (1.25-1) ... -Selecting previously unselected package libencode-locale-perl. -Preparing to unpack .../09-libencode-locale-perl_1.05-3_all.deb ... -Unpacking libencode-locale-perl (1.05-3) ... -Selecting previously unselected package libipc-system-simple-perl. -Preparing to unpack .../10-libipc-system-simple-perl_1.30-2_all.deb ... -Unpacking libipc-system-simple-perl (1.30-2) ... -Selecting previously unselected package libfile-basedir-perl. -Preparing to unpack .../11-libfile-basedir-perl_0.09-2_all.deb ... -Unpacking libfile-basedir-perl (0.09-2) ... -Selecting previously unselected package liburi-perl. -Preparing to unpack .../12-liburi-perl_5.27-1_all.deb ... -Unpacking liburi-perl (5.27-1) ... -Selecting previously unselected package libfile-desktopentry-perl. -Preparing to unpack .../13-libfile-desktopentry-perl_0.22-3_all.deb ... -Unpacking libfile-desktopentry-perl (0.22-3) ... -Selecting previously unselected package libtimedate-perl. -Preparing to unpack .../14-libtimedate-perl_2.3300-2_all.deb ... -Unpacking libtimedate-perl (2.3300-2) ... -Selecting previously unselected package libhttp-date-perl. -Preparing to unpack .../15-libhttp-date-perl_6.06-1ubuntu0.24.04.1_all.deb ... -Unpacking libhttp-date-perl (6.06-1ubuntu0.24.04.1) ... -Selecting previously unselected package libfile-listing-perl. -Preparing to unpack .../16-libfile-listing-perl_6.16-1_all.deb ... -Unpacking libfile-listing-perl (6.16-1) ... -Selecting previously unselected package libfile-mimeinfo-perl. -Preparing to unpack .../17-libfile-mimeinfo-perl_0.34-1_all.deb ... -Unpacking libfile-mimeinfo-perl (0.34-1) ... -Selecting previously unselected package libfont-afm-perl. -Preparing to unpack .../18-libfont-afm-perl_1.20-4_all.deb ... -Unpacking libfont-afm-perl (1.20-4) ... -Selecting previously unselected package libhtml-tagset-perl. -Preparing to unpack .../19-libhtml-tagset-perl_3.20-6_all.deb ... -Unpacking libhtml-tagset-perl (3.20-6) ... -Selecting previously unselected package libhtml-parser-perl:amd64. -Preparing to unpack .../20-libhtml-parser-perl_3.81-1ubuntu0.1_amd64.deb ... -Unpacking libhtml-parser-perl:amd64 (3.81-1ubuntu0.1) ... -Selecting previously unselected package libio-html-perl. -Preparing to unpack .../21-libio-html-perl_1.004-3_all.deb ... -Unpacking libio-html-perl (1.004-3) ... -Selecting previously unselected package liblwp-mediatypes-perl. -Preparing to unpack .../22-liblwp-mediatypes-perl_6.04-2_all.deb ... -Unpacking liblwp-mediatypes-perl (6.04-2) ... -Selecting previously unselected package libhttp-message-perl. -Preparing to unpack .../23-libhttp-message-perl_6.45-1ubuntu1_all.deb ... -Unpacking libhttp-message-perl (6.45-1ubuntu1) ... -Selecting previously unselected package libhtml-form-perl. -Preparing to unpack .../24-libhtml-form-perl_6.11-1_all.deb ... -Unpacking libhtml-form-perl (6.11-1) ... -Selecting previously unselected package libhtml-tree-perl. -Preparing to unpack .../25-libhtml-tree-perl_5.07-3_all.deb ... -Unpacking libhtml-tree-perl (5.07-3) ... -Selecting previously unselected package libhtml-format-perl. -Preparing to unpack .../26-libhtml-format-perl_2.16-2_all.deb ... -Unpacking libhtml-format-perl (2.16-2) ... -Selecting previously unselected package libhttp-cookies-perl. -Preparing to unpack .../27-libhttp-cookies-perl_6.11-1_all.deb ... -Unpacking libhttp-cookies-perl (6.11-1) ... -Selecting previously unselected package libhttp-daemon-perl. -Preparing to unpack .../28-libhttp-daemon-perl_6.16-1ubuntu0.24.04.1_all.deb ... -Unpacking libhttp-daemon-perl (6.16-1ubuntu0.24.04.1) ... -Selecting previously unselected package libhttp-negotiate-perl. -Preparing to unpack .../29-libhttp-negotiate-perl_6.01-2_all.deb ... -Unpacking libhttp-negotiate-perl (6.01-2) ... -Selecting previously unselected package perl-openssl-defaults:amd64. -Preparing to unpack .../30-perl-openssl-defaults_7build3_amd64.deb ... -Unpacking perl-openssl-defaults:amd64 (7build3) ... -Selecting previously unselected package libnet-ssleay-perl:amd64. -Preparing to unpack .../31-libnet-ssleay-perl_1.94-1build4_amd64.deb ... -Unpacking libnet-ssleay-perl:amd64 (1.94-1build4) ... -Selecting previously unselected package libio-socket-ssl-perl. -Preparing to unpack .../32-libio-socket-ssl-perl_2.085-1_all.deb ... -Unpacking libio-socket-ssl-perl (2.085-1) ... -Selecting previously unselected package libio-stringy-perl. -Preparing to unpack .../33-libio-stringy-perl_2.111-3_all.deb ... -Unpacking libio-stringy-perl (2.111-3) ... -Selecting previously unselected package libnet-http-perl. -Preparing to unpack .../34-libnet-http-perl_6.23-1_all.deb ... -Unpacking libnet-http-perl (6.23-1) ... -Selecting previously unselected package libtry-tiny-perl. -Preparing to unpack .../35-libtry-tiny-perl_0.31-2_all.deb ... -Unpacking libtry-tiny-perl (0.31-2) ... -Selecting previously unselected package libwww-robotrules-perl. -Preparing to unpack .../36-libwww-robotrules-perl_6.02-1_all.deb ... -Unpacking libwww-robotrules-perl (6.02-1) ... -Selecting previously unselected package libwww-perl. -Preparing to unpack .../37-libwww-perl_6.76-1ubuntu0.1_all.deb ... -Unpacking libwww-perl (6.76-1ubuntu0.1) ... -Selecting previously unselected package liblwp-protocol-https-perl. -Preparing to unpack .../38-liblwp-protocol-https-perl_6.13-1_all.deb ... -Unpacking liblwp-protocol-https-perl (6.13-1) ... -Selecting previously unselected package libnet-smtp-ssl-perl. -Preparing to unpack .../39-libnet-smtp-ssl-perl_1.04-2_all.deb ... -Unpacking libnet-smtp-ssl-perl (1.04-2) ... -Selecting previously unselected package libmailtools-perl. -Preparing to unpack .../40-libmailtools-perl_2.21-2_all.deb ... -Unpacking libmailtools-perl (2.21-2) ... -Selecting previously unselected package libxml-parser-perl. -Preparing to unpack .../41-libxml-parser-perl_2.47-1ubuntu0.24.04.1_amd64.deb ... -Unpacking libxml-parser-perl (2.47-1ubuntu0.24.04.1) ... -Selecting previously unselected package libxml-twig-perl. -Preparing to unpack .../42-libxml-twig-perl_1%3a3.52-2_all.deb ... -Unpacking libxml-twig-perl (1:3.52-2) ... -Selecting previously unselected package libnet-dbus-perl. -Preparing to unpack .../43-libnet-dbus-perl_1.2.0-2build3_amd64.deb ... -Unpacking libnet-dbus-perl (1.2.0-2build3) ... -Selecting previously unselected package libtie-ixhash-perl. -Preparing to unpack .../44-libtie-ixhash-perl_1.23-4_all.deb ... -Unpacking libtie-ixhash-perl (1.23-4) ... -Selecting previously unselected package libx11-protocol-perl. -Preparing to unpack .../45-libx11-protocol-perl_0.56-9_all.deb ... -Unpacking libx11-protocol-perl (0.56-9) ... -Selecting previously unselected package libxcb-shape0:amd64. -Preparing to unpack .../46-libxcb-shape0_1.15-1ubuntu2_amd64.deb ... -Unpacking libxcb-shape0:amd64 (1.15-1ubuntu2) ... -Selecting previously unselected package libxml-xpathengine-perl. -Preparing to unpack .../47-libxml-xpathengine-perl_0.14-2_all.deb ... -Unpacking libxml-xpathengine-perl (0.14-2) ... -Selecting previously unselected package libxxf86dga1:amd64. -Preparing to unpack .../48-libxxf86dga1_2%3a1.1.5-1build1_amd64.deb ... -Unpacking libxxf86dga1:amd64 (2:1.1.5-1build1) ... -Selecting previously unselected package x11-utils. -Preparing to unpack .../49-x11-utils_7.7+6build2_amd64.deb ... -Unpacking x11-utils (7.7+6build2) ... -Selecting previously unselected package x11-xserver-utils. -Preparing to unpack .../50-x11-xserver-utils_7.7+10build2_amd64.deb ... -Unpacking x11-xserver-utils (7.7+10build2) ... -Selecting previously unselected package xdg-utils. -Preparing to unpack .../51-xdg-utils_1.1.3-4.1ubuntu3_all.deb ... -Unpacking xdg-utils (1.1.3-4.1ubuntu3) ... -Selecting previously unselected package zutty. -Preparing to unpack .../52-zutty_0.14.8.20231210+dfsg1-1_amd64.deb ... -Unpacking zutty (0.14.8.20231210+dfsg1-1) ... -Selecting previously unselected package libauthen-sasl-perl. -Preparing to unpack .../53-libauthen-sasl-perl_2.1700-1ubuntu0.1_all.deb ... -Unpacking libauthen-sasl-perl (2.1700-1ubuntu0.1) ... -Setting up libtie-ixhash-perl (1.23-4) ... -Setting up libfont-afm-perl (1.20-4) ... -Setting up libclone-perl:amd64 (0.46-1build3) ... -Setting up libio-stringy-perl (2.111-3) ... -Setting up libhtml-tagset-perl (3.20-6) ... -Setting up libauthen-sasl-perl (2.1700-1ubuntu0.1) ... -Setting up liblwp-mediatypes-perl (6.04-2) ... -Setting up libxcb-shape0:amd64 (1.15-1ubuntu2) ... -Setting up libtry-tiny-perl (0.31-2) ... -Setting up libxxf86dga1:amd64 (2:1.1.5-1build1) ... -Setting up perl-openssl-defaults:amd64 (7build3) ... -Setting up libencode-locale-perl (1.05-3) ... -Setting up gcc-13-base:amd64 (13.3.0-6ubuntu2~24.04.1) ... -Setting up libdata-dump-perl (1.25-1) ... -Setting up libipc-system-simple-perl (1.30-2) ... -Setting up libxml-xpathengine-perl (0.14-2) ... -Setting up libmpc3:amd64 (1.3.1-1build1.1) ... -Setting up libio-html-perl (1.004-3) ... -Setting up libtimedate-perl (2.3300-2) ... -Setting up zutty (0.14.8.20231210+dfsg1-1) ... -update-alternatives: using /usr/bin/zutty to provide /usr/bin/x-terminal-emulator (x-terminal-emulator) in auto mode -Setting up x11-utils (7.7+6build2) ... -Setting up libisl23:amd64 (0.26-3build1.1) ... -Setting up xdg-utils (1.1.3-4.1ubuntu3) ... -update-alternatives: using /usr/bin/xdg-open to provide /usr/bin/open (open) in auto mode -Setting up liburi-perl (5.27-1) ... -Setting up libx11-protocol-perl (0.56-9) ... -Setting up libnet-ssleay-perl:amd64 (1.94-1build4) ... -Setting up libhttp-date-perl (6.06-1ubuntu0.24.04.1) ... -Setting up libfile-basedir-perl (0.09-2) ... -Setting up libfile-listing-perl (6.16-1) ... -Setting up cpp-13-x86-64-linux-gnu (13.3.0-6ubuntu2~24.04.1) ... -Setting up libnet-http-perl (6.23-1) ... -Setting up libfile-desktopentry-perl (0.22-3) ... -Setting up libwww-robotrules-perl (6.02-1) ... -Setting up libhtml-parser-perl:amd64 (3.81-1ubuntu0.1) ... -Setting up libio-socket-ssl-perl (2.085-1) ... -Setting up libhttp-message-perl (6.45-1ubuntu1) ... -Setting up libhtml-form-perl (6.11-1) ... -Setting up cpp-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... -Setting up libfile-mimeinfo-perl (0.34-1) ... -Setting up libhttp-negotiate-perl (6.01-2) ... -Setting up cpp-13 (13.3.0-6ubuntu2~24.04.1) ... -Setting up libhttp-cookies-perl (6.11-1) ... -Setting up libhtml-tree-perl (5.07-3) ... -Setting up libhtml-format-perl (2.16-2) ... -Setting up libnet-smtp-ssl-perl (1.04-2) ... -Setting up libmailtools-perl (2.21-2) ... -Setting up libhttp-daemon-perl (6.16-1ubuntu0.24.04.1) ... -Setting up cpp (4:13.2.0-7ubuntu1) ... -Setting up x11-xserver-utils (7.7+10build2) ... -Setting up liblwp-protocol-https-perl (6.13-1) ... -Setting up libwww-perl (6.76-1ubuntu0.1) ... -Setting up libxml-parser-perl (2.47-1ubuntu0.24.04.1) ... -Setting up libxml-twig-perl (1:3.52-2) ... -Setting up libnet-dbus-perl (1.2.0-2build3) ... -Processing triggers for man-db (2.12.0-4build2) ... -Processing triggers for hicolor-icon-theme (0.17-2) ... -Processing triggers for libc-bin (2.39-0ubuntu8.9) ... -debconf: unable to initialize frontend: Dialog -debconf: (Dialog frontend will not work on a dumb terminal, an emacs shell buffer, or without a controlling terminal.) -debconf: falling back to frontend: Readline -debconf: unable to initialize frontend: Readline -debconf: (This frontend requires a controlling tty.) -debconf: falling back to frontend: Teletype - -Running kernel seems to be up-to-date. - -No services need to be restarted. - -No containers need to be restarted. - -No user sessions are running outdated binaries. - -No VM guests are running outdated hypervisor (qemu) binaries on this host. - Local time: Wed 2026-10-07 10:37:20 UTC - Universal time: Wed 2026-10-07 10:37:20 UTC - RTC time: Wed 2026-10-07 10:37:20 - Time zone: Etc/UTC (UTC, +0000) -System clock synchronized: yes - NTP service: active - RTC in local TZ: no diff --git a/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland-final.log b/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland-final.log deleted file mode 100644 index cfe5248b..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland-final.log +++ /dev/null @@ -1,52 +0,0 @@ - -(visualization_smoke.py:849701): Gdk-CRITICAL **: 03:38:25.633: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -(visualization_smoke.py:849701): dbind-WARNING **: 03:38:25.679: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory -PASS D2 vector -PASS D2 foreignObject - -(visualization_smoke.py:849701): Gdk-CRITICAL **: 03:38:26.072: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (process:2): WARNING **: 03:38:26.172: Failed to connect to bus: Could not connect: No such file or directory - -** (process:2): WARNING **: 03:38:26.249: Can't connect to a11y bus: Error receiving data: Connection reset by peer -PASS Mermaid -PASS Mermaid dark theme -PASS WebKit process termination and recovery - -(visualization_smoke.py:849701): Gdk-CRITICAL **: 03:38:28.358: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed - -** (process:2): WARNING **: 03:38:28.464: Failed to connect to bus: Could not connect: No such file or directory - -** (process:2): WARNING **: 03:38:28.466: Can't connect to a11y bus: Error receiving data: Connection reset by peer -PASS MathJax NewCM double-struck -PASS MathJax NewCM sequential calligraphic -PASS MathJax scientific package profile -PASS MathJax partial failure -PASS MathJax unsafe and dynamic commands -PASS MathJax local newcommand -PASS MathJax expression isolation -PASS D2 WebKit raster fallback visual snapshot -PASS Responsive SVG raster scaling visual snapshot -PASS PlantUML 1/13 -PASS PlantUML 2/13 -PASS PlantUML 3/13 -PASS PlantUML 4/13 -PASS PlantUML 5/13 -PASS PlantUML 6/13 -PASS PlantUML 7/13 -PASS PlantUML 8/13 -PASS PlantUML 9/13 -PASS PlantUML 10/13 -PASS PlantUML 11/13 -PASS PlantUML 12/13 -PASS PlantUML 13/13 -PASS PlantUML dark theme -PASS OpenAPI parser -PASS OpenAPI local reference inspection -PASS OpenAPI local circular reference -PASS OpenAPI validation source location -PASS OpenAPI parse source location -PASS OpenAPI dependency source location -PASS Scalar API Reference -PASS Scalar local circular reference diff --git a/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland.log b/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland.log deleted file mode 100644 index 826ca08d..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/webkit-wayland.log +++ /dev/null @@ -1,10 +0,0 @@ -PASS D2 vector -PASS D2 foreignObject - -** (process:46): ERROR **: 03:37:30.981: Failed to adopt IPC::Connection socket: creating GSocket from fd: Operation not permitted - -(visualization_smoke.py:3): Gtk-CRITICAL **: 03:37:31.031: _gtk_css_lookup_resolve: assertion '(((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ((provider)); GType __t = ((_gtk_style_provider_private_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))' failed -/home/albert/busystack/busymark/tools/visualization_smoke.py:48: Warning: g_object_set_data_full: assertion 'G_IS_OBJECT (object)' failed - self.context = WebKit2.WebContext.new_ephemeral() - -(visualization_smoke.py:3): Gtk-ERROR **: 03:37:31.033: Can't create a GtkStyleContext without a display connection diff --git a/delivery/nextcloud-explicit-adoption/evidence/webkit-x11-final.log b/delivery/nextcloud-explicit-adoption/evidence/webkit-x11-final.log deleted file mode 100644 index 4d6f6fcb..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/webkit-x11-final.log +++ /dev/null @@ -1,46 +0,0 @@ - -(visualization_smoke.py:849763): dbind-WARNING **: 03:38:25.688: Couldn't connect to accessibility bus: Failed to connect to socket /run/user/1000/at-spi/bus_1: No such file or directory -PASS D2 vector -PASS D2 foreignObject - -** (process:2): WARNING **: 03:38:26.163: Failed to connect to bus: Could not connect: No such file or directory - -** (process:2): WARNING **: 03:38:26.258: Can't connect to a11y bus: Error receiving data: Connection reset by peer -PASS Mermaid -PASS Mermaid dark theme -PASS WebKit process termination and recovery - -** (process:2): WARNING **: 03:38:28.460: Failed to connect to bus: Could not connect: No such file or directory - -** (process:2): WARNING **: 03:38:28.462: Can't connect to a11y bus: Error receiving data: Connection reset by peer -PASS MathJax NewCM double-struck -PASS MathJax NewCM sequential calligraphic -PASS MathJax scientific package profile -PASS MathJax partial failure -PASS MathJax unsafe and dynamic commands -PASS MathJax local newcommand -PASS MathJax expression isolation -PASS D2 WebKit raster fallback visual snapshot -PASS Responsive SVG raster scaling visual snapshot -PASS PlantUML 1/13 -PASS PlantUML 2/13 -PASS PlantUML 3/13 -PASS PlantUML 4/13 -PASS PlantUML 5/13 -PASS PlantUML 6/13 -PASS PlantUML 7/13 -PASS PlantUML 8/13 -PASS PlantUML 9/13 -PASS PlantUML 10/13 -PASS PlantUML 11/13 -PASS PlantUML 12/13 -PASS PlantUML 13/13 -PASS PlantUML dark theme -PASS OpenAPI parser -PASS OpenAPI local reference inspection -PASS OpenAPI local circular reference -PASS OpenAPI validation source location -PASS OpenAPI parse source location -PASS OpenAPI dependency source location -PASS Scalar API Reference -PASS Scalar local circular reference diff --git a/delivery/nextcloud-explicit-adoption/evidence/webkit-x11.log b/delivery/nextcloud-explicit-adoption/evidence/webkit-x11.log deleted file mode 100644 index 04c54efb..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/webkit-x11.log +++ /dev/null @@ -1,10 +0,0 @@ -PASS D2 vector -PASS D2 foreignObject - -** (process:48): ERROR **: 03:37:07.788: Failed to adopt IPC::Connection socket: creating GSocket from fd: Operation not permitted - -(visualization_smoke.py:3): Gtk-CRITICAL **: 03:37:08.016: _gtk_css_lookup_resolve: assertion '(((__extension__ ({ GTypeInstance *__inst = (GTypeInstance*) ((provider)); GType __t = ((_gtk_style_provider_private_get_type ())); gboolean __r; if (!__inst) __r = (0); else if (__inst->g_class && __inst->g_class->g_type == __t) __r = (!(0)); else __r = g_type_check_instance_is_a (__inst, __t); __r; }))))' failed -/home/albert/busystack/busymark/tools/visualization_smoke.py:48: Warning: g_object_set_data_full: assertion 'G_IS_OBJECT (object)' failed - self.context = WebKit2.WebContext.new_ephemeral() - -(visualization_smoke.py:3): Gtk-ERROR **: 03:37:08.017: Can't create a GtkStyleContext without a display connection diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/.busymark-html-export.json deleted file mode 100644 index 145a077c..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/.busymark-html-export.json +++ /dev/null @@ -1 +0,0 @@ -{"owner":"BusyMark HTML export","version":1,"kind":"site","files":{"index.html":"199e09c5f8a4e274ff88c6bf10d8948731f808f8e1edd8412fc1894f475c89c2","hidden.html":"5b3fd26eab5e46c30c83f0c45767b415cd415b082df4851627ca1491afb14d93","reference.html":"28e8338d02eb424b5cc9c0fb2a168bc8e3d2e02fa47c6c70c86ce7b4a5dfe11e","Welcome.html":"199e09c5f8a4e274ff88c6bf10d8948731f808f8e1edd8412fc1894f475c89c2"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/Welcome.html b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/Welcome.html deleted file mode 100644 index 0a260c66..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/Welcome.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/hidden.html b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/hidden.html deleted file mode 100644 index 91f7616a..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/hidden.html +++ /dev/null @@ -1,14 +0,0 @@ - -Hidden topic

1 Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/index.html b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/index.html deleted file mode 100644 index 0a260c66..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/index.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

1 Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/reference.html b/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/reference.html deleted file mode 100644 index 136ca2e1..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside-embedded/reference.html +++ /dev/null @@ -1,14 +0,0 @@ - -Reference

Work in progress

1 Reference

Welcome to Default.

1.1 Table

Both columns
OneTwo
Expandable

1.2 Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside.log b/delivery/nextcloud-explicit-adoption/evidence/writerside.log deleted file mode 100644 index df1256f6..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside.log +++ /dev/null @@ -1 +0,0 @@ -Official builder: 181 checks passed diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/.busymark-html-export.json b/delivery/nextcloud-explicit-adoption/evidence/writerside/.busymark-html-export.json deleted file mode 100644 index 2666b808..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside/.busymark-html-export.json +++ /dev/null @@ -1 +0,0 @@ -{"owner":"BusyMark HTML export","version":1,"kind":"site","files":{"assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png":"f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59","index.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39","hidden.html":"840135bf564db71fe28eb4d0c58e60ae43653faee35aa0fdbf02c9abe47f020e","reference.html":"85b04e445b0b833da84f386c1be1320ece110b56bb93f350f54f398bfc4a1d7d","Welcome.html":"cb4328c82b5767f39a3d9ade39d71ae08d2c4977d693fe8977925fa3f7059c39"}} \ No newline at end of file diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/Welcome.html b/delivery/nextcloud-explicit-adoption/evidence/writerside/Welcome.html deleted file mode 100644 index f19ec81f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside/Welcome.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png b/delivery/nextcloud-explicit-adoption/evidence/writerside/assets/f7f6a42a8c945f4312b4cb98b5f8b2f9195e34e32a7c152936f1557d95a68b59.png deleted file mode 100644 index 1ec24a6fe02b74f933f01609b518e939d96e393e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8020 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 -Hidden topic

Hidden topic

Link-accessible content.

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/index.html b/delivery/nextcloud-explicit-adoption/evidence/writerside/index.html deleted file mode 100644 index f19ec81f..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside/index.html +++ /dev/null @@ -1,14 +0,0 @@ - -Offline Guide

Offline Guide

Portable documentation.

Welcome to BusyMark.

Linux

All Linux instructions.

Windows

All Windows instructions.

Export

  1. Select HTML.

  2. Open the output.

Table

Hidden topic

diff --git a/delivery/nextcloud-explicit-adoption/evidence/writerside/reference.html b/delivery/nextcloud-explicit-adoption/evidence/writerside/reference.html deleted file mode 100644 index e119ebba..00000000 --- a/delivery/nextcloud-explicit-adoption/evidence/writerside/reference.html +++ /dev/null @@ -1,14 +0,0 @@ - -Reference

Work in progress

Reference

Welcome to Default.

Table

Both columns
OneTwo
Expandable

Expandable

All details are printable.

Mermaid diagram
diff --git a/delivery/nextcloud-explicit-adoption/verify.py b/delivery/nextcloud-explicit-adoption/verify.py deleted file mode 100644 index 6a3cb871..00000000 --- a/delivery/nextcloud-explicit-adoption/verify.py +++ /dev/null @@ -1,68 +0,0 @@ -#!/usr/bin/env python3 -"""Verify the committed delivery archive and optionally rerun Notes regressions.""" -import argparse -import hashlib -import json -from pathlib import Path -import subprocess -import tarfile -import tempfile - - -def sha(path): - return hashlib.file_digest(path.open('rb'), 'sha256').hexdigest() - - -def main(): - parser = argparse.ArgumentParser(description=__doc__) - parser.add_argument('manifest', type=Path) - parser.add_argument('--run-tests', action='store_true') - args = parser.parse_args() - manifest = json.loads(args.manifest.read_text()) - root = args.manifest.resolve().parent - for artifact in manifest['artifacts']: - assert sha(root / artifact['path']) == artifact['sha256'], artifact['path'] - archive = root / manifest['sourceArchive'] - with tempfile.TemporaryDirectory(prefix='busymark-delivery-verify-') as directory: - extracted = Path(directory) - with tarfile.open(archive) as source: - assert source.pax_headers.get('comment') == manifest['sourceCommit'] - source.extractall(extracted, filter='data') - tree = extracted / manifest['sourcePrefix'] - for name, digest in manifest['sourceFiles'].items(): - assert sha(tree / name) == digest, name - for evidence in ['linux-source-identity.json', 'snap-source-identity.json']: - identity = json.loads((tree / 'delivery/nextcloud-explicit-adoption/evidence' / evidence).read_text()) - for name, digest in identity.get('compiledInputs', identity.get('buildSourceFiles', {})).items(): - assert sha(tree / name) == digest, (evidence, name) - if manifest.get('releaseAcceptanceComplete'): - evidence_root = tree / 'delivery/nextcloud-explicit-adoption/evidence' - installed = json.loads((evidence_root / 'snap-acceptance-results.json').read_text()) - assert installed['complete'] and installed['strictInstalled'] - assert installed['enforcedAppArmorVerified'] and installed['installedSha256Verified'] - snap_artifacts = [a for a in manifest['artifacts'] if a['path'].endswith('.snap')] - assert len(snap_artifacts) == 1 - assert installed['snapSha256'] == snap_artifacts[0]['sha256'] - for name, path in installed['visualization']['reports'].items(): - report = json.loads((evidence_root / path).read_text()) - assert report['ok'] and len(report['checks']) == 23, name - repository = (tree / 'lib/src/nextcloud_notes/application/notes_repository.dart').read_text() - discovery = repository.split('Future _applyList(', 1)[1].split('NextcloudNote _fromRemote(', 1)[0] - assert '_adoptCreation(' not in discovery - assert repository.count('_adoptCreation(') == 2 - confirmation = repository.split('Future _resolveCreation(', 1)[1].split('Future delete(', 1)[0] - assert '_adoptCreation(current, fresh)' in confirmation - regressions = (tree / 'test/src/nextcloud_notes/notes_creation_policy_test.dart').read_text() - assert "'other actor'" in regressions - assert 'transaction' in regressions - assert 'repeated confirmation' in regressions - if args.run_tests: - subprocess.run(['flutter', 'pub', 'get', '--enforce-lockfile'], cwd=tree, check=True) - top_level = sorted(str(p.relative_to(tree)) for p in (tree / 'test/src').glob('nextcloud_*_test.dart')) - subprocess.run(['flutter', 'test', '--no-pub', '--concurrency=1', '--reporter', 'expanded', - 'test/src/nextcloud_notes', *top_level], cwd=tree, check=True) - print('Archive bytes, explicit-adoption policy, regressions and artifact hashes verified.') - - -if __name__ == '__main__': - main() diff --git a/docs/README.md b/docs/README.md index 674884f6..af072f65 100644 --- a/docs/README.md +++ b/docs/README.md @@ -35,5 +35,6 @@ are intentionally independent so they can be referenced directly. - [AI implementation and qualification](development/ai.md) - [Export verification](development/export-verification.md) - [History implementation](development/history.md) +- [Nextcloud Notes architecture, API contract, and verification](development/nextcloud-notes.md) - [Visualization implementation and verification](development/visualizations.md) - [Writerside verification](development/writerside-verification.md) diff --git a/docs/development/export-verification.md b/docs/development/export-verification.md index 57bac76e..e1fcfef8 100644 --- a/docs/development/export-verification.md +++ b/docs/development/export-verification.md @@ -109,7 +109,7 @@ artifacts to a fresh temporary directory: verification_dir="$(mktemp -d)" report="$verification_dir/report.json" BUSYMARK_RELEASE_SMOKE=1 \ - xvfb-run -a env WEBKIT_DISABLE_COMPOSITING_MODE=1 \ + xvfb-run -a env GDK_BACKEND=x11 \ LIBGL_ALWAYS_SOFTWARE=1 build/linux/x64/release/bundle/busymark \ --visualization-release-smoke="$report" ``` @@ -141,6 +141,6 @@ do not certify physical-printer or assistive-technology behavior. ## CI environment The Linux workflow in `.github/workflows/flutter-linux.yml` is authoritative for -native packages, environment flags, browser setup, X11 and Wayland runs, and the +native packages, environment flags, X11 and Wayland runs, and the strict Snap verification. Keep ordinary build prerequisites in the main README; do not copy the larger CI-only dependency set into user installation steps. diff --git a/docs/development/history.md b/docs/development/history.md index fb338006..ab34f5fe 100644 --- a/docs/development/history.md +++ b/docs/development/history.md @@ -154,6 +154,10 @@ is accepted, so an older checkpoint cannot recreate erased revisions. ## Verification +Keep manual-probe outputs outside the repository, for example in directories +created with `mktemp -d`. Use disposable workspaces for probes that edit files, +and remove their temporary data after inspection. + Run the standard checks with the repository-pinned toolchain: ```bash @@ -189,3 +193,24 @@ GDK_BACKEND=x11 build/linux/x64/debug/bundle/busymark \ Under `xvfb-run`, set `GDK_BACKEND=x11` explicitly so an inherited `WAYLAND_DISPLAY` cannot select an unrelated Wayland connection. Clipboard behavior under Wayland requires a compositor-driven run with real input focus. + +The native selection probe covers pointer/keyboard selection, highlight +geometry, rich/plain clipboard content, table boundaries, editing, undo and +restored selection. It copies the maintained fixture before use and exercises +the production editor and Linux clipboard: + +```bash +selection_output="$(mktemp -d)" +flutter build linux --debug --no-pub --target tools/wysiwyg_selection_smoke.dart +GDK_BACKEND=x11 dbus-run-session -- \ + xvfb-run -a -s '-screen 0 1440x1000x24' \ + build/linux/x64/debug/bundle/busymark \ + test/fixtures/wysiwyg/selection_boundaries.md "$selection_output" +flutter build linux --debug --no-pub --target lib/main.dart +``` + +The probe exits nonzero on failed assertions and writes temporary captures and +JSON reports for inspection. Its optional `--application` mode opens a supplied +file in the full application and requires the exact synthetic table fixture +checked by the driver; use an isolated application profile and disposable files +for that mode. diff --git a/docs/development/nextcloud-notes-validation.md b/docs/development/nextcloud-notes-validation.md deleted file mode 100644 index bdb71b2a..00000000 --- a/docs/development/nextcloud-notes-validation.md +++ /dev/null @@ -1,857 +0,0 @@ -# Nextcloud Notes implementation validation - -The sections dated October 4–5, 2026 are historical records. Their automatic -creation-adoption behavior and incomplete acceptance results are superseded by -the **Explicit-adoption validation, 7 October 2026** section at the end of this -file. See [the integration contract](nextcloud-notes.md) for the current policy, -architecture, security boundaries and server limitations. - -## Historical capability and synchronization follow-up (October 5, 2026) - -This follow-up addresses only API 1.4 compatibility, uncertain creation, -attribute-wise merging, HTTPS enforcement and bounded attachment downloads. The -working tree was clean before editing. The earlier review and implementation -results below are historical, not substitutes for the checks in this section. - -The current App Store stable release was **Notes 6.1.0** (Nextcloud 33–35). -Re-read the API README/v1, Application/Capabilities and routes at **v6.0.0, -v6.0.1, v6.0.2 and v6.1.0**, plus issue #2037. Exact commit IDs and the route -matrix are in [the contract](nextcloud-notes.md). All advertise API 1.4. The -connection gate now requires major 1/minor >=4; missing or malformed app versions -are accepted. App version controls only attachment deletion (known stable ->=6.1.0). Notes 6.0.x flat attachment upload filenames and 6.1.x scoped filenames -are both supported. - -No dependency or toolchain changes. SQLite user_version **1 → 2** fences the new -optional durable creation-attempt JSON in notes/outbox, preserving existing -records. The shared asset limit remains **100 MiB**. New scalar conflict UI text -was translated in all 23 ARB catalogs and generated using `flutter gen-l10n`. - -### Commands and results - -All Flutter/Dart commands use `/home/albert/flutter/bin/` (Flutter 3.47.5, -Dart 3.13.4). Logs and ephemeral reports use `/tmp/busymark-compat-*`. - -| Command/check | Result | -| --- | --- | -| `flutter pub get --enforce-lockfile` | Exit 0; lockfile unchanged | -| `flutter gen-l10n` | Exit 0 | -| `dart format --set-exit-if-changed .` | Exit 0; 542 files, zero changes | -| `flutter analyze` | Exit 0; no issues | -| Focused command below, including localization audit | Exit 0; **195 passed**, zero failed/skipped | -| Full Flutter suite below | Exit 1; **3,406 passed, 1 failed**, zero skipped; 15m20s. The same routing failure reproduces on untouched HEAD. | -| `(cd packages/busymark_spellcheck_native && dart pub get && dart test)` | Exit 0; **13 passed** | -| `tools/validate_writerside_conformance.sh` | Exit 0; **181 checks passed** | -| `flutter build linux --release` | Exit 0 | -| `DISPLAY=:97 GDK_BACKEND=x11 bash tools/test_gtk_accent.sh` | Exit 0 | -| `DISPLAY=:97 GDK_BACKEND=x11 bash tools/test_gtk_accent_host.sh` | Exit 0 | -| `bash tools/test_secure_credential_policy.sh` | Exit 0 | -| `bash tools/test_nextcloud_libsecret.sh` | Exit 0; isolated Secret Service create/read/delete | -| Release `--visualization-release-smoke` under X11 and Wayland | Both exit 0; both reports `ok: true`, including HTML/PDF | -| Release `--spelling-release-smoke` under X11 then Wayland | Both exit 0; install then restart with retained personal word; source/WYSIWYG/table edits passed | -| `tools/visualization_smoke.py` under X11 and Wayland | Both exit 0; real WebKit, PlantUML, Mermaid, OpenAPI, Scalar and D2 coverage | -| Exact-recipe Snapcraft build | Exit 0; strict core24 amd64 package, exact recipe/manifest, 8 artifact checks and unpacked dependency/resource probe passed | -| `git diff --check` | Exit 0 | - -```sh -flutter test --no-pub \ - test/src/nextcloud_notes \ - test/src/nextcloud_capabilities_test.dart \ - test/src/nextcloud_connection_test.dart \ - test/src/nextcloud_login_flow_test.dart \ - test/src/nextcloud_workspace_test.dart \ - test/src/nextcloud_notes_ui_test.dart \ - test/src/nextcloud_media_export_test.dart \ - test/src/localization_audit_test.dart --reporter expanded - -BUSYMARK_NATIVE_DIALOG_TEST_DISPLAY=:97 \ -BUSYMARK_D2_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/d2" \ -BUSYMARK_TYPST_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/typst" \ -BUSYMARK_TEST_SPELLING_ROOT="$PWD/build/spelling-test" \ -flutter test --no-pub --concurrency=1 --reporter expanded -``` - -The first full run was interrupted after two PDF tests failed while a concurrent -release build replaced their bundled Typst executable. The final full run used -stable build output. Its sole failure was `app_router_test.dart: returning to -Welcome does not restore the session again` (line 168: missing Welcome tooltip). -An isolated rerun failed identically. A `git archive HEAD` snapshot of -`366e303` under `/tmp`, -with fresh `.dart_tool`, `flutter pub get --enforce-lockfile`, and the same pinned -SDK, also failed the identical test (4 passed, 1 failed). This pre-existing -failure was left unchanged because this task explicitly excludes unrelated -fixes; the full suite is **not reported as passing**. Initial focused compile/fixture errors and brace diagnostics -were corrected before the final runs; no failing tests were suppressed. - -Native smoke checks used private Xvfb displays and unpacked Weston 13.0.0 with a -headless backend. The Python smoke script initially lacked `gi._gi_cairo`; the -matching Ubuntu Python Cairo packages were unpacked under `/tmp`, then the script -passed with that temporary PYTHONPATH. No installed packages or project pins were -changed. A minimal private D-Bus session avoided desktop portal interference. - -### Snap packaging evidence - -Built from a separate source copy with **official Snapcraft 8.11.1**: - -```sh -SNAPCRAFT_BUILD_INFO=1 CMAKE_BUILD_PARALLEL_LEVEL=4 snapcraft pack --destructive-mode --verbosity=brief -``` - -The official container needed its matching upstream extension resources and -`craftctl` entry point restored, an apt index refresh, the declared Node 24 snap -on PATH, and `/lib/python3.12/site-packages` on PYTHONPATH after apt installed the -system Python. Those were container-only infrastructure corrections. The exact -repository recipe, Flutter 3.47.5, dependencies and pins were unchanged. All 334 -Dart/pin/recipe files in the build source matched the working tree. Snapcraft -reported unused-library warnings; packing exited 0. - -- Artifact: `/tmp/busymark-compat-snap/source/busymark_0.5.1_amd64.snap` -- Size: **309,592,064 bytes** -- SHA-256: `648f854d7af18853bc49ff0837c2b64f53d64d57c74b6977aab2ea9259e96378` -- Exact recipe SHA-256: `af358e17aadbd4f816069eccd6d4656818d489443b17345cbe0ad78e481dc590` -- Native SQLite loaded successfully: **3.53.4**. -- Existing network/browser/keyring plugs and native plugins were present. -- The unpacked CI-equivalent dependency/resource probe passed for GNOME/Mesa - resolution, Git/OpenSSH, GStreamer, SVG loading, fonts/themes and RUNPATH. -- Artifact report: `/tmp/busymark-compat-snap/validation.json`; build and probe - logs are retained beside it. This proves packaging, not installed confinement. - -### Live acceptance - -The live harness uses verified **HTTPS** with a localhost certificate trusted by -an explicitly injected test-only SecurityContext. It does not disable certificate -or hostname verification, and does not add any production HTTP exception. - -```sh -dart run tools/nextcloud_notes_live_acceptance.dart \ - /tmp/busymark-compat-live/credentials.json \ - /tmp/busymark-compat-live/notes-VERSION-report.json \ - /tmp/busymark-compat-live/cert.pem -``` - -Two isolated **Nextcloud 35.0.1** installations used the official App Store release -packages for **Notes 6.0.1 and 6.1.0**. Both completed **13 checks successfully**. Both exercised: - -- OCS compatibility acceptance and API 1.4, with no obsolete-app rejection. -- Durable creation, list/chunks/Last-Modified, ETags/304, edit, category, favorite, - server title sanitization, and a second actor's conflict plus merge. -- Attachment upload, authoritative renamed filename and streamed download. -- Offline new note plus attachment, database close/reopen, reconnect/publication. -- Remote deletion with pending work and explicit fresh-state-checked deletion. -- A deliberately lost successful POST response, durable wire metadata and staged - attachment across restart, another local edit, automatic candidate adoption - (historical behavior, superseded by mandatory confirmation), - sanitized title/category adoption, attachment publication and **one note POST**. - -On 6.0.1, invoking attachment DELETE produced `unsupported` without issuing the -request and the other operations continued. On 6.1.0, DELETE succeeded. The -harness's original 304 assertion mixed ETags from different list pages; it was -corrected to use a consistent unchunked representation for 304, while separately -checking real multi-chunk behavior. - -Production HTTP rejection, known/unknown/incorrect attachment Content-Length, -100 MiB boundary enforcement, interrupted/cancelled streams, traversal and -cross-origin redirects were exercised by deterministic injected-client tests. -The local/private server URL supplied in the original failure was not available; -6.0.1 was tested in a fresh disposable installation instead. Browser Login Flow -and installed strict-Snap account setup were not repeated against a user's server. -The existing injected Login Flow tests passed; earlier browser/keyring acceptance -is recorded separately below. No real credentials were committed. - -The host rejects unprivileged network namespaces (`unshare --user --map-root-user ---net`: `Operation not permitted`), so this follow-up's spelling restart was not -network-isolated. Nextcloud offline/reconnect was explicitly simulated through -the live harness transport and verified against the real server. Installed strict -Snap runtime/interface tests still require host administration and remain -unverified here. Packaging and unpacked dependency checks are reported separately; -neither is claimed to prove installed confinement behavior. - - -### Historical follow-up changed files - -- `docs/development/nextcloud-notes-validation.md` -- `docs/development/nextcloud-notes.md` -- `lib/l10n/app_ar.arb` -- `lib/l10n/app_de.arb` -- `lib/l10n/app_en.arb` -- `lib/l10n/app_es.arb` -- `lib/l10n/app_et.arb` -- `lib/l10n/app_fa.arb` -- `lib/l10n/app_fr.arb` -- `lib/l10n/app_hi.arb` -- `lib/l10n/app_id.arb` -- `lib/l10n/app_it.arb` -- `lib/l10n/app_ja.arb` -- `lib/l10n/app_ko.arb` -- `lib/l10n/app_nb.arb` -- `lib/l10n/app_nl.arb` -- `lib/l10n/app_pl.arb` -- `lib/l10n/app_pt.arb` -- `lib/l10n/app_pt_BR.arb` -- `lib/l10n/app_ru.arb` -- `lib/l10n/app_tr.arb` -- `lib/l10n/app_uk.arb` -- `lib/l10n/app_vi.arb` -- `lib/l10n/app_zh.arb` -- `lib/l10n/app_zh_CN.arb` -- `lib/l10n/generated/app_localizations.dart` -- `lib/l10n/generated/app_localizations_ar.dart` -- `lib/l10n/generated/app_localizations_de.dart` -- `lib/l10n/generated/app_localizations_en.dart` -- `lib/l10n/generated/app_localizations_es.dart` -- `lib/l10n/generated/app_localizations_et.dart` -- `lib/l10n/generated/app_localizations_fa.dart` -- `lib/l10n/generated/app_localizations_fr.dart` -- `lib/l10n/generated/app_localizations_hi.dart` -- `lib/l10n/generated/app_localizations_id.dart` -- `lib/l10n/generated/app_localizations_it.dart` -- `lib/l10n/generated/app_localizations_ja.dart` -- `lib/l10n/generated/app_localizations_ko.dart` -- `lib/l10n/generated/app_localizations_nb.dart` -- `lib/l10n/generated/app_localizations_nl.dart` -- `lib/l10n/generated/app_localizations_pl.dart` -- `lib/l10n/generated/app_localizations_pt.dart` -- `lib/l10n/generated/app_localizations_ru.dart` -- `lib/l10n/generated/app_localizations_tr.dart` -- `lib/l10n/generated/app_localizations_uk.dart` -- `lib/l10n/generated/app_localizations_vi.dart` -- `lib/l10n/generated/app_localizations_zh.dart` -- `lib/src/assets/asset_ingestion_service.dart` -- `lib/src/assets/asset_limits.dart` -- `lib/src/nextcloud_notes/application/notes_repository.dart` -- `lib/src/nextcloud_notes/data/notes_api_client.dart` -- `lib/src/nextcloud_notes/data/notes_capabilities.dart` -- `lib/src/nextcloud_notes/data/notes_store.dart` -- `lib/src/nextcloud_notes/data/server_uri.dart` -- `lib/src/nextcloud_notes/domain/notes_conflict.dart` -- `lib/src/nextcloud_notes/domain/notes_models.dart` -- `lib/src/nextcloud_notes/presentation/notes_sidebar.dart` -- `lib/src/workspace/workspace_controller.dart` -- `test/src/nextcloud_capabilities_test.dart` -- `test/src/nextcloud_connection_test.dart` -- `test/src/nextcloud_login_flow_test.dart` -- `test/src/nextcloud_notes/notes_api_test.dart` -- `test/src/nextcloud_notes/notes_attachment_stream_test.dart` -- `test/src/nextcloud_notes/notes_conflict_test.dart` -- `test/src/nextcloud_notes/notes_repository_test.dart` -- `test/src/nextcloud_notes_ui_test.dart` -- `tools/nextcloud_notes_live_acceptance.dart` - -## Review corrections - -The review follow-up fixes all eight reported cases: unsaved-editor base -preservation across Refresh; exact Markdown export destination ranges; -uncertain-attachment controls with fetched remote state; replacement-tab -activation and clearing the final tab's derived content; consistent source and -WYSIWYG AI identities; deletion tombstones and media invalidation; concurrent -cache ownership (including previously duplicated rows); and disappearing -category filters. - -Thirteen regression tests were added. The race tests explicitly hold the -persistence debounce, which the ordinary test configuration previously bypassed. -They exercise edits before and during Refresh, verify base/local/remote -preservation in SQLite and assert that no PUT occurs. Additional cases exercise -own-write acknowledgments, both tab deletion paths, actual editor AI proposals -and stale-tab rejection, prefix-sharing export filenames, existing/fresh/restarted -media resolvers, retained history bytes, deliberate filename reuse after deletion, -uncertain-upload recovery controls and removal of the final category. - -The initial implementation's live-server and Snap results below predate these -review corrections. They are not claims that the updated Dart source was -retested against a live account or rebuilt as a Snap. No database schema, -dependency, native credential or packaging changes were needed for these fixes. - -Review follow-up validation: - -| Command/check | Result | -| --- | --- | -| `flutter pub get --enforce-lockfile` | Exit 0; no dependency changes | -| `flutter gen-l10n` | Exit 0; all 22 generated catalog files unchanged | -| `dart format --set-exit-if-changed .` | Exit 0; 538 files, zero changes | -| `flutter analyze --no-pub` | Exit 0; no issues | -| `flutter test --no-pub --concurrency=1 --reporter expanded test/src/nextcloud*_test.dart test/src/nextcloud_notes test/src/ai_edit_ui_test.dart test/src/wysiwyg_ai_test.dart test/src/source_audit_test.dart test/src/localization_audit_test.dart` | Exit 0; 216 passed, zero failed/skipped | -| Full suite: `flutter test --no-pub --concurrency=1 --reporter expanded` | Exit 0; 3,355 passed, zero failed/skipped, 12 minutes 59 seconds | -| `flutter build linux --release --no-pub` | Exit 0 | -| Updated release `--visualization-release-smoke` on isolated X11 | Exit 0; report `ok: true`, including HTML and PDF | -| `git diff --check` | Exit 0 | - -The full follow-up run used the resource environment shown below: - -```sh -BUSYMARK_NATIVE_DIALOG_TEST_DISPLAY=:97 \ -BUSYMARK_D2_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/d2" \ -BUSYMARK_TYPST_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/typst" \ -BUSYMARK_TEST_SPELLING_ROOT="$PWD/build/spelling-test" \ -flutter test --no-pub --concurrency=1 --reporter expanded -``` - -The application/test/native source hash snapshot remained unchanged throughout -the full run. The isolated Xvfb displays and release smoke private bus were -stopped afterward. - -Logs use the `/tmp/busymark-notes-review-` prefix. The X11 release report is -`/tmp/busymark-notes-review-visualization.json`. The first targeted test run had -four test-setup failures: two race tests inherited immediate test persistence, -and two AI tests had not selected a model. After correcting those setups, the -targeted suite above passed. - -## Environment and changes - -Validation used Linux x86_64, Flutter **3.47.5**, Dart **3.13.4**, GTK **3.24.41**, -libsecret **0.21.4** and WebKitGTK **2.52.6**. Existing SDK, build and package pins -were retained. Direct `sqlite3` **3.7.0** supplies the transactional store and its -bundled native library; the release library reports SQLite **3.53.4**. Required -transitive native-asset tooling changed to `hooks` **2.2.0** and `record_use` -**1.1.1**. No Snap interfaces or additional production native dependencies were -added. - -The focused database starts at schema **1** with transactional migration from an -empty store and rejection of unsupported newer schemas. Application sessions -advance to version **2**, retaining version-1 local-session decoding. No old -Notes API compatibility or generic provider framework was added. - -Changes cover the Notes domain/API/login/capability/credential/repository/store -module; explicit workspace/document origins and all save/session/recovery -paths; logical local-history identities; provider media and editor/export -integration; Notes settings/welcome/sidebar/tab/status/recovery UI; Git/path -and workspace-replacement guards; 23 localization catalogs and their generated -sources; native credential namespace policy; tests and acceptance tools. A -complete path manifest follows the validation results. - -## Live Nextcloud acceptance - -The disposable server was **Nextcloud 35.0.1** (internal version 35.0.1.1), with -the stable Notes **6.1.0** release. Notes tag `v6.1.0` resolves to -`0c3dd46dbd781b780c1ea60a13873198609bb98d`. The Docker image digest was -`sha256:b1ae671e9815401b0e837b19b9c778e89887721d67f0c8f9d34aa1d27a9a208f`. - -`tools/nextcloud_notes_live_acceptance.dart` was run against this real server. -The final report returned `ok: true` for all eleven checks: - -1. Notes version 6.1.0. -2. API capability 1.4. -3. Local durability before remote creation. -4. Content, category, favorite and canonical title updates. -5. Server title sanitization. -6. Attachment upload, fetch, deletion and authoritative renamed filename. -7. A second actor's ETag conflict and deliberate manual merge. -8. An offline new note with an attachment, SQLite close/reopen and reconnection. -9. Chunked listing, server Last-Modified and ETag/304 behavior. -10. Remote deletion preserving locally pending work. -11. Explicit fresh-state-checked deletion. - -The offline Notes scenario injected a transport failure into the genuine -repository, reopened its persistent SQLite store, then resumed real HTTP. It -was not a physical network cut or a full GUI/installed-Snap restart. - -Login Flow v2 used a real anonymous start and pending `404` poll. The system -default Firefox browser opened through `xdg-open` successfully. An automated -browser granted the real server authorization; polling then returned one-time -`200` credentials. The app password was revoked with HTTP `200` afterward. The -disposable account credentials, container and anonymous volume were removed. - -With Text **9.0.0** open in its real web editor, an otherwise valid conditional -Notes update returned **423 Locked**. The lock subsequently expired before a -repository-level unrelated-note isolation probe, so live per-note isolation -was not established. Deterministic tests cover preservation of the locked -note's pending work and continued synchronization of unrelated notes. - -No unsupported/private Text session protocol was used by the application. A -final check of current Text source and developer documentation found no -documented supported external native collaboration API. - -The live command was: - -```sh -dart run tools/nextcloud_notes_live_acceptance.dart -``` - -Sanitized reports are retained under `/tmp/busymark-notes-live/`: the final -eleven-scenario report, browser authorization report and lock report. The -private credential input was removed. - -## Initial repository validation commands - -These follow `.github/workflows/flutter-linux.yml`; display, dictionary and -bundled-tool environment variables provide the workflow's required resources. - -| Check | Result | -| --- | --- | -| `flutter pub get` and `flutter pub get --enforce-lockfile` | Exit 0; lockfile updated for the intentional SQLite dependency | -| `tools/validate_writerside_conformance.sh` | Exit 0; 181 checks from the official pinned builder | -| `flutter gen-l10n` | Exit 0; generated-file hashes unchanged by final regeneration | -| `dart format --set-exit-if-changed .` | Exit 0; 538 files, zero formatting changes | -| `flutter analyze --no-pub` | Exit 0; no issues found | -| Focused Notes tests, `flutter test --no-pub --concurrency=2 --reporter expanded test/src/nextcloud*_test.dart test/src/nextcloud_notes` | Exit 0; 122 passed, zero failed/skipped, 28 seconds | -| Full Flutter suite, `flutter test --no-pub --concurrency=1 --reporter expanded` | Exit 0; 3,342 passed, zero failed/skipped, 17 minutes 49 seconds | -| Final source and localization audits, `flutter test --no-pub --reporter expanded test/src/source_audit_test.dart test/src/localization_audit_test.dart` | Exit 0; 70 passed | -| Native spelling package: `dart pub get`, `dart test` | Exit 0; 13 tests passed | -| `tools/fetch_spelling_dictionaries.sh build/spelling-test` | Exit 0 | -| `flutter test test/src/spelling_bundle_integration_test.dart` with prepared resources | Exit 0; 3 tests passed | -| `flutter build linux --release --no-pub` | Exit 0; final Linux release and native SQLite asset built | -| `tools/test_gtk_accent.sh` and `tools/test_gtk_accent_host.sh` on X11 | Exit 0 | -| `tools/test_secure_credential_policy.sh` | Exit 0 | -| `tools/test_nextcloud_libsecret.sh` with an isolated keyring | Exit 0; actual create/read/delete | -| Native Writerside dialog tests with isolated Xvfb | Exit 0; 2 tests passed, zero skipped | -| `tools/visualization_smoke.py` on X11 and Wayland | Exit 0 for both | -| Final release `--visualization-release-smoke` on X11 and Wayland | Exit 0; both reports `ok: true`, HTML and PDF exercised | -| Release `--spelling-release-smoke`, install/restart and network-disabled restart | Exit 0; reports `ok: true` | -| Ordinary release Welcome → Nextcloud Notes setup with an empty isolated profile | Passed; actual AOT SQLite loaded, schema 1, integrity `ok`, zero accounts, private DB permissions | -| Clean Snapcraft build and unconfined packaged-resource validation | Exit 0; exact source/recipe provenance and all resource checks passed | -| `git diff --check` | Exit 0 | - -The full suite used these resources: - -```sh -BUSYMARK_NATIVE_DIALOG_TEST_DISPLAY=:97 \ -BUSYMARK_D2_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/d2" \ -BUSYMARK_TYPST_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/typst" \ -BUSYMARK_TEST_SPELLING_ROOT="$PWD/build/spelling-test" \ -flutter test --no-pub --concurrency=1 --reporter expanded -``` - -An isolated Xvfb server provided display `:97`. The final full-run source hash -snapshot remained unchanged throughout the run. Logs are retained at -`/tmp/busymark-nextcloud-full-tests-serial.log`, -`/tmp/busymark-nextcloud-focused-final.log` and -`/tmp/busymark-nextcloud-audits-final.log`. Final localization regeneration -preserved generated-file hashes; the workflow's clean-checkout -`git diff --exit-code` cannot be used literally while implementation changes -are still uncommitted. - -The local environment lacked `xvfb-run`, Weston and `python3-gi-cairo`. The -corresponding distro binaries/libraries were extracted under `/tmp` and used -for the checks without installing host packages. CI's privileged network -namespace step could not run directly; a Docker container with no network -provided the actual offline spelling check. - -Before the final source snapshot, two full runs exposed existing local UI -wall-clock waits: the first had 3,304 passed, one skipped and three failures -(two obsolete source-audit assertions and a spelling-fixture timeout); the -audits were updated for the intended integration. The next had 3,331 passed, -one skipped and two local UI timing failures. Both local UI failures passed in -an isolated rerun, and the spelling-fixture timeout also passed in isolation. -A later run started before the last fixes and was stopped because it retained -older compiled shared source. These runs are not represented as clean passes. -The final fixed-source serial run passed all 3,342 tests without weakening the -existing local-workflow assertions or timeouts. - -## Initial Linux, browser and keyring checks - -The native credential policy probe passed, retaining the AI key whitelist and -restricting Nextcloud keys to the dedicated UUID namespace. An isolated -libsecret keyring exercised actual credential creation, read and deletion. -Authentication mocks additionally cover missing/locked keyring behavior and -absence of plaintext fallback. - -X11 and headless Wayland release visualization/HTML/PDF smoke reports returned -`ok: true`. Real WebKit visualization checks passed under both display systems. -The GTK accent lookup and channel-host/lifecycle probes passed. Existing engine -teardown diagnostics appeared on stderr without failing the lifecycle probe. - -Spelling installation and profile restart passed. A separate Docker container -with `--network none` verified an actual offline Wayland restart retained the -installed dictionary and personal word. The container required the test-only -WebKit sandbox-disable environment flag because its user namespaces were -unavailable; production sandbox configuration was unchanged. - -The ordinary final release executable was also launched without smoke-test -arguments, using an empty isolated XDG profile and Xvfb. Welcome → Nextcloud -Notes rendered the connection setup and initialized SQLite through the actual -Dart AOT/native asset path. The server field remained empty and no account was -connected. A read-only inspection found schema version **1**, zero accounts, -`integrity_check: ok`, all four expected tables, directory mode **0700**, and -database/WAL/SHM modes **0600**. No Dart exception or native-loader/store error -was logged. A first private-bus attempt encountered a host desktop-portal/FUSE -delay; a minimal isolated bus without host service autostart passed. This checks -the release initialization and entry point, not interactive account acceptance. -The sanitized report, log and inspected screenshots are retained under -`/tmp/busymark-final-aot-notes-ufxzfivk/`. The app, private bus, Xvfb, test server, -Snap builder and Weston processes created for this work were stopped. - -## Initial Snap packaging - -The final artifact was built from a disposable source snapshot with the official -`ghcr.io/canonical/snapcraft:8_core24` image, Snapcraft **8.11.1**, and the -repository's Flutter **3.47.5** / Dart **3.13.4** pins. At that build, -application/native sources, localization catalogs, lockfile and the embedded -recipe matched the repository. -The container required restoration of its missing extension source and console -entry point from the exact same official Snapcraft version; this affected only -the disposable build environment. - -```sh -SNAPCRAFT_BUILD_INFO=1 snapcraft clean --destructive-mode --verbosity=brief -SNAPCRAFT_BUILD_INFO=1 snapcraft pack --destructive-mode --verbosity=brief -``` - -The artifact is -`/tmp/busymark-nextcloud-snap-source/final-source/busymark_0.5.1_amd64.snap`, -**309,583,872 bytes**, SHA256 -`339a2eb9c1c9911f071f5c3a37d6aa535d0daed205c5ec2a14bd9f25a7203a55`. -It contains the build manifest and exact recipe, SHA256 -`af358e17aadbd4f816069eccd6d4656818d489443b17345cbe0ad78e481dc590`. - -Package validation confirmed strict/core24/amd64 metadata, unchanged network, -browser and keyring plugs, GNOME/Mesa library selection, no missing shared -dependencies, loading SQLite **3.53.4**, application plugins, Git/SSH/setsid, -WebKit helpers, visualization engines, SVG loaders, codecs, fonts/licenses, -Yaru resources and desktop integration. The package-resource probe ran -**unconfined** and returned exit 0; this does not establish installed strict -runtime behavior. - -An initial probe exposed Snapcraft's forced RPATH overriding the GNOME runtime -library selection. The recipe now uses its existing `patchelf` dependency to -preserve bundled paths as RUNPATH, allowing the extension runtime to select its -libraries. Intermediate incremental builds also retained stale priming state; -the final artifact came from a complete lifecycle clean and passed provenance -and resource checks. No interfaces or dependencies were added for this fix. -The sanitized result is `/tmp/busymark-nextcloud-snap-validation.json`; the -complete build log is -`/tmp/busymark-nextcloud-snap-source/.task-snap-final-all-clean.log`. - -## Limits on acceptance - -Strict installation/refresh and confined browser, keyring and network behavior -of the newly built Snap require host administrative permissions unavailable in -this session. The installed older BusyMark Snap was left untouched. These -installed-Snap checks are not claimed as passed. - -The real account authorization and repository protocol checks do not constitute -a complete interactive GUI Notes acceptance run. Widget/controller tests cover -source/WYSIWYG boundaries, save/autosave/shutdown, session/history, media/export, -remote UI and local workflow regressions. The uncertain-create/twin-adoption -race is covered deterministically, not reproduced on the live server. - -## Changed-file manifest - -129 source, test, localization, build and documentation files changed from the initially clean checkout. - -```text -.github/workflows/flutter-linux.yml -docs/development/nextcloud-notes-validation.md -docs/development/nextcloud-notes.md -lib/l10n/app_ar.arb -lib/l10n/app_de.arb -lib/l10n/app_en.arb -lib/l10n/app_es.arb -lib/l10n/app_et.arb -lib/l10n/app_fa.arb -lib/l10n/app_fr.arb -lib/l10n/app_hi.arb -lib/l10n/app_id.arb -lib/l10n/app_it.arb -lib/l10n/app_ja.arb -lib/l10n/app_ko.arb -lib/l10n/app_nb.arb -lib/l10n/app_nl.arb -lib/l10n/app_pl.arb -lib/l10n/app_pt.arb -lib/l10n/app_pt_BR.arb -lib/l10n/app_ru.arb -lib/l10n/app_tr.arb -lib/l10n/app_uk.arb -lib/l10n/app_vi.arb -lib/l10n/app_zh.arb -lib/l10n/app_zh_CN.arb -lib/l10n/generated/app_localizations.dart -lib/l10n/generated/app_localizations_ar.dart -lib/l10n/generated/app_localizations_de.dart -lib/l10n/generated/app_localizations_en.dart -lib/l10n/generated/app_localizations_es.dart -lib/l10n/generated/app_localizations_et.dart -lib/l10n/generated/app_localizations_fa.dart -lib/l10n/generated/app_localizations_fr.dart -lib/l10n/generated/app_localizations_hi.dart -lib/l10n/generated/app_localizations_id.dart -lib/l10n/generated/app_localizations_it.dart -lib/l10n/generated/app_localizations_ja.dart -lib/l10n/generated/app_localizations_ko.dart -lib/l10n/generated/app_localizations_nb.dart -lib/l10n/generated/app_localizations_nl.dart -lib/l10n/generated/app_localizations_pl.dart -lib/l10n/generated/app_localizations_pt.dart -lib/l10n/generated/app_localizations_ru.dart -lib/l10n/generated/app_localizations_tr.dart -lib/l10n/generated/app_localizations_uk.dart -lib/l10n/generated/app_localizations_vi.dart -lib/l10n/generated/app_localizations_zh.dart -lib/src/ai/ai_edit_ui.dart -lib/src/app/busymark_app.dart -lib/src/assets/document_media_context.dart -lib/src/assets/provider_asset_ingestion_service.dart -lib/src/editor/markdown_image_view.dart -lib/src/editor/source/source_editor.dart -lib/src/editor/writerside_video_view.dart -lib/src/editor/wysiwyg/wysiwyg_block_widgets.dart -lib/src/editor/wysiwyg/wysiwyg_editor.dart -lib/src/export/html_export_assets.dart -lib/src/export/html_export_links.dart -lib/src/export/html_export_models.dart -lib/src/export/html_export_service.dart -lib/src/export/html_export_ui.dart -lib/src/export/html_rich_content.dart -lib/src/export/markdown_copy_export_service.dart -lib/src/export/markdown_export_assets.dart -lib/src/export/markdown_pdf_export_service.dart -lib/src/export/markdown_pdf_export_ui.dart -lib/src/export/markdown_pdf_models.dart -lib/src/export/markdown_visualization_export.dart -lib/src/git/application/git_controller.dart -lib/src/local_history/local_history_comparison_view.dart -lib/src/local_history/local_history_controller.dart -lib/src/local_history/local_history_models.dart -lib/src/local_history/local_history_store.dart -lib/src/nextcloud_notes/application/attachment_markdown.dart -lib/src/nextcloud_notes/application/nextcloud_connection.dart -lib/src/nextcloud_notes/application/notes_media.dart -lib/src/nextcloud_notes/application/notes_repository.dart -lib/src/nextcloud_notes/data/login_flow.dart -lib/src/nextcloud_notes/data/notes_api_client.dart -lib/src/nextcloud_notes/data/notes_attachment_references.dart -lib/src/nextcloud_notes/data/notes_capabilities.dart -lib/src/nextcloud_notes/data/notes_secret_store.dart -lib/src/nextcloud_notes/data/notes_store.dart -lib/src/nextcloud_notes/data/server_uri.dart -lib/src/nextcloud_notes/domain/notes_models.dart -lib/src/nextcloud_notes/presentation/nextcloud_settings.dart -lib/src/nextcloud_notes/presentation/notes_sidebar.dart -lib/src/search/search_replace_service.dart -lib/src/visualization/openapi_dependency_resolver.dart -lib/src/visualization/visualization_card.dart -lib/src/visualization/visualization_models.dart -lib/src/workspace/document_buffer.dart -lib/src/workspace/document_origin.dart -lib/src/workspace/presentation/settings_screen.dart -lib/src/workspace/presentation/welcome_screen.dart -lib/src/workspace/presentation/workspace_screen.dart -lib/src/workspace/session_persistence.dart -lib/src/workspace/workspace_controller.dart -lib/src/workspace/workspace_glyphs.dart -lib/src/workspace/workspace_model.dart -lib/src/workspace/workspace_service.dart -linux/runner/credential_key_policy.h -linux/runner/secure_credential_host.cc -pubspec.lock -pubspec.yaml -snap/snapcraft.yaml -test/src/ai_edit_ui_test.dart -test/src/localization_audit_test.dart -test/src/nextcloud_capabilities_test.dart -test/src/nextcloud_connection_test.dart -test/src/nextcloud_document_model_test.dart -test/src/nextcloud_editor_boundary_test.dart -test/src/nextcloud_login_flow_test.dart -test/src/nextcloud_media_export_test.dart -test/src/nextcloud_notes/notes_api_test.dart -test/src/nextcloud_notes/notes_attachment_references_test.dart -test/src/nextcloud_notes/notes_repository_test.dart -test/src/nextcloud_notes_ui_test.dart -test/src/nextcloud_secret_store_test.dart -test/src/nextcloud_workspace_test.dart -test/src/openapi_dependency_resolver_test.dart -test/src/source_audit_test.dart -tools/nextcloud_libsecret_probe.cc -tools/nextcloud_login_live_acceptance.py -tools/nextcloud_notes_live_acceptance.dart -tools/secure_credential_policy_probe.cc -tools/test_nextcloud_libsecret.sh -tools/test_secure_credential_policy.sh -``` - -## Explicit-adoption validation, 7 October 2026 - -This section supersedes earlier automatic-adoption expectations. Evidence is -retained in `delivery/nextcloud-explicit-adoption/evidence/` and the delivered -manifest records source and artifact hashes. Initial HEAD was `f9b734c`; the -workspace was clean before this work. No unrelated edits were discarded. - -A pre-fix regression failed because discovery assigned server ID 1 without -confirmation. The replacement regression verifies repeated discovery first, -then explicitly confirms adoption before permitting an If-Match PUT. - -Upstream `nextcloud/notes` tags v6.0.1 and v6.1.0 were inspected specifically at -`docs/api/v1.md` and `lib/Controller/NotesApiController.php`: POST accepts writable -attributes and returns the server note, without a client idempotency key; PUT -uses the server identity and ETag check. Payload equality is not identity proof. - -Actual disposable HTTPS Notes **6.0.1** and **6.1.0** runs each passed **14 checks**, -including dropped successful POST response, staged attachment and newer edit -across restart, repeated nonmutating discovery, deliberate adoption, byte -verification, a second restart, and an independently created identical note -whose BusyMark POST was never delivered. CRUD, canonical metadata, ETag conflict, -chunking, deletion and version-specific attachment checks remain included. -The harness's separate `offline` transport-injection scenario is a repository -test and does not establish denied application network access. - -Browser Login Flow passed anonymous start, pending 404, external-browser -launch, browser grant and one-time 200 credentials with disposable browser -profiles. Native libsecret store/read/delete and credential-policy checks passed -in an isolated keyring. Writerside conformance passed 181 checks. The Welcome -routing test passed without weakening its assertions (5 tests in the router -file). The native spelling package passed 13 tests. - -Final regression validation used Flutter **3.47.5**, Dart **3.13.4**, the frozen -Linux release bundle and the CI spelling resources. The complete Nextcloud set -passed **216 tests**; the entire Flutter suite passed **3,638 tests, zero failures -and zero skips** in 18:21. The unchanged Welcome restoration assertion passed in -the full suite. Localization audit passed 21 tests, actual dictionary integration -passed 3, the native spell package passed 13 and Writerside conformance passed 181. -Formatting reported 544 files with zero changes; analysis reported no issues. -Dependency-lock enforcement succeeded without changing the lockfile. - -The final confirmation UI regression clicks a real dropdown option and the -**Use this server note** action. A short timing poll initially failed under -load; the final test drives dialog-dismissal frames and real SQLite work while -retaining its binding, content, pending-revision and duplicate assertions. A -separate failing regression exposed unsaved draft edits arriving during the -confirmation GET; the commit-time controller guard fixes that race. Both -pre-fix failures and the superseded full-suite timing failure remain historical -evidence, alongside the successful final logs. - -The native application and the actual installed **strict Snap** completed -browser Login Flow through the desktop portal and an external Chromium browser -with disposable profiles. Account credentials used the guest's libsecret Secret -Service and survived application restart. Both applications exercised staged -attachment creation, discarded successful POST response, restart, newer local -edit, repeated refresh without binding or publication, actual candidate-dialog -confirmation, canonical metadata, exact attachment bytes, one original POST and -another restart with the exact acknowledged revision. The native binding is -server note 184; the Snap binding is 223. Both preserve their original local IDs. -Snapshots, durable-state reports and server comparisons are retained. - -Application network denial was real: native acceptance used a root-created -network namespace, and installed-Snap acceptance disconnected `busymark:network`. -The Snap kernel audit records denied Internet socket creation by the actual -`busymark` process; the UI preserved its offline draft and bytes across restart. -Reconnect created that previously unsubmitted draft once. No harness `offline` -flag is counted as application network acceptance. - -The native final binary passed fresh dictionary installation and denied-network -restarts on X11 and Wayland in the disposable VM. Linux release visualization -and real WebKit smoke runs passed on both backends. Installed-Snap online and -denied-network X11 spelling passed. Its visualization run failed in WebKit -(`Unsupported result type`, with another run failing MathJax recovery). An -experimental Promise-retention change did not fix acceptance and was reverted. -Installed-Snap Wayland spelling subsequently passed all 20 checks with network -access denied. Wayland visualization failed during Mermaid/Typst export after -13 checks. At that stage, passing installed visualization acceptance remained outstanding. -Automatic approval review rejected uploading the source to public GitHub for -the Ubuntu CI run; explicit export approval was requested. These failed VM -checks are not counted as passing acceptance. The final KVM acceptance below -supersedes that incomplete release status while retaining these failed results. - -The VM is Ubuntu **24.04.5**, kernel **6.8.0-142**, snapd **2.77.1**, software QEMU -TCG (2 CPUs, 4 GiB), Xvfb/Openbox and Weston headless. Its desktop portal has the -correct display/DBus environment. A disposable test CA was trusted only in the -VM/browser fixture; production HTTPS checks were preserved. The VM permits -unprivileged user namespaces for WebKit Bubblewrap; Snap AppArmor profiles remain -enforced, as independently proved by the network denials. `LP_NUM_THREADS=2` -caps software-renderer workers. The final native runs retain the existing smoke -assertions and timeouts. Earlier display/portal setup failures are fixture -history, not passed checks. - -The Snap was built with **Snapcraft 8.11.1**, the official core24 builder and the -unchanged actual `snap/snapcraft.yaml`, from a fresh source directory after -`snapcraft clean --destructive-mode`. `snapcraft pack --destructive-mode` produced -the strict package. The development repack script was not used. The installed -payload checks verify SVG loading, GTK/WebKit/GNOME/Mesa libraries, fonts, media, -Git/SSH/session tools and Yaru assets. Required desktop, X11/Wayland, network, -content and manually connected password-manager interfaces were inspected. -The installed package SHA-256 matches the delivered recipe-built artifact. - -The disposable accounts were deleted after application acceptance; both -HTTPS APIs returned 401 for their revoked credentials. All grants belonging -to those accounts, including application Login Flow grants, were invalidated. -Private fixture credentials, keys and Login Flow URLs are excluded. - -Exact commands and final reports are under -`delivery/nextcloud-explicit-adoption/evidence/`. Key invocations were: - -```sh -flutter pub get --enforce-lockfile -flutter gen-l10n -flutter test test/src/localization_audit_test.dart -dart format --set-exit-if-changed . -flutter analyze -(cd packages/busymark_spellcheck_native && dart pub get && dart test) -tools/fetch_spelling_dictionaries.sh build/spelling-test -BUSYMARK_TEST_SPELLING_ROOT="$PWD/build/spelling-test" flutter test test/src/spelling_bundle_integration_test.dart -tools/validate_writerside_conformance.sh -flutter build linux --release -flutter test --no-pub --concurrency=1 --reporter expanded test/src/nextcloud_notes test/src/nextcloud_*_test.dart -BUSYMARK_NATIVE_DIALOG_TEST_DISPLAY=:97 BUSYMARK_D2_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/d2" BUSYMARK_TYPST_PATH="$PWD/build/linux/x64/release/bundle/libexec/busymark/typst" BUSYMARK_TEST_SPELLING_ROOT="$PWD/build/spelling-test" flutter test --no-pub --concurrency=1 --reporter expanded -dart run tools/nextcloud_notes_live_acceptance.dart PRIVATE_CREDENTIALS SANITIZED_REPORT TEST_CA_PEM -``` - -The live commands ran separately against Notes 6.0.1 and 6.1.0 on disposable -Nextcloud 35.0.1 HTTPS installations. A persistent server lock through the -supported Files Lock OCS endpoint produced a real **423** while an unrelated note -synchronized successfully. The first Text browser lock probe did not produce -423 and remains a failed historical fixture attempt. - -The final source identity is the commit recorded by the delivery manifest. -`linux-source-identity.json` and `snap-source-identity.json` record 568 compilation -input hashes matching that tree, the recipe hash, artifact hashes and frozen -binary hashes. Tests and documentation changed after the build only where they -do not enter compilation; the manifest and extracted-archive verification tie -their final bytes to the committed source and final test logs. The delivered -source archive is generated from that commit, with a fresh extraction checked -byte-for-byte and the complete Nextcloud regression set rerun there. - -## Final installed acceptance and delivery, 7 October 2026 - -The original recipe-built Snap, SHA-256 -`2b7c2a7b91a9aa7cbb7f23d35186e59a46173446b95ca9a14ddb5f667ca592ce`, -passed installed visualization on **X11 and Wayland: 23 checks each**, with a -second successful run on each backend. The repeat X11 command took 10 seconds; -the combined Wayland spelling/visualization command took 18 seconds. Installed -spelling passed **20 checks per run**, including fresh dictionary installation, -Snap revision refresh, and X11/Wayland restart with `busymark:network` -disconnected. Wayland visualization also ran with that interface disconnected. -The original assertions and timeouts were retained. - -This fresh disposable VM uses **KVM, 4 CPUs, 4 GiB RAM**, Ubuntu **24.04.5**, -kernel **6.8.0-142**, snapd **2.77.1**, core24 revision **2124**, GNOME revision -**168** and Mesa revision **1839**. The content runtimes match the earlier TCG -fixture. The installed root-owned Snap hash, embedded recipe hash, AOT hash, -interfaces and enforced AppArmor profile were rechecked. The package and all -568 recorded compilation inputs are unchanged; no renderer workaround was -shipped and no executable was replaced during tests. - -The fresh headless VM initially lacked a usable desktop activation environment. -A temporary D-Bus session could not create Snap's cgroup; its normal systemd -user session fixed that. GTK portal activation then waited on a missing display -and the first visualization attempt timed out. A persistent Xvfb display, -`dbus-update-activation-environment --systemd DISPLAY=:97 XDG_CURRENT_DESKTOP=GNOME`, -and explicit GTK portal selection provided a working Settings portal. Both -backends then passed repeatedly without the experimental `NO_AT_BRIDGE` -override. These observations explain the new fixture failures; they do not -establish the cause of every historical TCG `Unsupported result type` error. -All failures remain labelled in the evidence. - -The installed commands were extracted from `.github/workflows/flutter-linux.yml`: -GTK SVG loading; shared-runtime/tool/media/resource inspection; dictionary -install/refresh/offline use; X11 visualization/PDF; and Wayland -spelling/visualization. Their only substitutions are the private report directory -and the exact package path. Scripts, logs, reports, exported HTML/PDF, desktop -configuration and kernel audit evidence are retained in -`delivery/nextcloud-explicit-adoption/evidence/installed-kvm/`. - -Public source publication was explicitly approved after the initial automatic -review rejection. GitHub then returned **403, Resource not accessible by -integration**, and the existing SSH identity could not authenticate. No branch -or draft PR was created and no CI result is claimed. The authorized disposable -VM completed the installed-package checks instead. - -Release acceptance is complete for the recorded source and artifacts: full -Flutter **3,638 passed / 0 failed / 0 skipped**, complete Nextcloud **216 passed**, -the earlier native/Writerside checks, real HTTPS Notes **6.0.1 and 6.1.0**, -real 423 isolation, actual browser/libsecret/application/offline adoption, and -the installed strict-Snap checks above. The application and test source remains -code commit `d55b41ddf47ef716d5113c89da8a3a2f3b80e819`; the final delivery commit -adds evidence and documentation. The final manifest names that commit and the -archives generated directly from it. Fresh extraction verifies every committed -file and build input, then reruns all 216 Nextcloud tests, including the top-level -files. Test accounts were revoked; the acceptance VM and private keys are removed -after evidence collection. diff --git a/docs/development/nextcloud-notes.md b/docs/development/nextcloud-notes.md index aa06ce29..63a8f337 100644 --- a/docs/development/nextcloud-notes.md +++ b/docs/development/nextcloud-notes.md @@ -5,17 +5,14 @@ account. The SQLite database and managed attachment files are implementation details for offline editing, recovery and synchronization; they are not another workspace. Existing local Markdown and Writerside storage paths remain separate. -## Verified upstream contract +## Supported API contract -The implementation was researched against **Notes 6.1.0**, released September 15, -2026, stable tag `v6.1.0`, commit -`0c3dd46dbd781b780c1ea60a13873198609bb98d`. On October 5, 2026 the App Store -listed this release for Nextcloud **33, 34 and 35**; no newer stable Notes release -was listed. The package permits `>=33,<37`, which does not make an unreleased -server a tested baseline. Live acceptance used **Nextcloud 35.0.1** with this -exact Notes release. +The implementation targets **Notes API 1.4** in major version 1, including +Notes **6.0.x** and **6.1.x**. Attachment deletion additionally requires Notes +**6.1.0** or later. Server compatibility depends on the installed Notes app and +its advertised capabilities. -Sources reviewed before implementation: +Upstream contract references: - [App Store](https://apps.nextcloud.com/apps/notes) and [stable release](https://github.com/nextcloud/notes/releases/tag/v6.1.0). @@ -27,7 +24,7 @@ Sources reviewed before implementation: `playwright/e2e/attachment-api.spec.ts`. - [Login Flow v2 and password revocation](https://docs.nextcloud.com/server/stable/developer_manual/client_apis/LoginFlow/index.html), [OCS authentication/capabilities](https://docs.nextcloud.com/server/stable/developer_manual/client_apis/OCS/ocs-api-overview.html). -- Current Notes issues [1940](https://github.com/nextcloud/notes/issues/1940), +- Notes issues [1940](https://github.com/nextcloud/notes/issues/1940), [2037](https://github.com/nextcloud/notes/issues/2037), [1955](https://github.com/nextcloud/notes/issues/1955), [1999](https://github.com/nextcloud/notes/issues/1999), @@ -41,9 +38,8 @@ There is no Notes application-version minimum for connection. Missing or malform capability fields are ignored. No API <1.4, deprecated 0.2, or other protocol is implemented. -The October 5 compatibility review repeated `docs/api/README.md`, `docs/api/v1.md`, -`lib/AppInfo/Application.php`, `lib/AppInfo/Capabilities.php`, and `appinfo/routes.php` -against these exact tags: +The tagged `lib/AppInfo/Capabilities.php` and `appinfo/routes.php` establish +the supported baseline alongside `docs/api/README.md` and `docs/api/v1.md`: | Tag | Commit | API capability | Attachment endpoints | | --- | --- | --- | --- | @@ -114,10 +110,8 @@ newer unsupported schemas. SQLite uses WAL, `synchronous=FULL`, foreign keys and a busy timeout. Notes content, revision, base state, outbox and synchronization checkpoint commit atomically. The Notes directory is mode 0700 and database 0600 on Linux. Managed attachment paths reject traversal and symbolic links. -No database encryption or general account-provider framework was introduced. -The lockfile adds only `sqlite3` and its required native-asset tooling upgrades -(`hooks` 2.2.0 and `record_use` 1.1.1). Flutter 3.47.5 and Dart 3.13.4 were used; -the repository's SDK and toolchain pins were preserved. +The database is not encrypted. This is a dedicated Notes integration, with no +general account-provider framework. An editor revision is saved only after its local transaction succeeds. HTTP acknowledgment is a separate operation. Save, Save All, autosave, recovery, @@ -316,12 +310,41 @@ attachment stages/media security and BusyMark save/session/history/export/UI integration. Native probes cover the credential whitelist and actual libsecret create/read/delete in an isolated keyring. -`tools/nextcloud_notes_live_acceptance.dart` accepts a private credential JSON -path and exercises an explicit disposable fixture. The browser helper uses -Login Flow v2; do not commit credentials or use a real production account for -destructive acceptance tests. Validation results and environment limitations -are recorded in [the validation record](nextcloud-notes-validation.md); mocked coverage is not a -substitute for claiming real server acceptance. +Run the existing automated coverage from the repository root: + +```bash +flutter test --no-pub test/src/nextcloud_notes test/src/nextcloud*_test.dart +bash tools/test_secure_credential_policy.sh +bash tools/test_nextcloud_libsecret.sh +``` + +The libsecret probe requires development headers, `pkg-config`, a C++ compiler, +D-Bus, and `gnome-keyring-daemon`; it creates an isolated temporary keyring. +Run `flutter test --no-pub` for the shared editor, session, history, export and +packaging regressions as well. + +For live acceptance, use an isolated HTTPS test account and keep credentials +and reports outside the repository. The browser harness requires Python +`requests`, Playwright and Chrome. Its account JSON contains `server`, `user` +and `password`; it writes private app credentials containing `server`, +`loginName` and `appPassword` for the Dart harness: + +```bash +acceptance_dir="$(mktemp -d)" +python3 tools/nextcloud_login_live_acceptance.py \ + /path/to/private-test-account.json "$acceptance_dir/app-credentials.json" \ + "$acceptance_dir/login.json" +dart run tools/nextcloud_notes_live_acceptance.dart \ + "$acceptance_dir/app-credentials.json" "$acceptance_dir/notes.json" +``` + +The Dart harness also accepts a third argument naming a test CA certificate. +It exercises disposable notes and attachments, including conflicts, offline +saves, restart, and explicit adoption after uncertain creation. Repeat against +the supported Notes 6.0.x and 6.1.x baselines when changing the API contract; +mocked tests alone do not establish live server compatibility. Keep the +checkpoint, revision, explicit-adoption and attachment ownership invariants +above covered, and remove temporary acceptance data when finished. ## Explicit non-goals @@ -332,10 +355,3 @@ The current [Text source](https://github.com/nextcloud/text) and describe web-editor ownership and internal collaborative machinery, not a documented supported external native collaboration API. A future official native API would require a separate product decision. - -The 7 October explicit-adoption source, regression, live HTTPS and application -evidence is recorded in [the validation report](nextcloud-notes-validation.md). -Installed-Snap X11 and Wayland visualization acceptance subsequently passed on -the same recipe-built package in a disposable KVM desktop, including repeated -runs. The validation report records the environment, historical failures and -final committed-source archive verification. diff --git a/docs/development/writerside-toc-implementation.md b/docs/development/writerside-toc-implementation.md deleted file mode 100644 index a18d5efb..00000000 --- a/docs/development/writerside-toc-implementation.md +++ /dev/null @@ -1,429 +0,0 @@ -# Writerside Table of Contents implementation record - -Status: authoring workflows implemented, including native GTK submenus and the -approved template workflow; exact-original UI coverage remains incomplete. -The two unidentified icon-only toolbar controls are still unimplemented. -This is **not a claim of complete IDE, website, or pixel-perfect Writerside -parity**; retained safety and integration differences are listed below. - -## Baseline and decisions - -The receiving checkout was clean at `c3b53ff` (BusyMark 0.4.2). The named handoff -implementation points matched the receiving source; no archive was copied over it. -Flutter 3.47.5 and Dart 3.13.2 were used without upgrading dependencies. - -User decisions: retain BusyMark AI, Git, clipboard, and file commands **after** the -Writerside actions; use installed Writerside **2026.07.8925** for undocumented -behavior; reuse the existing usage-review sidebar, titled **Find**. - -The user approved application-support user-template storage and a dedicated -**File and Code Templates** editor, without project metadata. The installed -**Create Topic from Template** dialog takes precedence over the obsolete submenu -screenshot. The user also explicitly required BusyMark's existing native Linux -menus, not Material dropdowns. - -## Evidence - -The handoff's source identifiers are retained: - -| Ref | Official source | -| --- | --- | -| S1 | [Table of contents](https://www.jetbrains.com/help/writerside/table-of-contents.html) | -| S2 | [Context menu](https://resources.jetbrains.com/help/img/writerside/go-to-toc-element.png) | -| S3 | [Row presentation](https://resources.jetbrains.com/help/img/writerside/toc-elements-toc-view.png) | -| S4 | [Topics and titles](https://www.jetbrains.com/help/writerside/topics.html) | -| S5–S7 | [Basic title dialog](https://resources.jetbrains.com/help/img/writerside/edit-title-action.png), [instance title](https://resources.jetbrains.com/help/img/writerside/edit_title_instance_specific.png), [TOC title](https://resources.jetbrains.com/help/img/writerside/edit_title_toc_title.png) | -| S8 | [Add topics](https://www.jetbrains.com/help/writerside/add-a-topic.html) | -| S8a | [Import from Markdown](https://www.jetbrains.com/help/writerside/import-markdown.html) | -| S9–S10 | [Reuse topics](https://www.jetbrains.com/help/writerside/reuse-topics.html), [creation menu](https://resources.jetbrains.com/help/img/writerside/reuse-from-another.png) | -| S11–S12 | [Remove topics](https://www.jetbrains.com/help/writerside/delete-a-topic.html), [removal dialog](https://resources.jetbrains.com/help/img/writerside/remove_topic_dialog.png) | -| S13 | [Save topic as template](https://www.jetbrains.com/help/writerside/save-as-template.html) | -| S14 | [Preview topics](https://www.jetbrains.com/help/writerside/preview-topics.html) | -| S15 | [Instances and tree format](https://www.jetbrains.com/help/writerside/instances.html) | - -Installed-build evidence (**P**) is bytecode/resource inspection, not an interactive -JetBrains UI observation. Source artifact: -`/home/albert/.local/share/JetBrains/PyCharm2026.2/writerside/lib/writerside-2026.07.8925.jar`. -SHA-256: `0493a38ac6f09840302b150641fab8b91697955896572c7bf4367bbf7a08f810`. -Reproduce with `unzip -p` for resources and `javap -c -p -classpath ` -using the installed JDK. Relevant classes/resources: - -- `stardust.ui.tocTree.TocTreePopupKt`: context order, Group and Sort positions. -- `stardust.ui.views.dom.tree.actions.NewArticleActionGroup`: creation order. -- `stardust.ui.views.dom.tree.actions.DuplicateTopicAction`: source duplication, - new XML root ID, basic sibling reference rather than copied TOC descendants. -- `stardust.actions.CopySpecialAction` and `stardust.ui.tocTree.CopyTopicFileNameAction`, - `CopyTopicFilePathAction`, `CopyTopicTitleAction`, `CopyTocOwnIdAction`: labels, - order, availability, raw reference/canonical path/base title/explicit ID payloads. -- `stardust.ui.changes.EditTitleDialog`: collapsed advanced fields, blank override - removal and required base title. -- `stardust.ui.views.dom.tree.actions.GroupAction`: two or more siblings, source - ordering, New Group/Group Name/Enter interaction. -- `com.intellij.writerside.intentions.SortChildrenAlphabeticallyAction`: shallow, - case-sensitive natural string comparison of resolved tree-node names. -- `stardust.ui.views.dom.tree.actions.LinkTopicFileToTocAction`: single selection, - name filtering, picker caption and current-instance exclusion. -- `stardust.ui.changes.RemoveElementDialog`, `TocRemoveDialogData`, and - `RemoveTocElementIntention`: compact versus full removal and automatic-update default. -- `stardust.ui.views.dom.tree.actions.ScrollProductTreeToFileAction`, - `stardust.ui.tocTree.TocTreeImpl`, `TocElementKey`, `TocTreeAsyncView`: - explicit synchronization and breadth-first first topic match. -- `stardust.ui.views.dom.tree.TopicFromTemplate`, `actions.newtopic.NewTopicDialog`, - `actions.TemplateFromTopicAction`, `fileTemplates/internal/`, and - `tgdpTemplates/`: real template resources and modern creation/settings entry points. - `LocalFileTemplateProvider` and `FileTemplateUtilKt` establish simultaneous - literal `${TITLE}`/`${ID}` substitution, not Velocity execution. - `NewTopicDialog.Companion` establishes XML-only title escaping and filename - conversion; `TGDPFilesImporter.Companion` establishes brace adaptation, - first top-level H1 replacement, and relative-link resolution. -- `i18n/StardustBundle.properties`: installed English strings/defaults. - -## Action acceptance matrix - -Implementation paths below abbreviate `workspace_screen.dart` as **WS**, -`writerside_toc_dialogs.dart` as **Dialogs**, and the controller/service by class. -Test abbreviations: **A** = `writerside_toc_actions_test.dart`; **W** = -`writerside_toc_workspace_test.dart`; **M** = `writerside_toc_menu_test.dart`; -**E** = `writerside_toc_editor_test.dart`; **C** = `writerside_topic_creator_test.dart`; -**R** = `writerside_topic_removal_service_test.dart`; **App** = `app_smoke_test.dart`; -**TS/TD** = `writerside_template_service_test.dart` / `writerside_template_dialogs_test.dart`. - -“Native” means the production Flutter Linux application driven by the disposable -fixture harness, with source-file assertions and actual rendered captures. GTK -menus are activated through Linux accessibility and X11 keyboard events, not a -Flutter menu substitute. It is not a human manual run or an original Writerside -screenshot comparison. - -| Evidence | Final location / exact English label | Implementation | Behavioral verification | Linux/manual result / differences | -| --- | --- | --- | --- | --- | -| S1, S3, S4 | Sidebar: **Table of Contents** | `WritersideTocPresenter`, `WS._TocTabState` | W: contextual titles, instances, markers, included ownership; App: Files/TOC and RTL regressions | Native pane captured and inspected. Ordinary rows have no document icon; hidden rows remain muted. Existing glyphs are not JetBrains artwork. | -| S1, S2, P | Context: **New Topic** → choices; toolbar + uses current selection | `WS._showTocTreeMenu`, `_createTocItem`, `_TocHeader` | App: selected sibling path/identity; C: creation guards | Native sibling Markdown and template creation passed. | -| S1, S2, P | Context: **New Child Topic** → choices | Same dispatch with child placement | App: XML format and child source identity; C | Native XML child creation passed. | -| S8, P | Either creation menu: **Empty MD Topic**, **Empty XML Topic**; dialog **New Topic** | `WS._CreateWritersideTopicDialog`, `WritersideTopicCreator.create` | C: formats, roots, collisions, races, first home page; controller monitor-race and dirty inactive-tree tests | Native both formats passed; new documents opened with other tabs retained. Existing BusyMark empty-body content retained; not a claim of identical installed template bytes. | -| S1, P | Creation menu: **Empty Group**; dialog **New Empty Group**, **TOC title:**, **Cancel**, **OK** | `Dialogs.WritersideTocTextDialog`, `WritersideTocEditor.insertElement` | E/A structural paths; guarded insertion service | Native creation passed: a titled element without a topic reference. | -| S9–S10, P | Creation menu after separator: **Link Topic Files to TOC...**; picker **Select Topic to Add to the Current Instance** | `Dialogs.WritersideExistingTopicPicker`, `WorkspaceService.insertWritersideTocElement` | M: filter/arrows/submit/cancel; W: unchanged bytes and stale eligibility | Native linking passed, including unchanged source bytes. Candidates use canonical resolved membership, including includes. | -| S8, S8a | **New Topic** and header Add: **Add Local Markdown Files**; dialog **Add Local Markdown Files** | Existing Markdown discovery and `WritersideInstanceService.addMarkdownTopics`; focused selection dialog | Instance service: selected-only/root/sibling ordering, relative layout, media, first home page, ID and concurrency failures; workspace/controller/dialog/menu suites | Context imports are siblings and header imports are roots. **New Child Topic** intentionally has no import action. Imported Markdown bytes are unchanged. | -| S2, P | Context after creation separator: **Duplicate**; **Duplicate Topic**, **Topic Filename:** | `WorkspaceService.duplicateWritersideTopic`, guarded creator | W: new XML ID, unchanged body, basic sibling only; C publication guards | Native duplication passed: source copy opened with its new XML root ID. Filename validation retains BusyMark's conservative identifier restrictions; race errors use existing workspace error presentation. | -| S2, P | Context: **Copy Special** → **Topic File Name '{name}'**, **Topic File Path**, **Topic Title '{title}'**, **TOC Element ID '{id}'** | `WS._showTocTreeMenu`, `_showTopicContextMenu` | App: all four Copy Special clipboard payloads in RTL, including base versus navigation title; M nested keyboard/focus/RTL | Native menu captured. Payloads are raw topic reference, canonical path, base title, explicit ID; unavailable values are disabled. No claim that contextual TOC title is copied. | -| S2, S14, user decision | JetBrains **Preview Topic** is deliberately not exposed | No BusyMark TOC action | Framework and native menu-absence regressions | The removed action only opened the selected topic in BusyMark's ordinary Reading mode, duplicating existing document view controls and incorrectly implying Writerside Preview-tool-window semantics. BusyMark retains its separate Reading and Split document modes. A true Writerside Preview feature is outside this change; no Preview-tool-window or browser-preview parity is claimed. | -| S2, S4–S7, P | Context: **Edit Title...**; dialog **Edit Title** with **Topic title:**, **Advanced Settings**, **Title for '{id}':**, **TOC-only title:**, **Cancel**, **OK** | `Dialogs.WritersideTitleDialog`, `WritersideTitleEditor.prepare`, `WorkspaceService.editWritersideTitles` | A: XML/Markdown escaping, independent overrides, inherited values, clearing, repeated occurrence; W: rollback on second-file guard | Native dialog/advanced fields captured and inspected. Front-matter title editing is rejected rather than silently changing a shadowed H1; edit that BusyMark extension in source. | -| S11–S12, P | Context: **Remove TOC Element**; dialog **Remove TOC Element** | `WS._runWritersideTopicRemoval`, `WritersideTopicRemovalService` | R: project-wide references, `topic`/`ref`/`origin`, redirects, malformed or incomplete semantic discovery, races, file retained/deleted; W: project-wide dirty guard and rollback | The approved sidebar Review Usages flow is instance-aware; Do Refactor reanalyzes and completes directly when all blocking usages are resolved. | -| S1, P | Multi-selection: **Remove TOC Elements...**; compact **Remove {count} TOC Elements** | `WS._removeTocEntries`, guarded batch structural removal | E: source identities and direct-child promotion; App: multi-selection route | Existing direct-child promotion is preserved, as required by handoff. Installed descendant-inclusive count/removal is not cloned; selected-entry count is shown. | -| S11, user decision | Existing sidebar: **Find**, **Do Refactor** | `_WritersideTopicUsageReviewPanel`, usage navigation/reanalysis orchestration | R and controller stale-analysis tests; native review transition | Native surface captured and inspected. Sidebar placement is explicitly user-approved; this is not a general JetBrains tool-window clone. | -| S11 | Files context: **Refactor** → **Safe Delete**; dialog **Delete**, mandatory checked **Safe Delete**, **OK** | Files nested menu, same topic-removal analyzer/apply service | R: project-wide generic-delete bypass prohibited (including unparsed/non-active-module topics), usage checks, orphan choices; W: rollback | Safe Delete is deliberately non-toggleable for Writerside topic files. | -| S2, S15, P | Context: **Set as Home Page** | `WritersideTocEditor.setHomePage`, controller/service | W: root attributes and other instance unchanged; C: first-topic initialization retained | Native reassignment passed and marker inspected. No home action for groups, URLs or library instances; included structural mutation remains restricted. | -| S1, P | Multi-selection after Duplicate: **Group**; **New Group**, **Group Name**, Enter | `WritersideTocEditor.groupElements`, `Dialogs.WritersideTocTextDialog` | A: source order, full nodes, cross-parent rejection; E guards | Native Group/Enter passed, wrapping the two selected source subtrees. Same-parent selections only, preserving complete XML subtrees. | -| S1, P | Context after source navigation: **Sort Child Topics Alphabetically** | `WorkspaceService.sortWritersideTocChildren`, `WritersideTocEditor.reorderChildren` | W: concurrent resolved-title dependency change rejected; native expected order | Native shallow contextual-title order passed. Deliberately rejects mixed XML child entries instead of reproducing the installed action's loss of includes/non-TOC tags. | -| S1 | Pointer: before/after/child drop, single/multiple selection | `WS._TocTabState` drag handlers, `WritersideTocEditor.moveSubtrees` | App: actual recognizers, child/before zones, multi-payload, ancestor rejection; A/E: full subtrees and identities | Native multi-item child drop passed; moved entries remained selected and descendants visible. Widget checks pass for collapsed-hover expansion and autoscroll to a distant destination in a 42-entry tree. | -| S1, S2 | Context: **Go to TOC Element in '{tree filename}'** | `WS._goToTocElement`, `writersideTocSourceSpan`, `SourceEditorState.scrollToOffset` | A: repeated references on one line and fresh offsets; source widget: folded destination; W: snippet owner | Native active and included owner source navigation passed; captures inspected. Native preview-only → source navigation also passed. | -| S1 | Topic/group double-click | TOC `WS._SidebarTreeRow` and `_SidebarRowSurface` callbacks | App: empty-group double-click/source-open assertion; exact-source helper tests | Production callbacks implemented; dedicated native double-click check not yet recorded. Existing single-click semantics retained. | -| S1, P | Toolbar: **Synchronize TOC and Editor** | `WS._rememberSyncFocus`, `_synchronizeToc`, `writersideTocBreadthFirstPath` | A: installed breadth-first duplicate match and tree-editor key behavior | Native both synchronization directions passed, including pre-toolbar focus tracking. Installed `.tree` editor action unusually passes explicit element ID as a topic key: no ID, or no matching topic reference, yields no selection. This limitation is retained, not described as arbitrary group synchronization. | -| S1 | Instance control context: **Open TOC File** | `WS._WritersideInstanceSelector`, `_openInstanceTree` | App: instance-context Open TOC File assertion; native source opening | Implemented; retained additionally in existing overflow. Native instance-context activation not yet recorded. | -| S1 | Tree source: Ctrl+Shift+Home / Ctrl+Shift+End | `source_commands.dart` line movement, source editor, command registry | A: CRLF, boundaries, reversed selection; source widget: folds, one edit, undo/redo | Implemented only in tree-editor context. Multi-line block behavior is conventional BusyMark behavior, not yet observed in original IDE. | -| S1, S15 | Source authoring: `hidden`, `href`, `toc-title`, nesting | Existing parser plus contextual presentation/refresh | Existing parser/resolver/source/controller suites; W row fixture | Native hidden/external rows captured. No invented Hide/Add External Link menus or search-index parity claim. | -| S8, S13, P | Creation menus: **Topic from Template...**; **Create Topic from Template** dialog | `WritersideTemplateDialog`, `WritersideTemplateService.generate`, guarded `WritersideTopicCreator.create` | TS: resource hashes, six families/10 variants, 22 TGDP topics, literal substitution, XML escaping, safe publication/rollback; TD: RTL/LTR format, validation and creation | Native XML template preview and creation passed; new tab and actual template body verified. BusyMark's preview renderer and conservative filenames are retained. Bundled TGDP collection is pinned, not automatically downloaded. | -| S2, S13, P, user decision | Context: **Save as Template**; toast/dialog: **Edit templates...**; **File and Code Templates**, **Files**, **Internal**, **OK** | `WS._showTopicContextMenu`, `WritersideTemplateService.saveTopic`, `WritersideTemplatesEditor` | TS: original extraction/naming, restart, stale-store rejection, serialized writes, source preservation, built-in reset; TD: staged edits, duplicate/delete, Cancel/OK, conflict recovery | Native save/edit/reuse passed with original topic unchanged. Application-support storage and dedicated editor are user-approved adaptations, not an IDE-wide settings clone. | -| S2, user decision | BusyMark AI, Git, clipboard and file extras follow Writerside actions | `WS._showTocTreeMenu` | App preserves copy/cut/paste, history and applicable Git/AI routes | User-approved layout difference. TOC, Files → Refactor, and flat menus use the existing GTK backend, now with real submenus. A framework fallback is retained only for an unavailable native host; no forced Material path remains on Linux. | - -## Safety and retained differences - -New mutations validate raw source identities and expected content, use guarded -publication, and inspect inactive affected buffers as well as the active document. -Title changes are prepared before a multi-file transaction; dirty-buffer and disk -guards are rechecked at publication, with rollback on partial failure. Topic -removal uses the complete `WritersideProject`: ownership is chosen by exact parsed -topic path or the most-specific configured topic root, so non-active and nested -modules cannot bypass Safe Delete. The reviewed snapshot includes the sorted module -inventory, module inputs, every parsed topic, variables and instance groups, all -semantic `.tree` files, and redirect rules. Hidden, `build`, `target`, `dist`, and -`out` directories participate in semantic discovery; `.git`, `.hg`, and `.svn` -remain hard exclusions. Incomplete module/topic/tree discovery, unparsed topics, -or a changed snapshot fails closed before publication. - -Removal combines indexed links, includes, cards and other semantic references with -an exhaustive tree/start-page pass. `topic`, `ref`, `in`, and `origin` resolve -through the owning host and target modules. Current-instance relevance comes from -the resolved navigation tree and resolved topic documents, including filters and -instance conditions; Safe Delete remains project-wide. Unsupported but resolved -references appear in the approved Review Usages sidebar as manual blockers. Orphan -status is asserted only when the complete post-refactor project has no remaining -usage. - -Redirect plans retain each host instance's effective web filename plus direct and -rule-based accepted aliases, and validate the resolved instance namespace before -writing. Do Refactor resolves dirty project buffers, reanalyzes from disk, preserves -the reviewed options, and applies immediately when blockers are gone. Cross-module -writes use guarded atomic replacement and rollback, with the topic file deleted -last. Clean tabs refresh; unrelated dirty tabs remain untouched. File-monitor -events are deferred during foreground file operations so an own-write event cannot -invalidate the subsequent open-new-document step. - -Structural serialization remains the existing XML pretty-printer: semantic -preservation, not byte-for-byte formatting preservation. Included nodes remain -navigable without enabling unsupported cross-source moves. BusyMark's stricter -mixed-entry sort, safe-delete and front-matter restrictions are explicit above. -The two pictured toolbar chevrons' original tooltips have not been established; -no guessed tooltip names were added. - -Existing-instance Markdown import reuses `discoverMarkdownFiles` for source-root -discovery and the shared import planner for selected topic and referenced-media -copies. Topic targets retain source-root-relative directories beneath the first -configured topics root. Media references use the established Markdown, semantic -XML, Writerside video, and preview-source scan; external/absolute references and -intentionally missing local media retain their prior behavior, and duplicate -media targets are staged once. - -Before planning, and again immediately before publication, the owning module is -reloaded and complete semantic topic discovery is required. Each source basename -passes the shared topic filename validator. IDs are basenames without extensions; -the selected batch must be unique and must not intersect -`WritersideModule.reservedTopicIds`, which includes parsed and discovered-but- -unparsed topic files across all configured topic roots. The import transaction -stages every selected Markdown file, deduplicated media file, and the updated -tree, verifies all source/target snapshots, then publishes once with conservative -rollback. Consequently a stale TOC identity, target change, or concurrent topic -ID leaves no partial topic/media/tree publication. The shared first-topic helper -sets only the first imported reference as `start-page` when appropriate. - -Ordinary empty, template, custom-template, and duplicate creation retains exact -exclusive path creation, then reloads semantic module state after its own topic -exists and before tree publication. A valid final state has exactly one parsed -reservation for the requested ID and that reservation is the candidate path; -another extension, subdirectory, or configured root fails with the existing ID -collision error. Existing owned-file cleanup and final tree snapshot checks remain -independent safeguards. - -## Template implementation and resource provenance - -`assets/writerside/templates.json` contains the installed resources, with each -original archive path and SHA-256 recorded alongside the unmodified source. -It includes six default families (10 Markdown/XML variants) and the 22 Markdown -TGDP entries in the bundled catalog. The bundled TGDP license is retained in -`assets/writerside/TGDP-LICENSE`. No six-name placeholder collection was invented. - -Custom templates and built-in overrides are stored at -`/writerside/templates.json`, not in the documentation -project. Reads create nothing. Writes are serialized with a process file lock -and an isolate queue, compare the editor's original snapshot, reject corrupt or -non-regular stores, and use atomic publication. Cancel does not publish staged -edits or deletions. Save as Template reads the current topic buffer when open, -derives the installed `Writerside_` unique name, substitutes the -installed source patterns, and leaves the topic file unchanged. - -The creation dialog uses the installed Default/Custom/The Good Docs Project -categories, search, title/filename, available Markdown/XML variants, rendered -preview, source link, and template-editing entry points. The editor provides -Files/Internal, new/duplicate/delete/reset, editable source, Cancel, and OK. -GTK owns dropdown presentation; Yaru owns the desktop format radio controls and -editor tabs. The editor is intentionally a scoped application-support editor, -not a clone of every IntelliJ settings component. - -Generation preserves the installed literal substitution contract; unknown tokens, -Velocity directives, and tokens inside replacement values are not evaluated. -XML titles use XML 1.0 escaping. TGDP generation adapts braces, replaces the first -top-level H1, and resolves relative inline link/image destinations against the -bundled v1.2.0 source URL. Repeated destinations are edited once each; code and -prose are not rewritten as links. Exotic/reference-style link source forms are -left unchanged when no unambiguous inline destination is available. There is no -remote TGDP updater or automatic image-file download. Customized malformed XML -and duplicate root IDs are rejected before any topic/tree publication. - -## Native menu integration - -`NativeMenuEntry.submenu` sends a recursive semantic model to the existing -`busymark/native_menus` channel. GTK constructs genuine `GMenu`/`GtkMenu` -submenus; separators and selection IDs retain a shared preorder, including -headings. Only enabled leaf actions can dispatch, and disabled ancestors remain -disabled. GTK 3 does not apply an action's sensitivity to submenu headings, so -heading availability is explicitly applied to the generated GTK widgets in -model order. Limits protect the host from excessive depth/entry counts. - -The existing popup anchoring, session-scoped dismissal, radio groups, and focus -return remain in place. Text direction is carried to each GTK submenu and its -anchor. The Linux menu hierarchy uses the host's keyboard/hover behavior -([GTK MenuShell](https://docs.gtk.org/gtk3/class.MenuShell.html)); it is not a -new Material dropdown implementation. Unit tests assert native-first dispatch, -nested payloads, exact leaf selection, disabled ancestors, and cancellation. -The existing main application menu remains flat. - -## Verification log - -Final verification, including local Markdown topic import, topic removal, -templates, and native menus: - -- `flutter gen-l10n`: exit 0; generated localization sources are current. -- Changed Dart sources and tests were formatted with `dart format`. -- `flutter analyze --no-pub`: exit 0, no issues. -- Full `flutter test --no-pub`: exit 0, **2,074 passed, 58 skipped**. -- Required focused import/topic-creator/template/workspace/controller/TOC/UI - suites, including the focused import dialog: exit 0, **335 passed**. -- `bash tools/validate_writerside_conformance.sh`: exit 0, **181 checks passed**. - This uses the pinned builder 2026.08.0328, distinct from the selected UI plugin - 2026.07.8925. It checks the semantic fixture, not website or menu parity. -- Linux interaction harness: result artifact reports no failure and **50 checks - passed**. - Includes real GTK two-level keyboard traversal in LTR/RTL, disabled headings, - Escape, focus return, session-scoped dismissal, existing flat radio selectors, - both Add Local Markdown Files menu locations, the reviewed removal flow, - mandatory Safe Delete, and the core TOC/template workflows in the action - matrix. -- Normal `flutter build linux --debug --no-pub --target lib/main.dart`: exit 0; - the bundle is restored to the normal application, not the acceptance harness. -- `git diff --check`: exit 0. - -The 58 full-suite skips are optional Typst/PDF/Poppler and D2 integrations that -require explicit tool-path environment configuration. No unavailable optional -integration is counted as a passing TOC or native-menu check. - -The first template full run exposed three test-contract problems: reviewed -technical strings in localization audits, the Chinese locale inheritance -contract, and an offscreen RTL clipboard item after adding Save as Template. -These were corrected and focused checks passed. The native menu run exposed -GTK's submenu-heading sensitivity behavior; an actual disabled-heading assertion -now covers it. A headerbar source audit was narrowed to its real scope (the main -menu stays flat, while TOC context menus may be nested). Existing popup cleanup -and native lifecycle contracts were retained. - -Native fixture: `test/fixtures/writerside/toc_ui/` includes Markdown/XML, -guide/API/library instances, reused titles, groups, hidden/external/included -nodes, and usage references. The harness copies it into a disposable directory -and isolates settings/session/recovery/history/template storage. Only its own -fixture documents are modified; its Safe Delete check deletes only a generated -duplicate, while the original fixture remains untouched. - -Reproduce in an isolated X11 desktop, then restore the normal target: - -```bash -flutter build linux --debug --no-pub --target tools/writerside_toc_visual_smoke.dart -BUSYMARK_NATIVE_PROBE=1 GDK_BACKEND=x11 NO_AT_BRIDGE=0 \ - /usr/bin/dbus-run-session -- /usr/bin/xvfb-run -a -s '-screen 0 1440x1000x24' \ - build/linux/x64/debug/bundle/busymark \ - test/fixtures/writerside/toc_ui /tmp/busymark-gtk-toc-final-acceptance -flutter build linux --debug --no-pub --target lib/main.dart -``` - -The driver requires `/usr/bin/python3`, GTK/AT-SPI introspection, XTest, Xvfb, -and a private D-Bus session. It targets only the probe process. Screen captures -include the actual GTK popup windows, not only Flutter's repaint boundary. -The virtual desktop emits missing portal/GPU and synthetic-trigger warnings, -and AT-SPI/GTK teardown diagnostics were observed during accessibility-driven -menu replacement. All recorded actions completed; this is not a claim of a -warning-free desktop or comprehensive assistive-technology validation. Original IDE -multi-line movement and pictured toolbar-chevron semantics remain unverified -as noted in the matrix. - -Inspected Linux evidence: -[results](/tmp/busymark-gtk-toc-final-acceptance/result.json), -[context menu](/tmp/busymark-gtk-toc-final-acceptance/02-context-and-creation-menu.png), -[creation submenu](/tmp/busymark-gtk-toc-final-acceptance/08-creation-menu.png), -[RTL keyboard submenus](/tmp/busymark-gtk-toc-final-acceptance/19-native-keyboard-rtl.png), -[title dialog](/tmp/busymark-gtk-toc-final-acceptance/03-edit-title.png), -[removal](/tmp/busymark-gtk-toc-final-acceptance/06-removal.png), -[Find](/tmp/busymark-gtk-toc-final-acceptance/07-find-review.png), -[template dialog](/tmp/busymark-gtk-toc-final-acceptance/15-template-dialog.png), -[XML preview](/tmp/busymark-gtk-toc-final-acceptance/16-template-xml-preview.png), -[template editor](/tmp/busymark-gtk-toc-final-acceptance/17-file-and-code-templates.png), -[custom template reuse](/tmp/busymark-gtk-toc-final-acceptance/18-custom-template-preview.png). -The disposable source results remain in `/tmp/busymark-toc-native-SZKSLU`. - -## Review corrections — 2026-09-14 - -Applied to the clean implementation commit `f0ef33f`, without changing GTK -menus or the approved Writerside build/template-storage decisions: - -| Reported defect | Correction | Regression coverage | -| --- | --- | --- | -| Tree-to-editor synchronization depended on the previous document's extension | `_synchronizeToc` opens the selected entry's resolved topic; only topic-less entries use element-source navigation. | `writerside_toc_regressions_test.dart`: open a `.tree` editor, right-select a topic, dismiss the menu, synchronize; then synchronize a topic-less group. | -| Qualified topic references did not synchronize | Resolve each occurrence through the existing module-aware presenter and compare its topic file path with the active file, keeping breadth-first selection. The separately documented `.tree` ID rule is unchanged. | Same widget suite: `guides/install.md`, another `elsewhere/install.md`, a deeper occurrence, and two root occurrences; the first breadth-first matching file wins. | -| Linking the first existing topic omitted `start-page` | Creation and linking share `initializeWritersideFirstTopicHomePage`, applied before insertion within the guarded tree mutation. | `writerside_toc_workspace_test.dart`: empty instance, groups only, existing home, library, empty-group insertion, existing nested topic, and concurrent publication; linked source bytes remain unchanged. | -| Template editor and storage disagreed on uniqueness | Storage validates category/name/extension, matching the editor. Same-category duplicates remain invalid. | `writerside_template_service_test.dart` and `writerside_template_dialogs_test.dart`: custom `Starter.md` and Internal override saved in both orders, persisted and reloaded. | -| Topic creation inherited preview-only mode | Successful `createWritersideTopic` makes only the new preview-only buffer editable, within the controller's file-operation boundary. Existing editable modes, other tabs, and the global preference remain unchanged. | `writerside_toc_regressions_test.dart`: explicitly put the active document and application preference into Reading mode before Empty MD, Empty XML, and template-dialog creation; verify the new topic opens in Source mode while the global preference, existing tab modes, template body, and unrelated dirty content remain unchanged. | - -The new full-workspace widget tests use real temporary project files and the -production controller/services. Only desktop host/theme and persistence services -are isolated. Their framework menu fallback is test-only; these checks do not -replace or claim a new recording of the native GTK evidence above. - -Review verification (Flutter 3.47.5 / Dart 3.13.2): - -- Full `flutter test --no-pub --concurrency=2 --file-reporter - json:/tmp/busymark-toc-review-full.json`: exit 0, **1,921 passed, 58 optional - integration skips**. This includes all 16 new regressions. -- Documented focused suite: exit 0, **416 passed, 1 optional Typst skip**; - `/tmp/busymark-toc-review-focused.json`. -- `flutter analyze --no-pub`: exit 0, no issues. -- `dart format --output=none --set-exit-if-changed` on all nine changed/new Dart - files: exit 0, no changes. `flutter gen-l10n` and `git diff --check`: exit 0. -- `bash tools/validate_writerside_conformance.sh`: exit 0, **181 checks passed**; - `/tmp/busymark-toc-review-builder.log`. -- `flutter build linux --debug --no-pub --target lib/main.dart`: exit 0; - `/tmp/busymark-toc-review-linux-build.log`. The bundle targets the normal app. - -An earlier full-suite attempt emitted an asynchronous local-history file-monitor -teardown error before the user interrupted verification. The isolated -`workspace rename settles a failed first-save promotion` test passed on rerun; -the completed full-suite rerun above also passed. No unrelated local-history or -monitoring behavior was changed to hide that failure. Interrupted processes and -temporary logs were lost, so completed verification was rerun after resuming. - -## Edit Title and dialog-copy review — 2026-09-14 - -This follow-up starts from clean commit `7023934`; the five earlier corrections -remain intact. No GTK menu implementation or approved adaptation was replaced. - -| Finding | Correction and regression evidence | -| --- | --- | -| Literal newlines inside quoted XML attributes had no source range | `_attributeSpans` now matches multiline values. `WritersideTitleEditor` refuses to treat an existing attribute with a missing range as absent, and validates the resulting full XML topic/tree (including duplicate attribute names) before `WorkspaceService` can stage either write. Generated Markdown title elements are also XML-validated. | -| CRLF attributes differed between raw tree identities and normalized editor buffers | Title editing opts into line-ending-normalized identity comparison. Raw structural mutations retain exact matching, and the original file snapshots are still checked before publication. Changed semantic content remains a conflict. | -| Markdown instance titles exposed and re-escaped entity spellings | `_topicTitleOverrides` reads top-level parsed semantic title elements, not raw-source matches. XML entities are decoded once by the parser; the writer still escapes text. Fenced examples are excluded and single-quoted instance attributes work. | -| Removal and advanced title dialog copy differed | English removal now uses `Set redirect to:`, `{count} usages found.`, and the pictured confirmation paragraph. Advanced title settings show the two inheritance explanations beneath their fields and a working documentation link. All 23 maintained ARBs were updated and localizations regenerated. | - -`writerside_title_regressions_test.dart` covers LF/CRLF and both quote styles, -changing and clearing overrides, preserved unrelated attributes/content, -missing/corrupt ranges with neither file published, duplicate XML attributes, -semantic title extraction, and actual save–reopen–edit dialog workflows. It also -checks unchanged OK and documentation-link activation. The live removal dialog -copy and cancellation are checked in `writerside_toc_regressions_test.dart`. - -Copy evidence: the official [instance-title screenshot](https://resources.jetbrains.com/help/img/writerside/edit_title_instance_specific.png), -[TOC-title screenshot](https://resources.jetbrains.com/help/img/writerside/edit_title_toc_title.png), -and [removal screenshot](https://resources.jetbrains.com/help/img/writerside/remove_topic_dialog.png), -cross-checked against installed 2026.07.8925 `EditTitleDialog.comment.*` and -`RemoveTocElementDialog.*` bundle entries. The usage-count period follows the -specified screenshot (the installed bundle omits it). The documentation link -opens the current [Topics page](https://www.jetbrains.com/help/writerside/topics.html), -which contains title inheritance and overrides; the installed dialog's older -`changing-topic-title.html` URL was not retrievable. - -This corrects the reported functional defects and specified copy gaps, not all -original-product presentation differences. The two unidentified icon-only -toolbar controls remain unimplemented/unverified; no guessed controls or names -were added. The existing removal promotion, mixed-XML sorting restriction, -BusyMark preview renderer, approved template editor/storage and Find sidebar -remain explicitly documented adaptations. Full original-Writerside parity is -not claimed. Translations are BusyMark translations, not verified original -JetBrains locale strings. - -Verification for this follow-up (Flutter 3.47.5 / Dart 3.13.2): - -- Full `flutter test --no-pub --concurrency=2 --file-reporter json:/tmp/busymark-title-full.json`: - exit 0, **1,938 passed, 58 optional integration skips**; 17 new regressions. -- Documented Writerside/source/controller/export suite, with `--concurrency=2`: - exit 0, **433 passed, 1 optional Typst skip**; - `/tmp/busymark-title-focused-suite.json`. -- `flutter analyze --no-pub`: exit 0, no issues. Localization generation, - formatting checks on nine non-generated Dart files, and `git diff --check`: - exit 0. -- `bash tools/validate_writerside_conformance.sh`: exit 0, **181 checks passed**; - `/tmp/busymark-title-builder.log`. -- Native Linux harness: exit 0, **36 checks passed, 20 captures**; - [result](/tmp/busymark-title-native-review/result.json). The production - [advanced title dialog](/tmp/busymark-title-native-review/03-edit-title.png) - and [removal dialog](/tmp/busymark-title-native-review/06-removal.png) were - visually inspected. Real GTK menus and their keyboard/focus tests passed. - The private desktop emitted portal, synthetic-popup and D-Bus teardown - diagnostics; this is not a warning-free desktop claim. Only the disposable - `/tmp/busymark-toc-native-ZIOBPT` fixture was mutated. -- `flutter build linux --debug --no-pub --target lib/main.dart`: exit 0; - `/tmp/busymark-title-linux-build.log`. The bundle was restored to the normal - application after the harness run. diff --git a/docs/development/writerside-verification.md b/docs/development/writerside-verification.md index cdbc1fd1..8617d236 100644 --- a/docs/development/writerside-verification.md +++ b/docs/development/writerside-verification.md @@ -4,6 +4,46 @@ The user-facing [Writerside support](../writerside-support.md) page describes th supported semantic surface and known limitations. This note contains the maintainer checks behind those claims. +## Mutation and resource constraints + +TOC changes validate source identities and expected disk content at publication. +Affected inactive buffers participate in dirty-buffer checks. Multi-file title +edits and refactoring use guarded publication and rollback; file-monitor events +are deferred during foreground file operations. Structural serialization +preserves semantics, not original XML whitespace. + +`WritersideTopicRemovalService` analyzes the complete project, including +non-active and nested modules. Its snapshot covers module discovery, topic and +tree sources, variables, instance groups and redirect rules. Hidden and ordinary +build/output directories participate in semantic discovery; `.git`, `.hg` and +`.svn` remain excluded. Incomplete discovery, unparsed topics or changed inputs +block publication. Ownership follows parsed paths or the most-specific containing +module with a configured topic root. Safe Delete is mandatory for Writerside +topics, and unresolved semantic references remain manual blockers in Find. +Apply reanalyzes the project, +publishes guarded updates and deletes the topic last; rollback must not +overwrite another process's changes. + +Creation and Markdown import require complete topic discovery and reserve IDs +across every configured topic root, including unparsed files. Import stages +selected topics, deduplicated referenced media and tree changes together, +rechecks snapshots and rolls back on failure. Creation uses exclusive file +creation and rechecks semantic ID ownership before publishing the tree. A +concurrent collision must not leave a partial topic/media/tree publication. + +`assets/writerside/templates.json` retains each bundled resource's archive path, +source and SHA-256; keep `assets/writerside/TGDP-LICENSE` with it. Template-store +writes use an isolate queue, process file lock, expected snapshot and atomic +publication. Reject corrupt or non-regular stores. Names are unique within +category and extension; generation does not evaluate Velocity. Validate XML and +root IDs before topic publication. + +Linux TOC menus use the existing `busymark/native_menus` GTK channel. Only +enabled leaves may dispatch, including under disabled ancestors. GTK submenu +heading sensitivity is applied explicitly; depth and entry limits, RTL, +anchoring, dismissal and focus return remain part of the contract. The main +application menu remains flat. + ## Automated coverage The Writerside tests cover resolution, source preservation, anchored file @@ -22,6 +62,37 @@ flutter test --no-pub test/src/writerside*_test.dart \ test/src/markdown_export_mapper_test.dart ``` +The TOC action/workspace/editor, topic-creation/removal, template and title/TOC +regression suites cover these publication constraints and the documented +[authoring limitations](../writerside-instances.md#toc-authoring-and-limitations). +Widget menu fallbacks do not establish native GTK behavior. + +## Linux TOC acceptance harness + +`tools/writerside_toc_visual_smoke.dart` exercises production controllers, +widgets and real GTK menus, including keyboard traversal, RTL, disabled +headings, dismissal, focus return, TOC operations and template workflows. It +copies `test/fixtures/writerside/toc_ui` into a temporary workspace and isolates +settings, session, recovery, history and template storage. + +Run from the repository root with Python GTK/AT-SPI introspection, XTest, Xvfb +and D-Bus installed. Keep captures and results outside the repository: + +```bash +toc_output="$(mktemp -d)" +flutter build linux --debug --no-pub --target tools/writerside_toc_visual_smoke.dart +BUSYMARK_NATIVE_PROBE=1 GDK_BACKEND=x11 NO_AT_BRIDGE=0 \ + dbus-run-session -- xvfb-run -a -s '-screen 0 1440x1000x24' \ + build/linux/x64/debug/bundle/busymark \ + test/fixtures/writerside/toc_ui "$toc_output" +flutter build linux --debug --no-pub --target lib/main.dart +``` + +The harness exits nonzero on failure and writes `result.json` with its checks +and temporary fixture path. Remove the output and disposable fixture after +inspection. It verifies BusyMark's native interactions, not visual parity with +the original IDE or comprehensive assistive-technology support. + ## Official-builder conformance `test/fixtures/writerside/conformance_semantics.json` is a normalized semantic diff --git a/docs/screenshots/busymark-welcome.png b/docs/screenshots/busymark-welcome.png deleted file mode 100644 index 743d9d3a908ba28553a2a2d400483b37ab1febef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32705 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 diff --git a/docs/snap-confinement.md b/docs/snap-confinement.md index 567e6b6b..882b7238 100644 --- a/docs/snap-confinement.md +++ b/docs/snap-confinement.md @@ -16,10 +16,13 @@ sudo snap connect busymark:ssh-keys sudo snap connect busymark:password-manager-service ``` -BusyMark's AI provider keys use the system credential store. Saving, reading, -or removing those keys in a strict Snap requires the second connection. It -grants access to the session's password manager, so make that choice only on a -trusted installation. +BusyMark stores AI provider keys and Nextcloud Notes app passwords in the system +credential store through libsecret. Saving, reading, or removing either kind of +credential in a strict Snap requires the `password-manager-service` connection. +It grants access to the session's password manager, so make that choice only on a +trusted installation. Nextcloud credentials have a separate namespace; an +unavailable or locked credential store has no plaintext fallback. See +[Nextcloud Notes](development/nextcloud-notes.md) for the authentication contract. ## Git author identity diff --git a/docs/writerside-instances.md b/docs/writerside-instances.md index 1b0d7d81..a679b63c 100644 --- a/docs/writerside-instances.md +++ b/docs/writerside-instances.md @@ -22,8 +22,9 @@ The instance editor writes the documented locations: - `noindex-content` and `offline-docs` in the configured `buildprofiles.xml`. -An empty regular instance is valid. Its first newly created topic becomes its -`start-page`. A TOC library is written with `is-library="true"` and does not +An empty regular instance is valid. Its first created, linked, or imported topic +becomes its `start-page` when no home page is already set. Empty groups do not +count as topics. A TOC library is written with `is-library="true"` and does not have output settings of its own. Changing an instance ID renames its `.tree` file and updates documented project @@ -54,6 +55,61 @@ identified, but are not expanded when only one help module is open. The selected instance and icon colors are local BusyMark preferences. They do not modify or add undocumented Writerside project metadata. +## TOC authoring and limitations + +The native Linux context menus provide topic creation, linking, duplication, +title editing, grouping, sorting, removal, and source navigation. BusyMark's +AI, Git, clipboard and file actions follow the Writerside actions. Reading and +Split remain the document preview modes; there is no separate Writerside +Preview tool window or claim of complete original IDE presentation parity. + +- **Add Local Markdown Files** imports selected files as siblings from the + context menu or as roots from the header. It is absent from **New Child + Topic**. Imports preserve Markdown bytes and source-relative directories and + copy referenced local media. Topic IDs must be unique across all configured + topic roots, including discovered files that cannot be parsed. +- **Duplicate** copies the topic body into a new sibling reference, with a new + XML root ID where applicable; it does not copy TOC descendants. Newly created + topics open for editing without changing the global document-view preference. +- **Edit Title** manages the base title, instance override and TOC-only override + independently. Blank overrides restore inheritance. Markdown base-title edits + change the top-level H1 and preserve front matter. +- **Group** requires siblings and preserves their source order and subtrees. + **Sort Child Topics Alphabetically** sorts only immediate children by their + resolved, case-sensitive titles. Mixed XML children, such as includes alongside + TOC elements, are rejected rather than discarded. +- **Remove TOC Element** promotes its direct children. File deletion always + requires **Safe Delete**, including from the Files menu. **Review Usages** + opens the **Find** sidebar; **Do Refactor** rechecks references before applying + changes. Unresolved references can require manual edits before deletion. +- **Synchronize TOC and Editor** opens the selected topic or its element source + when invoked from the tree. From a topic editor it selects the first matching + resolved file in breadth-first order. From a `.tree` editor, the element's + explicit ID is matched as a topic reference; missing IDs or unmatched + references leave the selection unchanged. + +Structural edits preserve XML semantics but may reformat the tree. Included +nodes retain the source ownership restrictions described above. BusyMark does +not reproduce the original IDE's unidentified toolbar chevrons or claim its +multi-line tree movement behaves identically to that IDE. + +## Topic templates + +**Topic from Template** offers Default, Custom and The Good Docs Project +templates, Markdown/XML variants where available, and a rendered preview. +**Save as Template** uses the current topic buffer without changing the topic. +Custom templates and built-in overrides are stored in BusyMark's application +support directory at `writerside/templates.json`. **File and Code Templates** +stages edits until OK; Cancel leaves storage unchanged. These preferences add no +project metadata. + +Template substitution is literal: `${TITLE}` and `${ID}` are replaced once, +with XML title escaping where needed. Velocity expressions and tokens inside +replacement values are not executed. The bundled TGDP catalog is pinned; +relative inline links resolve against its source URL, but there is no automatic +catalog update or image download. Ambiguous and reference-style links remain +unchanged. Preview uses BusyMark's renderer. + ## Authoritative references - [Instances](https://www.jetbrains.com/help/writerside/instances.html) diff --git a/lib/src/markdown/markdown_ast_adapter.dart b/lib/src/markdown/markdown_ast_adapter.dart index 339d780e..3462755c 100644 --- a/lib/src/markdown/markdown_ast_adapter.dart +++ b/lib/src/markdown/markdown_ast_adapter.dart @@ -861,6 +861,7 @@ class MarkdownAstAdapter { closing: range.closing, isSourceLineBreak: entry.key.kind == BusyInlineKind.hardBreak, isRawHtmlText: true, + rawHtmlFragment: (start: mappingStart, end: mappingEnd), sourceLineBreakOffset: range.sourceLineBreakOffset == null ? null : mappingStart + range.sourceLineBreakOffset!, diff --git a/lib/src/markdown/markdown_source_annotation.dart b/lib/src/markdown/markdown_source_annotation.dart index 137e6f5c..9ec25592 100644 --- a/lib/src/markdown/markdown_source_annotation.dart +++ b/lib/src/markdown/markdown_source_annotation.dart @@ -37,6 +37,7 @@ class BusyMarkMappedInlineRange { this.isReference = false, this.isSourceLineBreak = false, this.isRawHtmlText = false, + this.rawHtmlFragment, this.sourceLineBreakOffset, }); @@ -57,6 +58,10 @@ class BusyMarkMappedInlineRange { /// This inline came from Markdown's literal raw-HTML text node. final bool isRawHtmlText; + + /// The complete inline HTML fragment whose outer whitespace is trimmed by + /// the HTML adapter. Distinct Markdown siblings are outside this interval. + final ({int start, int end})? rawHtmlFragment; final int? sourceLineBreakOffset; } diff --git a/lib/src/markdown/markdown_source_map.dart b/lib/src/markdown/markdown_source_map.dart index 3a27abd8..17a70094 100644 --- a/lib/src/markdown/markdown_source_map.dart +++ b/lib/src/markdown/markdown_source_map.dart @@ -772,6 +772,7 @@ class BusyMarkInlineParserContext { isReference: mappedRange.isReference, isSourceLineBreak: mappedRange.isSourceLineBreak, isRawHtmlText: mappedRange.isRawHtmlText, + rawHtmlFragment: mappedRange.rawHtmlFragment, sourceLineBreakOffset: mappedRange.sourceLineBreakOffset, ); } @@ -804,6 +805,7 @@ class BusyMarkInlineParserContext { isReference: range.isReference, isSourceLineBreak: range.isSourceLineBreak, isRawHtmlText: range.isRawHtmlText, + rawHtmlFragment: range.rawHtmlFragment, sourceLineBreakOffset: range.sourceLineBreakOffset, ); } @@ -888,6 +890,7 @@ class BusyMarkInlineParserContext { String source, { int sourceStart = 0, int? sourceEnd, + bool includeCodeBlocks = true, }) { if (source.isEmpty) return const []; final boundedStart = sourceStart.clamp(0, source.length).toInt(); @@ -903,6 +906,9 @@ class BusyMarkInlineParserContext { void collect(Iterable values) { for (final node in values) { + if (!includeCodeBlocks && node is md.Element && node.tag == 'pre') { + continue; + } if (node is md.UnparsedContent) { if (node.textContent.isNotEmpty) candidates.add(node.textContent); } else if (node is md.Text) { @@ -993,6 +999,12 @@ class BusyMarkInlineParserContext { isReference: range.isReference, isSourceLineBreak: range.isSourceLineBreak, isRawHtmlText: range.isRawHtmlText, + rawHtmlFragment: range.rawHtmlFragment == null + ? null + : ( + start: projection.rawStartFor(range.rawHtmlFragment!.start), + end: projection.rawEndFor(range.rawHtmlFragment!.end), + ), sourceLineBreakOffset: range.sourceLineBreakOffset == null ? null : projection.rawStartFor(range.sourceLineBreakOffset!), diff --git a/lib/src/markdown/raw_html_adapter.dart b/lib/src/markdown/raw_html_adapter.dart index 66063c57..2a2f5c36 100644 --- a/lib/src/markdown/raw_html_adapter.dart +++ b/lib/src/markdown/raw_html_adapter.dart @@ -818,7 +818,15 @@ class RawHtmlAdapter { node.data, ignoredPositionMarkers: mapping?.positionMarkers ?? const [], ); - return [BusyInline(kind: BusyInlineKind.text, text: text)]; + final inline = BusyInline(kind: BusyInlineKind.text, text: text); + final span = node.sourceSpan; + if (mapping != null && span != null) { + mapping.ranges[inline] = RawHtmlInlineSourceRange( + start: mapping.projection.rawStartFor(span.start.offset), + end: mapping.projection.rawEndFor(span.end.offset), + ); + } + return [inline]; } if (node is html.Element) { return _inlineFromElement(node, mapping: mapping); @@ -919,16 +927,22 @@ class RawHtmlAdapter { final closingStart = authoredClosing == null ? null : mapping.projection.rawStartFor(authoredClosing.start); - mapping.ranges[result.single] = RawHtmlInlineSourceRange( - start: start, - end: end, - opening: mapping.projection.source.substring(start, openingEnd), - closing: closingStart == null || closingStart >= end - ? null - : mapping.projection.source.substring(closingStart, end), - sourceLineBreakOffset: tag == 'br' - ? mapping.layout.claimForBreak(start, end) - : null, + // Transparent HTML containers can return their existing child. Keep + // that child's authored text/break interval rather than widening it to + // the surrounding tag and attributes. + mapping.ranges.putIfAbsent( + result.single, + () => RawHtmlInlineSourceRange( + start: start, + end: end, + opening: mapping.projection.source.substring(start, openingEnd), + closing: closingStart == null || closingStart >= end + ? null + : mapping.projection.source.substring(closingStart, end), + sourceLineBreakOffset: tag == 'br' + ? mapping.layout.claimForBreak(start, end) + : null, + ), ); } return result; diff --git a/lib/src/spellcheck/markdown_spelling_projection.dart b/lib/src/spellcheck/markdown_spelling_projection.dart index 6d9424d9..0b087350 100644 --- a/lib/src/spellcheck/markdown_spelling_projection.dart +++ b/lib/src/spellcheck/markdown_spelling_projection.dart @@ -40,6 +40,21 @@ final class MarkdownSpellingProjector { documentSource: source, mode: mode, ); + // Keep the document's block context: a scanner chunk can start with a + // literal list-like continuation that becomes a list if parsed alone. + final blockMappings = inlineParser.parsePositionedBlocks( + source, + includeCodeBlocks: false, + ); + final consumedMappings = {}; + final literalHtmlBlocks = [ + for (final block in _walkBlocks(parsed.busyDocument.blocks)) + if (block.sourceSpan != null && + block.inlines.length == 1 && + block.inlines.single.kind == BusyInlineKind.text && + block.inlines.single.text.contains('<')) + block, + ]; final excludedBlockSpans = [ ...parsed.codeBlocks.map((block) => block.span), for (final block in _walkBlocks(parsed.busyDocument.blocks)) @@ -253,7 +268,8 @@ final class MarkdownSpellingProjector { ]; final hardBreakSyntax = <_SourceInterval>[ for (final entry in mapped.ranges.entries) - if (entry.key.kind == BusyInlineKind.hardBreak) + if (entry.key.kind == BusyInlineKind.hardBreak && + !entry.value.isRawHtmlText) _SourceInterval( sourceBase + entry.value.start, sourceBase + entry.value.end, @@ -273,6 +289,16 @@ final class MarkdownSpellingProjector { end: mappedEnd, context: context, stripBlockSyntax: stripBlockSyntax, + // Rejected inline HTML is displayed as literal editable text. Only + // an exact match in its parser-owned block may bypass HTML scanning; + // protected HTML blocks and encoded/escaped text keep their policies. + interpretHtmlSyntax: !literalHtmlBlocks.any( + (block) => + block.sourceSpan!.startOffset <= mappedStart && + block.sourceSpan!.endOffset >= mappedEnd && + block.inlines.single.text == + source.substring(mappedStart, mappedEnd), + ), footnoteLabels: footnoteLabels, formattingSyntax: formattingSyntax, formattingWrappers: [ @@ -287,6 +313,31 @@ final class MarkdownSpellingProjector { imageCodeSyntax: imageCodeSyntax, positionedLineBreaks: positionedLineBreaks, hardBreakSyntax: hardBreakSyntax, + htmlLineBreaks: { + for (final entry in mapped.ranges.entries) + if (entry.key.kind == BusyInlineKind.hardBreak && + entry.value.isRawHtmlText) + sourceBase + entry.value.start: sourceBase + entry.value.end, + }, + htmlText: { + for (final entry in mapped.ranges.entries) + if (entry.key.kind == BusyInlineKind.text && + entry.value.isRawHtmlText) + sourceBase + entry.value.start: ( + end: sourceBase + entry.value.end, + text: entry.key.text, + ), + }, + htmlFragments: [ + for (final fragment in { + for (final range in mapped.ranges.values) + if (range.rawHtmlFragment case final fragment?) fragment, + }) + _SourceInterval( + sourceBase + fragment.start, + sourceBase + fragment.end, + ), + ], recognizedLinks: { for (final entry in mapped.ranges.entries) if (entry.key.kind == BusyInlineKind.link || @@ -385,7 +436,15 @@ final class MarkdownSpellingProjector { } final slice = source.substring(start, end); final mapped = stripBlockSyntax - ? inlineParser.parsePositionedBlocks(slice) + ? blockMappings + .where( + (leaf) => + leaf.sourceStart != null && + leaf.sourceEnd != null && + leaf.sourceStart! < end && + leaf.sourceEnd! > start, + ) + .toList() : [inlineParser.parseMapped(slice)]; if (stripBlockSyntax && mapped.isNotEmpty) { for (final semanticLeaf in mapped) { @@ -396,12 +455,13 @@ final class MarkdownSpellingProjector { continue; } if (leafEnd <= leafStart) continue; + if (!consumedMappings.add(semanticLeaf)) continue; addMapped( - start + leafStart, - start + leafEnd, + leafStart, + leafEnd, semanticLeaf, - sourceBase: start, - sourceLimit: end, + sourceBase: 0, + sourceLimit: source.length, stripBlockSyntax: true, context: context, ); @@ -957,6 +1017,9 @@ final class _MarkdownProseScanner { this.imageCodeSyntax = const [], this.positionedLineBreaks = const [], this.hardBreakSyntax = const [], + this.htmlLineBreaks = const {}, + this.htmlText = const {}, + this.htmlFragments = const [], this.recognizedLinks = const {}, this.recognizedAttributeSpans = const [], this.footnoteLabels = const {}, @@ -976,8 +1039,19 @@ final class _MarkdownProseScanner { final List<_MappedImageCode> imageCodeSyntax; final List positionedLineBreaks; final List<_SourceInterval> hardBreakSyntax; + final Map htmlLineBreaks; + final Map htmlText; + final List<_SourceInterval> htmlFragments; final Map recognizedLinks; final List<_SourceInterval> recognizedAttributeSpans; + late final _continuationEnds = { + for (final lineBreak in positionedLineBreaks) + if (lineBreak.sourceOffset case final offset?) + offset: + offset + + lineBreak.lineEnding.length + + lineBreak.continuationPrefix.length, + }; final List _groups = []; StringBuffer _text = StringBuffer(); final StringBuffer _tokenizationContext = StringBuffer(); @@ -985,46 +1059,44 @@ final class _MarkdownProseScanner { int? _tokenizationContextStart; int? _opaqueEnd; int? _consumedLinkEnd; + int? _consumedHtmlEnd; bool _inImageLabel = false; bool complete = true; List<_EmissionGroup> scan() { final lines = _lines(); + final continuationStarts = { + for (final lineBreak in positionedLineBreaks) + if (lineBreak.sourceOffset case final offset?) + offset + lineBreak.lineEnding.length: + offset + + lineBreak.lineEnding.length + + lineBreak.continuationPrefix.length, + }; for (var lineIndex = 0; lineIndex < lines.length; lineIndex++) { final line = lines[lineIndex]; - var contentStart = line.start; + // The block parser already located the first prose character and each + // continuation. Reinterpreting their prefixes would discard literal + // text such as "2. words" or misread nested container indentation. + final contentStart = stripBlockSyntax + ? continuationStarts[line.start] ?? line.start + : line.start; var contentEnd = line.contentEnd; - // Positioned leaves already start after their first block prefix. Do - // not reinterpret heading text such as "2. Paragraphs" as a list item. - // Continuation lines still carry their authored container prefixes. - if (stripBlockSyntax && - (lineIndex > 0 || - start == 0 || - source.codeUnitAt(start - 1) == 0x0a)) { - final rawLine = source.substring(contentStart, contentEnd); - if (_isSetextOrThematic(rawLine)) { - _barrier(); - continue; - } - final prefix = _blockPrefix.firstMatch(rawLine); - contentStart += prefix?.end ?? 0; - var isAtxHeading = false; - if (source.startsWith('#', contentStart)) { - final heading = RegExp( - r'^#{1,6}[ \t]+', - ).firstMatch(source.substring(contentStart, contentEnd)); - contentStart += heading?.end ?? 0; - isAtxHeading = heading != null; - } + if (stripBlockSyntax && lineIndex + 1 < lines.length) { + // Spaces before a soft break are omitted by the inline grammar; + // tabs are authored text. Hard breaks also own their backslash or + // spaces, including on the first line after a list/quote marker. while (contentEnd > contentStart && - _horizontalWhitespace(source.codeUnitAt(contentEnd - 1))) { + source.codeUnitAt(contentEnd - 1) == 0x20) { contentEnd--; } - final closingHeading = RegExp( - r'[ \t]+#+$', - ).firstMatch(source.substring(contentStart, contentEnd)); - if (isAtxHeading && closingHeading != null) { - contentEnd = contentStart + closingHeading.start; + for (final hardBreak in hardBreakSyntax) { + if (hardBreak.start >= contentStart && + hardBreak.start <= contentEnd && + hardBreak.end > line.contentEnd) { + contentEnd = hardBreak.start; + break; + } } } for (final attributes in recognizedAttributeSpans) { @@ -1036,13 +1108,17 @@ final class _MarkdownProseScanner { if (contentEnd > contentStart) _scanInline(contentStart, contentEnd); if (lineIndex + 1 < lines.length && _text.length > 0 && + !htmlFragments.any( + (span) => + span.start <= line.contentEnd && span.end > line.contentEnd, + ) && !(_consumedLinkEnd != null && lines[lineIndex + 1].start < _consumedLinkEnd!)) { final next = lines[lineIndex + 1]; _emit( ' ', - line.contentEnd, - next.start, + contentEnd, + continuationStarts[next.start] ?? next.start, SpellingTransformationKind.lineBreak, tokenizationLogical: '\n', ); @@ -1068,6 +1144,10 @@ final class _MarkdownProseScanner { void _scanInline(int rangeStart, int rangeEnd) { var cursor = rangeStart; while (cursor < rangeEnd) { + if (_consumedHtmlEnd case final htmlEnd? when cursor < htmlEnd) { + cursor = math.min(rangeEnd, htmlEnd); + continue; + } if (_consumedLinkEnd case final linkEnd? when cursor < linkEnd) { cursor = math.min(rangeEnd, linkEnd); continue; @@ -1089,6 +1169,27 @@ final class _MarkdownProseScanner { cursor = formattingEnd; continue; } + final htmlTextRange = _inImageLabel ? null : htmlText[cursor]; + if (htmlTextRange != null) { + _scanHtmlText(cursor, htmlTextRange.end, htmlTextRange.text); + _consumedHtmlEnd = htmlTextRange.end; + cursor = htmlTextRange.end; + continue; + } + final htmlBreakEnd = _inImageLabel ? null : htmlLineBreaks[cursor]; + if (htmlBreakEnd != null) { + _scanHtmlBreakAttributes(cursor, htmlBreakEnd); + _emit( + ' ', + cursor, + htmlBreakEnd, + SpellingTransformationKind.lineBreak, + tokenizationLogical: '\n', + ); + _consumedHtmlEnd = htmlBreakEnd; + cursor = htmlBreakEnd; + continue; + } final opaqueEnd = _opaqueEndAt(cursor); if (opaqueEnd != null) { _barrier(); @@ -1228,6 +1329,105 @@ final class _MarkdownProseScanner { } } + void _scanHtmlText(int rangeStart, int rangeEnd, String expected) { + final units = + < + ({ + String text, + int start, + int end, + SpellingTransformationKind transformation, + }) + >[]; + var cursor = rangeStart; + while (cursor < rangeEnd) { + final start = cursor; + var end = cursor + (_codePointAt(source, cursor) > 0xffff ? 2 : 1); + var text = source.substring(cursor, end); + var transformation = SpellingTransformationKind.identity; + final continuation = _continuationEnds[cursor]; + if (continuation != null && continuation <= rangeEnd) { + text = ' '; + end = continuation; + transformation = SpellingTransformationKind.lineBreak; + } else if (text == '\\' && + end < rangeEnd && + _commonMarkEscapableAsciiPunctuation(source.codeUnitAt(end))) { + text = source.substring(end, end + 1); + end++; + transformation = SpellingTransformationKind.markdownEscape; + } else if (text == '&') { + final entity = _entity.matchAsPrefix(source, cursor); + if (entity != null && entity.end <= rangeEnd) { + final encoded = entity.group(0)!; + final decoded = html.parseFragment(encoded).text ?? ''; + if (decoded.isNotEmpty && decoded != encoded) { + text = decoded; + end = entity.end; + transformation = SpellingTransformationKind.entity; + } + } + } + if (_htmlWhitespaceText.hasMatch(text)) { + text = ' '; + transformation = SpellingTransformationKind.lineBreak; + if (units.isNotEmpty && units.last.text == ' ') { + final previous = units.removeLast(); + units.add(( + text: ' ', + start: previous.start, + end: end, + transformation: transformation, + )); + cursor = end; + continue; + } + } + units.add(( + text: text, + start: start, + end: end, + transformation: transformation, + )); + cursor = end; + } + // The HTML adapter trims fragment edges, but preserves spaces inside + // formatting. Its semantic text decides which normalized edge survives. + if (units.isNotEmpty && + units.first.text == ' ' && + !expected.startsWith(' ')) { + units.removeAt(0); + } + if (units.isNotEmpty && units.last.text == ' ' && !expected.endsWith(' ')) { + units.removeLast(); + } + if (units.map((unit) => unit.text).join() != expected) { + complete = false; + return; + } + final addresses = spellingPlainAddress.allMatches(expected).toList(); + var logicalOffset = 0; + for (final unit in units) { + final logicalEnd = logicalOffset + unit.text.length; + if (addresses.any( + (address) => address.start < logicalEnd && address.end > logicalOffset, + )) { + _barrier(); + } else { + _emit(unit.text, unit.start, unit.end, unit.transformation); + } + logicalOffset = logicalEnd; + } + } + + void _scanHtmlBreakAttributes(int start, int end) { + // Multiline tag metadata is collected separately with the opaque HTML + // spans. Single-line breaks still expose their readable attributes. + if (!RegExp(r'\r|\n').hasMatch(source.substring(start, end))) { + _scanHumanReadableAttributes(start, end); + } + } + _MappedImageCode? _imageCodeAt(int offset) { for (final code in imageCodeSyntax) { if (code.start == offset) return code; @@ -1407,6 +1607,15 @@ final class _MarkdownProseScanner { final offset = lineBreak.sourceOffset; return offset != null && offset >= labelStart && offset < labelEnd; }).toList()..sort((a, b) => a.sourceOffset!.compareTo(b.sourceOffset!)); + final inlineBreaks = [ + ...hardBreakSyntax.where( + (span) => + !RegExp(r'\r|\n').hasMatch(source.substring(span.start, span.end)), + ), + if (!_inImageLabel) + for (final entry in htmlLineBreaks.entries) + _SourceInterval(entry.key, entry.value), + ]; var breakIndex = 0; while (cursor < labelEnd) { // Mapped children own their internal line boundaries. Traverse them @@ -1462,14 +1671,33 @@ final class _MarkdownProseScanner { ); } } - for (final span in hardBreakSyntax) { + for (final entry in htmlText.entries) { + if (_inImageLabel || + entry.key < cursor || + entry.value.end > labelEnd || + (nextBreak != null && entry.key > nextBreak)) { + continue; + } + if (owner == null || entry.key < owner.start) { + owner = ( + start: entry.key, + end: entry.value.end, + semanticBreaks: 0, + image: null, + imageCode: null, + inlineBreak: false, + ); + } + } + for (final span in inlineBreaks) { if (span.start < cursor || span.end > labelEnd || - (nextBreak != null && span.start > nextBreak) || - RegExp(r'\r|\n').hasMatch(source.substring(span.start, span.end))) { + (nextBreak != null && span.start > nextBreak)) { continue; } - if (owner == null || span.start < owner.start) { + // A mapped HTML break owns its semantic newline even when its tag + // also appears in the generic multiline HTML exclusion spans. + if (owner == null || span.start <= owner.start) { owner = ( start: span.start, end: span.end, @@ -1504,6 +1732,9 @@ final class _MarkdownProseScanner { if (owner.imageCode case final code?) { _scanImageCode(code); } else if (owner.inlineBreak) { + if (htmlLineBreaks[owner.start] == owner.end) { + _scanHtmlBreakAttributes(owner.start, owner.end); + } _emit( ' ', owner.start, @@ -1550,6 +1781,14 @@ final class _MarkdownProseScanner { breakStart + lineBreak.lineEnding.length + lineBreak.continuationPrefix.length; + if (!_inImageLabel && + htmlFragments.any( + (span) => span.start <= breakStart && span.end > breakStart, + )) { + if (cursor < breakStart) _scanInline(cursor, breakStart); + cursor = nextStart; + continue; + } _SourceInterval? hardBreak; for (final span in hardBreakSyntax) { if (span.start >= cursor && @@ -2081,8 +2320,6 @@ bool _commonMarkEscapableAsciiPunctuation(int unit) => (unit >= 0x5b && unit <= 0x60) || (unit >= 0x7b && unit <= 0x7e); -bool _horizontalWhitespace(int unit) => unit == 0x20 || unit == 0x09; - bool _coversSourceRange(int start, int end, List<_SourceInterval> intervals) { if (start >= end) return true; final ordered = [...intervals] @@ -2097,19 +2334,10 @@ bool _coversSourceRange(int start, int end, List<_SourceInterval> intervals) { return false; } -bool _isSetextOrThematic(String line) { - final trimmed = line.trim(); - return RegExp(r'^(?:=+|-+)$').hasMatch(trimmed) || - RegExp(r'^(?:\*\s*){3,}$').hasMatch(trimmed) || - RegExp(r'^(?:_\s*){3,}$').hasMatch(trimmed); -} - -final RegExp _blockPrefix = RegExp( - r'^[ \t]{0,3}(?:(?:>[ \t]?)+)?(?:(?:[-+*]|\d+[.)])[ \t]+(?:\[[ xX]\][ \t]+)?)?', -); final RegExp _entity = RegExp( r'&(?:#[0-9]{1,7}|#[xX][0-9A-Fa-f]{1,6}|[A-Za-z][A-Za-z0-9]{1,31});', ); +final RegExp _htmlWhitespaceText = RegExp(r'^\s+$'); final RegExp _autolink = RegExp(r'^<[A-Za-z][A-Za-z0-9+.-]*:[^ <>]*>$'); final RegExp _emailAutolink = RegExp(r'^<[^ <>@]+@[^ <>@]+>$'); final RegExp _humanAttribute = RegExp( diff --git a/linux/io.busystack.busymark.metainfo.xml b/linux/io.busystack.busymark.metainfo.xml index b8ec81aa..c3062fa2 100644 --- a/linux/io.busystack.busymark.metainfo.xml +++ b/linux/io.busystack.busymark.metainfo.xml @@ -52,6 +52,7 @@ Markdown dosyaları ve Writerside uyumlu dokümantasyon projeleri için düzenleyici

BusyMark is a Linux editor for Markdown files and Writerside-compatible documentation projects.

+

Connect Nextcloud Notes remote workspaces with offline-safe synchronization, categories, favorites, and attachments.

BusyMark ist ein Linux-Editor für Markdown-Dateien und Writerside-kompatible Dokumentationsprojekte.

BusyMark is een Linux-editor voor Markdown-bestanden en Writerside-compatibele documentatieprojecten.

BusyMark on Linuxi redaktor Markdowni failide ja Writerside’iga ühilduvate dokumentatsiooniprojektide jaoks.

diff --git a/packages/busymark_spellcheck_native/README.md b/packages/busymark_spellcheck_native/README.md index 28e98da4..baad1547 100644 --- a/packages/busymark_spellcheck_native/README.md +++ b/packages/busymark_spellcheck_native/README.md @@ -11,16 +11,17 @@ use a host-installed Hunspell library or dictionary. ## Project structure -This template uses the following structure: +The package uses the following structure: -* `src`: Contains the native source code, and a CmakeFile.txt file for building - that source code into a dynamic library. +* `src`: Contains BusyMark's C++ wrapper and C API header. * `lib`: Contains the Dart code that defines the API of the plugin, and which calls into the native code using `dart:ffi`. * `hook`: Contains `build.dart`, which performs the native-assets build. +* `third_party/hunspell`: Contains the pinned engine source and licenses. + ## Building and bundling native code `build.dart` does the building of native components. @@ -39,9 +40,3 @@ Regenerate the bindings by running `dart run ffigen --config ffigen.yaml`. Very short-running native functions can be directly invoked from any isolate. BusyMark owns handles on its long-lived spelling isolate. Callers copy returned suggestions into Dart strings before the wrapper releases their native storage. - -## Flutter help - -For help getting started with Flutter, view our -[online documentation](https://docs.flutter.dev), which offers tutorials, -samples, guidance on mobile development, and a full API reference. diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 9fe4daf0..ff9ff326 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -9,6 +9,8 @@ description: | Open individual Markdown files, documentation folders, and Writerside-style project structures. Edit local files, preview Markdown, navigate project files, inspect document outlines, and save changes in a native-feeling Linux desktop workspace. + Connect Nextcloud Notes remote workspaces with offline-safe synchronization, categories, favorites, and attachments. + license: Apache-2.0 base: core24 grade: stable diff --git a/test-results/history-runtime/clipboard-cross-process.json b/test-results/history-runtime/clipboard-cross-process.json deleted file mode 100644 index d511461d..00000000 --- a/test-results/history-runtime/clipboard-cross-process.json +++ /dev/null @@ -1 +0,0 @@ -{"passed":true,"text":true,"html":true,"rich":false} \ No newline at end of file diff --git a/test-results/history-runtime/clipboard-plain-replacement.json b/test-results/history-runtime/clipboard-plain-replacement.json deleted file mode 100644 index c53ac026..00000000 --- a/test-results/history-runtime/clipboard-plain-replacement.json +++ /dev/null @@ -1 +0,0 @@ -{"passed":true,"text":true,"html":false,"rich":false} \ No newline at end of file diff --git a/test-results/history-runtime/clipboard-roundtrip.json b/test-results/history-runtime/clipboard-roundtrip.json deleted file mode 100644 index 4bb7aaf9..00000000 --- a/test-results/history-runtime/clipboard-roundtrip.json +++ /dev/null @@ -1 +0,0 @@ -{"passed":true,"text":true,"html":true,"rich":true} \ No newline at end of file diff --git a/test-results/history-runtime/markdown-clipboard-history-1280x800.png b/test-results/history-runtime/markdown-clipboard-history-1280x800.png deleted file mode 100644 index bacfbdba4c1670190fa84d03858dfac1d13f9651..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 132470 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

H}FaH{vd*e^#I)vNaqNQ~nWgeQ)k1(K3O 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%0D5-s-~UW`LZBae z?=SMXJ_f%4NL?}6PX!zW_NUo zAPSGz4s)4@!P>*XEyL^>*>ds9mELr;ROdg-F#&-SP(AoEj~Oz}V)G5Yaj9wf`p^em zLLe`>R4CQYG_GvXytyFvGCUM7uF;5dpEguB5@{5yCF(pXzAk5;zVG|{@7oI!WbzMn zL>VOsGvFR!#r?vnlCDsc26qCJ_t)n{OV0%?=oe?Yy27ym?9^c5SHT)ZQAMx1jA%ya zMH#tH*Y!U;FbHEUMV~dxKxMx2~1i|D@&`T`o)KZgC4xVE+r^L`@m}0NspW9$ZS$Kn_Y~EJ)6U z);Jb82NC!YKz^DVV}^;z0mFc0h*|55WtEk$v$J)OJ6LM88;nwm3RO-YciZe{bozJ? zDNDP4_{M!fXT1b}I&@Y$`gk)OYuyqZtab;luIU+5RiWC{g-zJRvzmK&$#l(;R0TvRLAWc{%1* zP6t|qULQIqFkE~IsGH(h7bnIzjHI<`|2gGT&E@d$l&DciHKWtg=0(}Y0NFHc-W+FE zI}U_;{X-{Y>N^W6Z#*sb?JcTh#HTCLt_)!95fQML+Ij9m^K^o_p(*?D_he3Ig9hX! z)?dKYyXwR{r^s+{<=VtH(a3byx)kcf4z5#nz&zllCJrnt=1zYWf3p@X0xty74Ktw> z@9%V)3X$KTt+zQa2t1dy^32xOasej7W8 zQ8y|w?R}H;M@D&&i^p!eUGBPGnfMFtp8h|BiH=92Lkqd_Yqt!TvYrqQEbqbefz8v_ ze6rZ@;u7+4THVcaciYtF#En@U=43+f7cEg0i%CRyik$7+w#dlH#3e(HknfqEXmLI{ z$Twg{UmDuJu5t5%BZ!`jCR$+iwW#w);^u8!8uBndDtzQ5KmE+ICGEtrf<}FzTRax` zWhl@EMq-OH=kNiYz!xg!{@v`aZ+<>ufyeEP-QHIQi?B}GEV1)S>w~)F`KEz7sA)a! z=y}fghdr_lu3krCO`a4zuo=WCBOP3wUToV=I8U3yZTf|cU^)e``fN`yxKzlAN z1|`HTLT3Xqh>0Q@{txf7ZtM|?Veb8R;qTXvgdS0S>{M|^81+lP96@nFAK7X6+F!V{ zfEBZIa}Abt4S#56)50wQ9lPP2{dbSkVFbC=hc-sosQNMLZE4c+RMOKhB=zio^Vv& zd9iqOYqX;i8RdZ(1`b%#MZ~sGIC}`5VhoIn0Hr0%4>%ZTffB-h##oYk*np=%0+3J~ zz<#Z%X%v-3*$rSRN9{$YT1Wmcp`*X5t6!RR@lI^)E=-34V3Wmt^H1w-{|%XVdTe_P znl897#$y@5L!AOs+!K#%Rq}!ELuoAK5|9@iGGqj?UGoR!U%Pts0#iJwhZ8Nr+LtLFLkvt9^Tgg-Zv8d+ZB3vq=O21XQ_Nt{5oBx%sESQ7IIm1M%Ij1m zqr%o?jgcQgN-Oo20t=A`UoL%o7w{X7VF|C@cMG5=kCylMx|s(IzEi&+AAd9F=lVoY zd%c~CAF0>qWTaz{i3KtL7##cQ3US(=gW8C*C|?6NPo9%{;t;9H; z{zu=LT_k~F_P+r4Dudm{ET9649Sh9@MK2)l@o@Kv;jKaA)5gH%(5+?~SRB z)?ER0v$y^-4raUl*LO!81g-e*KT@Y!{QfKd=PUf*fBSB&X>okc+2GHyE>X+p?3^$j zp?`<=KmG7Scsq^o;I}uA6g-|^YH9QEQc=*#$U@D+4Not9@NvC<;-QhX_fYGekGr*B z+py8nNgG}^UjDWs)-@sgVCM~YKh$j2D$2<`k#M4HlSkQz{l_%Te$v@p{l5L|2k6u6Y`uw>r<3nv(roOu z+hf_l^mY@A(^6C6p!$0)bSIM0_l(_??nMFKrI?d-!he@89vz z%XW_yH^>|nLlt$!#2~}jvt}(>@4(uYU>8`qlR>6zNRUuUPMH-f%0wBmfsNAmp7=^+ zYHX8Mfu{TJ)=UdXzC;Wes*jlgwWq4xnP<<@Rvvu)+&Qr+W2)PIdlAd99T8-qxoDE8 zyL#e(#8yFZ$H~kLSRiAeWj$0pJ13)2ocMXP-b<>ADA zlfLf(^J(QK4Sw#}aT0hgP`RFW0iIyK7Q+)FY5XnSAUQ0feJ zg7gTRedK=(fx83l5w|iKa8yOmvX5zjNu}?_0-^KUdCbJF+3G%N5O0&{3Pe)-pqlAv zGCP64$s-nkfvgG)Hp}&cf1PP=X}QlNL^EO-%zv&E0>ozIvLAk+y+tSyl8o^zdN(=) z#S0-$V_>pLo6eE9Yji>@vMaYWU~3N?Jg8e_dKRVMWLT_|LkIr5k_YBHG(})a|9~Rz zAxqk|V$}L~x5g=t9#0qUR)EVO4}k%&3B^30kpY!ExUSKHcSb3Q&<9}tkI7TS?+;X? z=&k1-_{g`-*(H1Ic4YO*d*mEO$RI){@jSz0uq{OdJf&GEopi*8!sc6Ga#?D$;>V|V z@=LbhExV>rKKop~+Gz`)<0->CcrXeo5IlBIh$*5HcTIq?e`MY}lMYvix3D2*{qqN? zszx);V{QX@1QY&>^5{>kF$S^urJDhEU35v-pCckztdOfpBY^JUe1u{nGvpw4AO^E5 zp#|;$yGBcmZ^ZBCTUL-@Dt7OBNZ`}5u0pqSk1KoFu4Lx^VvU+kLy8E-GDkvK~t5>`yUF#;u!XkSq6=9U*9 zyLW}+7RAvNk5TL1G=*x8E1=q^(iA8RNRMo>qz|JhmlLQsI;$<(a!5hAkvB!^+EIVZ z%}9EOsq+cKhEN6#oIT4AMTD~#(f>LWgt^AZZ9p`oX-B2ffT)57V>wc=PxzN+ZahVj zA~cjm{y&pv$-EuuSJC2Db3~Wo8iuYRd^&$Y7P}Mi#}YPdoPCr>qy`!!i7lHk(4LBog&(OtW%KASueOO9iQZrd-5z=m=c5-5 ze|NwcvC@0)4g+EH;G*|;)zsZo%=VM6i>)Nz6E(hY`nPX;Cgs6T>4Fv2R!7zD1ESB& z%nTb7R?TzAJoETNIsJ<2)UOR2G~iTAg(K`wg%=!s0@sGq)G{UcP&2%qP3iRPEDFsNZ{24mm60 zGIZJ_-CD7D8Mm@6eO`JNqJ>VJV;nfSoGK!79r3(qeV)5*x{2yYaNDbHT3_)GQ$hP* za>tJ%@Cav{bE|XQJwI^Z#uea_@oKw58MJBfV$YeS%C~s?+isuvx(440{Ok1I3MCrH z_k^8k%`*POCl(Q~rQI`XfEjYEs$IX`dg}1=nr-rVC&VPTKK004b{`h0- zO!Yvp;YpKXRb#t^S6mB}5%9*B%@=QYX^94bR@4(JD(=#HYe3c}q*ocgADT+CpX5>D zB$vt*q?t%UrtEO@oznW&c(yL36Q1oz-qxc%$lPvm&fALcY9 zfN~MI&bx9u%5mFIiIe&#cY|#N2Bli&#A-|O;QV`UC^+^*+U3!%qiB(S z1OqHexmOG(YrkuYKJM9VI0#PNIG<7=h6K3HVRl)`$r9&9ashRR!DkgFS-G}qgEl$t z(SJe;pSh?G8S-?7M{^=iq%Mc8RI6IHAS8vX?VVhm9L`h6-BrE2;24@pV1jAAYb+Q5 zdUFX#8m0qH^Oa7+ug@8BM0|uAWQDf`a7W8;|dcy~oLEk!El@cQfj8!2h{IBK*=CJAAL+IU{y!HH}4R}B9D`|XG4Ta6vMU$AEtt=*7r6vLEpNl{L<=UYvEc1UZ|zdxE% zH9-Mw$mGaff>L7W0|i;604#~tDk+XDya!L;0iWJ$qV9nBFHS`cf2^iKsZ|zT%}m1r z{E|OcK0kIX?;Rci!dZbQEI!)r)pmdLu=?7^ve@Mz$Bt!Yrxbgfy{z`|jZNeqv6T+p z4|cG>oD}xxOV*z*LDk)RT4WpQ{+g1odc`yQ??vhtZ5v(1`E%!hRb!AZF|}&0v$m13 zv2n`0VS8itO6DWE))W2Gj-VF?f++d?`7NhC+a+XHXJp4*=-`+)EUh#y+b{b%^m&;^ z#m}d(WAj=sk*PVixq5av-HlzFgv?Y5vg zI_a<)nNr*%4eOdU1LJ8Htm%6cGL{K}lWVSJn#Wsr`&Ayt{7M!DZ{}vFwi$=j8?qG6 zg}Qx?n|sK$Z-beOe44vW>`jmt?-&$7QMBB{R04dc{aE_TVMZo~YE39a-F*R=iL+{d z%%3|bMJaT)!fr!k4Tnctd1(0K#1|umRNd=2XT{Htj=tAgtFp}dhvgyHtF&(I&imZZ zf8yTncB#9OXP-B_#fwYR1rSUgn^$5Ovk*nt1BxQ8uxP|ajcT}-NoV3)W*mlsZU{a_ zfO!Rmw>_+U1vldBJ$>BAk|6`!zR(9hm7KJKB-PApis$u=s40M0>>Xk*?sT-N$`v$acVnDJwwFw2yvMaTO z9#4;%i=5VT+%8*UJDwDjLovh1c;wu~I#&q}TPog8 z*f$qCl($E*&ISoKObGD*HaHLccMjQ;qiAqGp!FaZ*r59NZr!>`?jcQ>0KgUVm*l$; zL4(Bd7EIBm!mt$81zAx}+R(QmS4ox72C&=d-WM0lpDz<|p$RRYyy&m*`ZZuhXX_N} zSv_A?PVQcsG%ztes9_J~sI7V*8|B(P^Gw+Nb=ly1KXiUE)Y@}FMZZs7Dt=NecXBd$ zIOWIT<#!si>A7+CX^#Uz+qz~hh)vp9dTdHJ?+Gtg)*2a=s+(R|lX!BAqh3<(pg}2T zn|wdvpXmp+-9nW{ia^e*8I>Jlv9}X$-Es?)UZ5T_P z&Y4bcPndxMVhJLHo*6E+8CP%8`BQc>x*R1*EOj0irTEpnHl%mfGd4c?po-~aH<)zn* zeBYO;YpOhQ4QK8e`E4);65S__b$MxK>SyJ#aPbnajAM^B-!Gz?Y^|wXbq%2s!nGH%zmOd$H+WA}W zc=rW=?rWKMKVt6Jd-2U&T5VH&EK=`~_4g#U(qWHH&I=87Jx_!xyETb#_)B)I@>N&2 z`|mosEXjE_amC^e-r=jeWZX%LJMhiLVVj$&<+@n|*Vz{44Bc3;MK7gfdeZWLu9mAF z$s?8CAx(kxVqC|F|KB@fml#ORO{ZRzx+ zomJ~rciX@5iBsDm$M`Yn)3hdhdOhe!qch_kUYWQoZNsVYcIhEg8q8Q2d@t^N=M4u` zdL^QhbJk!(bGkEaDxM3#(qDErI6N=-onMOab99WmQY8z)CRmo@r zucGigRp?}Gg;_3%!OZgfF=9SoMPFJF=A4yot?6?m$Md4cn(0+}6$zTe(ZINQ8U~1W zw(+*D6d0<-Gfhn5vAr-en&|?*sV^pE=znN7XYlnThDyN0tRpot)Z=1!xEV2#A5y~# zls&!tAtd7ya4Erq{Q0!?>^sapl3|I?g!l5r1@J&4|b{ zo935-jqF{P>t?pgGaG8$^`8?YJ0UQBw&Zo})b%k1Acza>L_U!W@gg2ij!to9=5Yoy z8n_X6B{qcNLkj|h1WC1i8JN0p*57P>~J z4j_UIty!ZQ&lv}w9FJz??4vQ&M1kOK-Tk06%sFa_)^WR{w{a=UwT|~+nBf<#;czp# zJi#p?oCi+w#147xWC|f#DxINB+X>1f|B-02^=uJ6EE3Sy6e)3SFfpz>{LslMHq^;FZG+i!JRy4%4rVEJmM};tI!LFM+A1}mJ4=|iDZ;ofmu`JiO|JMJ`b^XP*b<4YHJN{f>qT%chSa<)g z)@NVW8_Uj|e)ZMt$f;BN2vFaaa-B>t6TA1lWPC>jPe5GCT%=<|QY2cFn2n|DDmO1k zACdFfq)kaqlcjwYF1mmEah(0@tjFGgpE_(aTk|FS;L&8~rPWap>aWXx9KNa1LA%1%y9~8sE-Tj#TG7d7ZL@wx$|r-qw=Ux|lI_bv zDUaDh+%PMS@7~_pm7qS)xVC;13OUg-nI|Zz0CO=$BE7x=`KbUoIm#DV236aZ1Q+VT zP47H+ogAKj-RE-OUD4@FKjrqi>t5;p;%V04{2e_N!#6cPc(}{t=pEg{D;f=*VSL2& zQ)NNkl_hEE-TGAM`VP=|V-~Yz$^x&$`@S<9LvK`hIIgX3r0+bjXK3wq^WP4AwVXo( zDoV)@He6%in464DBaAMuEgt{1vhZthwUV#Cg|S`5o7ZMeckf+qq9`itey;dg?WDVU z-PhSZUVk<6P57$t+EKrFzgqsgS;dXVK_6`ORW$}^HRwFldi3Md4krT_{8QCw! zs4OeZq0igAI=^<%pns>uTh;nK?ZK1D8vhSHSox8^|99eJ&{gjZ>LK%<2P9EQq=3#Jb2Xt8mk--6b<{)l$PW&PATq=;Dv@-zpEK_ zD2j;SE9n{jla4Q6oeqshC}!Hb3QbMOi|=pD-`c3{7BpM{Gs=Sog;+dX{qmBxNi+U^ z5WUeP06=d`t|wvhMUXiEhV8|fZTf=`l0Z1jHnM$wnzoan&HHfwm{oAM(1qqls=t{S z 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%0DprWSj+HExZ zQ}#$olYeei+M6j~CHg`eVZ=C!LrG;;5_MUn7%!K-hYpn=d4#6G3;Z(It{l%8QRsDf zY(PzlNd?eb&<%?mw#}|Wr?$((L%dM6FD5*S`8Ob}Ji}*+Qq25XOX>T>e+!Y#3n<$T z48Op?93WLh(t?xc^v^w;3-nZs6s>WyW~*mCiJ*1@a#u+Wi(&i{Wc@?$o7b;j$J_8m z_1o`K-vUQ{e0H&sN0P<#U&Fk@{(PrDzuqznh&^5n|28R@IrW3redz!?_L`0$E_fc_ zlMH*3dKz&1*zrpj0mwE=n-{-fm^`G{uI0slD?Wm`b-}2UUrs&*+-Fpci&2Hd{Bxfj zUg)1zv}xCF3fvayiIuhog?za%4*`Sha^z(`=EV6EV1110?M^sU1X!YmWR8hz5lbvBOMw2?`8VxA>ndU7Ofg2jpzjjm#pA413lav&gW15gFES(<_gUKJIm z>b7>!!cPg(F$zbvGiC`>&~7QkZ2Ub`f+Gwy$`M1bf`MY4)jkn?TfUQ8Us3 zaTRNV$q+A^d@aGqsG;Ef{K&&2qpDL`?xIe&{VhEn?Kd#ny7lX2%#h%<$Y%`GNd&%N z;x&c&L1?kFd;;3?v&OyB&&=}|Ur_o}wI@*98%y(Q3;n@qK4q3bz4h%VY@dRKid7p3 z2vXIgr^gF~>19IgPI0_M@Eb}y{`NmkrLj^exr9P9o6eJVv46@26vlM^ch=cZOu=2( zsZ&Q-JR|to;}2gzs>3o=$BYU(3UZ$tY@bOw`ylmmPMo{6U#WLi|GMHmDt@0 z|3~_1L7yldksJ&^+zQxQ;>5yR8D8d@@)sV4Ga-1Q_?1pK7+&)#xRL;R{SHiGXyGf& zToHX~tE6XWD>Tg$w+?%=G}71)VgtUSJimRV$VYHyo9mu%;k@i{$0pXOcm2_$V&8tK-A?j_;Pq8Jk`n2D zpkM;0b-1w5q$)X71%H02aMxeZ=mnfT*GyU!ipbM5ib{62eU>TYH|cGrN)I(I$wcCc zk~{>9q7J|wI__+Z(hV@6B|G6&HH@xazrF?UrOWKv;EA9{Xk{&4tF~+@sxZMAK*Inrb7u^Lh(tp|izuis)#vDn zg3Fvw@$W}V%U_d;Qt(vD4<%X0Mm2-gU~)`M%!|A{b1mg;i^wmqCeyiqB1O-L;PUfR zd>$csAAy}BOIYwNj@z`YVOxDl{T`5Zs1^r8#V(}quy50XN(Is37NmthQoZOl`q`=e z6NKd7J;L=D)H<7KeS&HvDIU#?J})o+A+GgQKM&ajB?g1EKx@@S`Xq@+IxM~mG0pbttG|Lo4?Bb~3ORHQMCXqu27m;Ov#}S{gxQL5)$<049D`TfrAJ3N>=W<*`|& zJ*br+#=y&bM&`dx`zF;2nGxnY?MNSYz7Agm?qE*u+5aY-FwENbRONwv7*9TF%Xfm( zI@*PDB>&Re&%8Nr-aN0k^$5M(d!4PYefRS6@F^RMFvNSZ&IXAl+=N0ryD%46z{5;- z!RBsZw9#4$V**SSnDhL;1E%;RE8_3q;6@vH{psb>T_6ngymHSioG5Z+PzLVMYVY4@ z#Ad&?8+O6dKnWBge^vLCHC65HKfgG4>2j{dx47=yQp6}FZMyaCyGy!o@EIP9#otc? zfy?lZf>Kqy29hjdEql$H^<=L54NCNU5|DKCHwo;6so_B&?R{2}yqE`-Rj3MDjj(EA zoG7xkYckzP9_nJf$RDQvH}bC#5;g4X@JGM;*(sZScq3GW&-K z3L%hzl0#zvrFcjv)r)*rNh3lhv)gRPy}Nfi;am$1Nf{yxx0M+W0^Tko*RLOn&If#u z3^ZQO!3FD<@*CZ{MbRg5lupfx$eH(A=s(hCGQzHo2}hiY@6Fa+GQWGo%lr4H-#^1+v4Q&PgK{eEuX@Qa!^fm@Jonib{s4@|BgmPGBFiR za@poC$Cc61^jn@i*cUfZYwOdtI@BjLXnbzjSBkvqC^1owZR{moAvU2EP+z3L2+3*U z^Y?tbuEpa2jBj<{N;jdRVt2EcN6bQ?E|d@S1jYfESHDvsaVHeC!5|EK(@dLGE$gSd z(NNpbWz(8SQw_^0oE7Z-iw_@`MfbAhDKchF4Yl?)WCgg~Og}ohX3qK#y=e@uQ^y0A zAtv)A*XG!|y*ws-13Di@`KJKF5*c;AJs3j^RGmUQnOIi_Y=gcsnDvpKtp}xOY@=<( zc+82cCSDxC-;9uzKFh7pgDkYRnguMNzG}ng*n*X7*DgYq0tM&>^eR*LmOs9VB_*hj zwDfe{Hy%COOZI$zuJ2h~I!Uk=;JCDInSJTx5YI zC5s;(|BFH)CnF|zsY&#}^Z#1jm1i6vC)*W7@AeRyx!v&fFJ8Z1^Q;*3XvsG@6F{k>8RYO`yMglP&>fA{5F&+aoMYOz_vfHeRRHm_wnOz@@Iel z_t-^>>Z|`Kzy_@Q^5R*_4$wMTdBP>lf6BX@UXe z@zx%FRz2GQlg{&H#h2Q%S#0jB!MO%dd`_i#+Z&yBmhTkn49AbKHF>yruPmi4@P6Wh z-tGNCh@j0JA^)Ey7ncXvMu@yvb^=)bhzch;GzE-CL5cu-+z4xb_6tyPxn~r7qL9&q zh;-b!>LMvK849rdgk0WIdw9B&uGb&7x%R;=+@o90TU7j&>OVL!xi!^-9%v@6sxhD1 zg%fP8pI=hldwVR*i~c#sGUfM~Q3YG3j5}BS!rOy&U@4I#D=5jf!lM|&72h9#i zgNPn^6_zM#&zl=EHmgIh@u66lf&(bp#_gGHMI)Dc;cI2^rY)9&!cxtI90V7{bV;O z8_YI*SEU=#ZsEd)m?b$^$~L4HrJey;7x~wylN}{B8Cnrgrk*hw0{=Olrhu~7%zaJV zOqX95`NkvOHmhpS6GpnVa8U}K6_LV8rJzO^>q|U(frdIEK^LktA*`ismxV+DsEyx zfa?N?%V7}#Nq80l@5UgT^j@cTngO?gVD2HJJrI6%)hf|6ap_q==nqndW#b*qV3wXVh^KjwjXgEImz=0@TEF7ZwNH=pHeB##y*{B z?Ad0>9-=_CuZ6p?TbjT?GvufYYb3`W;|59R4}nJm)linP@nJykhzN^1dXC zJi^sN8YyZ>wYy_0X>~dPEMiDp%y3PlMN&O#P@9w|KpobZ{l!h6ENeYSaHK#q0_-E+^T>Lc7Q3!mYo85 zijo9N8bT7Ns0pa@sqVjIuS%W$+Yz%pOUPjpXnO$3V&?ezugKAXdnx>L<$HL2o~TsS z_=U_2&-(o_@eZ+9jsjW;Ms}nN4zrj<3yhq#e%qn@K;bLCM>w}Mn?lbs5sBaFm!Ftz zKqGZ-acVmXg-D1;8e5=?mNo-7U}dN*Oi-jB#`r#kplKYpK6>(RMvE=`9}w!6>!D{JbtJ~28%aq}{nekd z4?wc+LVqR!J$lzu0iz`m;$dof+6jTk7-odTHB83O_{`c~T(R|3L^}~FodZRa;Kh+r zLZGJT8(*qUA=e3Wda*!bmqIHSQmr>;t^KK92oMg;nTZ%+*YF>HO@Xp=fo!h`gk%EfPn%cc0=Wan)3DzZMau)|KX)KC2w{C$) zKz;PmKAV1e8o7mUgzy%TVYMrq7EeG33*=4mJPWr%{%ub*Wt1#pj6 zJIy|KkRiyH1sTfYrb@j@m=P%xL6I|Z&wo%OU~X&;?uwL{d?yEo`zg-2GJnZu)@1MA zh>B9nuu`B!T&3Lk{oK;wAE2E@$DJQwpVP5Zr!Dq54%;cZr_xPuz5Ir(>Wc8S51DlV z*OqhGs_65Nsz})*{PQxUQeDQUyl8_4KtdBq%V;in$UQPnpB2?MH2S2jP0=(jf@VZF zAha(b(Se%T>jJ|bJd6yJgfO}y@{TQV=OWLRVsO`UU{hH!5x>C^>HTc-qquWXJ>W!s zYu#uqP0iihQe@l8WoDnrMt7L_{5*Ko`zeu1rcOoU^4}~(S|oembeMU&c!QI#ML8+M z1@B8KI;1EsFD>E&h%qRDro-E#+pSYNf(8N?=8-h_A3k{N_Zn~<>aV?XchZ4pSUvvu zoO!{8a3caG9ib&nTEFK~cll({;4-a9E5B7H7MX!k@u(b6Er!6P7QX2+U&0x-iGOUZ z-MZ3j_2muQ2@2!#^LCT5R-(?hRjHKEEhz}Un6tV3<;V8z6Jz)C$o_ZL!jk|B9TLCr zW49L^1E=5-pB?=Ul9imZ zUnCCETW7+c5D186d(k+-oXh@R0r>)tS5iQnuJ`3%|lvc!-ZR0peCulb~0^g zKmYrpy_S;@=C$~?E`!%Uu@aSUQx=Qx&uP)4KD?5?{ohuwfW95JI3*^@^uuKzB_svyx zDM9dhWYiW=VUsKC()@1!WPy~oudkk--nM>YexL*vtg_;)!Q{VZ35wPWEQDuedj(|$ z^)Aa*JT6`=>HTEkqD7-CCcT0~E=E+*`uFoG=8?)di?K68h^o1~v2)q$7J@WG_bSTn z_92NpKUd$198IjKesw{A4v4vqt$1X9EiXa==w=rlOuKedRK0h0Brv` zd+yHt>7H`{Eu^U}D(d0At|mqIc82pHD%&tThK$0ZxBW~L(Oi#qt(W{^PcLm&3#d6? zMAYZ22fFgN+$7>@Kh)JXAZAwd%6xoj%`(&V?}CS&**ukx)Y7?Lx$VTw{?67>TDk1E zAnq z`27V8OJCHPu)+g|^(+hxyekM9>%d2)!-d@XAVfsTXWg7<**5W@-Ra?TpRC(Z{Ci99 zpE|H4Ibo-UB_T0(LKH{)HPr!tw-(G0v_ckY7cA*mBqURgi*_|sY z0m>92#^{s^;t2+6AcU)z8PxRcF?}0d`L)T8D=KXD%+UM+cnIsUJK>7K^5thT_D_Ua zVB?e3ntAZ0EHya_0IxVS-0`t-{Aw0Qh^~SV8Me&YEe-^lUVI`Cqvy#XAO2?}BJTI( zd^K9FyV&~}s91h&cmGOC(41A)fb>i}w`8nZzBV_k%bw!)@cOL>J?y&ocJ~Tz=e=`P z0Hh{Nnl#WfH=@KY>R)6y3#iGo=Q)B9Q!J|KtkWE@=-vxnZl=M_T;SkFG_7c3@wU58 z{Z>XSFa~P4q7jrA5Sd_{d1pBr!@?u2MAi}&jkZu^8D51YkL-bBsO;>_Gtxo+V6(0;EOzzTTw2{<@Zv(~fMzLyZEg zbEi(#U3j0?12Wz3jCz%j0lW*<5CnH2%?b5(t3fd(8We5x%`&M?)#$l>n#PRK8?;XB zsm!Mi*H#@~dCOXRRbFDvuw#}ShtkiN3q?djX+rQ)?Rg>~pe;?Fq>4A~7tT4q24MtqVfCTQ}dYeDtSn z4JvoVIqv#UR8d*GVqN>Oub=<**N{}b%p2QUxi^VA>zcfEYQxu4uh(y#HDbWY4Sr+v zCj8uXVZ;=-V@HQf&brxsdvqPG?fP-U_BSlFFU)O!*hIH*T-EO> z3qunkJ8w99${}i}0+}FT`5(m&Qv~(dn>e+5GXZCh1O;s&^r-9Vw&#e!2zX`<%>McF zr>3T+3kj83_>N9*v6k?JSn4ofKvVk2t5AzubGOK1?q0?U1WbTm<868z%*r0bH9VFa znzmXIbj((|G^obwSy`>LwY5iQfo-_fo?$e}Qjl=?srj6xvllLGBaW{8_~=6y4Ih1; z)|wQHRspvRPc>60kARSC>WSir%zW%AQn=9?Tes&}tmat(wL_v3|GeALgWbfwouBrT5lLOWefzIZxv||yDBGAJ zF^55BudW^#xw)m~7SJ=%CJOOR!L-#oo-d8!c_du}QoDMVmX>*2LjK%e^-yQVnzws< zH-S@}zhp@rbeC+UoE$Xe)_cl6H4focvSYJ)HBs-?Ry=t0Xbbh8=*u|(*OQa=j8D#( z4ple~S03sn*OJ!#57Y-A8O?i%aXHvEU;l*O>mM9kBo(rX2?#W7T04Rcj|Z9E0`|C+ zVqeQ@06PQCxwGtG+|E!sl+M5u|9}85BA5m3n=zOSmTJd}?#-By^o(AHMxh!Sv1>E} zBIESBF={*-d-=?x`G$pnA`1YGvgrt8%YvRIvq4!r?C3vgM zUvD35T>lGjXfrN3XeZ~qE*suNMP)PT>~YMd@kUKSN5M3HPYfRbY#I^wqZR4=TjIi3 z1qG-mqH<1{1|6hfxQ1S52WVf%e*KzIsw9#v&;PLKfR>muDW^8n=jY)ryaFmcd3*?j zxB)0rcSc8FmxAD}Gs1Eg_wTl5z67>j#%C4a;L#f01`k%l5=HChI`8-63B63#Y-hA( zw1Gh*kQ6=0QV9s*Nw4zqHqpMGNDlb?y$gX&cs&Nw1Wg4uK_J_X`JqQ^m&mPZu*c|` zQhG4kpF5D`VcVJvb)Ht#;rF*4rV4Co27>e+jfmJqc&PWND-HoiQ9zC^=&L{r+me(- zsgxK`vo~h^_}ZYbV>s!EW)wd9HCY;ZuC!@`0$Z{%2yOlmfU;y#hwq)@Q72+8l@P1H0q9KtD8#i9iLz_HV( z>tnFAoq9php?mi_1o>p zR0|Htz0}w#)r{Q2hoC!tT#9 zGU|N#q`Ui?C@(Ls551>II#++#(8g1NXBHy=omnF`Z1`(5W7})A*Uvze((xOnW}RwkB8b zfB!SB)3t{4t3LKWzZ}!s-1chKYyH$?m3v$Hoc=VfPkPYIM!1aR$#TF zra6CP+>NRU&#_t8`Ao+OsGIt6v?!GtDH^+tZT0#WBU;iiD@NkNM;UO$Hh_k{d+*-k z&?G*H-{43hR^!NR8>@b*znR!v^fB21q&~~x5b7dk*gT<9X6esG`YVx-XnkEjRhAd%lFc56 zq!83BNtFs0I)o#fa#5u*(Qa&GN}bMHT1$}4)Ztx;GPp3KH~1^~JW)ZCJvMCHA*}R@ zXuDJZJ4vdK-K23^2@6vmGv<1$*RsHs>`_b6*kjp< zM-?Oo3aL#D4OkFBcHdqg(`;5IQzm=09H1A}V*EEdw8K?zsI2^GZFjk|=_7X}y=--H z`dD@EIe`HAkGogGS>(ZuQuR==<(XCfY(YcQ!RK*dSQoY+GJB)H#B$p8yn+G*%R^t_ z%98%)rM?aN$eFX6@9E{02B#;M6Ohk|RBWdDwZBB^)lBGx=P$c)`CxNAHc1@a5g38q zQBzCH_0*{ztX8lE-X^o8|FRxQW~Q9^K4<(4s)G6R=O2mwS#|hK$KKz5f|JW<61OMC zRhk=3RDOuf(wDXcv4~*+n+s7}A$o6Syj{OhjIrw3xHrBdHM&kYv;#GWdcS^=df%xu zWT3|C7aNWxRs)I52flgAKx=UEqzMzQQn!idoPpI@`9F!9E=28Gut7|PDZy*?K8~H2 zIXRh?q?@QTFyJ28r-TU?$;5=xUEr)8bal-pTt@RLrw~r!8X6HnTgwd z!tm5t=q!lgc07tnK+AP}^t&9NVV^4(I;041C8<-;)Eza_=!dHEkdDK-DIciCMWluo z-+T*;&6HPsnlYc$K$fBlUek1d#f!zbPoP8CUd|)yx%Gb)KEJ%3x=sLMj%qR~F8$%% zJ9hwjL?dJIIXgDSxiUU^&Ck-(7f{8F{chU7fB&2;j|{>w zU#?lbdMqp`ms8YRptA-OC>Z+i9Ez#ae5lt6Q>HY37<##?_%RyvlrZ_N8VX6$Kz<#pz=L^LVj*##UN%{y`UZI{o1l+OHs1RL#_k-uh9cGWJxEGl z;7hLo%n?*@XlkGsdCDk}9*c`La>N`K8(h+3#3I(STt%dTljAnI(mhQ=D`0o5?gLGiIAwTlcCcFE*e-uC0(O2Jlty9S!dePtP03f4uka z-%f3`&)0V}r6F%W8pXXB7<~KuyfsDtqnPaX2n|$7oV69u9!+7+swv7@ZiNi{rcBW) zNRP=>Z)jKQ8(lGW_-gp6Fu|1vR+Z^PRnx#8&FYa(kF3azZ}nWdbM=RT=rCTAHGO_m z@_=b-YoD2sDGsL8r%f6+b^%8l)mbGY^h!7W&UPBHQGBwlUAt;&lu-30wq9{X$w;Tz zl){#XerARa89Ip{O`~k4$%c??W>HkxzCaWH-~81|_|r&g;Z{C8ij8O#qc`-;>JxIt z%hJZCw`a9@;sY`VNmNIUO@2V}Mdh8Cnc0%Vk$CWO^wMERE!r*tteg;Rh%Lc2c7+36 zJjlpM!aKkdlJx4;tFj+>G#X91k8J?&)m1+=jWn)LVfJ`t?3xeF2~8rPFwaGm(sBP? zb1SPkpEh)oD(I3_TUO_34>zNFnw4cXtJ9j^y?gVQ(!jZf_9(1NLv=LLtm%mpCq`eN ztM1LZ#5PbS(e6n%Zq%TuyNPyYvvA~8**6g=nsZRwSkjV}$I@VfPdte!2f;kGrlQ(N z>S1smF+X_w_HBCi9P&CGd_!tl$3;KsI=&zk$iowSij+8dV z_cGVNf9Wup@9^-U3Js!Wzka9II2gQr|33c9`UC^r;)8yE9mpz=izKAuF3M`dMC3^? zUcTInfU@p81KlkXgCDj^-I-2s)&FIBe%{o1t-H}9flwxbor+A7=HJ-H=p$XGmz+Oz zMAX{im-gx%T9xr-=Dg(c;I{c+%3 z#-Gy~+PeJ4&K<3KpE9b~wCP^`%6A_=Jh^1;qwmT!w*dsdqf;_? z+30U%%x2A-S5r0HOqCzDCMA9cP_%?$2|75eQE@hMcCMV`GrR49N!w65oeE#3O5UUr zoaz6Bz-412M2h5tkabOP^4P@{cq@rUP^$d*Z(0U7)~O*99IxK8yD*88G1Z3u_Q z)h5>DOwp~EvT6gJQ9S-8;(p5y{@bN=>HmiqrqAqturZTy`056_^wQ~rvEo@pCJxPv5a4W9X zXi`V1dxu2N;Gyzn<{oj-3t47MR>J4HfA?nYbD{%6AEFaONn0NjIWZnPxNBFh9?81G zBaVAOlZ{Pjw*_;?mHBvdRj~c0VL_*ord-ObviIS`@))DDm652#kd&VfQI0b|+Y$Uw zDyo84k4O%fW>rB$a8QwUDH^AU6I7jg^+r?R8EN=r#m=0u+(w*DIIHMC#zUb{H*Wb=g6fQFrPF``)1S_o(fa0t2aRF;Zr!;f>4BzhYs2ZlOH_O>DeMR| z+sCSp+PHB;bd zbCbIJ=)ZmUZt16ZIiPXwQkEHw;hQ{VW(#ttgO9#!Frx~|!^ZIYoCx@QpqPFLNMNnR ztz^bTX9ObVOP5x8V~S;#2xFGkxCY+{GQXXCV`a1$x>c$+PzrNAYIb;ext=_^I3Vyz zlt2ncr(Vs-P^D!`=Er9*ZICUaMbu2x^B2D?yyWUyQy5YzfOhnD0z7lt8ya2d{Pq6_ z_^jRBZLA+Qh>V}g3`TTxsK!NY@YlTj{4E4~OJd?WBuPDemRVWVXLPDPNh?q~kN{{T5pJp6W> z-ufwuJl;!GI<*i!C|%D+-s@oV?p*YeFE;6THAu0H7h-vQ9{uT~G&u5W_vZTFr%x6o{(gA(4r zNaG?UffOD*1GXif=N&mVeVzE{LE=z_BY`;nxOrM~RdQUf>W0Gnz5T6LO{TR)CUI)u z!RYv!HEPJr@O88brZJx7+-El`mYf_UA}}M~R1O%@NeI z>4nAj54tiEXLNw*QG)}}^n!A|dMJlyMA-gOl&@V0^76aW63ZGZ&CQQ~8Kf@a1Kp8Jg3 ztFKjkg7mZUx@oK4e)uqkzm!}?+&^;i5zwcGfDYV2`SIlV7w{q`Cjsf2=wm&uZwhBjjin{Q$*A7wfsk z#`76w&v*k&!0bxQ+1`6^pM}i)=ewJ>MIKc8F)B6vhr{~yOogAh<0J^{kX0wL;$e<0 zuevCGSE(9VZ?d$}cs{}Ko77HuR08NqECK6SAmOc7Hlp-J^^U1b`FRjxyuJnuca&kr z8P8gfoM_Fg+N=Wf0qG0$|NQFJR@{AO%uc386RRz+59QtbLG_pCTq!erKL-d1iBYlP z`=PWjGP`MR;q{w(YzX{p8!nX>gOU=y%n=NoiU{5j@M^fL60Na@`G6 zO-xQt3xE`{O0@$~V4Mf7!ntJIUu9*(F9wLAn$@$psO)B3SknqS8oyS$D-uG;_lb1w z%!~I89zmakj^y#&GNygBtn#1J_wxU~H*dsSdtW$P-ET)oJy0jjfdjW5J=(E;{rUs% zJVG$nao41-k7CX+ht^@pkd}-qCC0-QfHWmc{g`?V#Sn=3sgyfo#+@ui9Q5J*J?CTZ z&s+zaFm+2)g~rF{$m_y&IWSh~H!LC_ypcE9xpPXi!#`+{mC0dxGWx}>6g?|~h@eZJ zUHGJY`1&Jj8yieJjt}keVJUeO%ee^w`+pfs&scNz?Afb=Wg{lp-|orXH+gwSe+-k8 zV|7pBd-_Pa$RM6bAsQ4Tk4}}zHW@k&$Vg*E3jh8mvmF|YTDtU9a;FyOPa)-4^JBAT z)nmSpyh4KC3_bkAM)m~kp3r%XVLTCV-=3r zp!ySmrA9KRu@h8|3D$-nI8ax@Co6N@DFTj5i6Sk$>9+l8f)MfM6JP~VZC>_SW+sFqM4S~ND?kGkJ<{* zbuqLMk`=l@Qenp&ZjB|MPi70bxkspO`a|OGpd=GnkHUp_J9gyANHsU%WQmCwqtur6 za?w4%qiJi_NwW)v6}CDx)cpxilq3esSXLIKw3P-BhmHqtO<6+M5q5)`&GirY>cWVn zLIFFb3^q?#ug#@O21EJq%Kieh4I+UiiZ2M>ETPEMhOQ3T-Dm&ZBDNlP?Ao=K@RWmA zcPWE#q{m_cUxLme1c|7&;{U-QVA9|bC>yzD zXM6R76Dxn`R*C|TlkAbTF9-Ln?XaT2D6Shg1a*{^w@m6fh6#UOXs2{2!j9ls!ke8* zTQf3gk{-`H8fHJLMb$z=A=Nx|+ctPm{ZC%+!I|b0{bC$T&dh0j@{;x|j|!QR+Xj$X zP4&Y%{{foB&DRU^tEa3iq#a7EJfw|D03t=8UeT8Dj&2Z9!gTsQ z9*P%_aEJgnm~8B#C*qsbaUe)bokaC>^vabske5%o2O{{fKn_HUGK!HzbYd%kk-g50 znGx!75hhA%J9Ic=|4cQLC*6P#>vWaqTm^?rPOe2iQC&eX3hZxAuPe_ls{1dDZ72ui zMVAF^fEyR%ku-T&J@Gs z(vX4lD3m}+Xyjc9Uq|twLObgm{^1@%egS(yu<@yDMFZ+T=O=7+5&c;{0!*RB`OaGh zo-$&9u8tFSYe235QClAjnf<(Y34q`uDM2dkew~? z`oy$g?FL!sHFuGyfye6sON|DZMF$0z6E-KKC4?qWCVBSioB; zup+$$HHg*szk&_TKb=je{9QpuC(e07rA{sS9?QLBH%r(w6NW)I9XQYuT>Js&UPhtM zoTHcD?<1qU|6M0h}bd(=VjrB z@iwks-S!PbUk~nJwYqJn;fyN=LSdS{oeP3BeE7VeQ^#x9S5p9`Dn=6LU0Y1&X(Q`Z z)Jk*JXJ~6}-P0>pfU9C)5=71bV%&=0+ z)r#P|m+YQ+0h~fa$|$C{QQ`9#y6)0k*uNz&vK4Ga8e2dntyaH(>A-`J;mU6H_9Ohu z3Zkv6>AlHbFX2mW-Mu>oH6mk}Q(4Oly?@EaA#j@F-8cb%y;q`%k&ZHaDO+%5F9e?=q2@DcpkVFs7 zxP@r!?(TjhA|j$_h&-iQ1J`6JnSj{CKO74QsY6dKB1uGT5*O(A)mi((EAWWN>ov;I zS_9YIhDTl~?|u4R;Ppg6aP9Hq3n?FHCnBgap8{?K|8`#SQL8gF{U&;_FEzh%CS1?U zoB+v4nkRgCw=j48~fJ?MO^H;|869%Vdg(0 z53av-J&iONeqB}d(L&wlWy%UU#swCO7HvbmdgP^tEuT8CVq#|%FEceDfslDExW;N~ zYF8dOENxZT6h(L9VSl`(iPm0sHvUY419F8(dQW5B4FjTQixDU0wyap&N5yTcSq8O# zTF+&G{E5Yxk7zifRd#hf9Ud-p3F`T3V8Shi&H+7(#3GdAYmP{O!$sM6e`ILz+)MQCM z|9SP!9sLQ8KVw4Wk78ns!^6d)v&GPegEu@9p6@#Oto6ZlrmatgYA@LEJ7ubEAA>Ak zgNlfym&N5M|7z-SZXy^+H?U_SA1HMRFM_V?3@#0ytGR9Dc%F103 zoEM)zH*_1j8Px9R>C>lE-jgkxpE8>BuFI$~-BjEpS<2!R!K)rek4tKGp1?nr6MEF} z)cXZL7b})LzohlbE>`oBwwBh6CA-Z)&)|i}^ANkZr&t`AbYfa8W^7maJ=f%4kXqb_ zjK^QY_2dcV2psKL)?zszkBzB*DoC%9W?$Utu+4xuK^`Rs8B;4s-@@y;aw5vDmX#K232Hj zZQ8Uc`mm7<9ij4qy9s{z{o}*IZ+5~e0zHlC+w^VxHM9$eeXa!QRJ$GVjB-)>N!|GI zXCJ3GKm?W}S+Q8wba^j|UPw zsioMUQDT{x0itruK&oIUwpkH8Z8`rNtg#1gw_=!lLyRZ-)z5^URqeDBVTj`4O#cqCIHj793}U zdV|%;2=o$&XwQ*T?L>GYnk)~VA|V*Po1ZUR%bwef@6Z3AV`|!$K@E+$TM_7y<8K@ZHpHUbg)m*A+&gM$7M zv{JRr;tyc_QSM1GvFq&W_NA1Qz}2EXM*H8jwzr%d!_eANp$J41Q#x_`A%;~X1NRq$ z&d`tJACKBTCjWZp#KTupmlPc={I+wLkG2iFf8w!U;RSqlR2(hynwda%vjAI(W_cGU zl)aY>vt+1I_7z{5IcN_!<>ptZ(KYjHE5vrmqhTp8>!Lzvk|?c_iXn56pnz(R42w$q zMXJ-XO_zSBfL4rk)84MDJjgk>6|=8YUT?TEO(DvhM(*5sKlkoiRuEkqdazRCXa{#GoXD%6_*ne@6ga++W2J5s;2)Ns&tQq({5=P zV|tjvXCAm<8&!5u9+dm2O~scR6lG!i*uSF zA>KlqHtTS-rbE<#d<;a$Mrso#a<8$G28uoz^q`1#L|C+cK)`{YQy1YGktI`2Xe%f* zjV60UvO$VSWDsnEMLK{1ogTYt@9cW8?Zt>G*@$_b0q_q6q~kzBobVaYBsNrnk{b28jbF{t4(Lr`!ra zW+@|l!fIbRR;y!$?TM}O@yEffL`mqPtV=Brt!b}6qPt+Q=sjHN?V_R|?mg1^HI1)P z_D}Y0Dm^iiF|m`>grwgsci%LgZzQ_cA~tr>EL0i*9Vqn*F3I1w->@{FTu3 zJFRJ-k53O4@+DLnLI6(j)1%g!1xwctEOUn=d6;!+IS*vbz>cV~XA%%@aCdDJ?KvsV)_h#XE#fAf0T<}UBH3Sw zI!a8NH244sb5k5zm9UJ2>J)ACryXVxguLw|Dbqf{H$qeU>0HaY!yqPS!PiKPn8NK5 zj~*PE$S@Ky3e16aKXIa4qV7Eo&uK(1K~va#dOVsymaec9ZJWE`x;iSa3g7QA*_KZn z2ZAe8`;)|H^7Q1~A-zkHC}xPVc2nb@#oH3)?@tpSq;M%EN`%wd&Jsirf6L=QP>X(S zxL!5-Pd>Q4TW{rsog6aN&Ykb`^<1JeB+TT0-uFT3=L9i^r)K6clLn zk&}CaEo3HV7JiT;f)3t5yuxh|s`?k5UxTrUExXsa)iYE4+jia1tf5oVYh1W!k%y9= zxXXtwm?3Y|-k5BO>OEz#M)T$URo3;%tbt&F04`6r6`;p=6EEnyfn-Be8OG7(oOD{$ zi`X#DO-eKk^Uq)|35XA7lzH`N=6p<)LXjr5M>~zz|^0o z1!lk_PbZ`QynoN0Z8!s#nwUIRJcw>gj6$Qy)Z`#t#W+u{rV!=LWFZUL2jJgZpmHrL za|X-(ijE%5tu>1JIw+)xtN6y`xmW-*3(q3Klk`Y%6SXA`R(DorM+wFk?oTV71q*_F zV-}AP3bo|lRW~x0WD5?pbLWGEvoGI2ZKiv#f5fF1f>-?`PMtW@R=M>AiP&~Hydx$= z*UC_kP#qmu+RzjQCY;W)s!$Z$+W-6tF*4y$CWX3<$i4tks()b)uq((kNjfMho|C~= z|4D7=Ru&q!9V?-g*NRwzP_P#_Cx7aBnnDiMIn*NX4g0QN3~XLd|Ni5nkKwwF63t3c zF0!MoL{N-qVFo@RR*_xZmw}L-N+N~cjttmO*G&dl-oDo6Z_(|<38oiaKcH>Cs&csnXcYGhV)wXI4rb5Ys@P#_Ddn zYVQpfaZx7r!Xqel1Og}tM3$l)<9~3<-Hwe`RLr0=CH%52MGJ%lNt-9IYc`@T3MRz+xKo{4co6Xt41oJOG ztpr7)sO8ArW_x|e2t#49)+>oz4O1=!MkOVopu)Z)oBbaHtwK&Mir?}kBQ{Zf=5h*M z;d>BTUmR&nRF(lLbWKc5+>*;0;K*u)mP*WJfnLgjD}I2IK#+wuZ%&^)iJum6eEhbk zY6;b2RF$|C!ni<&N=u1o9RUFT;wr$f{9DgSrlD3s<-yESaRGD}FCO5wQpBx`Z2%3I zcopnAK6w$5@x+w1fbb`lx<7+65hK6@%?eXS)oJtRmo5GKN`QM2k1u%*q>l1UghXJ% z5-J{H$;Rx_J4?t75b6sv7rkL7NX40`b>Rr1Wo1i5Wo0n(#<_DdKW>LihxYE4 zSL0`$dXuXf^r#&3EUEiATa38M&~EspogjM!gIv>LR8lM{8{EVw1`0hW> zh>xWkCdj9ATxStq#OBi(z^fHr4}gU(kMK(!@VqD)yQz3W-^p7fd<$S8gC4E+TZ1fe&biRSJ4AjlIBh2N6b7E#+AEk~ep z)vx-mtNe{a|21VhCsYH5eaiR|+ih(R=q4H5gGxaZLPz?Ab7cU2F(I5QD3DRx+oSy~ zpK()1HcJ}*-AE5z4#%_CQfNP^qa-3x5FRM__zn`9VBnTM-OPzg*jpz_9StgH+<^@z zlz5_G<^Rh1$F~PJq9wr6KP-%Hhi7go+{kGMav3_K4|0^>KnfeX@8gTDU3-3u z75D#3;oQG>-hU4thx*?4d#5kDfz~@ONYev&P^!mZ2PntrNg+QE1JfbMeS_FSO5%;b zgd-FOV$Wu=4&S*@%_T_au@FK_#25nnDx9?v$>$eIGUUL{3+tLB>`Ve!rlgQeqgiAN zx?uARNqzeRGbUH@dKs4=aH+3RttUPq7gBm_lIhbtjCwKoP)-M+dKAq?oC13R54U8A z+oc^_wp_Sk_V4F!{&%FNyJf2{z{tnJqM-O*qYRWezx~+Z!@7MQc91aGVm5gbR1!tA zKQd@exQ(D;GvZDutvEP$2oUOtOV%`h53onDKXoB=i=Js(nBGm!9EsRZVe3#CQ7*NR zu*}CfH`pNo5`W6VlSlw93DAvuR6jNLGmnU1H7=Y!p9G4S@$Df++W(JsBMBM4@|<`F zv6<0!oAhqp4gdW|%B~Ou1U^^xU0B5Bt|PVa5~O+J!k1+t=tO9>InqkiEw|F^F! zA30Foidb(xS^f6SA&+40}wKbPV;vY?O|1s+H z{l}-%sgqDS@Jm;#@Z&%K_uo&4=s*zW|NB?rT%iT{-@h(+{{PL&Lq+j$xElPi}aZ1PNcg=R?1z+s1y;>Bn^?>0?v>q zfADdQ8Yfmt@4uxb1FzeE9oFm(%11oPeT*rnWi!R^wqm$NYI|YGfJBs%2%LbPP)3~Q zD3ik~AM`%Q$9;z~yjkO*6=4X5$WBIl*HH?B)u8a~NCi8ZGw(a)5hsdZE&56|t#~@5 z+oy{S^cLoz+O~QnQ5iTk;L{}%;YmZTy&rEf-or@Vh0Gne|(7C+iC!hm|^7R|I! zZ8BVI6I)=0VZxF+Ysh+A!z)lt{L}$7phd>M#U}vxn5>cNeI029 zQ_zlaiVE}PM*w=_Qw1QM;{EH>QBpsd`Byu`UL73N+xuJY1bP8xj76M$Sd<0}v5JiG zI(B5?&!I_qL#Jk$MPg6dmN`2%#Wb7Tw3uuX_SleMve<<9EH^n3^jv6cU;Irus3p&F zXNl0+3!J5{&JKHRWmw_z6_y2$qpIqigaMr0baaTLYHCxXqqrh`#(nroXq@&DUz}(j zY3XH9YH=luBkN<4{)SeUnk}CD|F%!<2*Cq(5*&E$ki7t9bB8?IF&X<$^r@}zP<-(y zbu4qz)OX*z-O}_#q>1KAc&mk(h!Yjq{pMkdw@cgos|Ao5{u+Tv<(J-l(Hsf$))Y5O z)O9OF_bY~oNyJ30EtIpHTt!TF;mV015hcZn9M>^FdLiazGrhYe-r?|@pbPjanl~U` zW+jPGaPR4yud7zC4&n9vT{1=#L!OwXIP?ILLA#y_4)%petU>J7)MLe+J$NuLXj{ss zbDV33={Y{^@^EDJJ=fuXL-2YVZuv)uh-`Yz|B_coBn)`#&({-LYspF?%6SBt65?@O zlh^)R8L%`g-f7pa*We)B6v1gA&7O8A5!srA^(B!Y>=$S7m!_vTs=xG&RoVUS)z0I0 zy}KBn`_V71o8yj%ZjMI{_VyoLtd}rL!9cs{LP}(!W#(T+CSBu79rCsXZtIU&;tGS-jjz}@f9_uNEjAq<# zxQa}4lB_IAwih`wtYpa-q~V^&kMHKuh3Py`x~?GeWMyS}&RxN)L?A!Kgu+ks%6uG3 z0O^V+v9aEK+~qjM#h^tzhC&VlX1ZN1pms_tVGc*M5;F5}H;E|$bHJWkz?ihXM@$Ea zx7ohEl^7T(T;CEJ1=us6>g>U^OYeCLOj>5ubyQ#?txPl<4>vA~2ZSMiNaOTgS51VAn*h{vlJC7fqq{902 z-ChK=K_L;18VvX)SmJ0yKZ~@YCr?yz;!3hMtj%k)EU$_3zPR7RR2C3ng=;zaxDsV6z2{ny8gUV!=GE7nfFPVIhn*{q%Pt znAwFYTs$K74ocR?9K=KDi9pT0NCOdLj;O`Y`)iT}Nv?$OaEkG5{EZWVft}^{m7;wT z3D+dL%!Ir5>D5$U)}M+GpHpjyf>J&_ypE~DPBIp|E9mX#Q6^%>mICjb|0jAp==UrF zB=Cf%%&RiGlbh>CO!wW>OM}1+ak+?)X&hC{?d`sNOjtjmH=Df{XqNEC!xZF44=3;MWq2v_mE&NBZev?sar>GB9x-o(=4KnUCeY4Ls5zok0Q7c z6DQefn8>+rtF@u|UH*{eAZ`y!B_0J71lG6A9OLh=5>9yWIEZ{I_H2^NSklu(Sxx#x zmGNISYSckm;RU7hU!FX9Qe=f?=Ofm0D5HdlPM*#z>{$RE3hV@+B}@i6!p_%?DG|U( zJ_hHX6=$dd6~N1=rA zzGvs?3o9uRTim+onYTvZ{6<9}A+|7}R$j!6L;Gqc0R!>ZCiK3qzX_TCPGl4JIfq0V zEV=7Y#O-^II%E=UST%a_+1<5{c7ce6nLKfq5cIv;VIgebVum#J;Yfvs_#-N@;*jIG z@C6zd0#-uIq8ff0Tv|E3efJSxawmzI=3>T#kWlgV&=K9ROVV#o4R=b=V=jd_1930I zML50tX)VLey!||k#x7eUrMLTRvA%cGmocmd&So7=s+j$&{W#<^DRUNhavjRUw-u-5 zUJP;)6pNFS?_`^ht(9!22>zE;??)+;{k^-enqR9eKJqj8TFAdHqBBaRPxMo)~ zh&M0gY{wj=BbOzTo3V~q6?qmdt>$;d1Uc5>^vt^JY-rgjzU~7_T1e>oi4CD0i;}H} z6c*+dn3TJG^>1`EG~1E8(aOrdQq8O|R4sNzS{@~Z$PNYU-s9FI!`J;DfHXtbEqFLY z*r=>*_{GMdZOu1C8_p+Ihnu3pNlGH|h> z>Z2(;V(~P4&+~RQZ#g4vV1X!v*0cPs3@__v@BQKDJTN5f-V=8Znso#jV{8M+L4?kJ zjbA%=m{k$nwTAE(--UXbNh^E|qwZgASD%Z*QeoWeIdeWG!m;-tnNouKlZ2&^z_~IEBfc=c6Dy3nUm5Z-&c$o5C;tBc6TK+e_};G zXeWbwi7CcBMSfs#1)N+!fDMH$4aHt~r~&Z%O!?BGQH?j4n!)-H=4Oh)5A4gbkym*f z7gehJ8~w@Q(=aOezR2DzpU6EhlV#)TKF0JkF;y3PTB*~PG&C~6y*^b9)XX=Gk<>ib9E2*W5b!ijf1 zKozGSW2#zupgb4Zv>2=-W+xKn$zoXt;+)j&2}+MFjwTVRE}{djU*~!7HC0&l7vIcU zI#H*w{lJn|*2S+3&yR)J*H^6vO2bI1(i*+o*#=*tU!pFZ_|`mIf~a+owBEs@+{~ai5W#6n6@m zQ<%o{?wyvY>5FaEkb5K8PK^v5rfN4eOtnljsjl{EI^W_aF21{W1$HI^htMe8=agIV zTEAWMq2_G)_~K!Naxk93DAOQB%C6-mSFB(HWVc?uE_{1Nb(K%9z=buc4lkFdIS23w zwNH(4KYaL}zPTqHS(tl!*)bPYj!`F-(ncS5ciw1-%*(qbFZ6W$4O<;Uj*MCCxDkfY zy?eV4dy=VWKk_%-U}VYvH0Riu^+dq z;qZGJ?+QsF&>DJsSlJVPMj5OxD7=- zG`TMw$C}SWzYk%Tg1SX1bMLXsa3r3gYz6>@UcBF=%`fJn605asfxjS=B8L?6`N%jR zv_mLevyXIDE*?R&Cb(^i>kN*p7s>WwbiJ5riFYRO%w%W7-$Yd)AL|vChYok~*=bUx zfn4i&F;GrM#%IF2rcI82KlmI<7gQGB+pKx#!Gq%>IFamlDk1NYaqkV9YIU_gatKg_ zihLyu3kJWcpVeG+UTJ2(#F^FtyiZICpsZcZXc#v+I=^XrP&%X`Q>XgFrQUMM9EVFq zWMKGSb23YtIFfoncqB0=^Qu(S`%2nBFS}=Taoy(43lZ~h%i&f%cp8MGOvNnkVpE_` za__IH7b#3pRtY5xsDwx-ME0WLGq1wfT$y7Cc@=7>GKf#!>j+g!d9-)lMW=+`eihr* z2&_$~ks%{dEA(NP{{59?(m4F%Z)wUIdt1uMPuFjZebH2z@4&MsI zpJ+5V1|N`!LK}T(R}-*Cg=)RTeV)YSoqMXoflnz5Ts= z3P!8%MKzX&ZY9D)hrgQyJdZ(9X-Q_nuRZn_Br!-(unK32Zo=9Hq&EQz85vFI_Ht4xaz`;G>#Y}(IJ4L5%(NdVw>OF%OJ+om%l1T z>@j;Gmm-+L@Yc(h%afE6e%!aTvb3K&q6cHg*?9+l}cxx_2KkfA@hd zu_-*ieLFRXHiMs4fCP!j9J=)bt(G{LG5$1kp7s6&n*b`4Z+dEJN6*QNqkQKrR*4k( zi*^ye!!#Ryof!B2`8w(x?-9Ch16<HgFuX5q*6p6Uz;*|WKe`4Fr=hU$<@! zx_yWcAWor(;H6Lc8MM5_@N5Fd`}0_i1J^7rJ_9}`^7%wz_vyREohMID(UtrkmpNHE zX_C|~j4mP@n0@XUdGKi8gL(88E#HZ*h&psO_`&+(%LaLybo+M!fDr`!_jqSWo+uK?`O&O<55b! z6H^wVyGS0apOBrlY15_+D2bp1jPi&{6Eh9i=OL3rzdae*XdrdGA5;C264v;fcw{AD|0qDI z5cV0G4}mh+@oOq8cB}xlc3mI=(@p&c&io-N1gaNx+g+Rncpb-cvBLA50HiQZv}8tI zc%JIy$zvInepuxetv2k+BmFGdQA?+7+45zh?B7eSOKi)4g{LfBCPz8{5G8r}Y360m zd)s=aE6s*pl8yP7hKY?o!KDg;N7wg2myUi3){4-tvV zJfdR(0n0ZZ2!=PLk2=Ht^#G{1)Q*Q=^!uO(Vxps{yIDx@D0`54Fi)(E{Vtt~lCsod z@8kS@50DRKdQh|qf*AtaKydGDx7nc_O)#qDd}<-&b6_lc=&z}~J9Bwkq*Hxe!(GXA z)pLu3XCM?g1$vWQ>ytC%kSm!uf&~at+e{Md?9ex$9!?ehd-h0~ME~$D>zCqx!iWdh zwNsz-SFL{y257(?le(j(ee>Q_qh@C&F4PV~^MlE?=kF{du3IN-Q1Zcl{@l~o)K~Jj zd^?djg8hv&jHWTZzpeV=`Ux}x@gSk82zg%o)lxVx<0)?_0y+1B>BK-Tv{hq^EPV_T zc~f%IPl=f?pFith)crv@fVjq;^vtiLQk& zJ6lm@hM1%!2HdfDDLchfM6cnC)`IC0tE2F{McX!QnET#pH_|ByQxacu4@In#@S-tH zcA5Ri?-UylBR-tm`VpUyGcoX>ChYCyOP83Q)KS@R0T1BR@%J%G`~M%ia{SOIdehP_ ziu`h(I#WN1^Gw`XfYn%tRPkk_kU2+b1pFMtvtNMNZbI))RA~moR+BLy!dR(rR)O;( zl@p>(b}emS1}cYeD&C}SL55LCgIg=>&5SCt6xmaki+45o{P(swuw-$Ck%6v*!>{ok zerL{f>)$^p+*b3<`l9mfL}~i+4MU48DLlF>F8LVoiQK7N*%iBlLkz)+#Cy#0GyK*X z6Ibmphw{23Jx3oQO@{~0v0VB8Ij{y94ci^N{6;1(IbMCmjUAg%g8$0hMs4EwVaVqk z2hd^wZJgYqKLaEbI#Pz*&WI|~qnibaKE@dk;{q(OpMoEb1qfESYDt5V2nn|s=8L#$ zu8xif>veH)DK$eB!r3w3(z2pM*2N-AO0!M`jD4UGMsyiO>I`-UuaTPu{r6|JQ+cnQ zx{B38`KGL14Hiiyt;%plrcpkeBFm^P?$Nfv9Z_zG%nnfG@M(KmP!8!b=Zz%mi=RWM zpns+*xeJWjdN*=#L@JWk+($q~Um`#_f@af_Q6RTD3++MLT3{x{bIiS3a=yXO@&`7!}X{?;Bh5L!Zn+^(iV}JDeH6 zt}{pf?c(BJzGWP;!j2{~yD?O>9WZX3CqVCb=3w^?TikO-@*lhjjDg?f?D}t&a|AtL zOQHymzY6~MO$I&rArTT*u4dkZ*6~!MxXLdSc|xKIx%6p+ps&Y!zQ2zF!)gk=cEcQk~w<^KyPCEWdx= zq|p57w&vuV+x^%w@kF}?hh&d;^P5pu`lX@syTtR4Bjar2ogy58Mjw`MPwM9-j^^4^ zlTEj15Z?W;?r{D0}}~RJ?~&JW)@AF9bv6*2`ya964@WSKJCn z^MhUmA2NMkRkaY!Rovyvxz&qHREIALybWX2zK7!bog>68xT|HoVDE8o4)~?p5b&(Z z_vjGBxlXW>!V@7gL^;8=gr5{FA~l6fmoDjux#2L}wr)bL0UXzTv`KgNo>T?`vEw8C zSqY~mG?U6|7eRi5LH-@v?63G&3m`aQI`#1+DDdN8mMl*>k=6JXxkJYaK%i{cN>JZB z7>|8}6cXa4_(HKdo0W{?_md~64<`_wEqrpI4&6sxNOKK2dh}>*8B7?XcNTJj2VHLx zRUL4<;40;@XNVJAxXjpK0jzL0q}TrG!Nt1mHv-U~GBu~wmYx83##gL-btGvPShi-syjrxF+@F?> zF;fGYfrs1676!bMdViAEjT*~m-b2iKs9syAY@~2Fi1CQ)M&YUuwSlbhd5G9C$z&(e zaAaFPg)dWx+DJ6~w-|cc(^~`RVojn?qN@qfi}?0P2UXw+fB%l@^nlNprpF!5* z6)#n~?fkiO$4T)=vLXQ;Tm}E9Ehl`8_wT!N##)%DFX2m5X*{7cW(R0w%<(>XIcTb{nrsI}(UT+5X8n>}?R^IZvnE^@f{@lDZ+5TCX zPti|h=jZVT8$x%4rmp=EIdT82S!Fwy#zrg5Kbf%hNfp~tlJm<{&#Ho~0;gYgvqv}j zYBtuq-m~!3r|(u%w@W+!0Y_B1AC|45^U(Rvr8ku&LNmYHMKGk>Q4 zj^7#MUG0(;)bE|+7NvT#81GZdol+}r-T5TDVncv<2<%jnC(5K_dLd*0+$gs1Q6z_r zeF>~s7#<1~$etmpWS(0Iy&MEfSb`tk_*183Q4$nJ3C@nQN*GoZeU*O#yS?41HUDUu~&c&MUVo#nO*TXxcUFkRy- z%V=2Gv6vS=PnEEEO?>AA6LqzDovj1|2W7a_uH-~(yzje1H#8oOg`3T*XNA4N}09x zzhhd>+8OZ5_92J%u4|b{PyWdwNK&qcz`439`t0B zN7KEBM>K&-oo<88s`M@il>leI=D)<~VJg^y+-=Nx5V2d<9TJ}y=xyz`N_Ul{m1}9$ z)8x|@<1)X=eO=NQ)4&YMbDGkWM!oTk+3v% zm#Rs0&qR~xQ?oM}9SzUU*Y!H#0sa92 zK7Y0(U`yM}4HEGJxw-w$2fBNBgwuG__93yqLuZ#m!|9!3n-E3Ihydyc90VC%QX>9{ zZUFgK{tjVl6gmlqtiTsXuR(f<_+PpRKxy&W7~R?=5lK5pNHDa!Q&dvPt&v_?^EfVh z>GBmB#b@>nUt}|Q#38*OI~FaMJ$3q!Z=6j`(Xy-BrKTfC#`c1UoE?4s_#UaS&y~F% zCiMA}=9jI|e?{-Y3xTiRr0gg;S9tqi>kg|oTkTDXYu8E9DC=u&)UrQg{=RSd$e_{L zQ>J`mXc<#O?LOGDJ^8Nv;ULE?c=}9Ty`Mt>&jGy%x(v2^Z(NC}=khrug{!xAO7fFq zD6YBH_42c?EIn=9rEfpCO}fkWX6(H*HsNk!yn6>Z{m@+{n*+SIC`ozE80L@_=@Wf2 zoa9OhikIIX>quIP?b@=a-wuB)qZh75KF-ORZ|$*ybLC)1xfXIVz7TZT&yQt!^bZG5 z%uXbtQs5EP-FhgPO0OA4%?f?U-WQTQuvfo+F*;MTZr{Fy?Y&LMUT0ONDO2x2Y+{L! zi`tQr@?HNi!qwri8&NND1AljrUPFD3;l`~*42 z`eV4thSLT~uST0`mr0w16s_+y*;dWbIUpx3Jgpzc zFAh~>1GiH9qB2EVzV+F%;r$;*zIi8W(>X{rCsO{#p~H*L+P^IBSpK5xrrC=1Rp!IT zIu^=4HCDIsvX)hP<8`o8gz5F}?_@`1oS)luZ$`#?v+zkS@(r$&7W6I%Et=y{I_$*_ z*KI|L9V;I6(>EU+wmhx;iEHWe9a~tB$3`!EaKm<_WQ^&Jyi0P@`X8lFH>gjVb#z3U z{&GvjoU4_uU+IS@1=a4(OzbOH5`DB=b$>_orI$B!kSu6(?cw=(=BZT$^JASpG&T;e ze)jA^YEt8T6*F0-xV29<@4af75Q`(gAm*Is=zUaWon>TCG3ofVUHYizs|l%@wsKVNBK)@%2E$9Wf@-q?3k z>WNLv(jL*X=dbc|l^)cj>e9Y?q=s90Mf>#cub=0ZBp(Zt8P;-9+8(9m=c1psjt*no z^{qQZ3R(s4DTyOFun!v^hO`y}u9}SB>|m<3>V(C{78g+L1O z`2F21VSd2#dk>;V45<}t9iCWGiIG;_m4`p<1Zs@&em!?&zo!G8@hY+j7 z@!3hY9S>Vgz2vE{5k6wAu3KQVgJPM{=cUu#w@#ewR5~GiOi)JL-oY(R+pJvtU|N#q zC`Gr}GN=0$_oBX6ys%v(`{`#)+p}49{Vrd4zBj+vsm(MKhu)6rKes;kJwUR_?@HLb z=waC@aqZ$d*01_&ex}l@KdIl(g`FRFtzczJZCc>ZiCR-Sg?T$Els^6XR()G($7PKr zGdPJxS6q2rci^2)|N5;_w?xxa^TT1I-Zag7+#J@5V!#X9tSJIKFVR=hq;XR zGDx};eY9&=8Ljk}HuRU6|L)VJRzY5EG_D%+-$8X-g1%{m=WqS^&Dgnjz3Qv$ zPMNivrhMs;+&Vqr(iUga#FL&W*ApzWhpc}4?%A%_E3Z^c-dW@^UH-Z5qsJ#NU09#G ztE3}Z?+cwM{BE>An7qFDLtT#e}sTfYF;e&NgV6ibpXS5>R;N?qCWmUF-?-LDy! zqno}AoV|YgkhXaaUl%+{ZJ4@dh~bBxpC>!_+I{=IqiK?S`k~G*jlbPlYI!O)cXPG5 zwr^EQ*4zb)-i1#ed|_Fzva6E6Zl0>ag}o~l4_Gx$S7Q1tZF-7!(OA3Lza}>K%2MD7 zp$Ilafq`SJjr8N7CAH`yXg@Kx&GQ|BQpN&!2+`wyD959;8OlU!aI8t8a~X$qMK8O~ zdRSua8iN@62_aZvgw>s!-VPRCX%Ya^<29dWgcpp%mehNa)m=Jz8q`%}fMzEG zoXre>PYZhiVufegP>`~Se#liTh`Ku0 zbCBR|K~{w$uJi>pzZiHe#zC{)WItXbA&Q4}?}Iw87M-#1=a>2;9=mmGAMNNkm`66Y zc=dTVpiSx8#rR~TxnfXr_LY_SM^$1cKb_pA`>!v)M(fv%xHIaALfMsulmp)`Z(r-I z;U(>_`TB`_+E&fd)UD1h18pblu*&_cn{ar(+q>IgGS4Ct4E7l|)YW_Rl2u+?dUa&^ zlMgoSw^!$s*sZ8ttMh7H$4`^o7POu8rvK-rC2|Q*?tf7C`}y(vyx8zOi(v_Nw?c0j zr#h*sFZ=%fcknA2zh3jxU+%U#)!d`+%vzS%q7J@mOQHgR=rkWGEBi3k#Q^;rD6xnOiC< zRV*}rUi@g^x$_5NxE9X4j)H)8btc=8ahh|A^3suu&q~BlBH-RttEPh%p)c!<`2XYf z>)~zuXC#-8x_^J^vo5GF0{R1 z_~T8VXY2yAb7dT_t-DkB^iarw4(1y+A7l&oFl^Y6bsayaj4{i2@+#+C$r<4 z)-3$^{D;29(4D1^!v1o1%ea}@Ceg$_c>450%O0&So21;!$_|?!Jbyvy)zQn6?8`bo zw6SsU`efqXX5Ze{lCcx+Hl8azJpa@N(;VFmuAN7piF^1?Qn_rZ*-(GuWcvuM(4I?1 z8XRmlQnu!>zLs0ZerxYe-g(QT&&}yNCV#egBwhYC;mB$AU8mPtEj`rP-Q>&9XI`e# zsk1Ut9GCiPF1)wnLvfE^PK9l@nafyuk6DzG?V%qa*QaNQZc%Ul+OMTD;RpFwuu+cD z)knqxR(rdEQOhfY)rR&l{$-&T1fCe;9T)G=5E6kcMMFaaT6>}DNhTTt;GkqJj56{- zBD)u|)?nfSL-*_%?OhVVd(8~w1q(Eo{K36lJv1@X2`gV_dhA`hbwMl2j}(YpNzrT3Z<{E(2*id_yz0fF1!|!z|RPS(PULsb(NCj)oZN|z8bB$T4uF^l}VjVa`}e7 z8jh!{U7bDV4V39!xIVp6=66zWJD-Zuew!D4Ta_Xmu_Usaq$tN=xbh_BWwwYx+xN74 zdU8=ruQrqI>xWcNN%QbI(8F-)!)u1-d3Axo-pdtIKB=X>^34ugVdWQ|`!;3QSLMW! zj}5c8ZK%ko3ca!7f|c0MllzoJwtEeqreUiSUO?!y7Es5xV=90dNRy`8rcf$kLVYmh z$NK>v(kTDDmpodeJa+6#jsf2iqX@mBNXWg*>n~m2$sVKb;yShwunXYgkMzX zXVJa}CFSRMMfj7-G~PWH0fV;5z=0)(I}D9ubEE6s+C4sWx)*2aA@c+4s%6d6945Z- z=o`AgYj)qXEuO}MHS!Hd8T)KpXVASmN8`m`*R@>9WkA=VSsYtTK~z0OX{oA>ITjeLVfbje=KNI!S&n0RJg`Kd zQ7O-uQ;-q6C2l`+2BpW(dS6B6zO1K+Z;lxqe zp^?Y>rfxa8aDhpSE`F!yKL54AyT{E%N77E+cGEO^7_7TZZGvT9<(Dp3`r0Q)PEj7y zvx8TbW4`g33e5{vOYeA2Z2Q7yl>VOg-oL$-8b5sYZB{4LMEWu)W#dM_@_NpwiUo}= z(2Nn|x19OcuIozlL4Oft60cK=@K&T&N4TxZKM}AM-_Lwzs-wP0$Lx@=-&%9zY<3H# zvf(~U&&ykQZ{=D%_K0GbA4PTHi752R4tU8tn?EEP;YCYeAdw}m1bYpv+7T5YnAS|+FM0El`FU*hlXFrF?G;{aLUk%Uic76nF425&B&w%A+U&F}c` z1HK!24*d}0-By}Ce%3s%<+oq>-yPns%S_U7J>%4FX5_jZ`j}NVW6)sLEpKi5Y$)uV zayW0!hOnTlM=#u-%Nci&#Js$IKR){Twz_-izfVYSIy2$CLsIJrmfP~ zPuX$E&E3iJ&Q@p3C5dgQzr40Lt%_7(yPOd+$os2Q@J*|!-?qe#O*=cSB;iV!uECs+ z?Yj?99%C3gs!z_KnZu`=mCE-FeRZ((^Zc`h5zjuHMyHEI zfNgZ(;BC)BooxD}0UC$H_5%|=7Fp;yKHFMZS*c1}MH3eS;|vb0o@iibHig)9^jg8F z{s>c+K`3}G^%&xDRaH4M`KZ@Wm<~~{t*LlG4vY<1J9kf8Id1PS=QwsKgg`@mnuftkc=2bk=M$^HKU4uJjd}E_@XSt}=_vUte zardETn9HWndC{L^L-HeEtUh_t|AvG6i5*wgPwWkQka?heY5DW?dq4Fbgq^1XlN#vh zIqK;pxhYX0g(FrhJp40uU(?p%qx_?!_I#dFHEUmmbV1|eC_^8ub$MH=BKtqIsk!*{ zivBZMxwHG-Ck|Ko-6iPs?U=!HRI7K6UN)|X9~`_c@6EP?pmXonG(P?(>2LHPJEi_!K?PqT&ooD z)T^>fKlxi9TDIL_SXMr&bA6b9O3N!JXHB*#RhCT5IazitNczb>>upM<8aI-UtzPx( zOYo5m1I;s5ha7S{dT02TVSdt03$|*v|2e)SduQb01M0)o4=>Pp{cYlkg}>`7io*0F z*0VzAj0wCGF~et9-Q{K$%=#+0?-07Qx=8RM&o3N+PEb9NF#pdm{Vd>U1! zlom6cqP#ppN7A3{H@~Sb9u1+G>GW$pU(|uGLg!s%1U-YN-+Lv zX*Svpa`BGPtcEDZxA8r5hI2Ow3<4QeXg0`%F^e|2V1{{Pj|;~F4s)0p0~ubdyn}Bxjt$Jiaivh z_5M2Cap0g2H67v>8u)*iTs58YzHw)RszcR?M8)@&c6rwiP25*3z4~R9t&Yjm!yzAL zCD@!2+-1ou>p!hfttDID|5SM1EHScU;G})yzB-4^iIR?3tmm?FMVf;_OsiIJO-KKh zS#InTr5gndH_O+pW1Fzb$~dKySIdKps<&o+ZD_qV#^l!P4dYqA%5M@Hv$OAiu(j0Z z#5|baa5!SV(Sz8^aP8zDcP{pNmN4b(W9yaa@2kg+Q=IwJLvu-X)sr9kQPJH`ieb-GqKlMDkc1QvGLK~7`&&9ZCH$vnDf$>W=f-BFSbmH>5vhSK zqaVy!y{M(8JXdhYa1NcW=nT;)fxQQk5>}Av zS;bWcR}vM3qe8ki$x7z-P2(4;>9J_ z!$$1yqS{?XMytLyzeHbUeCrl5BVDSRUM|V}Q9WPP)#%2PLccYQL49m4#oY{hR`C1A z5tRbX;fuC4WX#I!^wBT+)8Ojc$Nd{De^fc>u?&9d>(%{v-LLPFXSJ&;U4Iw!k)0TN zsXpQ7+~2WH&MpOR3+5%pJ6Ab1-(6K3(o1(+Rr>rsWEf>ItdlS*3VS7RXYHs=mE{od zNIuAIP#5&{1(&8q0SK~}ssAkYe%d`_%=?87pH!AFu>x2=wvG1sbw{MIdFyyrLlTpDlY}#H|X&RAs zt84Rzn{nvLiLj)hL5aWJN}r#U=_)hb-nI6dRnhpgTiwLp+c@`ciK}O<_VeO|9l7rt zI%|pR%Ac7zCXOsRzay;pA62K>wn&D~Fc0c-!!dp)zPqgK9DI8#J_ZigpVnbupi-LN zv~?e5=}l`ob*@<%dpqj5ki{M<^XmQ}KYZMSHB(xDbD7tEJum;Z^4!Vku5@4nT#TBn z8vnc}Z#*@~B=q6?ogIM+O>1}hh)>e|ahm^e`)dS-%L0@xup0I9NBMCtc3H%C1XBt6 z|DT_}gZSfLac=VYVdhP8i6#NB;`qY)g_aXdq9>)@`p*~MZ#Q^ELTc;w-H&&V;+h?q z9U6@8=l{{O-tMDi{VWzk4wVY7QRA+o_TQDYOvF^C#l)Fywx!j=c5&oLc4F98$XPen=cf;gN6s5S&lI4 zL`x5E^MADfn+^V|dHn3U?MSeOTaO+or)k-j;Zzs3clIeIc){ej_rLviqIM%GaVVgB zz5EgJ6-%b0j-}3eNVHf(=hA?|f71QEs;x^-#9bDDymiLO`t}2FkHhVpgQV`f_fd=}fIXZ8n>&7>jI6 zNc1dYR%u@c!bI25s>EL+=wNp__<{oU#}5pK zk4Rjj)93l6!<`a4<@B|>pYuph=4ek#XYWf!o9<5P)4r?y#8DNt4<64L7iJRQpuN`m z#01N1WgoR!ZAUKr{^y;3zV)2&Z41+8#yjJ5i- zc0Ish9L6cmYJ#y2_j?s)O62dC6 zfpdk#h)E*o3}0E>+D;TYU#4IWQ+oOMahaBZK@Sm&hDGTnpAdMlm!|Vng2tX-Y>p_a z>>>Mm=%7buuV3#C&L}eC!5v2?SCyByNM za*}E2c$rD-^W*558&xRmwuMdHUzn(Z5{h(0%p|v|NgiOO5e5)uZ7k~W$X zt|THIfyYS3>^YN_xF|Iw<7F@&p*-VgG>BPeARy_wK0m^8{KF3N4R6~yaE zOC}?{J*TH2=DQHoAf~mFQ1)QUW)b9y>*yxOwL~H^AlSVU9Ug^VNkN5nYray-e)ceo zihVE4yCQzJ>8DGRE2il_fKIPX?g0#b(|m_QWAe5S9a(Gxl6T<1heB$eO3gSO@`uC> z3duAvECq^?FVd20af`k3A+s%}-MXg89bi!)v6n~)+8)Hf6Iz7b2Wu=yK*uG;P@1YL zvLSk`4mY9k5s@+6QXey;CuZ2F8c;;cX6Ha!aZrqVhUSQV{KP|#Dad?dG^dw)yOL(r3=>G=fZ7HsddVxaOQ%RK2$dK)UcP zP>c-m_Wny&L-HE;wIFr@LlHx^7g4s0VgYzpa!*ccx@e$G6zMtuDLCy#f62}&5|ITd zjhZ~TK`d3gn(*Gn=Osp@|q3gPV9&`;X*F zi|H;*nWppA+Ogxx@v*V?@x617ai$>M8MCZKV6TaR!D}hK7WU#X}*6$>5*h0dFJ0MJWU8au67tI}QZHWtN)o z^@U-0e0(=DP`S2R^seB33`Co~#K@?ngk#y2HxL1DSjlFfnLGOV6cIun=Usu}Ldw%x zFj#Ap<*;aZXNzGA#5e2$LY%Q$m!X9WZL&`J-V>bWAuSC-Y0ICUk9eoJ;9ZW9nSE;z zLa}yHmLGv8j;<&wED=+3(3me}jt#O*Asr_MYJk?Vmobx>{ zf~B6&IHzSzVKzuj*WLZLLCX`npppkkAtR6>BDw5ZDc0CgPAjn z-!`vytUnplH>5PKQn_B?{CBk?Qn;d!wVHw+#P-NYJOaFwT6AuoF2j(XQZ3@nRPD#ViYR^Ollcs#}L3 zQwX(vd0#v`A|exC_Jdz`sKi<^D1g;Z(&t&G%5Xw=%bqpJbBoOf^qkwb6N5Uu!R%)l zRNZP8pB>|eq$DT_85yK02)2sFwi+ydF_jsoiMY`OW|&p))!EpKJP&bq+2B_(_Pp-x zQKbj4Hft;_f6CXAF zj>xJE+<|6Gu(0CTZ`pF6L#dCCPaOh7pTPIY9Or;iu0YfM)zs9s5bZ=+!D%i{R`W2A zs0r>$wzjt76k?JWmv(y8nutl2(Uq>n#%J1e?t6&oL1D&zCbxi=g{wiu z+>e)`?^L@koL&c?U$*tMTxo(hl{>QM z(Hi!BlBUJLBG&nBmLy-p13ij}aph@{vfSK7jGE(|F&Vv97;Quqgf*hag`^FlK;e;w znErd&u5NMq&|LT8h|_)a{Dwr$ALiAr;DppPSOR88wk*_9x4=a0J#lSh@tjZ5eow7B z+g3VVb|S~=oBV%V>>_w0{ zZB$Pcd(*J{b@2)l5@kKymQC6Iad%{7s^Eg_tKU=DNc`4*LJtd+V^Q^KI|{ zwnhazK(R4EK(Vk80~?!=5)c>+98j?n127O{1OtnZ1~C8&M6pI4lTuI+72{S!QG@}J z-)rIQv(Gtmet$pD^<2m6+B35ay!poZto5#yxB7iAzrGlX_v~(VqRNx@Q@oVqxyeGa zhNTy5bmy>R2vx3kpC#sYajiSaIXT~#P4CSU`#^ikahQq;@-o#_J7!&A3xoH$Sz)Yr zUfTRQ&vM#*E}41spsro(sP~>VFZ0`QH$MFq1nQ1Z>=J$&{@wKizi~8oF_n(1;8wO4 z3ysBc>79>v%?DaDlwD;+9cZ)C<@XCTj}%y&?zbB^ZcLZlxS))1Jx7%hQ{E)8p>gw@ zq@i33Nc^EXy1KO#ty{O2<*8Y zSxh_2cW>V|$PJ!TRA6(rt;4{Glxcgp(e%}_GK@m$dTMYO_GGs8T5f*>Zd-co8|&!Q z&?|c%+D?uteQg)LQ5hKrEcMi+c}C*e%AP%V@@xkcJk4S`gHz*S9_|Ys$v(1mSm@$q zeM->SwNj8Xat_EwMn|+?qX5xxQEmfxll4=Q*{!%ta4(r?vIT?+18G)2%&qe4yUk2y zvKNJ>21i(|B|<>YA{JbJVviIc!x8yK4v2I||G z0(X*qkI+pzW>)lBDz&IE=H}+l;d8TwHaJT!2M#DL!iyJ9JQ)Q=XY<_?ofn+I;og}U zgSJz8CcwPUD9K0bslCK*Hbz`7B;c_*1D+2O#yVzxQe158B4tKTjyFm7<}GOU@p$%9 z_Yq(I>@WFHuRMkjOSA!J{p!;9@7|5-u{Ss>J^Q?< zsPV4AZ>4mKsFrJEr^5(qJYz<4n0K3ZZv)?WtJ_~*a^GkRKs-QKSM~wHW8J{x+;m>s zFVUvCO#$lJ7JU;&kkCr6H%HerVVGdkL>;#7s5wR8=VF{{Qu?h+i*00#NB9rx2xCdm zWo?#kQ1G#iSRU9k%j~~AKa7pE-FZ~9Qz0-)Z zsml{1dOp^Q6Y`}lk$v>r67)%(Z;;E?24!l2iA4RVedci}3b3kc2=hfB*{Dq)1@oCJ z4^nTktfaFeSWC_jF1sv8cRb?ECq6uERSQ`r#T0|eAjBdCTd~#YUmIec+bSI^U(|TS zyrE~2o|A%Hz*1cN3-xFbPFPkGw!#Ij^>a3^WuShAZc^Mzh!eWd3^5R;4McG*{vn17 zIk5)~I;-|}6tif^w}_8}KgkYg+;wt(sT3-2SjdRSdDoYyGO;r;-dfu1oq6bUA@kWO zR8}I&N^5-h?)>7tw;A|l=MWkyFKaf(Hs?PiudckZ@+uqnxJi=i?w{0wH2~ma1(NCd~&8hAQv-b-KUL^qYd|Y}nU#;b^o6Oky(X za{@Snry7rlG(0PD>f9m;bm5WP!W4cxY#kc04Ycdr_;D-m66FW|ZFO>XE&1yBALn{=F(S5?zhc+ z-zksU7KR@fbRUmI` z;O1#R<9_9IsrixEa`HcZ=5X!6tw&Yv9^qf|BQnfjg~~kc6!$9Y@=s8v<`-)Ik<+k8 z4NUXDKO!jjd6m_M%2SbpXJ$kNsA-P>o^uBO-or`y@Z znZIU7JW{HJm1~Y1IYO(E|Dv>JWBJ3q-8mO{`|toIO83u6WSnSf zYe!yxFZ&~T-mb8PJaGXnZyNJJmpv0?zNTvm^Pp(TJKLa9quBiqWEBAZRfPiNc6Dr# zYs<4gzx8Y<6WtVlrZchkK`P72Enav<#^h{J zqk*$X@h7`|BLZ{gCGR2*Oj(M>L6VFIOm?cm!S(W=J7)ZRi;LTggumVILhJ-FwmC{)fMW) zzkeDXEK|3!PJk?QeEaO;py8Dt`g6k~?(Y1#4PN6$&!BBv10_;fh9e>22bAW}jqL0) z+NbldVeQ4zNvb%9wn9NmxF9QbBWMbjSMqYigl|%MsDDj=}0uXw6?4%t$KZ_7#fdQ~dXSTi2>=>^i zj-EMzHNUk{*75t3Zhfw~F?;4n-7`fBP;SoVY^q%CUjE*+lU15MPU$n z@?>P*3V)T{nrF26{1ULPG>SI;aQWNN zU2>KwHdyK1pt3e+4Fyy1|(vDnJd(M zp{ztb_VwD$2rNON8fR;BBWR4AH z8L_pJfi`F_gFxqiKzO?TKG0_P%06=5o*C?#;Eka(Rb$#`-X1w>)W&941wG@%9kpuJ zkm*ahE&vh|OhBo0-8x2-;+8bL{m*Zzww!N)BN;L%4a8yTipX2?BWaHm8z8oxL%@G3 zDcOWF0Ho|B1d(oYzz`)@eKR=@iO+<)mue|YN zGQx4L`(Y$YT-LwlCEQw<*-Wv4!8&o7+2232mcjl%|A;&?`~QNU$%sC2!rip(4Cha? zah&MK%4X5&q+9k%bJEhPoV(vlw&UQn|w{u9|pM|3SY0q zx0)Cb{(VjMEG98|q+n=JaB3tLVfRK#8+tl6@x}-QBi{T1j;DmY@F6c-K`M~<89FgH zYZ>-*wRgKXb@8+(J}FHI!*3~j(_E~deeQ15F>cwE;9f==Uy_#3dhmF`IP}W0;>qO+ft`Jb_ZpY^hVvh|dED8q9PUuPetA0+(rv0@rlbJO$_aq| z@zIOQg?dNla^I%xXA3uIG>E!n(fH+LG0rfJ{Fay$B};}mX4!3(YHw}3>&mfKffd2M zUY_SPl{_@3Q|Iih&2H?!+qV8dgBx9n5@uGrnk_VQ%F9aoLYdR><@?j@1^kz|tmTHl z*;y21Kq^XsU(RwwGdPIkFDZF6Nndsd?pk&%qaS1c7|lJmmxROraZRssdgdN?%UBP= z@Pd7C5Sz_-Dicw9Z{WO3a{mP&Q;Hfdc+6p=aUJ^i|Ejv$?_XMg8g?=+YoNt7r@riE z4~~c^vnrd^OE#Lxdhpx*cIroU@AJAlccBC2FXIHCm1^Bs)K5$DZu z)2L5t7{CF;rr(5YEPI^mu%GQsV>CxWr7?6Vr_}18u3n!(jPy)r$`yb_tmXJgQ>`f< ze&B(j@BwDwldmv{vNqm!p>m)_`beHwUIsxASO&zpUiMI$6yN&uPhn07hByhh8<$&( za){{g#t@Z~zQ-;VP5)bk9>o9EgYgmSh%7^I3UfaR%j3gerT6j=-(=|VYU`r`%Q?>3 zO!c6`_|W7YR{{5kyV}BCRmq*N+#-wR$)KWmgRT*P5IS8A=#SCz1u@$;nR-c&`b&n2{DeELL0h~D?s_*Tr}L{RfD{BWp)8BsntIW1rS`?(ikL% zq3}7F6XXI^iJA7KY16jw5|Jh=t1furW7OVoV|GhArov zhYz>cHY*#F72Zk1)XvTi$Za+!-~l4a1tbzu#b8=Hu6x%(gVec)yurp!P9Z1VMjso? zCS{xem-F*G;RO;Hok3Ez&ek@V)&ZcW3nZdkSGGHITt!=~S&$k5*d;F{!Dn$vn|*#* zkUGLY7TN)9`0&*qEr0`-&0Tz2SV#ZxNq^qDwUGu~ZWy^VVWsETMqGE{!iB`)kO+Nd zM*6D-t_#glrSsG9D0wxJ*g#8Iv3oXmhE9MJ(JgYrA?{UqmgGR@nkW=Z|1=?xfh}2t0n`|oRTNisG?0bs zunz&3?qtl!P7Q>4UX3g5cGW3}*lc<6~yyA0bhsj3rR+$XOzcV7tim~D{FE2Z3 z?DR)H-3_ZIBtDrPBkAN%(V_=W)(HrqA-sfxlO5LN1jbcd$;;~q81H4JH;#s%eHQ`Bs{5Wl>frg6 zg~gQMmdd+uaXbXg+qZ8NWzMQXmG;BeTFuWzz~#j8rxP)G^xd()6D5*HQ|0m(Fsgr6 zF08tc!Kf%WS~ue1dCmt>zwNN9ur&uw5apgVsJa~H-lt<@^}so0`ywx0WOQ^Iq8#rM z)K4t{VyH^&gSY~Zov2(PPscy_KHGDh=Wwaf7&)OJ63qp+m(F`8D0&U|#ln67Ul~vm zY7|X4-WPl!<5dU^SwJNm4mmN_?@P~wnf8>GF+#)(ZzeU5-yfI6Q=^1HP0jiK4A z>YHuwcR*ZOT_|%cm6+n#k(jHvtd2n1bNwjPR{m81ORlvTfkQi|PWdfg7YS7}R4Se=V@)7PtzcjCC`#T5J>U+wp_m z{yV7Ha-Lr}x9b8l1ZR)%)6}#sg9lr+v5b0Of68JB36zyfd_GB1wZinb=!_C(vD9Exw);1!qIym6A@@Zp!PM0i^G>9d|)*h-K-a`9zPMNY5TiyzG%s_!vcl3Vg@5Fx=7#oN80Yh%_A(?6 z2hK)SZI~m?;*83yb3<4deN>Y>KbUh5bzKu~R<`|`xQPoYWUD6I1Fd|CzSJ=(oc)vy z(7@altFkNC6sK(AQ8niM>bW(p^32b{R!9U0gAl4^cz8G@7rK%~cz0IESHBriEm3ng zYGps9WPGrYj8SS{AIEZS)_cBHDvjY_T{JV12^|=^8vO)~hZkr5?Zhib*L)lTgi=e9 zxAw~v$GZjW&1nFia2>tHbPEe_o-J8@Nn0iY73SaFz$)a2Xp))7;{hAAiP$zIO}ZKS zYQA7VLTtz`M>z<=K(nggG0h9wYmgWWRTO41f(fpRm1X95x~q=Dbt}rVQ-64~P(oDQ zqa}ZxEx4j>!C`t`YT-g#G)C;R9r*Y)kKHdVN$<5ETm7RdApBd)ZDT~225{`SV1cTv zx;i?{T00wpX=fsYLE7S4vIW-5Fa&kebS6#vl+_IjN!S>}(hZGamKq^bMhtibydoX1 zEUFCZam9^(mPMJWk?)Eb2)c6IGT65MsFMBFx|Q$sx9r=(7ALIv(&9Y3cgFV_IK9@N zJ$v>h+Ne{D3XBueQ?l1*9~r(*gLii1UAyNp5%A95aCVFIG{}sJ@=W~eA|IgfaG#~~bLRBGtnXd+1EdPQSW2Zo^t5TB z`8ut|tJg5xM`Ny)89M$_g^pr2qdBpFQ$v-wbvDMwFAR;aojEpmdSr*WF}|t{LNvKr zJ1je0rnDu$qxoHtiYj+6-RQnNkaJ{eA8B3yaqPB>)JuYriE* z!-4dlPMoBJF_=ge5=f73z&~oo$DBl2cl#Of%YAIpBgDxE1XY!*qYcTzGAC8UTiKGv?3fTKTV1COn zdF*6H8$+LVgQ~gX@Zt7hS`LR?c?xtQx+`II*vGJga@Ivlt3DS~bTY8O57~S%r&wLF z`s>>+-=7ALu8-_tRJRsUA3`svA5{Lb?%#;jXJ!kO!0NQrt!}fTz+2T#IDD5~Q?+{R znZRb7MwDkf;ST2pr$2Un$Z_@Yp8JUl>dQ&J>p6La+s_^FvOG|>DAptzfiF?Gv!m_l zC;7aOb8@2fs#&oE?qXV8%2TX@?j()F2DI9bV(3~rzy$b^#=ka;e`M)1wC!(umVF3J zZ;Id&A4jvJr#*pu1-kV^-G$(!Vf>)7Ggf84s0c$J5YSM)K*O}sPQ7*OFpCf~+d!q; z$5s0{emMDJl7p;PJe$8~LbtU|1NQB6Vvn-PwAPu4WTGU0N>jDEu(T&HJq-gDF>`CE z`+?}zZQPFabw~XT2vhWR^6-bjdz(b>Y}a5=oWtziB5qP z^JQNm!(q3b>579emZy8% zXBV@|QRyq&7`*YC+#_a?q2-bhzROzfqrtIxmf(SdP#StlK>F$tIS08^qmBp zUL~(i4UNt*D@!wbHb0U!)ayqPFGm71Wb}tn))r0+Y$S zgRZ&juwk=Srkp=^{lXhN-~%!~y?p03j;cBllWQMkp7Wvfl0jzf(=U3G_^mbdH}gY0 zjEgww9aXN-X~!bZMXoR&ZW=J6&yv@ZdG-?@mvt5?Cv|GeqsM0`+K638PDzXXmOnIO za!SSE$aZoT43Grf!-o%hX}z{_s+c?Flo{u*NH!%$@xD=6d+ew0dksl{lyQA^qOxNR z=zMJo6I#H%`UfZXc>35C$KZg?)1S2o$|A{8p6us@#F;F}PYOWDN=@h#dC(#p^#aAa-Ws&hP>z3m(mxJ9m(4^oQ^a zu3c>K0n3)l`u@7aiG{Wy;Ub>O=|wM`ObnN7ERg1aMz*WA_Jj%Hg4q9ChY@6dn;Dd^~^r6)|Ilzw+HXk!kR2Y$D${Gnb%gm5mPcDbff> zMm=TEeCNHl{ChVWU`ZvDr6Y)HKo=b8eNoyszb8NoN}|7aBFlbX*Q~#ufkv2^m>}uZ zjLkHg#1e73lABCEn^2u3Ot4)*EB$Yo%83=Hw3y&Hye09IwxO@bs|i7Kdg-%i3dlYf zc!>iQ9ASR0s0Tq&(ZN})P7x&S{;`FhZj}KQ2E2Cza*DM&RhzHFu(gS*`pRQfO5KyJ z@EtX(mdI)f+`jCq`1#=Y*M)3)ESZ_#m<(vuaJ*IWi$$&`-(Ib%wBA$d1P)PRuMH-x4Rp z;UPs&D^i!0J$cY3c?eZrYe&mz$A{YCMMfYcDoar;io_C=&)@>ZalrXqG@Jkrp+$f#10P8 z+ZSi7+nHEY-y*|rORdi6uMn~0l96T(k-67EgR(Pi7%w?&(MG<+mENYW)0mXuYrh6= zVmFn{kPQ1$0;v8b(=IL;ZBZQ^W10KI!a_geT5@2dZ%O18t~2cu3Xnnm_q-$J()oN&Q`J`(q%T-ddCemZ+@Ujs1v%ZckPlZIE`#ve zeehsIuqQNI0(=@<7yU)}?{)?X(G@ofuYU$WjUp)EBzGm?{qKQ9Iw0liGicDlJxN)B z@5uMXF9A&U{#j2WXzYIp_`%gRhb0;U0m)W9>Drbq9pmcinquI~j$0PjDD9HV5te}; zg?Ze4f+CH!Ec4LvCI)63R;^hh3lU@yILTW`Rc0=%NCcvA0*)@HOZ4`w&H2C?eHFe$ zwvEYoPMZrUxc%fa5C$RJu$kz_tqT9RBsQuOTBcpt93qqdy8I6b%ulsc@291xutbU{ z-!H-%T4mf011ir9CP??!xpQBlw!RLiBwGo>JfP!~tG?xeP>o!=G~v?)urTyv95BKh zhh5Uw*1imt&LW`gzm(-pm&f4{rFr$P_Cq#_IVWa#6wq%|uFBx`-v{%@b{{#?>w_7R zStx9zR9@r`!`M5zx%m}es+=0Nle>=GzBURb=)}KY*tmb|tKA!t>Jq6v2e5e)5CJp6-dkQJpllJJYl_raXv<6}>$DX4I#Ia&k=iu==( zxyOVN;T;9xJ)RR0p(t2E_@DSNQ9s7Lw1z_3lB0guk$_zIGAzf@XO!OnOkg;lAAPE8q*F=Rn$! zQ8_v4LilV3V^H$hOz8rciA3UXu0jH+MYATy$D-6|0Y!2S&y7}EsDE({>Ftxzwp#hOo=XPe(^*!_WoyTNt@Rz(RAk3_o8)FMKFTi$4mc z_!v>LZ`K;3lhJa-?C{LVE$;_YCWJj<;vq{%FR}F?DjHdf%`mk_Dk>tbzy!t1M2MWjpBQ zDN&nj*)raCP@Q=Zec9w)wNQLKU(KHjY0r;u;Y4`3mfe1lGz4C)wdKQp7ySy^8 z?oPi2;(1%+}>TU!_gJ z0g&IrO+H*m#4eCDl<7gI^%&Ga4dv9HaP5wB#!1fDKMxIRO7ghQoeu5WOJj30uebco z%Lb=)*Idnk8$b+WP~4#|h}>^5T6aUUvD?zK6{XBde9 zF((Ba2P3a67B6RP_sZ^cq@;`!h6W_97uXQ1qw%`}VmG z`vE=ioDk*BlY6wZujC|L%<-*J(H5ANs7TSSkiZDIO5P0pCcO(Ruay^$RNbRe&v< zg`J|qwfE6DP3XoNI&k$}k6JyDL5+dUODV88h3Jk2a>hagolI!$4qBG zt^kzvV%!2N2sZlfEM;x<5KF%Uv?BQ22&V=yrR(p8@ey=X?VIgc`x+-D!W8+Gc#{yD z45}Q=6U_c8ZyZ2uC3sGbs>M)CW&rR9uOFh8^*S9Lt%KYO*QX@HZr!y@{Wjkkz3DF` z{gGEOdH(8U7G~)ayR|4->3aVRg4QeiRTrx4-2~hF6QX$ zY*uWQS>s^kHjASTdn|I?O!sgvG6X{+@_8J@Au68x3EyaJODDmPidnk5W*lPAtn6r#LQOL=|_3J1+3z>c|Bl^oWtBgz-yB`A0ykP|G1m^FD*dR{Bw)zh+kh0N){Zf zF3q~3^6lFIOiU5(*y_>Xeug5)RX7CWanBjSrLTlFx*ep%mc@}5l+ z)lZHn9t)t^efUanm5C+_8O>M%${EGmdwFZ~u3oAwY4U0Ou2EMu2C6mya%{s=CWXMT ztXLYAy1ojAr!KSx$mpz<#dy#^^Ui7l7hx?-gBVm6jeuHXl!4@lv?K_&wR8r6Y8#jx zZaBXKLKJqOKvRqa0x~dFDlXG`E@I@94TP8h{AvCH)@+t~a_&s;A8>tI@{BQj_UFf{>K!WFIdnEfsb_wD|=!=0E;! zKKV_=WipXKMJg_XNXm|JL5G+)Oa__H^Y|Yfu0gN+w{F=I_h7k#){}ZZioNIw(Ux{= zW_%e`43_}OJ{$cg(W-H|lR0}c0^yDYApsPq!)Ln2l%1HvOWp)Y3{8n_N)(YPlhsJy z#Yy-x$XAxpO*C(S-f2mxBCKfCb`xF;5r5GBV;P#BbN0eH5#fOXUxyJf@BJ=#JEsjp zTK8`6e-u~$Xo?aa6k-(qC{8KapA8y;Ho=j0&t#j?ysbyfoBLj8ZNp`1pvX&Mwxu-H zOW0a!a|hv7^JdLhjyKKA%j-GszR9*K_Fc(<%)hq48=u)geKuKd@S&#B zw$D}$#*R(u#HQ3#&y>~wBhMN#r_=j?uyd{5lTHMn9>&yHUS8f{Qe$2X5&47F8_%1k z4Lt8no2ifkW&|wW5KQ`OQDyb175R=cW>r>S&ew|xYS6%>mEPx^JJ(w@|81+~ z0H4R3BO|T)Y^vAHAlp9VhVhsgeYczV&pv-@jNXRXn%kO>*{0Dtpn=tlT6^s4+C4A3 zss8%rFG&w(Jxg}DzgO#Y|23~a{CV);mxK5JJgA0MOZ{kh24ex^SF<*4wxTEa71t*g zw8DMJ$UM=-?5`Y#cOKQ}0dx__dj0L|vz+oeBAmXEDq{Ww!fx&}-j}k&b@etZ@7|&z zjL$>3u!2fdyF%uZKOXzFp8@Ml^Zv5^mJhnZmYZ>uIv7G<>f_ZXPplmeQngVz^(sN$i62M0kUDK_vnYvQyjUxP=}xa8t*=V=YE%Ze#vF+s0Fo{aCb?)V}j z?NFR=-1W^JL@1&V4KAMNtt=nx`Q09|wp1Eqv0s&$lXRkvM;?2|H#p$8$IZwN8H-zp zHB%d~M%7jfulj0+R#x89m4B6V=iDOqQ7^MNKwVvou4rm-wQPL!J_zt)-m>#I+6VvLB#X8X6i@fCrBr)i!ZbbGa3>@ZE!VB~Fsd z5uy~>IK%#lZyjb*K8ufOekHnm?qn?-S|a+#D4+K1Cd9~F;zcAxf`E$A=N5%dfY$|+ zYE-{|ec>w+ibsE%TAiv@XmSKyx;)%m8<4`=cCov!(~9GiFvh?LD%m?gmV%42*{iP0 zSPZphQLp0rA@M$in_c1&^!2Bmd)#FgA_3l;JL~K(bOgY<-8jJK_lO{HD!d)~rG`IB z<2@(d&1N-wRKH2Z>r)B!7qu=zMA?EwGunI5tYuG%v&f-=*-OiJIhN7e)_vT#U&JOw zGK}{3q5z9;c5`_>{3@O5F2NQPz&_%>u3d{Ns<^Hu20Arp5gS4j9nt z_u#Nk;sM?8G&&zs*~efeA%Aqz*^&!nJQoop)RZzNZtA5Fa_~l$GAo$u=EIl(vD2ed?oy z7qd{`vZ04&qUG|(r}yhSsN5Qir8i2UtEDx*doslL zuP&fT|B#Rn|4Ww_7v~wF!u*B)+$Sk%dDxZ*l<F;gDQArCr4KHf`F7YqT6ufh-#q z9_m0=XM6usrQwwN2D%4P;UJBy`HMOD>1^-hyGqC00Mfk79Wq#TQlewA61 zcd>3}Qq!YY68Qu3=srJK(&9CxT-`*raf+Ns`VbW6V-DD7u3rvsDJEpCX4S*LpV4HC zfh1I%LLVE};z<~o`)BC!=YR%S_crYA(|^E#Yoy3~Et`Q07!Fm9QV|esX<^j~;EZ(mS!p=H1SGeMgmR3w=6jR z{j{5I_wHl2zIpX9JA1sT>Fx z(#iDEwRMm}vtlEvXwx-9J0Ok~2Q)_>Z&=5Xw>p$TKML*1&-PsQ5Fzwzio>}zWxXLh zc(%78&WfrlhYW3EeF2j;55|z+t$X)|rLrr7b}XPt?@9X2M5BXn-c-F|t9Mvz;F7me zKqhtn0}=FM_Bx@a<_v9%LutL%)v5F6&6|z(zMOZ=asGVk_jgd<2;{t2+FsCq8FmoC zm`7x7%N8Lce4Z@TZ9UwAOoTnVcXtlRuy}=E zmft@XmSyVEVGVKTL=_x!VTIf^zQU&$*HuXfegT>;HmT{4UbEBV^Q&7e=iVK^+SQNatEzM3my>@NPFwYWki^;P{MtW67e(t~vCOaX^rk8wtq15&}!Y5^L+Qmep$p%&QbN+$x zzg4I7b1Q^pn=pCu7|=+f{T%1a3IAkBHtT4`6SRw z)UwX{-}HM8LTC+5Oa%qMx3l4$2l2mE*w#S4XR~rv{9TStPMaLB`UD(W2+PBo=^G3|{=L`me>jY83c7Ic;5M4+o~1?< zYfdE+Dmx&yzRXkT{p|r@vaBxUCBDf#*B6SuU=1Z~3!WE=V*yo{@@#tbbHF}B#!fwl zOYO0y7xwysvEVu4J3`mb(0v1-zgG7O3t$TAWcX(Kf+Zoc z6W4n5hv=_ow59}l!4$|xLZ-6F!vjyeW!S>iSjzkHvTY-rP}d-p+7D&H%c@m+p*bxF zp+0S7mZYF!WY;ep{xZirz$#uQ1DOsvF4CSnY0JXj%fR%l*H6<^yGpkOwzr8^OVlG= z2%!FCzG%_I9uP;+o&Tg3$vlTKR7OsLSifN1 zn!n9nZ~x=J8vJ)h*o1X`Y6)2I?;po|{PbW^(*FKo`VZ@P)IYr78UFzNT{npx=Rf~2 z5RdPF{;?-efT;`{gaFGwKHbJk(%I1P;?u8yCyuBIVc18VpD)!BJ!C;qk>86KFIJd4 z*L=weEjg!fK!{Gn|4_KL+8*_r918rH-`ghP?E(wSOtdz+!o zduTv;#w9f)Bi^AC(bUbtdu|{5>R+y74S?&lv3^_g*3h1oBipmEYy9(CP=0DDMj}Ja zwCGavGc6W1_-VTTk8Ab+bD?-_{^Q4lDgVds+kbo({^Nf?&cC1QpHKDwgIDKNv@X1q z!Ap=&Bu$$>okgb0V$b+TL-(wOD8J6Bd3-o+M+fNMneKT2k)-&EHmjNMs*3PHT)|%A z+MvW5}r+-ljmOWqNQh~%#^#rDAhfJjKwJvNwXbHQY zw{YsEzO?y$D8aD9d3U$4!*nF__RLJ)ri$mEq}yEpzlH_C2m-J^3_P*kQ^HDDef!WB z0DVE&hwOL<$qRva!MG*0<<4EO0W;nABM*8sB~Fk+n_Yf7Ka77{p0lsM$6*Kfq4MTE zTeeT8!0eNnCUK)4U%CTaqWvT3&hh-KVg?fuMuJU#v;Z0#)UV&~gW9g$aNB(lGbIWT zu!0wGMA7C$Kr-CU; zt#9qb^Z~IYgEV-qjO$^gQE|?z7BB8g$9}vb1&nKV;P@x&m%H>dbEgj@nA3Iblj6XB zeXU(8iUIJOCuP${U@Pv7ONEqeCZ&d!@@kSs2= z=gJOS^DXvvso%8cy8ItNOr96jm_aUSx!oB*$ z$ccD^J@f!P+|1{zN3ZkwVIAK%jkk)rXwkmK`l(9Wsn3htq-m z77tQvF?br@CcfLxOgQ@w&9tp*_098#HU0!I1}a2Aor;&9$225}-6EzVOcpGExh_$>KQT{wMo@B_X(y#B#BqveYWLj-N%i|?l8!V!dDxO5YO^w;E<8&HMQ82RB z-wIu0j+JyN^BkVA{(a@h(WC2#duY+3Plk5xh%}fErt{tEoK0-nYhc{FiuIA%t>B6q zI%rN9<2ngiQ7}OGpFZ?PXm0`URMXjpEgls(nNVyNf~!j8255%jGNbErL@-P;A#~>l zhAip9f~K%V=V{*HdFz|xxn&}k^%(t&9csRxe$gv5)ej=3bqea%8AL!I?pJznjAJV4 zuA6u;Wz`auMD>_k{-q9*VGL$SIj==(B=PPJ=R$`<3}I|WRCt+33+a-1@5}L#PZ`!o z!|WiDsI&spS>g)fr;R+S$O zB>;r)Wh_b#Uf2g15#-A8Mq_FQCRd@p80tw?(CCJSMB z#oMluXG)=$JqSTTN5+mDCks8r97i$f19wYGLW9(NM0G&2qj@{v?Y5&9Ymi$2FDDv9 z3`c#JzMU@WZF=slzC3>Y5VzN>dE9f)(=4J25Jx zt?wOgB*YhxNL__&$<=QA%bBm|x-O`yEqYC8`DV?UZGbouS4*3mQ$ue);03@^_nd-8 ztV&Bs@2z43YHMK|5ew|b=gt^+h2pL~r1!7n2SZIU6w1Yh%F&&*A;2=9f`BVkffNCI zj!?^9rKz*8)Mlhr8RXf1=+Xv25Tr!3R37F6Qj2ltPF0@$!_bE!>BLncB6|z~FCvb) zAX-;g-Bd7iDEW8dT2(-o+`v+Fk}v4En)@$qKB)eEhWpJ+58JG6)EIGiQqn-awLS>; zqgMTT#H{$~`8rrlSzR6s`+=UYl~08E(vQA7c3dOMa|5tAj+;hgX6dreupV{UW`t$S zha;{cWZJ|`)Lc@~$bTUcq}#G4`&K-Som%a|W<`k-Q9K88fydfoK4Nm-sbrn1RxTD9 z_h)9r>lk%pYF({=9liV-E|iTOJEa{xO;6iC47P8g10vJim+PBg3jxoh%Zo z&#;eK#DC-hUc>bOwIYrXK~x!-cVB#FvaC2yhV_x|!LKzv|D^?RcMr>}NAKYW*8hTG zT|5&QDi!sLTq7oUwhUSsh(Y^!#Ic+vp`zEta~C%^G5%xkr+G z`QT$1KqScq0h#u?DWmL%Ssr@hs#)>rXX}K-VH|=v$t0mzPIJwnXW5Rj<3oOGC*J(g z=(8!HwG@zafEVH@6Ztu+Y{5578t=-Xd~xE+*%OnV7h@C(`l;5n&^ zCIPEnTx*EYOuqB+Fge@~oylt$^N}|Q7l07m0^VWBr#2t0MQ zraM*LHl;6x3kyauErfnl)co_lzgQGfP~b=|kmI`2_0wdz|tu^R#Teh27G8{qP-t##34 zJvBT64InGLXdM7;y%f`}MU)J`Ehcxzw}z{VCIiYM$rb*W>#PC@i`{!#^q*)}n?Te_ zYy=goM+Rx}Gpxk91w4SFclW0h9-kM?ue2@NXLoJ!@{)rYqti7mBPmOp08hP3EneZP zlO_$2PhxzaNkoUQa@N)w;whkG7cu8cag+FZxQQ1uyBk^*IU-6;doW9ERbXn~s?)Y- zEsP4#wG83g$1|Vw$=YI9Fo>O`6cNenM^7bjcVf}&V}$Ea(!>C11q~5#2sgJ`cx6RJ z2ruws4rq=9%Yut1e$6~f8^rZ(W8m6~IYa;HvV1n!JGKky_AsAv?wwjsWoK~MvP$Bx z`eF=45I-)eU#-iu_7WUKbWZbDt-1y5_yyWgApl+Bx6jJMW}bL6XQAek_$HvYMdTxp zhoPEYc*Km2)|=!-;@Ki{eEoUnBeBi|dbObC@53fqQKvA?o5r`Fo_RiSYsMrHD#;%d zeFf*-@2iz24;P;qT6Krd?@R+GbT#5?;&Am0?6OWJ53TZ7?#_;9=j|5oVn)!o4E;bQxlBifn7I#>&yiwHxkE_VYB2r!PnX7hX8g{l>+ zMEAn-1125I=&2#NOZb@Pwt_~Zk)j@$*D1JY`ukY`3-oq+EFHb>Y5Baf?DO8 zXt5O=h&F-N3()D0bPC;%@Po9Bq)uy3zDRPHxcLZeRdm1g1Q+!LWhL6dv}b{gePdt( zY!c=LFRHp-LX%Fg_iP3-!E1RrQQ}2rtSFpF=S9rguwlda;NCpaCIPzfM|yTOG_*Ze z=WIXdD>Qm_{Og_y8)eMzLoX(w+^`j*Ko|+7%=8rdsY&+V;)FD_S`KSJd+!c1opWqY z=Dq199c^mF2vefUR@JLpcY>X{ZsEs|O(>TI3pox&2B3Vml;WkQ7RtSC(4@%?iO?3K z0zk5B+hgm#9b7c13>-mNwAsYlv6{!2quaYm0wu&m7Y`>zg)itOb(|U)k|Fn7mXjgdzbQ_nn}er>!}H*>4x#Dkp{@mE6q} zx^0^9)w8V2KKC+HsaX;SGi^yoH$}X%FR3o-C`m@mp4}OHB&slrk5MaWt=kYc4wNzB z-ah+R#F}1Qv@x3sBS{5JDH+2{%PQ0eFr!Y&1Ie%>iYxKvFp#{(Iw>1tX~4kJ>m#P4 z$IvS?-#hH|&S01#iC7dSPg1T22RDMzZNEf!b#Wd9h@EGriD8>XYnwDB79pAW=o(aBI5g<_?oMWvj)ELjkO_;FtQU3lgDNkrE zXN%_Ik8v)ylo8rPi|?2|J22V4+HPj`c+EZL zv*J{iTymb(^WQ3{?rEj2evfpXHwuAFSr7>gL-+NZM2Vu=YJ2)b&yl14oSwNPx?lE8 z`e?&t%DUUe)TUP%w)$%W!r;@sd2RYnCFtQb4r)m3GM+MHj1olvhj ztixm%_~D=$S%u4;TMVzjCv1YNdoZ7@jo?qkocIljRpX)`DNcN-xBXFF^JSQD@Xby* zr!C3`_dhz(q_maSsmanAkM5alyY57IRM2s^LkuJDNAYs=Sxo{CGU%X^Qt{mX?9%NI z{ZHo{9L5-6yy;YIYSXGrvIRZVx3o$;Lm#QZRE;)w6nGWejx?Ws-toI?>oC@-dnF_c zC^);Xs))kL)Ts7jU*fLNZi5{XT?6`jH>a~BSKnY++7{DWD=-x8GCOIMXL zvhS&gn-Vyn`E4}SLtv&pvE8PC_6YBld4-SqA47chO}P~6vvYInUS~cGw?Fc2cVM7S z;?CRd^|c@8|5NFaaehoz--##m>KXpJfmHpTkmm+eV*E|qa5PQUoa?&pQ7(|z4}N#vk~ zQK{TNz1iMd+jqIfREN&H7=TgT2Ykvr`upjd(o0ap>qOq@YkrWI<3@N1THp3an6FSh z1l;4ip6Yt>C);sa8Kd1pcb(lM2F*o;pm+>2`lIXnHahW5?d?jweU475?{XsUkD(EH zynn5rbQE_t=B&kj?@7@2610A$*%lRXZwViwYt!|!M1^lLqzhrG{# zmL?x#F=&}7FVZ>ft#E%5>>_h-!G49Le7y@k91~3lmB>|z>EY(cngq_QhUp?a+_ctZ z?+J)bR{Jy``o6`sG0L;I7RsdX~qh zT~tx>dPNwzE=ZN9--JBfuZv!~)x(2__hD2+Qj}!2IG^&)w zhrSIz%FVrsq^QT?q03ClF9QCb<6~ktZB_H&$EsL-%`fa})N#Mjc(%7rjNW+~5Y5DI zj9JqCi0GHeWYI9p(UENj$BD}R2pJvRE9ln=mM)ods-IE$fr3_+Dgz#s&Nv?ZrYdLW ztzV}~i;a>IrLBAUAbC00iMYR$P?QT-4@3Kd|Q)brsV4nNickhlxP!%@b zwr6gh!=<%7yQRkDbc{YDSF>@`rYP`JK4pB*e>r6AsjbO_$El6&YfW?13>mh>mw*t= z%Zfc{nmV@Qs&$`o%rn1DKe9lVOK_E!fsI!xBGPdE}KFWEq#D9(a!Q^c)&Jl&z?gBQnOeR!9hfMEJ9X zp$i+4lpS>7UEr%m0?bKV0fv`@)4Ja_eNu|3<`l!Z_(N{pYKWEQ?UOSReX4}~lLDLLp%@|#|GC2f^#9BH1AveGf7+ z_zFqpwFe`c7w(C#!xzwN^xk55D$he}5#Zp}4pX)wg$c(xE}amLTc=Z2^Yjf)Ihc>h zTdu21>rKe&#IW0!xIh91;zR<`n@y+@{dDBaHId4SxO;ugaS^~M$$l@sYteecAWf=Q z%osZg{s3N|XTAxexnmAPu*hvW&Lm_X97?6wN53rzMPtU(fTttWzIc`nlJ-K-q)Ck$32OM&euwjtRi76Mx&(PD< z-?_)qVO8IQAfQAZ`-;(S=+WI{>E^60&WBI``7%?ISC+hLh)+dstAIw3Zc#6fB(MCq z&d{>u-*gR8B(fo3WyRN?bM779#zP|OeP|r&Dy*!nuVD9;4Fd$cO7|tQF70;%IA{Ko zCZ_4!xo=E*dGg?iy^|d0PY_pOm)JwBppC?dB?@d5PB9r5LtO)j1(E<_Vwqq|LQ#RB z`A#;?@4zApF!_QHAN0D}O(Of&ncb(7dnfu$5O~p<2SnStWG{r40Y#O-OM&$yOOQUw zt8@XhABePo@FEEXj|^T)T=y)mE(b;M3_kA|n7llE2cv^XqbM2ED-28glZwD5M8n9) zBNB1b{32XFBy#SANO5LnfTfwk19Im6zcolJDKcT6x%nKY^n3zuk!d=c;H`xVi#;lH zrJDfb6{DgEucl|Xl=;$&h4OftoOR%OFssgHgN*nK&@Fy)?=`maI#X94;uK7@ZWg+o zHKh)3#!{HkY~yWFj`2be3%XUlJyg??b7~$BW#0tujNo^N4@wqh*wK9*S$GAh*B2lNFyHCX@rfqcWq^u+jNZB8TxKTE$O zs<@yfK$G$#2^jPd0T*V3^1!1+xygt1zjP>hXpyXNqW(%${NFo5!g|}#YRh&y0&?X8 zFgzpe_eQO%``w*&g)DGwNOTcS6%kSb9klYX^UuB~tqYZAQumfyx9T|Y2lzi%$%2yw z7~jkLGHLZlUSgWJ_{@c>J7Q~qc^67JZ(YoUDPQv!*t}b{6q%GD(ehgj5+e1eEhGu{ zMI?6;;2Wws2z8Qa;Y_U_F}EwGOq+I7Ml12<;eex%Y~KAL8ubiJh@h`})~D+-AoLn^ z{G?vuGf(z--3Okq>Uwo{sK%Rh86J~o2K?BiS(0;55UMH`nK=vpg8BO6^ihb($IRn zB{;b)%;npwVQe)CDL;khtMwg*DiDlVrE79F=+8rxhva8Y$h26s5GvJ?305dPDV5Bj zPEGFmg;RJ%qkON1rKP12;_1iji8}5cPzZBEX3pBb3ipew z4{JGy-3>Q~8&pA|<9>U3u6dkIqA^YZj$?05EuHV~NYp@CcL^pkXiT#`tI=F2HkhPD zR2}QVQ6Y>WQD^bW=;X5y0OIbKhg#Irpv(_}Xb7PgmuXQ)At|@Rh9#%H!lz^SAlgC~ zHqEsAvdV~woLkV+1aFVBupB%6P}MOGM8U_Uus!t1^bWBaW8ePErKqW$z8^b2^z$q? zJG0IqW&5qRk$w2Kj>M4`?0m)K?Fe8Hed5s?7pZSVbWl1TFqdE=9vOBkpM8Ths{!** z=N-!o8LNuPRJaLfQw&o_FI8`IeHk*J5mY2+bcB6tl{W>jY>JYU-ziQZkc?MJ)rXja zoU!tVMg;QcArzZr(nb|G(HO9GkP~Wq$uSXFE?=CHkoo2|5oHqz1^rz9*;xt+pu||2 zU7ejn9}SIjNbLyptUlc%bTq$5_war6E_4E8`Q`)G_dA#|$*t5A)i;>67fpE9$|qlc z{OdxrUwBQk;*D7DzmCF!zrFDFYn5r8gMJ;XfkHYUYul^6WLy=09ChpBY@PnsYLrM( zO^zvM#)6*s51YW zKff*#F@0rnr_Nwg7M2@D%@jTAxKib(#IEMI@Q)dH|9hVN{|dqWb!`xE*2o*>(*5hl z|D{*QHSF9ut4xc?zRIt*H6QiIyNoE$_^GKVRVQ@VW?@%LGbCr<;ln$mieYmSkK?CR zw1hOx+6M7Rk|cp*`lOJiwhZMc33`=2p-**maj|gEgK@n4Gje4Ngw=xN-i(0PsTG~o zJjiku^Pv7dfS5{e9< z4wLSl?9tAAv1!jR3`m0R0{ato6Q@-2vSvneNii9moTXVH%yVL5>x!8!mHntZ-h6!A zy~0XD*k-Oa+K=iTVN*lTEj~W-Jus9-&pa=RlZ(sU8fSc}b~;K6pwUxRAv(H*VWxQ? z6ry<3&@D#9)AC!GTn1R&*7sJBc9OihR0ZZQ{*=r9Qbf8z@S>*2p0I%dAz$L@X?7)iM7lJp)J-99da|$r!gsN0M7ze6dK`Jz)N;;Y!Z~Qh+ zG<^hiOB*(GpXDJ++m@t@oH ztD`UIAYV+3=KPGr66&1}YpL}$4g%nK_&QwqgO`731K+)+x~kaoxSPwAe`x`*6ON0^ zPW-K3!hku!Wut%U&*GG>8Eue0tBh|Et>Z>2k;9|R%(z8I(OXF4&!Zg|pk=ss?_Mgk znfqV72$j#rrI7ZUMg!{T>Kd(#j=TnIxfn8&sXnUavw75j%+u^^TZs!35C~|u0gc5t z(tYAmUxot=OLH;ZV@4SNY0(>%SHuiR0)#L864G?zgd?=xlB+d6i_Gwq6nx&$)zZggP@2ckt6~lpyZ&1f)bS|StW@G zC{Z$k8-JWhHTyCR65#AcrpkAd=^u$@P) zPq6uOXq}>RifjKa0n!fX{h~DkhjXMY<2xKYL1+3;j3M|lkFm)&hR|rpw^pmkLpMA^DTEYiE0$Cuje}MCmBZAA0gHb>{38fQ8%VgpM z01F8XZ6aX+3PUD&lTr|fW_~h*{lW&&3iquMH({_nc0~@mdKqCfjX1JbGTgXX$ffLA z@LP;*a3y2*q=GN(K>?Wu=9{qQmtXh`f?nMd(*Xb(>C9pS^E{N4lK_g&a5?Be0YVAR z4ePws6%qI4#9PWt^2XUxCnory%aa`Pbz4o)_ zI1!m(@*qj`fLF3ed0W_?8bN>}kX5ZLLrI(7{staoY{=z^egZHY>262*fpqKyf&dt7 zJ4E`?YuUsoVuD1iiTF5^LI9mHiIgsQSCe`MZ$QSi;1*)4>zV8JIMHg*g(6Ium?bPW zyXW8Te6Dz<;6s>b09oDuO8&d_&m=t0{9mA4pu&+`;0Nx6$`ocxhl%3?4#+?1`eu{l z_r?m?E$v4~=r`RjBxBUBxGBg@bCyB7VSwWZxZU+<-Jxg3(^t%S=1}A*rwR>Ssg1M z>l6lOlz2F#sKkq0TfM71d%Zq^kjYNUhPt6{#$XsN!tq(BR$e8nI$PM^U0cnE;z%sp z|JDt=qfFe_qf|?1ByQdiUdHkN+Y9sNO;VEfBD|smHHlQ;WCpc0V1Uzt4mxlR=*G4> zkh5`cLc|>!o}CFICb%GYHG}!NZ3U`{e1YjX9;;PD<o9*1Dih?g5I1JK-1}9AmOKF93S*wGkJeowA*~J!MAdtTk$IlbhdO}>p9e@4FiTSXL-Z_&)fzc6{Lq;N zNkA-Hb_k*r@@xrP3Gt~LJavgU5&SC5H^0Jz0g!7x-u>C*3LMp77zO?L9(eKr{PAWA zaH8G;Dj_S(ezE_cAzXq0!|Y=_ck06g?$vpi$->>+L)B*~NCN+s}k85v3( z*1l^VP?3?s6<+zUT1dXvAknPUKW2Hs|<0ze1_$mm}Z+t75} z(RQhG>g`8dhOdqAYb+xgt65*noPnDQf%|Zq-az~2Yd!G=k(s0ugxZN4cx~by;a`9f zx(OaV7;CDD93#JSGnsma8jpM&^wPF%+=p05SG+=3TEfQ(Tjnf-eI$*+q?L&lq zBubKx-EDy&%Wc^F7~NeWRz1hT;hmu`r!GuKaVzb=GCRfb5zW1tvF! z_4Ve=i3Qr~bx?zMzUUsqfVKp z{^pWxafx|vi^9vPWf9X0T@R|n_h}d{p?74*$vdB(uxzHmJ8z;fKS-NEw^wYS$FAP) zK;D^ztbAfW3z!Chg}7c)H-yD3|BdH8+!$Amz_9^ob~i+U_3>(L?<|v6EZXW-)1zKz zRL@OM!*s|CL$Y`5Kb40g_=THW#N`)zsT;NgjI9SJGnx`s0dL@zA^bJepq^OE@X7cJ zcZRPZ%;iW&L7%Nq%@EZCQj895(r#NC^cx)v2rV>T6dPcq2c$A^FwWIl%_#tQ&K z43xiwKX6bmir$8Vb?|*JN~IF-+shG~{@i2L4zHHafRf!drz*bK%SdMDz(|S`Po@uM zeT3C=QzdAeUm?{{88Xdp2;DKj#!|H<0QtiaC>m?=u#oL*aKC672hbMYzH=wYfzSQb ztxLbZM>~fRbTvIhc{F&ufwm&FCrQgUz%J#3QbH(eJRUp@II9unS?x<6_Lb~Gz}2&S z^9#$6j-HI$CaOsApvplprXb2W!af1t>@ki(I{F`3ziK6+PpO3^gm*Fg4)j3qBNo(% z$${KPWym0ixid05Znyiycn8v%U}1+)JiFRYxu75-Z}2&zM2Vmc>@VGBKK{zo(&8db zS%PxXNo13pJ_e|fP;P)1z#AB4j93JZ+YNv)QBRRrixer+c5zx@c{J%Iuk~ACLP&WY z!?&xeXK4!%@jlR!&MnynF*gO{sD_sJD=?>{GZ+7c^G}RY0==x@?0!(dA@p%awLr#H z@1>`g0R@khng9IxsaFQ~`x|kk`pB9*=1$-Ec<74D{`vUX}gnfj)l+;C~9iO0t$LN}yRH4QZ)sqcwGon|rQ5!Wf zXfkm?-F{JrOr~;OyMcwtQ@>2sIf|WXOefg%_uEU);2A&xbqtQ$NtkDO1qVZcxfzKl zxhZ%J5c8|>{1|TKfFy=*Q#Zg~uSED&TwL7Sf_pNkl$>#u570Ofx%v_8iPwUSNXn{l z7z}}X4T@LRcG~1mC zIIfcmw=w4HAGD{E6TwJV&9Zz25wzTUxufcKv)99yUm$1_!AgN0Mm=TJ2pRwZARaoM zouN=7Bmn>iLVHRnKDe}(UcmAt2nBK}_pVd$nU9tr%_Y3>*ZLy|&Z-ArdbR@wZxU#k zq}whgYO?B>O$iO>l;IG$yWdKt_4L5_rjdr&VjL5AV!WU(Mx)AdN_k&d7}T$6q@d6r zcxPBB6O=(rjP^yitOfXow+7v>O8ycL>UCtlu3g44=zW8$^D6vwTnONO3yb2)N_XI= zkdfZ`*{(lq4d#4c>9V1Mk)T-@l`>LmO_M>(3RRAQ9snN+43+7_hbNes(dSEEA4-%!fyn!I^QY%4XMiBCL~=duXm6*mL=H*Z5D?#^ zaK4r*=QJ6F&*s|)a8T7G*I6J<9432U$G2dB~K1T70L*1>qE)7 zwWyp5RgAL>6=Veqks8xyoSZ7~%GH)>YDNBu6)T3riRFVMTna=yAF(%`vVWk0!xg@3 zmVF|z+Za}WIMX%m;;^W|Z-i^Xo?;I?9Rk9+G51yc@4qSVUQwtk@cC~l#;02{sM?ek z6`hoAwDoXtVdpytcb9?!c33H3xsl;ar{&&IfX?Q$lzKv)ouPhpUW8Mj|JL3Kc*yN? z?L@R9Ek+2rv8ByBNvx1nveyKX<4_2t&`xcJp9M>ZAamg zC!J8lu;W2E`x%TcZ@3L?lv*SF=7Y-Du1#%iZIica;XR1%51t^41cmT|91;fig#}9# z{JV4Y?6?!x!Z1<>2A18qES|$R_Z>W_XR>V*kT{2T8@KFOiQJP1ycUy#x(5bCQOzhr zz2CC=9OUVitR33!rd7H`KBihwHv5+xWP ztr!;DldV%%l{43B0Ev1Kc%}jm1KZdAFc25T#M^Pyz;3Pd5ZM6cdiMLL>!5W3a5la$ zf%9cA9i7447qCx7=T*@}5v`jDG#C+d!4r6-;Y){&V9@ZP5IY_brW=(WTv)1mERzI2 z8r}P#N_LG&leA}>n@Ecb7YA^iY*caI&HN?w&t38D9CSi3f@bougH6(^k8 zR?dJ=xZcn8xYTenP$0shEiv3I(EP*x(_3P*4sHJs3^j;H9*Fg#f}&%iqcG6jLMqU< zHvTq6QYd`u>Jo0_ybrP7Tcos3p#{7l)U&W6?#8S|ZG3hxAzI$qp||PQsAoO-8W|mI z<7lMAq3IC_pLM0TJ+$}00UfdTK|N^YVcN8O;sP)h(d_&nPW^mrCNoayc*ZFqN)T#A z2lpO1VpQKuW=CTTLLWGlDDh}%bJN}D<@*DB$H(tK#4HU9+D6GT+EsMalqIm`ARJ@~ z-4Rrwt=V|WIje7CLKbQEbh4B}lL{b85;k$nAQ7gC>m5Ny1>t?S!XMC8!NhX0=;eN{ zd7?pZ0g8Afgf{VYrmj@sNKenDn>SzAWYhr|qjt~#%SMsC^pIEijJ5BW>lxb>$a@S1^rF=4~nM?M)azJ-@?U@$fJNX8A|%SR*1d9 zie9}e4nDXrdt6yYDFrJI%|izQ0t4?Q$A7|g)J!1ZW@qMSVX1iFfWh{nKrV53p0`m& zk`_J(O|Or<9+#Pspu(UQb7%3_b~^|(&yaBs*d+Z>%hi8W=8)~-x*mTzYCH*R0$!)R z$i-m#wH3f4>baHguYP)7OVlnE(6Bzi%IXfHi(I6HufUnQdXl5HDXLU^O*n%f0XUpsn!J1#Q?kEe5PkiYMtXH5s}KOLw_ARHXU(#1Iw}X9l%1$Ov2CL zHBr4IxmAWe6i)JYIDRMuX6qH8uX>K3py^c&+0CwH@Lipew0ZgX5K1BLc8jPWw|*@V zEgy=D@r~3j^@0T8jLOF5h6a>)@gOyn0&z|UP=HjLI?NOLSoB&kAHWxf?yY*QEbv{x z?+?WhwfFF0bdL;nwE=C>2ip^Y`7cJsXQ(MZL**Opd=cOHfqf31b0W|&Lj!&wrH}z! z!P@CoO)OJG8y2eu!oU!iDUv~31@^FkRE)dj`{T!ts~(nX#(v)nsvM_u1<$cZqpbxJ zHpz~GljmWJ0L1Xnw83qKc0dn_aTfAgE9!~xvXm2@5K)mgLQw@BHs^_ppwd*Wtu8~J zw+odxCk7{cvRu_*kG`4+Ndop zm;;;>MN|QDM{!9>juTfZ?S#>Gtm#|2jcgHX9d|?u)ZlI|g(kNcOQ15c=;ncnw;RC_ zP|H(Pm@2^(ouG`M^g71J7YH&z9Trnk$Zq7?i=#=^r1ggya}bp=mE9zU@sJbqy=rxBD3!`KKshGgc)j{Sot2U}NFBqlmyRe>OCJjS2`OkN}p z(TVG!w26g9G*AN~_eH#zLi$J7p|H5H02N^#m<(X(>mqp-J-%Jx+BMSqM_l=+mPw7w zg-qEA*MbBPpX^S3cV%(0GdllffKLDoDu2GS1(F!i<$!y?kBLeY9RtX|RCDb+-tUV) z?bp7oF;>YFK|vwiR44qK%KctDMN~|gq+((}u~_EET8S59<6I;f3;7$gCntIHSz)H^tM75z_Munf>=<>WMn z`FkaDbE}cKG(esthB>Wfn2)*Ob{c2TQX`cuY;EOhYvm>9M@`MtTX%n)o7W=5UKtu} zhTJX$L6`&76jUBVAhtpJlU=ikP7;(uCu9b|Tn*>4@hgLo{_3Q6g$3$}nQY~EZBX@! zgHnux2+i6sxK6d-<$I4EOPr)TZ6*W(KKL2==z`Rmj)lKz>#lRdLl|`;3*@gHb07$= zN>*W_G{_rydKdNWRDz?=Q31mB_I;pDMdTj=A| z>?|Yn*lnDZ=`WfT(@_#5bkjiUj9KNpY8emDe;euVzXGub*@Q@2d``(9yE<|Y>=ZE2 zh#J6MoeG5Y>S|Anoe+4K3mOo9F#kQm1_}nyzW(z-S&>wMus?|kfdja9DB$~o=W3V+ zCA8SL4_A8y@J9N>p}pk#d<=${k7B2R2IqaeUr<1R%zOu;p@Vzi)FiFO;rA^Q&l>oN zB*gTn1~`3|L75<*2RR`Ftt=w$7xG%$C{M7lc>rk&ifhA*L8NpD?w61jMnMJ!N|esB zAt>lizzFne%B4Gl?FF&9WW)cz# zMVG7pXYlCgC{bwOz)3!3wSr-Dhx|rQDZc*`;ep-ojC$4u2HVLEkQ%(hhX(PjE?$kl zz#NI23j(AwgMA6&>LSdElUT*E7j~kzQKqC}r<2?TX(wSE0p{bzjpJZG$YGRy6^9lt z0yYV}poo<8y!wLVu5|QI+o_%_!%Ycc(NjVnR3!;6Vvdwxm-q_1P8l#mzi{P8SZKuv z;EC=VxgQCSVvYiC4gf!uR3kL^34se=u3Dd-{`c-hP(P%mMTMw!1VS^b`3{TS$1Q$8 z!R7a<$?4oD0=D;oALxPtkIcDqZH*_pH;3u3zaC??yk>;~X`gr^(Mx2B?nL%ofb_n)!?qxGHDIvAcNhnJ$SZN1!9$w2x};tfYJM)dRv$ET+QW#$PGp1 zWu$jA$?bsLL84j&7ibaVXx+SGrss(a5I8`h;0dDr0_Un1OOC(+FL~V`pdIx7dMx$6 zlTsx&8p*E1R#wioew11?51BuFM8x8wWh!1EN)VzdhBOdwC>(I%NOeG@Ijz*c1}Fv| zKFR+HT~@tId5-lO>hqED&e}caNXSb+-|yffVJ6wH4>7=UAV80_s6q?xRps^z zE#nv?i2(k3t(m0;TqelgM!Z_~$H`miW_VM`6XH$=s= z&V}&X$8eNq`;V(HJUj+~$?^nJ--Fhw9tvw&&zY{)G-FTD@eyvUa_rvcYe`Wg+)8o5 z2~1Wq8pB@EI^`M`$nz0v^cDoqpMQmeLnztb5_=!d;S$Wu9yhge=z$}VODP~Q>MFemeP$LsyU$IepcX@jb1abm`MGnhp?RvshnM?67C;0RE0otIZ<7`GEQfB~ij;pp>P zQS12??>U<;MiFGd5A@grAp|J-OM$Rw63D?5ekYWFcpl#n92zQPX!xbzK=>zVr>9zr4nZBGour z%z9IzF8J@SX{Wt;z##tXYw_v-{m%co9sggt8=iSat^b1yKtAFB@n`dz2obRI0$+v# zN2N|OJTTpW`ci;jBJ%LzuYE7%f3Ju&H3-LAK51^EK%;OFL`u=NG@~}6T1WK&Zo9zS zQ)G!=?h6y!etS>pJoNckOq+q_ppn{ow+*3@0K637+w`HJruJ%)z$g={ay?pD$FeXCoPSK)DiGKK}90uXNI;i z{w9~Hjp@ka=Ow+I$brE0Ey1yc!m1ZZ)(Vmk5-`K;mtNrR-Z3yJNBdP=Ozbv%X^7zf zwSU;FS6^`%yznJJqDKK%UkEfPJCmzgoh z;y5W+(QW}mLPjz4^!INGpz^ne87FiWr_?eyasKw>kgUG3h8Z5p;2;6dfQKWO>>XGx=%B?U^rD;)n|bjV;i!kSkXtvWQ7Ibf7Z^ei(oWI!pt(K|XSg(I9*NE8Sr7Geb6 z)`?pLD+U(W$B|xyBP~P{b*ha;+@S%DH!|c5jY={fX8^;kwvdksHQ=@hbN&|*u3 zeivj>aTGzw%Quj_3devt7+s)1s=x|4#BctwP{#qsJdvl6E&!&xV^eI(!_#TOqy-$8 zAd8Z@^phwRcs#Eb2$uNh*R1k+6cs} z*UU}`%mQ>@Igs7qiB{n?13=gSXhPap_ZmJ-;WyFQsE7`;cR~4sbM`nVrw=kH5A;Rl zfJou;i!g-6YAmH`mkyv(4$w`ICr0!o{H7p2BcNlS0d^Gd+6@3GeB&%^&_)LM1jEvk z#e!Y1fT}{qcIsNhA0X49s<^1T@e9fc#nVOr6Le+kl z*K{)lpeL-MLS!~H+=hn$J`5sHqxessj0hC5rMd3a-_C!!U9`UwWiI-swV*1YGdFYM z#_uI6MTre<0V55cyR6UOFhW>DUuCa_9BKr!d?yN7g3Q345-H_ zuD-*f6#YsU5HBaPW++k3a539}s*C}aPk>(c^U07;_{w1?slYYB$SD95gq`7&cHC#* zeykrD3#>$L{)Fxlrgk0&J_cVZI`#F5%Sp%w0ad39`F~7I#C@kJb9Z$mHZ9$Fnz|_W zZ708OLkEA;%h#{*DP7*uQ^2NPi*v~W7&F{Zo}-oF4U~}SGb#rpE8&o8$w!Fo!H#nu zZ?O7{cjd=2%k@vUFCs49?Z`;cR1W;e4w2pNBTCSjAZjv!`Pnqs1OGoTR49PK;9-Ke zLY0T~Z3=Bt#H1CBsP9IsVLE<%6MK`8{bW0U;N9CtSO8SQMm7L)aMfZmkmcC4F=@*5 z8Bm?nVi>(bMIdXGe7{>Nd0zYQ;^^7=p{Yr$4zeF;o~@HMpvHwt#~h}n)?MIbXRnnT zM*(n3C6xv7u(+zq1DHs`GNdAKmgjKMM;nt=22L;|nUDd|`;_XJbJ(zD-Z%d}Vrvpx znE+Y3b?WexAGEAA@9wGGt4@_AU_MMW(q>k)l=2Stg!ItF$>Nr5Q{%gD=2uXYZ=Dn&GGyi+x zzYjzem?CHc@*ubp+L~~n$;Y&cZ#V~Dppd{A5#k|$ACR30_@e?_-qbc26dfbzmz&BJ6=y z`yO_iGWbzrF%q92*eS7*PAVhg7IczGR6#S2H26V^AQs~2NQk5>hd)6#xDr6OJAMA| zNFdg^1P@jM_TlIvqcdRZL!b-_dpNm}|4zyTKSxQ7`-MHkT3n2$6OKIrv~ka4L>L9E zHzW(hb__P|#Mh~1ZyugLtQ9c_s0clPL?f6f!T!49Ts}`Z>N0#LP3#PiKjbqW>Qj)O zHk!O3!d3+HdIKJ%otvGS(!}G3FdD{OhhXPrP%rOWktzY`=e^w9jRZn95&Zq>SLj+u z{TCkk@Xuq%1|a|IyW7g~crT*_B<;=sPT`ez8&x37t>iz@WJ7$ujCcN=n0N;p3+N;} z4oAcSJ^2=Zvk{1H2ptNrn}qO99JC#*-Y7Jda2#=97$fuGk@N%C~~9E{4bO z>VX--6*S39kXUTrvEvS?8U(?AjCczA^Hl)L;9ng_N{UFLqI&T65ww0oxjY)_&A{DU zXf{Z!BSw3m&RzeY_!f`~g<^tw2tqFhKv%T82}cMyU&{M-XdCyTE%x*AaCi4tRQZJd z09;)$=Grroib1~u{xL~L<%{Lmy|akB5^6kBii5RDo63t--FhAAO(gEjiIXQyF*S}^ z@qHe^8SKl=xQAR)W2&ej@z~0dc9H}QCZgIP8D=dF$09h&fnW{lUnz2ki@=cxNJM%s zX!C#-PzURw64fGIfSRO|E;bVRH`vm};(5C<9eMivIWJe!;YOek0Fh4W1WyTH z(_cUhq!leGDlYCF7|=}?g!>JSL!dId4L1CKo#!_tjuY&lJHdnE-}KE&b#3^M+vGY? zjf>-lBuo0AU(?%h&iv2+NB;4Dzw_U>9AJ~eR$~Dx^>zy<2`mqm&Bcq9+MS&Va-UN z&Wh@RFdy^64 z@`!EM;lGnMI1UNx3XGU<>$|)D{rMk(RJMb!+HCC3yUcu5a#s(^nzZ1a;Ggu@viDIw zb7QKwam-3RzMVt=>#veG4SUz)40p9JM--5{s`M48wLhSi zLkI+$i5>Bb5n7h3IuMBl;70-v+t8b!5wuROF+jqL)*hFViLey70BFLHciFdh?=IP5GA^q$2Yr<^LRIT5g7hqd2U+S>2 zJzM7|Wz%OaDWvD%T4=F;jx{)13gmiF4fnfZ(V15wz3!@ zV%^i@?G^g)4^hDXVqy~ZwVDDZR%%q8p`nVbO5D|DpyTa%m8J0J?+qx^PszU{hJUz! zUV(v25e3%oe*cx2Wv%8RWGfD}M^{+;9tna6NQW7!0<1G8A8y3cvU#w{^6e@e{KdNu zFQxsPinpi%NbbkAlCaI8Lgj5C8e2)R8>y1^xyXTvqN6SKo%E`;m1)+e_otj>gT5}t zD(TA?JM*ma-8RtLl(!^kqnv8QzvujC#nUQI^BIrczRu*=KB=q6qEt?&fDZKhAYkdTrOB8P;9P*!{61 z+d2Q)j+#Uds*cv=d^F|V+;;gHwv^GX3$~}*_-9lrX~_*Lol^Yt7e%g7dxcwMImM)% z8O4|#9s5TMD%W9)>Y83d-Up9`#x(9szw6S!l}UYsZke`0B=7S+pHsu))#gU;=U2=q zPIP1xdOENS=9ShpA7B=97R||O&5F75=r*(Z3=bQN1oS+_EY2(tOpU zrdQz=YT16@RMIA6ZarH&Yms02wR7}5)7g~}^07L`1%uP~ULLW2G}QK4kh`%l{e$z- zF59bv)RlK{hVxO(G{!SAb9>C&w1+hsk34Z46}0y{yPT`Pzb@s|xu~iQdA5|WIH?3`qtBmnEGnN~ewuW<%{spQi%frQ_4jaP zIsvsrVHUoJ-7IG|nomy|2x9gtr^@&%*TDs?d2TP`=9rKYdO;2~678 zW)*Mw=d&Hu5t<^$IHd2Jo6eSy0g@VAc``JOu!4L~T z4kg~bamqSPC7LZa!&L-G@I^Ybxe!EaDn ziatVm!w4R{5^!xjMj0hc^Sa3hj`WMN)$ z^f257X7$^wlDEUad#oeVA1J~;&?a#Oqz%a^;d4%9+d$72;y<&Kn&mH$wm@4|Na)N? zy$)ABs5|~bw+NXmk^2;ID}a9yfDE6M&EQ#L1jjkh%**`GhQ(SFO*x1tIskkqP~Fsg z*1Ad(_wWpoS|Mc|1Zu;T(gc>2;*S?$?wog9W`=eB0^J!fYuJEWfJYwG%p?x5+ysAid^ z|JzGLJN75DinVPuO5bDUSQvCrA^O&l8{?{_9rc+Hjq5@VGUrhIeaG~eD>rLTNy~A| zbgP=rCRf9a5SIt)BNY}DXJJl6t;AIB)qmW9R(zhjLpfP%yX3Y$=7{bIr;vrq9dsIqLZFNFew{cRL!vTKEu{UyG zFLA!_d_1?ijV^SHQFG>#v2AH)OtX|+%#CksM#lHE+|C)J`ZMTIxo5e3AMTi=-A ztt$tPDc1Hab(71Z*OLMk)-GoWX6;Vca+vCNL)G<&$Y>fhS3ute_+*|55x(|?amHQSG=xc$#h{umE`UZ>d^he5%dqca5# zqJf2Hu5R`=n2Tm7;yB!(oVd95i_`2z+}EO3r>-K;{@uBhZflDNz3z9gGcT)7Ue}Gk zS&Elsky+CXSX$ou?oRLPm73MlFVl|fIx*D9I^a%Um@MmLGIi^Z4aG7P4+bRuRGDMw z8$2tdRkLuuJ;%(sVJ&m_vibcQH;t>F-%7uRR@Oz+GBU8nbiEmQYb!XYq;Ayd!#z8K zcwQ-SK>7R-o#-zcM`SW49DG~Z_x;4Q+m*T5n^C)#U(VWWykN#y@@|Ibz}dV+BmTQ; z36wi?X{8M>9pk6$Sk6?-rTKbqy+g`&U69(2%jwSeI7{o7(jM#e>UV_?^&7m_ZEYuJ zJ{_NwiywKb={|gz&#ZB>bCpS!MyM?+A}aFy{l>$?N)8@dde=Pf(2qMseBm7sq8eDq zusU+KK|jx5aLMG@&tuEgohogoPOAE`H?Ju`6LJOjH`F9GFZh67|Un{LFex6xmcvAj4KehD+zMh@2f<3{&3c# zAYLQ{{{lemcvQrRXaUhbpn$?p2Yqj7ZHT!!02HZGFUF(WW+5C@!~luc0#=Fgs~Gw|j95$e|DFXhms~^&hz-pmoH&n6m5Z@BFCfBMi#ViWIy=bvG!Q4C)-B@DFOOS@MJROx@LcwKXY}0fkWkuwMIvk z?b~<0HD1nf@<@p)6SQ3V>q+#c#jJ_JtgbP;jk4SRX;__>YH&P#@$E%~m-BODpH~LM z*I&L0z4#+w*+3#XDk>3IW}RCfbhc~BOM01m4=qh#?9!t|i+8$(fx$VZw2!}hyHK?? zqDG4@5_Wg(THNZKPgz03>zp&TOq)8!|Jf54l|wVV`*;_v_=CIW zu2vn{fCQCsqsNwWy5A4wtpBhXZ_h4B%`>7d&eHEXX=|`B-Lb7}PuTwICkopr{_xzP z*Y?%Owslb9WVY~jDkZAM(Tt|<<3l(0>N!?Vt2fQRUTb-X6QK|{l==v!Q#$b;AN<}P z&1=^>uUS>XyWisM{bu{sfk!Al?kofqB>i_V)mi6x;o{oc#5H1>uDtK#$MF>ikYik5XYC)q9%y>Cn> z3q!iaf);CzPJ^{ggnVpum@)z%swpZ6xIl`!%GKoDk=}8_62Q zIX9omJL0RbP3AD4{9AzG_0pMG`i&l8KL-2HZ1{piaWFwW@_o>mehHyMr^nf&!X|se z?pHEXAn(U*5l)EzSF7wuJFe|O}rD2D|^nN|Ze-14)G`(DW5c@tTsIb_m?G3$e zSbCFVn#get%1}P7Lz>GQR$VqP8$OB}$*87ZUS+OUsLDJMqp!b` zs>N}1kLEWjT zJoG-a*C{2)C0)A0>~FvIvBxa!=kYxHf*j|w!Tl8}f6avnZu$G3HErmXHC~1K7bwTO z!cga;@1=)^6Piu!=UQhF$dHju)k>c2$kZ5V^#v?Q*mMPAb-87rmIHpiqo-F4{eA^f zv+b0WQ4r@q`WOh31c>@KAw(jCNH9Rq9ZJHyJLrW73Q9plQ_tPqxtN#XqeP{8MsnE5(=kwRnVcMr6!tq%Dr z^;z`_G;rKRHw-4z6POnLH8Qw@a97ZYiqaG**R5?q#6=am|I7_Hko<`q5c;Fg&n$nu zxn9{m*ewqh)qBOLz5E+3z9-5^X8bw3>wjqM&aj}?qk?m$_w%Oy^5fhef zvG725x733yaxcf@GI8=$uezY8LZFBn8(pP3zZ)WM7$0zSR`qTQ)aklZp zycSOpdwP0)=Fc1m1*XbJUFaRD=4k#U^Gok|k4#)y$_1;%6YAsYoF8jmW;4xA7t}I5 zcX2(&e$uO?Sxi7pa69GhfvOIE&e)D!XlLGPGLr7sW2Q^V^w1EfayfElVa;*EUG$$o z=J|!fUe0;_`-kK^KHNXE;<+G#o1iH8`dYj;FK9Rmb~6)CpFaE3f4{#`@^rbhdQn?l z+vM8&=2OV;%&zC2RkVGg;4fSA#(EP%X{2ss;00=PP8F(jO=fkoSrAXP7F2ZH^D0e$ zjvmD?aGlUosJnK0_?Azg@4ajFai=U4CiXrMc%0ENT$`(~ez>qbN}Y~bSb^s8V41L< z*f2xp1GjPq^?`DR+@}>29v^d4L^QXl>o4tS+n8oD)XKQmm~r6!_>KcCPg8ukz`<#$ zYIyr;lVIzw5_49U=Y1Bx8~lSkePWUD{IqGHr3~S9m2F_AxQqd!-M79?3ZbO^V!CP_ zdbqBme=U%8{EF)HQq{Ak+0MW6Jh|$O)Uzhjjz50IDkMF2!d+KNO6FvL)sgTMKRDJK zB&{2&)Up~Ac?~Sa-inXia?*dw>g(HXE2nM9623KS_IpfJhiY)ZQt4Gg{zE0thlHme zPW5DUH_;!wdNrvyF~Yvw*ShSdt<@WPYPVJ49n_~Lznd-OrY$EuTE9sBu}iFgw!td< z`cA`-9}}~AqFpX@2%n`hpsVGud0O=gUU~OwdydV)$6q2YyHK0(d^6B85(&7|DcXNu zaIaX~!I7li=A*-kA9TO4N%_$_7NECp?l7@x`1aN25{;~k~(!)eH z^{`EO9c>kK0x_#+KQ+tEzc21=-MAhH`C4;Zm%%0kHHGB6HHI%%are=-(t&LvJOV>O zsh9##cWb{aSn@TB?I4dL^cKFeTOS_W@P&tcR_d>vJS-<1cd6f>W{-6B=gtfxtN2Ev zXs+=4=L&lY6tnQg)nZJ%i~(&H#vCR;FYjp9H6FQAct!r(kiAN4Wy^F`@niYgipoOw zZ+(|b4vSl_4O?X-k6tqI?2%Fv@ZB}8)@$;@WdEbH*0~)zS|T*Yy{X@G_ATGN7Q3CF zY9hjHrV6ZJUxR19^2dY>>dys)`${9F(sQh0*Q-3-IXZc=ztvx>e2o>$pzWt%73F+x z_>N|3;BiMxm2<0o9Xu9C2F#YLi~yDDbGmx1mFM1l37t&ljzcV-ba?ReX)|KnQqpZt3Kfh+Ar6!&f>{ah5W-P4vnzm`ou1&9v38ins zpuKeT$&jD*5&Mp69%bpuX@A!nF!SC({_=_3y8YjeO()#eGOCo^P4~%qa5cuXT}}15 z^&1nq0|%W)90b2D#OA*nmsQ@sXP;wGdA6ynT832mHQAcPcq;QPJ84B@1X=cBicL%$8nNBq%b+!^L~*XGC3)KTF-0t^a^ zPM-K4Bd&#N?s2r_{z2zLhu5dZa&m9wD$h>dmNL7M&~H0=okB(<=O0Hk%_VcgY9CF8 z2dpe^DE&+yR`K=^^ceoK_+rWW6a}JkmV>2Ya`#}#>zm<}8$IvD(^Jsq$b}T>Rqe4{ z+Vv7Qfu#@wI=?1p(iI-lnEMl%bM0;j!t&DfB2`=&5G3#%dQsh&A~$V|1IQhmf_$g zE%4B+Gyx}&5YY0TpJ?jog~sh`;XgKFW`tk{ijcNP226O-%CdR!3}WdT?6(53zK=s; z8_UIylXKvQ^%~L_a#d=U6CzoT=CAyoLhbaOKYt@ zs_#d+_d1G(dbT5|h`{54AB9JlIyy~@xJa{5|?%uedYoA;$>bC+y79x8*2rJ4Ns2}?SG^Ir2gWvjI5GrdJRo&P+u z>W?$AT2MGhTOTE?I9QYGQP#$g<*)C1z-qeTV4eMl?6}k2`Zt)Br_Pk`OIYFBNp0stel%E|^C}}O<4nfI4p~2orMV~01EG4M zV*Od^Tz+k~-cdv5zoybxr<~2MmEmyz+Jp866W#sS+vqL-f(Du9-0i<91%G|7Za0CMY#>l2ZE!l2 zp>)*qs0`-iz_5|i?cJGWIOIcN??DKS{r&jJsYZ$H^~=j$>!CCpx)Jaev%(8===GOz z!5%?2)Ot9E&=g`meylJ`>$uU}`^Xo>ohYOWEt<|p*uhRrx$i%g+QtUXJ z+UNi%gO*DR(ggVD$WWN5gcfe2(cp*9L{c{HT4XUQ4jHKTHtjWd4&rcT$KaEoqYgtP-q9YCbUNz(4svGGR|6J;455|U-<)fmS_q%(9di)EoW`H-5>lWb+vnj zMJ0!&X*QS5ICtLshHVyDMvMWu5A6No-Y?FZ=W8;7dUL{mwM&O)p)YSVrA|GCuiA@` zkvF2?C=K7eyVPgZf+1e!2rqJzh^-XbPRT#oe$-Q7UTmNu%-g>x#|Qr@#+oWw{fODd zZrAwBEr^rNVYN-8&c1D~v}|%ZJ7z+sv0a(w+{3?5+Fv+7LtP>1m2A|&P3LFynrUt6 zGPP~;Um{@)fi=c%G9A0uKKtBX&4A^Tqq}Lv*JACw?;D=+pNc(WF%dE^;~c`@$Fu6- z-9@!vXKt9O71#EbuYY$rhgDHuMSw7qZ0^cKCqZEr2G*tb=3k*)o@g>(xwTb@_gq^_ zC!0IZQn5f{hWV*rGjVa|!5g}w{ciaoEd~l*t;r&&gcG%gyrkk@2L>dqn;exb4&m4R zCVBiCZyGy7NX45yjvWUh1uPwI}_^>nh_N<8K2ub3U4o*cnhrzc(Q zRz{ulD3 zbX)Y4C|#s|c1FOB^Jn&*l&wPe3{H)^rQ6t^KD0Qvfo8UKgm;xrqgrTvzg%O2(%A{= zfWXfA-BMno4e`UZ7ZBFOCziMBRfrSBwK@LjddY-7p9F>gk2C(IorzamD^$Lm~`! z&@HWvY|(NaQ|SDp$=&r)`F_T7PW#Nlz7{*@F|*oN&PvLcEFXnBthy(6-ER|^DT^JN z{~^-ikT$nir5UobTCL8!q-^I7ClA^XwbT~AZFXZxl1b991$ZZ9m$j{aUY8iIFJ)`H z?`=bGb1ZGwVV`NI-KL%5Oc7tpA}P`gTaL-D%|@mGXN$)z z9&8m_);4c`XB5cQd7;g?=A>uNg6dWQUWn1^O9QUjCOy#n)^$=^tOEy7YEW8L5uLAI zQE*w7(A30Yt2zI5mHUp?vx(hX=>~pg&&v)9@Y6c~*Ktmm79X+D1|OXF*LRUv7L9gTr3=h8Yo)KwwIx+@w?%+njCQFydexyv%$twq zE)<>x^ZVDzLa{I#OLo@cK+quGxN;Mfz)QjTb`D4l#6Vy%?RmkZi@+`e%MCExCfe=h zJ6i0Q$IKvSi-LtHVKhG8u*tMhS&vaXwe?;s5X9p+mo&P^D~Gc{Neeiqd5My@?`3sz z-3N2Db(M&y5giwvSta%TndNMmo%5zleN!J*K|6x!h^ z2y2Ok7%c61!<2@DZP)t3Mqt0xzKcOf0L~t^zQw_&Wv2oB-8XO5kA|F&uSv~94MN{+ z)rU1#^l@alCvX^dW?^J5GdXCjVJ>Jn9$jrE-Kyz}4CsPI$0MaGV1(7#nbwd$^8S3| z_+c|p;?zoXTxvn?BYz3HyR|0o)NbzPzrgw{hd|~vgph;Jk9(A4S8^$!?)7u#8#%2tvs9I7@n2qy%TnPhi9(wf*tR`8!fVUb%R(_ zOJ7?Q^)+5h8z`V*7|1NP;|aRIBCe8b)WY3+(nE6n=qfmuA%~L(FD^nxn^Z~7y3rMW80w%>j@GP>42b56hZi+F4DU2n~5DoJI1<<``D zDn{uu)K!ur194`!tid;eRAsd~k{mh%KBEoe-k-8E%-_qD>#}l8`@TwF{+wC&M&0qS z+2r}(2l#h$XHKJbPLZp-E1%dLzWILrCy!{fQMv4J2KQKyZ~6AF#h)RI0~fnKCMsG! z8v8VyEuX8tD!@O`vWxaS2;J@MLB=;8wIx)K=ruH?MVX6vSw9-lsjU}JH)vLi304ZA z91{vCxS!K95WwLebKmAiYSv`YPTqkZTDTNhHtM@6`mrnvcQ1}x{_@ymYkJ#{O(T$P zy&>|3K)*7v_ugh7u$7)2?T7e(X9|8N^+E#Iya?)i4`QexnqH z9Q(W`g=^6#q-nWIeOyi>wKpQ~?(KPjH++4rbnRPP%35(wA5e3v$)Rn(Z++L?GPQki zY&*|Nj=<`4U5iQVk-B7)x_e!&LHCpNLt!KsY|&{Y?gb$KApH#N2M&%u-?s4K0|)w{ zVcL1Q*>E3dT4El+@T?2=Ar0H^jigzuFplAfyE>XVzZ73)&7sx0(vB8#OX~HJ!=K8> zM>6@uy_9DL`fA(mmoYMh1vDc1b!(|tG>cCRtn|vp&skNb8N3>*i|Xr>WRrCcY3pBN zSgjVOM1rVqV6&CPy+T*vbdDIfC2$Fu`yvIsCvtj0X#v8enO=tV1<7=k<=Ely0EWmr zqk(5Rmi^y4lzQn%nojRw(p$SaV^$DmT%ueYe0}6E6SalX341Swkm>N`_GBGa`t0%S zmBw-!c2lt`;l-8uSe3I5)|0aOb&1j*?eitGYFs7M+wQ+Y01yyfU#y1Wya!zQPobRfk=O2AV73J_UtZRCPMJ<)nCZ+96 z$lP#pPVAN~&PU8|BCGr~tG4^`qx>Uzc}oBAKkkk-C`w*bW_PGriZAkiw`k6KEj42` zuYJQViggqGuZEg|&9-xs4XK4sR6fqV=70R;j@&iZVv2viCJ+2YvGw17p4z+d_P_sn zd`y$-_K!1~(sSfzH~ky6sqmA>k1CJk{rd|PS1wVY?LfZdPHfKm{SS)&KYeq59GIGs z;3I)FaM7#J*kM`4LvXGclus)=C8HD>{;_26t90y?dO0w}BvfN{SZO4aHf8R5>;yBA z-=(ye`2_pf*p!un_=evT0|2}lg&ZfWcQg(e*g+hSJ`4|XhxK`fk<44MvxvikMRdlhT@4GWfW0bF z_hje9${T2;EXA9C-Ewe6r5*=wS3G<5x*kva0}=A7fTnq2zHlr0(PGDhy+4kegt{g% zFLJa#*+zeJFk$BUue?oEeQ+~W?`oiU>>#=E_7CBFNUUpd*azc8Y(cHpWbugIc3~1n zyOy1j?mS*?=~g2pg^NPVQanXo zZax}+#OS~~)fbfhARv2j6Za;K4M}=3_8BbR2#DcY9u(|ek9>4zwFN5EMvDV${kAe2 zClk&gLm*}3P-9$BF8`ScCk&yrFDox^vbes$b6s6M6oPvDaq=Q3#AzWzO=Q=wT4RDD zK?jym={d1eXH)QjF$tqbGBa<(;~pK(&HJ-K);otTYqhccOc1ko-tXk0-Q+60{X#cf z--Jmdkb(UMv=mI@)6i2!p~xrsQz~Wx+O98m$pQoLJ^>0`HSb`sH$-fD5O?wR`zX`` zlDyS0h~%&wejZ^bAYQv^zf>1CP;%Up)@=X(wTaXpcsP z9~d!xZ=LCxSvoSg`>|YkV6-i%f=OGexFNMI^a_nF6$w?66C!AfG$Ly!Es=w3Gippu~@T zQ)b>~5iqJMZ0%RH0CpJxJQ9oPZR(d)Kb+wa7xkq7f7*M`sH)Gd-4`{Q#G0Z( zv8A9WDjEd@6iA|?h@euXn^@?GG!-c(#`q)#O+X|dh>Czx7D_JyYN7}VNEZRYh|&Zb zD4p}W$@9GD)A_K+*k_Er$NMrIi3QeL|GUg`&1+sWd{t-07XT{-zptMYvZ7>l^1We) zw!@|ej=VW#?rhoYlwl?{WP`(8H;4>p9T?EQ|(?`NQJt^kDr zrO^iO2(TV{6?{b5N;JzF9T;pFdXwG?a|YQ~%buE#H?RI(d^^YY4$o`QGR2|XF9LW* zz$-MumHaGsX4@0tXGSm)T4uBZ5P&nh^cZ?gd7j_!-81T|L~)w6496vk-nvY5Ox$Xn z(x=U-Wvc}wr0rU1WDL|d+JBc?#ybJ)N#R&RIlo5iF_S7cktr9Tv$_gP!kNIQr3KE%;ekT z8~sQ6)<9BqE0`DT{q)A6%I@UQHuJ#Bpnh?k#nT%Y8=smx(D*I{QI|8Yk_-(En<@-8 z>+(ad10x1R$Iu-JSFzqd8CU0OF9)LubGh;U3>BB{&M>VOTj$ofx=O{nA!2b*9QIlJ z8^1U5wW_zcko8jZI3mRo#!K#`$*Tr%>lNw3veS-9+WsB~P*Zfn_{nOElT6c+NloXD z*0L!2YW(JSwVXp}S6uC;l)nTR}0vP1>7VVLEWL6H= z`*oGBr|tL}{ah=s_6B0-c}+QODg%REZIz4sxP^#KC5P?3HN!~Zr#MMn>el)mACxJ2 z%Oi$Pq9W1M5_zJS&d89{&RGkI&ni!u)~j5Oe))iD0&fR8_vMKmY_}Wl%QbOgC6xy% z44pmPl0y5o8$a}~#W@HwYUDda^rM0fi+w=D9p731;Q}=MvE#V*h!vz4?2bpZWiUwH zC%29ui0Vgcakqs>rIFH^%^r`R$zHm6@wPBC<)R_kEi!baOvjP4vn&7dG$H+Ap?F42w@tb3$^_5jR`qo$(V12rZmkcxj^cxC zSg%Y{+1P=rS-!^Q7FlXQTmsGm86A4-H@q@$;K|bRG^g4yZjI{8zdkM(CWI_%+O%n= zblw3J4uq843(XzFP@>InrUS?i7n95uKu$Zu0ZF^nH~K|H(MR{bDsAUG0=#z*N6@Lf zoL)Hrj-C=nc7~>}w=i?Y5!uZ+V8RlTBCxK_z+JqeRrR8+)#^B#EIz| z|5Uem^~<#)+wFSZpege1HB;1q9;>yml*!<(!n|Pg90@_Jr}f>8Rlo0?(_JM_s<@R2 zcYG*Ry$*lwEhmnP!qpcyN}io~ldn1SCC%RZ;YJ2iwQ9N)b4Gsk9tKopBBbJml6&)& z{5k#KG$&`d#%v1FUyzJT5-a!F?M+Mi8rx8&{fvHb9bp_m1a>n?j?1SLAkc;yj>_xm zydfp+SM)STL0PZan?KuOaXPTUnx7^Xe3?HhkfpN003P|-C16vi;zAKK;a*Oo7`I9+ z*`u6{=)rw7X=Y-nTst$HpN2X}gsI;0qz5Y=XmjSke08s`+hW^AOoL>kwy~9=D@LIi z_7J^vKFbl6tYa5a?f(>h?qEZ|6_PlCKwE@uFjo-zpJ&5Cp710VWL9iX+WAxTulyBS44)&EfRVuR}83R3$fh z@LaU7v87LSO5KvQ`=4`ig-C=rtAHX)`QwqeA!r1lL~-h%I1gf6mUL9YqKs0sFBdTkh@;|mV^mrTrdJ!!Y zIGV%UT)FWAyh^n?pB=q-yT{{H#F@Ut6Kz7=O`K9L+RRjqh_=E6XFX$sx$(v9xB0g3 z_EU)vQOjrd+Nr)mSKWH?PuhRWd1NsbG9Oc1tSgDbnB$D0<;X`|54}~vCCX5ln z8vss=SEqBtBYGz$==Se^V)cw*&qX1(=eye1Qd<^vN{#!4*s0r<8)d_z8g*V4V-iHO z|1K_DLE+DaeEMWu-xJP40ivXCH>a6Qoihvo7R7`WoQYkM>xl|%NECFJ8V>YpsCiL{ zq$pL{{5fgm-ElJ=e}h?7l5?XADT&1vld>NlU$vW~ZU=89wL2kU%w(0bAKb5uo*kQv zhL&(M2iWEDpY?NJUsFVh;dND6VG-$DFsTOCiWl_YQ#@1@MH&HwF@zvg?#%wrMR2lC z+S0JywYq{ZX1U}2%XRMMxVDQDMxA7y1gniEkIl2#o8KSlcHTBag>=)F78p zAWBf8A}0J2DiO&N@KZ0Hu#!%TTmuWrex!nmujy%=3p16a? zNvQWPb;$AOiFesuW<+xhtk!nm=QSkoo zOGZUqE~>tN>0G1uR^6__Qa`SPEW@359D5CD;n=!oH`n|*((s>qEC^QbaCl08{! zyQLRuf^KMQhzr|W+c0#B^QLM#)$^qSD>&*wZ?Rc77M_I;{bC*eZFvs;xhO_B2NiV1 z1RI(gb;i_QW-W!3VW5zbl)Q>6iaj>2s_I!yvK!M=q)#0lvZ+j6PplGrKem-jT6`$;1>9YBUw)%JOOsJGWMQ}QBm#LC#*)GNfO z-t(uLpLUJw&(jt0>L7{8!HuGQE=hr79zPL3NGILwGG8X{m-pg z@yM)~n=x*&cXjO#e!t89%gGk?`<+;MJ0hgdTo5!)_$Z)yr^k~jMLBa5DoL(?eYk$= zsdb$dm&(oZ<{I~Q-G3d?ywl-F3m;!B%CnnS2#^bU;qt7%mA_TI4UIv=RKKs`WsH;=VqUVDtKh zK?2DYf_5R27_{UQ3-1dk>j1tYxm<766JqHS5n~fbNuRQ?GI{)S+bvB-%$0yxtbmob z*gWmoge9su(T}g`D%Z%uwp;MyP5f4z>qCdwXw{l5cW{TD1Ud&u5?rs1dN=-cHDO#f zMMsm?DG|P#(Qs2C%USZyDG?4}o60D5-mvH^@94+ZPW9ayZA*p)VH^ zR3EzIf`Ls%PzwF0XHzCesgMlv53rk6q=I)e`kw_381!S*g{be5rAEpmQ3BEu$sJGO z3XHXjP~u``<}-l91BAgVnCu|8`5~`ylWckvE^v=vzP#wvnGkqICob;N#1gU^ul(^)>17Kv$YtxF%wwXZG7y%<{P z#1ow%<)wsfd_*ckd0(;LjE)IX5$mNU4&>hl!A&N${3Lgq2o7nB$sc%eRP!#<+Mz&U zs^qvnNv^K0n3HA%!}Q2|m-`O%pvsi6@c=o%cHhBv>lkv%UJ}=Baf?=&2&6zf07!3o zVQysQB_iEOoB0&FNxwLWq5ya)AkAEkSJ9!(MG^vSCJGG zD~O|<32>HNF#mLgy{i?64Cta+B#%U;uFtOIKc%=+Ovy4|CL)_4x_M?pj~3ZU(f~2g z-M4wegJuysJj5B`=xL6?NQdVRd@5|uagDx~e_uR6^J1-;PKNL4zITlLghFUV?hbp#8-!mUUtvnfEQ48+9D?|KD`GSISKvvAVNy5FArJU?hx8Cz-N zyQi{-lum4A*ulbkc5;IJjlRSU$obsTfuAzxDENAhA0Dx+y znHMab-dL5GrR^c{cdOf*5AV;)^w^3qhbl!L|BBBXO{?pz%niDaBZLEG7}-c!L!eM( zTD{+R2y7P9mnF!B0(kd7kyun`r(2O$C%%8>!~HwNxsmoY#(|0Y0WMe-hK3u)?I{W3 zU4VoMum6e|Xp-w~w;m1+)Kgn1pkTp9ksnp^;MZy{CVotSf*9fuTG~XxMfKU`KXKWC z@(1fAdQP{#k8=YWn3mQh7$V0>o0qzui8H7Va|~Mg;9Um?Vjew|C-Yt`&x)IAV`Ag< zP+E{mM6g3hw2O>bd?ZbSPCTU>B$+3CbWsH{P|1z;DN$>W@1okkG%vevQ@nHhD5;?TU4N^5$O8v4qoM6UVHMne4{2HQTJxpZPKBe(AOov7c4>S)4%yaIoMpj}o zjcj3J`vplz&|)&Cu9WRk@imjmv?okORPw9HT zGivKQd)H1~KWgg-9$N2sk6ZVb#|KAmezOLngY#;6*e)%|75zn)jCo>>#vkn{FnpmnEzZ(YOl(T9Tni-ji^Zt2(m zVb_U2S^Xe2UHt!_udDBjBDVO?*Z%ka!`Tym^WvlbiZcRtRz3d@7l40hocG?LQUCcN zscSkPNR9cgKmG52^Z$9n|LyzvfBKSsYu`HhpA)697NPznmLq=(`|-nT|NO1^@BdGS z&_G98O3LO~rM;21_Rq0#al6uM&9i0=jGN)F)!W;r8s4Iyp}`s{%<+>Z z1r_|I^s`F(tjR|y^%(KZ$8Mg#cyYna{CvK-uyEs(rl#B5mu2L-h1vZvaev_>my20h zX1s#@(xoOmDAhZ&ti|FXzMAm4)Hs)~U&u;nP@6?k{v>+s8-9ANMGghzh*G$0a?P_h zt|1{Iu?Y!Aq-v+9%^72}#?J1NtD74m6&!B<^;brY#kb#{0~XXTMt>Qh`v*jEUozr;+NeD&GIl zC*P=zzUHtk!Pv;i=zyY;qKm@KTeoOHHxX5~)TQhbiSkZGnG!FjLow)>Pn|X`3Zy8j zatKz!FTebvzhT2|)5J+HPL|pl@|}hj7SD|P>*_2x1YU}x=coh&MK6l0jBRUcJEbsI zyyd;oSnK`%0RbPe$tzw-H>aWy&M{e8!{OP2h9MiRF6S|-2wnTc2M^3@9MiOFIZ2gO zRm$yi;;va-@yGWpMvWS!`^M&U(fq&y_hS3ep^LaolaEFsUn;&*q;PLmM_MEHo^w$P z*VWjwYVnPe!veIGYUH? zIoUjGqQ$2`pIs1*Qr&0780qVu2Z`i;N8T%C`iP-x&K6g`x%mzUkm5K;+d8>A6%}?L zGu@~n##L<<`lhJS6_q^(^_h3FhK;D}PM; z;_q(+FU$ihXu*O77jL$y8Bj3}Wt=Nj)o8HGbaz#o3u$S_nVFg5s`Ki1ce^E5cMra8 zaDc}P%gMmUCx?MLf|*7OBSQS0&WT0dh>1%lO-*NS-FuIQBswPdV^PoGx=Xo+OF+=98$!DPAX4gH$j?X;Hm@KdLvk%e!e=CQ@d zCjV{WhVL^i`CRpNbe%}%s zCn*b4b(=b4#-&%UTxYAeeD(eJ-!HMWO0KA^6yyRkSOf>uT}x(HR#uv2x<>g9yj)M^ zLYvzuP+D%SpgwrC+`InR1N}ew&p!JaVnFcmu}_$-Qvp7w$RO(#*`E0?6#onMrAwd}D6Dobr_xLKC_rA_k#Ien@7o?8`#tXPlQ zVZ6Y+larP<7t(QX7B0FT1AHoAV9eK+?)sNC+JxPm_2#hKg@;sjynhy2pcWwTnTg}p z=ma-k;XK+iu44R@DJI_DS7}M>W|J;~=*vL+*fhUnIK6|KUnp9#g0Dp^(FWz%?CSn2 zm;jh)dyU^bwy3$X9J4h@Z^BCrLR9bZvNy+cBkOFLg{C(Q`P0pg+-{qf}* zHP1cyNCGcXQZk}aSj|mzhfA^{{|7-&ZlMy9$PE*|T+sS(*jt>PB~+frh_WK1va;y5 zcjtOXxaLt6zrd#Ii3e`Kf;7uKS=kNw(Op3oXdSTPW4!9_u4GP-I7egOd1piZ=)bU& zW*9@fcNxs7L{Z#i$d#*FxEJ{UNgjX$j(KVYOs=5K^s$*$K<>aR9Wmpy@b>L3#BAag zvqD)~7rc@-qnjBiTsfQ>K{1(=SKZ7=j`2CLG_oH3G*gi((zr((e0_7pN2LX!1%Bwu z{q=ZL$@b3`6!a)6aPhOzP0}!#i!f6rDB#eMjt|X!lWz=mPw`ZL8SE z;H7F}3Cs38ScI0tR@@u+XMg{SR>H`Ir^2u3-Q&U)eW0Z841nARJ5wB|0!QWcM8Cl} zaCMxiyf8eX7`b7?zZk@Do-$9zNzJ5T$`Aq9x8I{C)++P;EF3Qr)5mof$8S5w)?CCI z16Eg4_MA3%?sKmp@p`bVF7)+zO`5*!D|DYl@F+`t#^^zo2Z2x$0ZJuccHk-4?s+KU zNe;g|MFcT4N!+95=A4c~=GuVO4`L|TD)k(s{x0pMiZ+8QAq1Nm+4OD4ll9Jwcw->hJ-Hr_6I0{l}(v{uZ2-n$=r=7 z1hSQLlDzf5 zPCrL)1MBzdhnZgrJyUx|ws=v)lX=$ua>DE(3itNZREt8jzxediuQHnJ0ca6t2YKZZsa-_xSanrY`g?B^yi5i!c{W z?d@^QJTG|UVhf?I4@S#0X=yov>O+U5aPI2Rv&5N#M0Y7HY!=qUjR3-s@y#jB8Kcwm4MPEt+Pg1dcml{5N}Yd!t#*E>7LnfG(p5{1+^Z$0 zi=N6{>BpAE(I_Yu&d9(ZQoJGSC^2V5XxX{Sb8ibMX} zYl!y1EeOmJC8RL-n%=EV@T3ym7uU^Jb-ln?JlUA?17)vTTU))@_wIXZrq~sSsV<*B z(d_c}?+J4(MqQTc@6sXWv=;$bN3k3|_lA^@iFUe=Y7RWQ&^%`J=&l&eL2V+|G)Bce zjQ{;w9tQ1+i^_!^gNavm+{PXVkAZ1iprW#kKy{MB7C|7A+4RM8ceU>Hyg^-Lk40?M z^!RZkBAjhZ-KvJx@&$vBvFi(oXprGNIdRGIWNn=Y*;Fy(ev``K>t|;= zXMD{g^wHYc%~G`fn%;Y-wA6q0n&U@P{UH8{4EquSHDCM9(exeA&JSge9N<-je!1f( z^0*YAeoqvG3?QwFz537aQMYrLxR32YQYPZFCU4$ z;4M#;mX1MzVN*aws)I>Ugr+sB(88n&mN~{&9&1C&O#V@d(859%igC<=r~HtEXkz`j zF5){l0;0oUk(6`Wz*`*>O~HfZ6+CV=EE$P?ZHIKDq^?cawR5K}I!C|!{Ilwl6K?r8 zZ{D=S06a+ArIVb#E4hXywHOTPSJf77{)oqlyM%SE_ZuEWXiF(t)N zFUEk+MM8oz-NIL(W=kT`60;@CcLiI{2f_$l?uPxD^Z>=#jbx!psogMhEA#yPCe2yB zO)GLMqmKk5Jr^=aVA}7zHD^t^FLZV_Q%yrQ&Bs65Qo0v><@U_SC))4dP9d{vgOV8& z|2mi~t=fU8JPS)Ja0f7{BR~GAIQ{+B0*wQQN$}NaSt6+068Sb>DP)tdQFKyPK69$+ z@Pz-`W0%h$S_r`0ZwDouGiXxHUxjcklY*lrO zr#O$qdiH!a;gi1k<_D3@aq>B7g_R15iiW(#?qpL==f=&OO+a-zv)UC1%@$zk_Cdl} zsQD*51k|Gs`W4te8|#EIf3ogLrZQu93f-q$Nd|mbWw2Or)zKEh|WC4#ZS!rUM`gI#jJ~w&u{w6E+nQ;d(Lg z#&In9LBi$IX|gy`RgFGHt~MwcJWV_IRj6cc)YGeCgqXlvn5tI~0SM5nimPMU0Ssf| zbInnC=uY#)BAkk(}ImPKu=Y@ZrPU zPWQqmXv&-iX7ZoCs;awp^~~$2(FQXj zQu;J44cmYb)x5fFlhciGhzu-Eu*lShTNhNP@{=L>BZs0phY6!erI!XfJhMemhqM<1 zI6TL{|9&YMg$JRA17}p?$@Wa@I~4QWhYd1MU$X3Ukv&5X$$J?3=ne{LFzYuWUQb8Fre&&N%ZH2e7YfY``KmhLZm1x)vVn0C(o#!;!x^=2YcnJ~fO@?dna zUtS7h&tZDT7CiSDapxI_b&ic{eCLy6H@lw$HmqB}J|fKtUzrN2`$SBUWroYShrazz zfH1gLTy?3^578MJ+Xz}>!cL`<69Ywh!JSk@orP>}6VZqX{H>Yw58=@%x;EV&cfzB! zY#pZPxANB29j=h!xZB5=kJ{?>jC4Wc$-lPEog1;c-t9|y`HiflB=7a>*QwsUt{8?4 zt+7gfrEc9hs06=(N8NqI3#35a$^6p z^T!nQiK%f|GMk1EoF_Bjn6!u>Q~jxniiJU7M9Y3_4UMRjY<34U8L)OL`75t3APo{a z6G&=kId{S8%Fgj-qOdPrK@n*=a{cb-NmRsJV`vNymtK_q;c@xBIXKVKlB^m>V}^yp z)+Bjvebc9-qvL^e8ThrpZb1gT;H_KM+P6)21!oP3y1slYDbjfMVH{|)l1JT<*tIO?!2;XXL60qCYvE00qfAb zdHU*xr@^$=e%88e?hEoiDAZ@kyf!$`T0{7k$Z4?WE@u(TctB`Xl#!C2Hto{+^M7A( zfxRc0r0}LM>S(UWb96m*hLPk(!+=n~(Y({qr2Gw=AU~N1!Jl zJmPcpP~UP}MdkOVSnYo_R=5yo=6T*eKB>ElWWd=oQ?LH{=(oH)zevsT`2C01K<)uw z$_T~kcmB~za3UQ2;S51-+W+c!&7#g(8!DVpdP%7vW$CJB9z`3;5B8LtXcbr*t4y4_Td0C zI+enSzG$6_{o2pDZTff0r@LwCZWRE6#_)ifz$Zuv47on}gK1ZWo)r^cfgcnW7dt1_ zFU5;iJBR_y_5gID8a`RrHbZms_E6u3@F%k;ua6w8Dfdy^%1^^2j70(2hZ`VhbL;P< zpPZxaWy^?N=do2>1}Asfu2#`D$bAW@w67%jsA^QV$Rn%)R-9b+Tsuty{{|w?0!KA~eacBqgG!S$yn@dBGNchZfek z0*I@^4LZ$qwW(95%3`SlwWR0In-|{Id;89vz?7xk zV9!R7Zb?>~e09p%&L2<7k2oSksjL$=kT6nb9wTR6E z4oL5}<=U8k{dX(MzAd7g8!d5*uamO#e3a%Z~UI$NR(WJIop3OD@#o`WcfOQ`>nqd6%!-C?zh?}kQUA! z9P`QQkAaNvfSXyd8Sl>wk&^mgy!P6!4Gn=~@lPT(B=~QKfNBUNLzE};V<_te&de|F zr7;Gr-71hJ0Wsgo4=qxW!6AuI1>h+zHg@Ci;B&ujdQMwGH=I+_;7~96;)^vA-miY< zAvmeDp?E&{&;uonQdH4Xi7`N^2|hOx&i4UF%&a@z?aoILARg)ItyF*OpXT{9p}898 zo3j7qccOv^&P8tS?Bcg^^V|2&sQPaGlLW%z?beajV2G_?PDaLY#HmJ;I0IFfA&ww_f&bSAr(~i!$Mk$ zj`{1|stYJEQm_%ouRyghlj4s8grL=ndh|w8($!9uonedgDu`|^J!^Iei|+aS;Sy@U ztcM7ie70`l90O(yUj$83`^0eWlw0+CL4jH!+*bmAfdfQiVaChh3H!cYq+f=Q zCtFm5L;*pdd-%K(Tc33LZWE1X>Uolvh%!SJ@umdKRhOQWY!*PYgUYX5X~Otjao!yY zi;w`>hQ9wv>S{D2DEjodYwLqO3$rcqeSEs;>-u*dY){QfSWSR3F8-=|y3a+^eWZtg zQ88i_00QU1WH#oH{#A&H#as<`q}oOK#9P=9v2nQSsk3J%;MXo<1DyTiMXLo0K_B@L z>AiaSaw~}p9buhs97G?Z1Fh{M;sY-^H)_nd+ng<>GTh}4%_RNq^upRxp%e8AQB0$e zt(~euInONtqPK)Y?M3^?JZC0Xtu?v>ld?sFid7?ZbP9K1&Ad|`FSFxbJrh(%2kreKlQZCo5yVz^&Z&#O1AgT&Oh-Pd7eN_1Ob4NiR7qx-smQunEwQx%jHhlQKs|`<8wZgwuya-P-O>Du!GXr_-|eEdmnSM> z4zkYT*>G)H-DaWyu)wEw= z*VJ9wK?wx?gdUZyrohdZnSul_-#7tZ2*~XLNd1V5|MCK5e-^EJv*sYbUDn-EYeEZT zz;XW@^}wiee7d&w_Vl#SI+7y-G_I^E$$g3D@Kuo^fgK3IQ}^Mq+VY{*cp!)wwxS-< z-!QDeEyodwlaR$yhkDOG9~s$=6jTeK?>!PF?M1l{7=NvWKk2!>Y_QTxHQ1Ni{4oB@H93t1hI+QAE#G(;B1gfU?=*(u_Zaw<+K z;Gj8B?Il~?k!2~Rb2!Db!>qERBBS$?O>&I@&O7d3S<~I!orMmJNYci>`>sv^p^uo* zzL5MzNlD4RAvXsJ6XWWso_wR&A#%R?*fhMfEsb)L{>C#KF|m>5-)R1&1Ig&lU7kTjG2qz8LWA*p$0h zgleGGBPHeX?RW1iYutt7h~eh3es<`0ke6y7mb!1B+D3mzDg6@{5#K2wtN7y#>NdGv z$Z2iP_N7*e-zs!ecA(rv3_%gsA3)MWzJ}x=5fEk&l)(O316IUDGFNOmVvcRI8Gj`)m1uv2}t>#DbEDflYPP zB(G!xR6S*Z!J5to9T922q(Di;BYA%088KA zCrd0p5zjC6(WqtjlB|5Xjf75-(%|33JiC^MxFfu#6Cet-O-(!15uk8RbOS<=^vC}j z{Q}@ddG1V6;V3UMQ7B_;m$0vlxe&|ZCyAe$-%RL)K;R(+kC0J>XTr!3v5{dH%x2h^CE=nZD9o?vov_K*fiCy~@MCXhN zbv?&k6R~^b!U=A!uA-bZ?h8-df5IqcN|X=%Hgm>|g>jYgv$Ib${<~T*X|9Ha$c|h} z6whW7`qek(Z2x}3I;sv8sKcC67}I0K(Q6fDKEZe?LLSIG3!O^7^o~hQxBYsvM(@tU zc{qf+#yy)4$K#q2V^}97ZVu-c?M`l=lcN{&I_2BA>)Tx%R>e3}-+zVu;Y_G0|J{Rp zXf?qh=!CT$S6%=^e?U?oh)5 zEf)4WaXlLHh8IR;)5e$bPgL6mlvPH1tuU=3>cDn@U7jF_(jfn|{rj(<1ujo$jL(fm zX8FSPERsh79SR(iBC?25VGMOsEh5)2pvhTdu*(44=pxr%3cr}P*;OyB? zAwI6Gc|-cjTl5%d-G-qEl1hjvZqEE#hW}BH&#rv?{i*F&wz)Um{t#D{Q;^0D`yD0_ zN3d8MR-fS4P$=KP!8f6Zpc6cj<*Vdx*dVpvpGYdCXg8K273$bRvX*vYO3zhNun+XH z6C}1H%s@UKo`texvvGe$h6=yA13u9GKx%Vkb+tgBVdpug=3zqF{zw3sWGfa&5GCJ# z|FZ$X3uI46Lx-EUaG^H2E*lrocaV-TBiO<@8F+Yfn76>FzQ*$`J z`n`-h&gqNP)h+d6k_&3w#PyJRcx>U>Q5GN6g^cc7D@dTRvHJV>XYjeFPM>}|<(^72 z+f3;K%Qm0#73uSC|Gx^LiV@*|vu2H;_V8i)Rurpd*DH{yl$Gg|nz3DrRc%L7e}jpbRtafh#WheuvIcy&yk zGT+tKW-pkv(8Va5arx|9lSV%Gl7C4}hn-k1wJkqdZpp%hBDsC$*>4&*No96qDbK5U zU;kG*j{o(lR(}tVa=GeNP;Gs|Q~ag&I=!`$Z?^yN{{W$@GgANn diff --git a/test-results/history-runtime/markdown-deleted-comparison-1920x1080.png b/test-results/history-runtime/markdown-deleted-comparison-1920x1080.png deleted file mode 100644 index 4c3762ebe376946a6ba97278779d833bfad6c385..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 106890 zcmb@ucRZGTA3uDO28vRltc)nKQj%FxB%uTviugR-BctJY0GH^x$`8_Mo$un zf_l>i{LKxi^kevg!bbMA+9v$CZn}JjMA}0-Eq7eaF?_hg>6qHgs>~`+8L6z$`vA>4 zjxeS>d+vF~{F*&oaZl~zyT;t79l2Mp+NC^E&&ut%S#s#vr?8wDgJ=#fYKu4fygmec z;9WX6ytzoG(8^tT_{Zqfgo;pq_?%OO&9BX(DO1h`7w_G>r*%wj`XQg7pkG13iZ_k- zo&Ws|yx?}OC)>L1@1KT_5(=Te|6*H%u@|KQ$KO9ORX+2_Hy)FdlUpmgeS3r2#fvWr z3s;Z($;#>0*VlXI=8D_e*|FK~!w3HJqZmTs=HPHvAU^rx1zB!xu8^pxdwtK=a}2Gl zO>f@5HKGgob6c#uW@KmOaLf2>ue3DbZ;g$_SAE-JXJ^OA#Pkxszh%o7T5;xo?}%)B zF)l+(roN5t-y3h}DE`l5G_ai4(C82E_;V}Ms)pqMUhAK04ha9>JTb*T7y0uo_%o1_ z+w<<9oBrod*6lwwvXHhlyi^o;cH+c|bw(2%Yx~S^+>n)%qi}U|d-3}9>-5B!81lu% zMF+`D9RYbeyThMqYsX|?1=9PYuR=FX|B+pAQnC@WWnid<{m>#=?N_K6OMu9@q@ckXOrmUhh!+}5d0 z<@+P@KGW{q_qw~gT@KE!*iQU7iMi{kV9+nm8!Pm$@Mkcd_)(FXnOXVe^_ifEh?VFQ z!%erhFpYoYOKES&Ja_I~h_svd`3o1uoORqXoM&$2Pk%XMVq%j0awJbY^V>Hy$(8A^ zcl`bHsDu8UvxeS#SZ6U3^SGXcdO#sT2I5m{9m7W#=*xo6j0fjW5eU>>Z+=y zX8SB=MAOE`CN5=Ze%_!X*G@5|E<%DKK|P6_gqth=@Zn7jRkuz5XLcc>t?SpXcQ`tk z{CjXvRz-!Dqak8tdqRS-shOGF#fulCjCC^2c6oVuElPfVsr*894-e1Aw6wGjH8n0A z()xdv#XvQ&2pdkEdZF6=@d+Obw`UXul`r{&2M=h)@7q5L4o-8KvuMwE+Ac0G{^8T7 z^3M?xK~JCBcNt&5al`BRbFH`<+-#cJ_jmF!bo0vhS*3R8*^dmqYqUFga=k@ozLS10 zx#xOn`aS#h4FqT(n(J#>2k-8kuD$HMT$;Nrg51aKCYv~tfra ze_^*p+xhu^$OswfT3zHxO-;rdH*Odh8oo&H%FY(^@$oq(@XUCAyvK3& z`!#lYf9u)dOUy@aQtaKkx4xWMuBptWsP41sE+#84FF$tS!uIFS zpJTy~Hp~?2-n@D6rj5Csl%J=WzOKNJUQF%Ff8bJI;tPNurAIP2uvQrg?wYo;2IwYRr>Hq9-h6s_L-@Im3w;lqZj%L^fg zP3a342l>h?D`j7(8cYu~%(r!|ZZJ0=k*=^F{I=h9d7^55rdgjoxO%+JvWQ($k{JtX zd}5*mTZAu>Y3o)JNi*Zd&dU3{yw5xnFsymXpKaZ{0oO{k>XFsd)Z8N?vOVmG zg=;>3e#RIz1(XnMP^+n5XTN>>W>9`-n`XMnHYFt`&!(lhtSYXu!q%`(Md|5A2zibZ9h6NFwjj@vA*hH%-F5&ZiBwQzGK?jOu^h| zWep6XRXf_hXJj|i(a~A;R&L2(T^uSkUAK|OCnZIYhFQ!LwN^|*qH9X*-|{-T6K!DN z?xXa*l%X#|OULk!t?_re^P`6ZmzbEC(yV(=5tYg2*Qb)&up>c_A5)}rb2X>v)4I60 z%r7l*3JA~~KYo0^UuKPxpPzsD`}>VfPEL+XBUvwEV>jsP>Xuhk^|of1&Ubs$M!$Xg z_Hjr-!Qv4K38tczS*A#jRi_V^4~9!P(ER-Q^O)&Di>Y6=juRCOhUVrElC-lp#Km`S z=TVkBew+;RGG57K8J(KC72DJE`Sab8&V&13_YU&TzBu8>ao~WG<`I7WEoHa2oUpMG zp+i&1Dq7jHVZ(;`-ar|vnZb((G*d~~U7AJiQnzW@0?5{F*u%}efk!#KxYU=rp{3={ z%usV#W#tBXdiqkv%F4=3w6s-)ZcF2zCB`-_EfJ5$!os4!MfWH>XN}@3LO#l8`I!63n zettfQgpTT97tjt2vOJ`}CVTem7CpzF_2DuetToRBt76ZFp~l?W!X#?YRpxRvYp2NdtuG0QJsYj z9r97*-TAA#(0PXU)%pDx)E5Z}{_H1icYlk&AZs)?OEEqIe72Q|$-lVxn8}SBMoY6J z_^t9E75+iN!QNMDo|b(6Oe0t@ecrDZwXElTowRpsEH^4t(4$9Qd>YA{YP`L?tcF{J zKSjx~?b@|#e)xS|s(G8Jrk2(Z+zh~2aY9PrJ!0VSXKAWonZfnzl!mcqV z-Thf#uR6c5VAz^|T}VWPKrPZM(--c@aS#n#%zl`WC`F0dSu}=*hGMSsLiB=qo3ZhF zjt8KxT)up{8{1nRdoI(W<6dRuDPqIv>QP_3*l5wk=I}NrXBX;yg=tDbtgTGV&zqRf zPvJ+mGaa$;2@bxHH#_(*o(iP;&o&8XA6TycGZ=K_MZVG&D5ArCjL!83Zdm$=3Ny-1GN8hY!4c z%PS@>&O0(R`Ll-D8n>D*r@nvxUX@Jy(xtoe^N!IO&Y!=3-xV1dNh0a%>l4)(TZV#! zLJ_TBV`I!a`Seh8iiYvr z6Re@}@nWpq7jbbLb94gUyxG_H^JmG&k5o5v^6PeHnIt{WcV7`FX428crL3-wwoZEK zfO3Sm@Aa>->|9(FWMpJS#d(q$CgqYjKIKcz@Gvy=d&$6vE=J>-fbO7uL8f|*mX_A| z?5u@DqH*Q@ZOJv6=553T{H%FaR$sq$WpSqLT9n)EzP`(bE7id~Wlc@$^Bs+iJFk5X zFTtkW#=x-A($W$OAb;w!gyZkm&kQbK{$_q(MQUb;nYp<&x(NGzHWro#*!9F-_6iNX zw(e`3%0`k-zT-A5wE5Mg zF`x;uP^H^gPMjhl7aVDKGclF5wQ29a#TTS7{z;^clr*PeVzN)qZRVn!yu5=mzmASh zu2h@@ub`mHo6)4Cq>8bkH5v~O4~mT&dwm)7JTo&znVFe=mj1=!1Lw+t2hY(0N*~wP zFDi4A;^XBtFfbqyJL)heCnv#=a&vd1pN~9}LscpN6e^PDG<7v3EQ}M7^w+On3TMv} z(BeYSw_y4{)Om~;!gdfdGATtcFp^3>R z5fPDZ&CPrdKtp^{Fnb(;6V)^{sC)f4Yz!u@ci=$&7^MLa)cxIusYu;Fes}?my+}{r zQ75w|nV6IWqH^o7X;U}GWWeTN!pO?kSytSQH=3#9nKS3~^a5_*zHOh>Ff=%r>b7JL zxP{A;A3l6okyh6B3g%ICCFSLE z*>SA_udzA4iY+fMr-E|4di|R6Vx7rZ$+_8rE0{R7ar&J*@yS5;BNuJ2t16EhH*1A zGfPa52n?h}Crou1(;IF{TQ^oP7g@iWlN6&2%7SIhQu!(&ff|)Df1;A9qf%c>iP1RjUs7J_j)ILs+mSzf=s&AqU|{4LsBWdIAcjEv0dnYHI~g>GS)V$Z|E@}!bS zXDtm3JhihdW*oxW4aG@t+BFG!R<%ff|Inz1o4H{~hUiq4-qS3)hA?}_;^L;;$gtP$+_ z{d<3VT$T*8ftlI;A3uy9KYd#I;lrk!oSb8(Mw$HI7d5bc2@vDHJRuLjPRXAc_WXIS z>#>&-r%s(xOtXDup4^T0{`&3Z^iFM#piS?u)v4czPfAE=8!5!BJQ*#CzYxb;OWS^q zE^}nc`1hCBC^mP-b3;RSanVsqug)7&P*8LeXnJvGh+x(kOug7U4;8rT8yiO^wW4Qw zFrQlt3%fJvyUkCxE-pG_TRME-8_kJFIH9aegZ;|>tY#Y>omXRm2B(-9BLDy$zMEK3 zZ$17nw;1_tP$Z`1to6D#pL|Jv^xT@@xhqngxoxv`Bq4)hQb<*DcCY0)O73pwNd=|ViyG@G^W&71)G?XRI)9#=hbK-TD@cJ$ zNJyv{o4tE*kP4azc8gg{Dw%Orz{o|T%CBFyyUdOHK6$beRmG)abyreStg(?%_vk21 zn&yFYw@6{*+p60lgMw~t<2*I(JS?%7-k*S`Xx4yn8%!ch=W361nPnxTGDD$~aCLma zhdLtb`yLCQ`|NWR?u``d*R!ML^nZ@Ha3fFBZcuHwvw+FuZ2I8P5Vi5n9XpPlJ)5L^ zF!S9zI)JqcH@0_ZpFVv$+xGV()zfXb6yVv5k2XV1Nkj`GprUner6E2^luTix@=dse zaeef0tD86JKKJVX{{7n!<$=K1-D6{dT$;^^m%LL`g;3xMYIr+8qg@+=ziFl!ttaT* z;NYNrzu|ay34Xm4q~M&YYV_lf#>U2q$NMjU;%>mg!ruIW_2xK|(VW|nrNmu^Yw#ZqHDFkVDmbHf{W^h>&uMABRkOQ} z?TebR@1nkR;)Vj@P2Qc1-xAErjfCk1bnbNIIrO5490BhXvg$qtP;sZih=86gka`N& zR$VkNT{7$`^_4wuG}@lil3~gKO1Ovau8?`_A;w+144ad6-y|mbynekm(rxzAyp!d6OV_7(jG!LQ=VLv?J)!`>Q=r z3@{MIAf&$ZHReeXE;k@q5Q-Prld7H`4KTT(^v_7TyK=;m3Sg6=!MCx`W-69rSCrJ& zo_*6=$ObkY2qi@+QgRokd;oJD=!XR9jaJrGa-@(sA5C zDN34!Pd)LNs_ItYxD9y9M6C=(NB#VjSpwC`V=;h;2|>R36n2CbbhT=AW$E0-i|euP zKU`i*`GK}Ok?lCak*t&RC62=C%9Xt|Y|{4uO2J267k|gqH#hqg7E0?m{oDz8XAe6& zSxUj|?%Omh_nz=+{AkwqsK9lFT<5LwXPUGXZJO-Mfyg|TC;ZNvUcPYQ0%VG5-gtKj zkYwB#Rngk2M5ftya%yU7r4XUx*ICju@9*SOH^AO#DR4Q0E+Z)^>GQGMq0?z2VCtRw z_vOH3pf{nAK6y085-Q;!Kt)AGNDZ4Ag^q=+%jW|=(sy6jODJSmPA7290V=DZCVp(t zmzY}t0RhLEMh)K)v~%lUpLPMTuR|-U97-voAw5)l9ic~!-iO=VWaImC=J@@#wL*Zj zm#C>_najEuDc`s_p3<^1VN{S8rP=&x9^>7|q2MhRcGmq%dK|(Op;n%uZE`vA^VhE* zfJ?*YmekTSPd*3;s08n^sWawu)*QjI3Fc9`otc^Wg`w}v(*w7nqS#`ULT{=(DhBOm z`MiHY?5I^Y2{dKm%NfBLr^J<|xtAzV*r`Rm!vEz#{MwlYA0O`@A0HpE(FuHK+MG=6 zRYoBL(x*?KhzEZa7gyHUcv0cw+(|6z`ZD@LlGTrLO0KCdLpX?HoH7D>##BV5Qilgez&zB6BbfUxMN*Q8Mt3pJs z1*o2z5K2f+wm711s6nu^-(U7}d;Y!~`}S???`Q33dj$4?X84h-nk5@T^3_iv6VYW` zmjMv=!3gp5tJ)s5yq?6szyM4_=!U+&z68^QvawpsyWY*!we_M%U8u-LNS>VJ^eHmSR0s^PdcYoDIt=03~3JwmQC|X;gje?{T*rcMOQUzfl?dH#q zF04!qWjCO=K^IidYkqd%634Qn`?BMUj`5C3E;Z8E;1P?9+tfh<&~c$z6Pi5qKFv@C zTiUe$IUTH`Zf{BI`*w`{(i0IDz6IL+lwUjgwxG9p>9dmOlP+cIA(EMOHXl7fz_~J~I2|yOK zxjPnBX4kJDM|FV(fG*|fzOrao>O%=Z;+U=Np_?~v?s=jpY}qLZF>PJald3L{H7URw zP?Pn*o}VJ6n1H-6*YjvH4?{xkl$OedgogGIz%g$n60ICuZGPZoU^KW4z#1_R*;i| zu@mqJ?6N0L5PO|a1i9!+Dk|1v2gw(?uZ#|~ZtXaOF23FUsp4zJx!I8@%6~U8{>64} zdOuk>^d!iMjJtPJJt>C8!zf{ImS;CJJq>lT<)!sbs`Z4Dit#CHZ)b*&Ge6sAX^6%= z*XcqF{&VN<-4e9)2|xi^>^~@Pnz^?7H*emI9uN@azDU{B)HFUh=>_Y<(J@;nQb)j2 z<8JuFhn`Re4(R6YK-ohhE{4q@>@ccxKr4L{aDkZh4+<>E{bt))Sp(3SdI=3HC}`W~ zD49T_4nq|3!heQGL;&uwb9sLK@&#ZK<#RK;b;Q%B8|3BXqYpbtU-`Jh(aDLJ9jHK> zSr)p1+G^W7RLrL$-zFrK)z)soR1q5Um#<&h>FyH3X-i9sVdm4?bgX_38#xWOQ}72ZYIhI!7Ww z1zNXm9m(_7Ei#n*hfkk2^*Can6;rN3hl1iv6 zk75*EG2Pw1(UV`cxVgE(F4BbX)`D`iJ(?Jkj5+DU8x!GbQ$Zx@`YP5VBZcB z=6BZGs#UYRjEeVP(A8A$H29-Ele9*g#DG7@2ZT)i6mu(;snPpV&^ zLcLL=NXMZ5;%X57zV}F%8>M{_rjt@?{WXhXfLd5p|Kfx&+Auy54dnqF=e8Wjw$Y7$ z-8x6^+~Q+WVHEy;2bJ#^Q(V@>%#4Dx4A`3b?p-PFI)Kf6o(xisT43d2=$G>oy=hP( zUpt+-sHT>iq-9}xYe~br4Z~Q5F0YZIR{?R_0Gb5ayPCRs%-gqAl$4Z2Yr4q>N5I6w zVzeP`YljMoi-Mw}EUZ3e78YUqVNGbHyh$RLKWv5aD4ELmf2^-VflB1rd=NG8D_)T6 z0S+M}d=c2zxC@5eC-{7rta%VnpSOk(=5_MylfI7JfA9dBY+G`!F!=oWc(wTs+#rLX zo}7+Oc)e_EM+eI@LH$aALUHrZv(u@#Iazpb;7Yko(qa^)G>P%cJX% zHm&XbYw%)RQdB6rKl2($oY&T--m>LE;c)T=qcq0Z*^lbyPyERO%wqQ+hs8viezP() zaDZ6fjg2?53k-S&o;g78A1r^8IXh0B1)Sv6M*06Ao4&gwD+4j6KR&^V3U9cbVPQc%^` zUyCl=^Jmh@M^B;c4!9FQ$4IYrPS#NdB0;U7x&|6?HH|K^77u-TI2N+S_%A--C39MZJ%YkMLTc@d9MbM3)sVcWTLCv^F%el;MwltBtUfbq<569n|JWhE^)EJO(09R-!K3r}((L5nRR8?=WF8&3c_g>LE~*Mb-yL-FCAv26M^B&5 z9%EB=tY0e99{uIk5CP|^dwF4M&Q<2$5mJc(XpYYCHqp|0{^cDUjMrT!IsO4AfK|{v zT<9;DnaKP+jZN9w7p@wCFFj^q7>acdT^w|muaARR-jsF5YeD5;M$Cm zjzX(rYpY`dC);d@Y7XK#j;A|*;zV!ZSdk#MJ(d$dM(0Q_Di4G@)r%Jk1k*Y!Mp`rW zVF4Ab&ZJm0cf7ko{qFtyi8_zfslxKvH;PJ1*bFsf3JVL1IZbjA&NlQ^e1Q>2nc~p$LVpy|1I*3&Z*Sh^ z<>^WIPb3n!+XUJx$I+v^uq2@x+$t)PIl#~Vr1A}VDQp&NIJ5A2dhqLDHS&3m5KypR zZhiWsgkD(+Z*z5Z6_(=gq!^wJ{@(^@o;^ufoi~pBD)HV3mvNnxloY_7;o|h~t#@2J;qHWKXvc)7-YNku_{a5ag91RGnFeH$wTKuB;E_jdBtr|1_6%$@i%g9R^D_w5N% zfFAD%2})L5JFm^0$b^`+2*JWOhNdycmHb~Uqgm+cls8sIP$ei5y9pirz<~p!)vIkp zaZ-6KHAhPBTRt6sQJmVW&!E<{jP2&Z%VfAKWRtWE^7 zCiRbwx;H=aF4+5@2m_2HJS$m}NB0qs*8LY^_wDTl@rVpr*gL8QnH3`0Mjjp>sI|us z&jH&4sBx`-A@z;OSHLMC_uYupdi+P-fGNtBe3*iGlL+_Qq6_ z1O)|2goZ{;`Yw^H#qh+iJzDaeL^|E(bVumx;y7Xx^PG)AkUWV969xp9*eyuU+Li^tH%&j?rPr1r zV;zKRuFp7xZ$5eM+%~Ksk8apKK5%d0u-|H;s)B*`0zL=WS%{c52Qp+<$iWeMG!kP( zG_hVQlmWpa^bM%(#qd=-J3C9=TLY3{U%|tJOf)_>=NA#7djw^^&8Zq$C8&M)=C2UR zb+WCFE092YIFB6BP*ILINh<0%l4g;d`JE7Ib8cjJOddx_MhB+?b8% zbTBb|^YSEYZEdZ<%wO?&QgymANjzoSdUD`UoUE(Obp2ckk;C$Li{8 z6oYaoJ?udW1T}B8CTAofbi}4gDO{w2lDUq=zR=d_Fyio4_cZB< zsAvpiNK}0ku^grobm!PW?~fgzhq9F*Z__1x+J3B)e_0Y-h;UtNYimE$)m5Qk2Ze@G z8XFt$U|=vtW&r^9_e2X8FxuLk2M?fzobmIJBx)3fk;q^ohg*r~PD3!wb+Vd=B~wCK zQLz+!R>-iFf&k+f3#741k)9wzMF307b46>uFi=oTFgmTZ=8IqhCl1h4^FM-{JzhpD zQ;Zl8p`2i}Q5*?Z35xZ;9aMx&h$Z9*c^IYf78<5fNuZ#brtadBiL5+FdSXJ+2@|sUf&C=*O$V|)m4&E&V76+&`Jo3k1!v` zdt1}kXf8biLoceeS4PHRLIH#VT6b<^HxPMvYBPF&=BHj7M*B zK{>bu4GHt}g5T94iV_o!7;71_Muftx!1c(!|5a|TmPwWC(#-w?2ZkqIvvLY{+QT>k zqVTb=%ChK?#Y{tN_q9XZfkZ+?6qRpeG!!u%fDkI-*Rio2d-tw~NJQAZM6L~8MRMws zh;FAP@aEB@M-`Nm)SSg)0N8Lz*(=%LTlxdpn7Re0htKO_6Y#HAv4cNo*36y)_=+1o}@X3n?ic zb&;2yzPUnCD6PX+eE9I87@hXT+qd_erhb*68Q{@~@KY6=$9)y)g;(-68>2Jq%41IY z6A7&Y`i0DJYJ36%168Xv01U7n;fkG5;Am-WHL8BJSK;*O64-2Q51c^Xv-9$(pSTg> zJTycBoote+scE>l9r8WQhzt{5>np-@b7T$MICv zci0Jlg`wuOcXYhKvv8$0EVBN#SUVW1B*qG817L}=%tGuf43#yCI^pGU2NS&t(Wf@k zBPR8G2m=dHqU!tmYds?)Tkz!U-=jd0;D8X)f~=`A&=%3ukv{c$*bd=k``eTbq-BjN zsIX29O1#!9PR#u(G!cQTjto~RLQU8sSXi<<f9uei8tas9RM6(L^}g8&jp>>;k}mLmvnAT(JjoOLm!vy=b0y!=Ke z3nsT*^B`{%B3nMM{wg)4|cBy;n+b>Zv-b3Y-J>!Lkt=b3_V1D!8YI(mmWkA zi74=;cCw}yZ(iF#%X%Le*Z^yYNamyC8Qi$hdSzw|x!HykeVHC92}G8|rQNi!=%G}Z zo0}6wRX&ilf^g$UMjoL09f!V!MO%Jr-9}Yy?Y7_U|HuXS$G~UQXyDP*uYSu(iHQ%x z!`pl23h>}_d*k9E!X+CFx##p!SV6SxyLl9=MZ)Zbq8zQ?y?az>RD{X;#>@E;P{!H$ zh40s*Dp1%SK6~beC>EhEceze&flU&KkR-A}21Ldc$scFQRe+^5%u;zp1(6FSTyk*y zJN=O^G@!*qcCfR+B@M3a>k;H-B$&rg4Z)i(+(Sz`9l}Xu_93cAaC=BRLTVHDvb-|p z!Jv0x-wxTB6yQFSvjejy9hTDGzxM_nOV%r(idVY_D1)f-yE6NhgQ1&QSy@}MtvNxd zd;0sEf49e?35~qHgQP1FKgXEZIVOYVdp1#(6x|C9tU_NMN05a#Bgn$o(o#^3MGpZx zK$mqJHviKd5RyYTBfQ4h+1XMV-rT%oJPE3)l>2=2OQP|(I6MCUE+OJDLRUXA&Mz)f z^~drop^Q|ajl*gop~FHUF)SQH{IIyVn52=cb4!W)1R~cEJ6)!I!myDbpA%tdjAl2Q z(x%Ouec)Ci(N0F{a$hpf`)9aZ$DltKH#BU+GwF_Iu)g@YM;p4GUlgw_Y04(4W;kzpf{AXW=vD}?rJZ2YxX7+OXq+%FvdfIIP~rq?3j z)2gYjJ@8@^;?S0sWA;zp!E`QNF-DLI2Raadw|`C&6%i@J8IyB5I``ps_rN0)lwKU* zWUubJSUQ)2ZT2uKiWas2))A+$@HP|_;OEiQkv!QK#W>+Y3=;4!SrTP8Isykj|Jix7 z$2C9e8yapUCkx~k6l~kIixL$Li9YJ2vW$$3v3=WA{Lshw)j0S0aCD=9d&%fXm~MO>3(b`sA#mzIkw6US3`=@DLGXfLYFaf1=%{F2jZQ zcgj>kCu`QTXAImbk%`mJ+E;WDjY(-$%Q82DvLAYMOvUOj~%d(%pr zIH=gqd?#GpksUjw3ItchM@RbO`S*W+dT3aoZ83{S#bqkAej8FRL{LBEh$SnuaDdWr z)R2;hT#EPZjjnraKHmGY*A5BB3`|fjjij-UfXLNoSZoK^Z-$GI>`CB{VE)W zNVVx#Hl%slrVAp4joXsvAPAb8kUos)2Qnj>nd%CQh+eaU9TcrD@Bq=V1HsIN7x@@5jA53w%K@BjvR(qbjD&90)Z!PZ_c@v)`5dV`W`EXVdQe} zIG9mOneVzVsq8O58mq_SX$pq@tR{4Mud@$P2;njT6e3vf`lI#u5E5H9Cp%Y5c!Lyj zlfvz8-jqd*Gv$#+mZ@nFV$qbaM^Gm@k-v+7Jv@R9{Fv?{suV`iGd}*h-)TCmJ)HvQ zop9w4*HYDLda9HdAAe5qfR?5vanNb&UAa=Wf;JQmvZT`wGcW&&7_g8rNqXxa5O4~t zl|Y;tdQPuvgg0*4?L$cXFapGoO7WvK01N}!;wyOi=n=WGaj(RnW)H~!+H${)u7JkH zizn68b{sr-&?m>lkA{T`hXiESmbU}!DDoHPk_Boa$x#Q8@5`N-XO?D~e|jb6*xCz%FVE z5ViUpA{_fhCkolP@mxqE+QGltE|KWMY{h5D zJ2cyY4iNr*Q?jl<<#z648X8$0%S9c(K|WDkunvR{ANIuow(Hm9t#otSJlgCaDsSgy zS=0Kt?}=hhceiJRgadR~?Kf8Z`}da+Gz7#XD9K^|2j^j9#FXR%aLX|dv zCn9}pTbYb=dl&Ng19&!{3 z7;T;)WyJ9+9|f+#hHJ7aVAY&3RzaGGtQe7}MnH+uyd+P&AJhd~7?79;*z8H`FBs}4 zxabUleF*9bkp$6)t;kYf9@s;fcJ5q{j49+=$a|D+VNlz?ecOR46cQFL31E>BLP7xt z?YdEB(FOGUs%&s;YQ#J)M6rA$)ge}hrHnQ^fZnNeCfR`rlmb;pT$NZ z0vkA5^Y-zfg#;`+9h}U7#6p}gL5kIDJ+-(_GZGj6^!zx)$cPV8p&=sDT3S^VSCux` z1O|xHb>EVC8*v&FaTdkKB2sQaGHgWR>>P296G6mis3$~Z&m*Ihj&&TE^mJW6xHR5O399c{9wWt_S+qt+Z>sv(`lI~6wp&ykZ z=xMz$d4+&~$XOFozPKH4{bG4%*XryMT(=wiggDQR_L=u8795U9;1FkskZQsSD$mso z5r47(emLY%ul2w=ZtkSz>DT9BWEl{7)ubd};3{ zi)9~qKFd4#vlBKna0RfscSs21>nmuGA|xXDXR^4~k~cQ~=IwG|?^yNY%a163Z&BF8 zer$l_yxe`+_wwHOuYVkC@X~*e!LiNkT22LQy3R}8$#B3UEQ4ioZy4bdYw8k*KN0s-tzNe)8PAX}CA z?h!@On$T^4UW?q{vChq!2k4VX^#ApgugmlB$s*4i46bx2H{xYk48ty2)zY>sh7$;-#2=|xx`jdyF{;h&(z`q9QBYPA)rV9@{h3kYlHC~E9^os3 zeqlrPcTwV@DbO*x$cRQ1ge|vI22%3x3=kY&04_@0b`4m|Dm#MkN?^ zE<~T?Baq+cgp1xB{T%PVBhPSF-p{&8D6Cd;@&o4qz5Eb_w2}XpH#B5NbOosxjcWZM zbpoi8K-mmY=V#O#;$FQHg0Q@oqi#=a&L55+K7_y&qsZ0GIF${ubwNw(-gmQD94(y2 zDar;ZuevMziX@2$3qgAO8pJ<7eEfLh;eD#jo6S^DU65<7{4HID`|s=TH$E7OuN31c z+(EZ>Yw-zMDLLeOh$h|D6(up6z3yd0OT&x1%YE<`CUAJP+e!?iOQu=R#k^n&!e}gB z9#Qr~g6;ZeV1j>s`dk~3ai=%G;+TBn9OVG=qMoAPnVq1h;{=c}!T_M>LsvT49J|Rz z^QV-X^?W$K*lSHOOGGFaF8pFrPtiMj{yZIyhKe!M5M$Z!awAUbzHk`pBm&zBjf1VG z@A)${C{6y%1pW-NIqk1b%6bh5HuXMgWiz1Rsk)-ck9=Yg%21aYQm zCB-#9%L94zYP_+Rmv`{~eFp)k%f=AiApb)|@`qN2b1%jN^)DP953T9?4G#}rZ9^70 zI6V9lh_LofV;F!5$wT`Hs#6un){o$j+0B$L$TftT@ZGGk$11xpzaEJ)5!RGHixq!< zSV%70UJT1AS?V+y%nG#32Sfdsl=J7$YcCyG8WbiVr2dH8&5NO}){`3mW_N@+1RMtGbqd z9f6@3g(YEw00M&g$rP!7-H*b?fpH2eFi@zp$x$z3Vm58rVz4}Sh!5!)16Au{i`VD{&=V#$h{wG<-~pscP=kJFhw=(9XrTs{bLKKED| z(r+;nCE1U(RzT<{Iv0}dRW&vK=;uvCL%}N2kOj6t-6l3ga?z?YMum(xLQja^fGz;i z^;wqssFU0<7IodAQMX?tUwUquY>3F%meC2~8=$^nTlMtzmRY(_F*(l+o&>bDELsu8 zIgvdF4&29CEP~ULzyutJlClUZ8Yc1VHT1BWi*5ad-#2SeJti!-$k zpH%%_$G(WOM3Mj+j^GR!2}trLupp5OhqMz4hDqe7nQ36qmfqhb0y{k|P2y?6(Srx3hjgw%Ym5!SEs3M%R?6rF}R6*jT78#(AFQ0z9Czig3_?&nFbBl+5*uLEp7x zJ%dg$(wrm!^vhr=IF=SB?Y4+?INU6s1UKmZ1*>MFVW!DY2$i7r5~o|xFRvoD4skP2 zU3qD7@g|033TXHs_!6|ww&~8+^LPmn_CB^mwcRJ9G*wjFv6}T*h^SCr01G(*EAt}V z%27B$X*<%o6C*7)v0$3`_+5!XcWju&4;=77M+tx>Kn`haOmWp-jt&8U&ZfE zxRkggS$J@8FE1Gj;0NyS)~#Cz2>1%<=8mJ2P2tSdKns2b{SAk*jUA>sK8|om0l{j5a}k} zF;~b9g@uK1lYpbYzI8Db1pfaonh00s!PW3egUs)y;y5^AlE=nlq|$iJ!XmlNdiUlH z7KIB}J6)&FHm9K~W|loF3ZFMBhA}T;wr2Pjg4lLFhem~jfDDmVBjM!1F3>4L1>Ihq z5ezpS=M?&Zb(42KimNFr^M>i&tV!=*k+gDKN>WlebZY_vU?zv&S@o1UzxE9?77Yv2 zxlUzOCpDM-Sv#qTyY1*dK&0XF!T_8_(1v2Dh)&3nV;}r%(zdjdsBTuvyP(_EUXbAj zwne=40XLz$B;t4b_B*_m2p%dqkGlqsMo#4N0mvh1=yuS%brW8yWKPY@ypE18K71Rq z6zpa{)bt?3w7F@hU(G#)LOO>xn{#`LXxIbntoJCXqAtJw3)KGki0WOayXxY>rgJQHVqZINJSA5QG8c zR_98L_Qx9;MpqMr)vl|m}e^L|2=wI zv1N3{crD3M;!H5KJ|ekyX!q~N1O}|zpI+1g(HJhq%^UC*om%7;1&PH72&jmq-L{uC zxVjwSIpSS2)rbHp;*9Hl99}R=GkE`fFe3sbk9aQx-bO=Y2tXe2BAS9i;uID9mxb?j z?x*HPJL2EIjY&+rk6oL+Qw3p|vBD(*G==?me+C-JmmHgGS;+-(r!M8(+zZK*4E?z5 z>ieL`NM$Iu*f(&05Qj+BN<#gIbNRECX&3Qw7TeMGT`(*OIs`e}5p;+|WD`J1dI->g z77vn6yud~X25a+b(I{c|0U2SAzu4h4@s-WYV)YrV>6w{Nk90bEpApD;RegDhcKybU zHkkg1cW3ct8E`?jm;JFSQKO4Ccpc8mpNU7$$u3nrAAAoI(+-|lE2r1>{o%aSb)2xp z*`Nn_36gcQuEXI_3VShT!W+aP6$TZRIuX{mzf0S)hTmRKBsm<%OEy-2_&{Js>{ei_ zT~f}6)>h|=a@JOt&|r1k7k&~?t*UxVR+bzJr$tssa{iOLx6!& zvy8x7I@T3CA8@lW^^T3zy$qE82*}`wqypJMXMse~e1+in)RZv}DHBf#Af0PJ@{z@% z{kWA?>d+!wETZop6cHho6|K}Xkz*vmXq?3RtRf+FOhHQj(cfPMKCfqaGF1Y2dhp4- zy?6w(xGlzIQ*#<3W(XMewdQGlmh>(u)^+Hp;7iFb#Y|R%QtiTtIlj{)w&Dvo0p$dE z^SddDDXYW2?b4ItKg66Ult;T5(YGTk(%0>QxviX-Zl(f_iGTrsXW)*<&_vMOdI8w2 z_j0^;!yAe`;em?a?N9+UCtFXOM)n5Z?L=bnCK41l4I#Yy0da?DG8#tNQm{!8#%W77 z{y(Pjn_UZ4_XXVHR!jiSMBGB}XaG#93}g#zFc}`Gm-~EXgZC}uC2$!7NH9nOyg>WI zm(V|1{rm2NW*cKD#zPN`+<5<;5ukk+lS-efb#7f6-q-+!Z%!Zh_l46V=%08(fQo(h z?h($x%sx<*Yds5yubzO8TNFU^`Xuo5ozzp=4d?$V2Yt&w8y;0clx!K9o%KH@*Ba4b zq4E9dUtK21M$MnD`0D#z*v=>yODDNFMq;zGTV|O3|GNB#oVb&e1|;-$LIM?I9@!pr zC!N}_3?|@&O7iskzdm{=JEejWFGR9L8WJn^9Gzw#Pic=84rO@5gZ?P<_t%D(X@!$E z5V|}#2x|NjZ~CJ(I~f>)p$EaqM4@3}Ax7@spLEU(rh=RC`5PJMb#!pU!u0;@-+#aV z^|x8urjxHKHg8x*Z^ha5)O{Fh7Ui&G*Ea{qBYxM7H z53$gj_y6-7j{>=D4)kiu`;{yTHU~!rby|$5yv}|V@;Lo5cU}L^zBH=_S&Q6$?$PCu z2xeue_UN-edgKs$)jI6He9N)$?po}{=FIZnpD$gt=QfqmZi^NEA5HnNQ1h*U?9QF# zZ<2FgY|Pp-(;93FjGQN$%A!4E$?n9z0$iVVmT|B zYd5mtn7xH)O3{?~UBB)7_wyM}k2fq2e%7D(Hl-r`d-8NLg>go~^Evf`s@N3Kpl4C? znhK2T7HPT}vR28X^<3h3{&Yw9fu07m(>A`Y zt5X_bX$vikB1W6v$JJIEWgargGa8}dP2deZ;=&62k^g>@Mbs_hE?^%=p4{X>3aed5 z)#=dhq4^V0N5sONLt-9rU|d2EU!mWBegAMvf%kH$>xSuF#VkiUj$0X6c^{Q%6bmbA z{d6yb??ZJByX2wpJj;TxmH|yVn!TyE3+E$UrjL@;leMdxBD9Y_ci-`{L18U>wOw>h zl%teG$C_2l(bGYrpk~gmu*yty`}Un>85(*up3>`{N4Wg8a%5*Zqz>eqq?q5Rs-^ysjbSy2 zDWx!IqsPRaDv`kV-9Oh;tfy!|D9*c3-BPm_tA2h)w}@LzC}borb86nJ>e76ltQWc0 zzI_Mw91(n0Bs1jz_K5?U4=Sf8hXi|V#hnIw;xe-G}N2#rJi?OdKmPiVb21! zs+x|R`*CRxx4{(6Bz3xAI;Xx+`Rs+(u!XN|t3Kb&e%1c8oSfZgY11__mm~GLnqoyH zQ1V3o_-Cvpt zpx*jF72x3HJ3(pizlkY%$uD6e9)WaI(6eW8eJLND-sb0rLv}?9$Vxndg+%pEmvt7ol*sL18|t*5rI`8Jqvy*1tOm0QWUzcXUXVtjm3&r0K% z$XexsZQyV~ZB?bu86F|CaiPMNN#BGBh>C45*rF& z$98h$|6%OSzzdDu(#-CT7&gM6oYn&aYw#}Rzz4lq7266VOe{kuK3sxheX`r zh&h^GIKEMgn?tHa3ORI!jPcLbGcZxvl1P|gD$=Xrk&A&r5>UhU9 zwPygdR}HVGY~H?k6-Z2cdWfSxuZ+MoQoX|oo;kY?C^ZNgPRF=)+iiAN_~Ck#CkCQ=>7?yX$>xOitFcFu{@ zSX!(6*pyUlk6bVJn6Ta1?)lcm30Vfcr`uA`h*o4ZjHOxsiZJ<}c5{w9JLKMw^9!zK z$FvQ(4Oia0>B(uojUZdOfOVO?(oi;ojhN52nd9sIT2oPAjZ1?tCw@@kX4K+ zUR#dXrE@-SzDc+Y43z&}i55@*cS(x;O)yw#!YG^fFbuYbNCS`ZHf0Z7<r!)BWyB1Jl>9HQRUY?idpaNirVVwTr{bze#VhuiBH6OL@NQlH3LR zjS>10zZ)}S>ZaDQGs*Q;tK^)S=RzG^(;Lg0i}2i#-T=@%+2NsLPVlEsWt7cg;?K4B zWUD7zGvb>4&S~@h`uk72Kbxn9eEuyzN;itgf!BFX{o?(QgiA3UM!g5{3$WYez=lHn zz0zsWULSR%y_5L;`gKI@=~aHuo)3SOzQnVSKZ$vnt{Rh3JW~QzjzcJsDLo1cfwo$*Sp7Y z528dnUUMmQcJ9~i`jp5!JvY10?xPMaz%EsRz^9&#G0T(x`+M)7 z9MibCtg+o9`OH?H>)O?s|1Jey52PHRGWpQd#LvWdFri25-=)LX$!8QPU4Scqdu^=Q zc)Go;CjR#qJVsp<4=O;&NpW=)DfhO$Mn@16OQk!Ses!)hDNy^%1?Wr!fVPiCSrhZW zt3YHiZM=%fMKJkH8zY14yZiq4Gx7RsIFQ-5KpMz*mZFtF<~WdGZQAr1z%e=#W;K=- z253J)78U}1gdjW)>&uGw~a3o}fy*CWiul@k3q17Z1^U6Pe{;W88h^ITCELx6< zf&Yoxqm_p(bcAs?4Ud{+?&kZ~g5M9K*9f{cF+6OTL!skL!6))ZALa=f zC(tu1t*9tQHHsEURrm=83gn+;u**@>1G(RoJ^oepX|=*cFqV&eZFxE5_g-K~7a#oy zdc>q-{$fu-T?t^t19&6MeDXTzWL|XWjleu62x9qQn3LaNB1Yf=(2HciuUW~!b%ji; zp&4WI`#X_kM|sL6=|FgAf-IiKE$Dh_&9P&CcON7!&?RDD&=L{dji3kWsy~@y5ew`^ z3!FfbS|1>gi79!4+nI>%7dHnhhl}PmmD|i%x1KOtK+sNGy;e*rH+?W)Ng6cJ>P~`w zC?J|YeFI4Fm^rVF(6h5kPFv>eSy%h*UEkC5o8-kmxl`}nDso^wx?+gS>T|ssvn3N( z8}D3W^D4IS`ES6Gk@+QWXu0hBmAxqq+Ub}rM#gFhcqIefjW#EISiq3_==}gLA|Nsm z-2vdX_Arn`0MA8N_7X)zGTFBeA~h5+XGk{#n;-l)oxT2;x!1#xFX<|gw+2$B!>PCE zEHH6!oQ5V28R7@J+ZE=y%V?dNp0nSxXGBnaSML0E0P&>f0qW>g&^Z8C6L~r)ZuHBE z=o=U?ZP-xvY6z`!T#c*nJc^J8AUS{@_)NFl9a6Dc^+dx;}E6@t~^p-4JaSp}@n*-5Ucqj|f{T{@L zrx0BP$_=OxO_TI^X%G{_X(8fhWFp3a{h8G8qbKL1O=d7?p#+S_E`QfxLQX5{29PfL ziVXMqzf%{4$ks#rk$pO)@TDAJUQ}%C7048zRf<4V2tI%Z1|52>GvcQvCyPrDf$U@61)Btz(pvU|zm+JyKdq4l^fxq!>46%hprPQa!Z^rtX?n!dsBivfCR`2%y9aNaB_84QAF zeIhvjYWBU@W0-mE`5LhrJOy>Z=MJUaPeCIu1_P?}^XDtTp}qL_Vlst%uFA^F8=nnD zm{?e3L72fp)5jwLAuI~eJ^;wnW`SG-ou@&8RzjS7P|*Gg`=I()vc%Z89~V=$PCmt` zVv)l{Rb_kDXG2t0Uet#VE?Qs(_hD=6v(ezptDrX8Wr>#=mu|Gv6x z_4X)%JZ-(miUzSJ6<|*OUItEwoL8l;&>J;ujpq2f*w<~YjpWk!f9bNJCA}5wCoo0w zaVCqPAVl>7q8izwdHg^Olc1sxeNGwhODqm-BJ9lu%O6^u^9eggueYj`(K zY6S?EpFuqd6tt&@vkj4JJ9YA88$j^O;A2h5aZ*n(y%(~4A8V!8XfzT2XK_U9hDyJ4 zWPy|&<@WJjMvN$`QFn7HtYaBt-L4s(m% z>4t00Ra}I8pq^7?ayN_eoO8O&ugI{}_~&$vD~@kCzNzA% z{G&7Lw&ZN#FJH#nRdvxmcmfLqNgnM;7i{(mB=XpH+{zyIF zsod8m1MnX24xjV^nC`n_iDi3>M2me6^(_xGNbw^(yT>Il9x zNM~I5XMgAED>_>rQ$5D=KD`jsP_6qH`uw!5X>o^4^2CE@3!40u&}TIXy0jQTMjqCz?Y@bP?Ibb~a1wCJ zJ1h?T2#8UpUAvY~R21^>bUG0x<0sdl-e?ZPQ^aM!* z61nX6XXQSAP+skf5DSCc*u*Y%V-q zfaY5W6o@e>23~plgPrk)$<4SH5z|+qxAq$NA~HXW4StXQenxaRIS1%K3TmdV!F(s= zDA2lj(d5j)DgF$yK0%mE{E3blD8RT@4Q=8TBe3H!T>X&fUO`Vo)_c<_B%)AYAev_A zr=Snp+{0D$bp-7acCDLDssRF4Yacy(awjsPcQ;L%=45tk#zVRjD-yRP#ywDy=^GQV zXZp=7uYG~bc{arc8A$`i}@C3ViBvi{j~-|I!&=yMN^6o!O+tod0wG`OU7 z+p0hJ;u%AW?YCF1F|&C%o^Sn`Z=Y_?p!2mOGCxS1YIkY>e#kV^#CCi4y2p!;)rAJs z6b}Eo_$(+;{+-bGxZN6m1Jb86YBBxK!GBmropS52%nw#Jw(rru%ukQ^H~Tb?WNJD! z1L42lzp-1jN$$k9;6o|-7hlI+5K=9RE>moH^Htk}>h_adp13x>kHE z*QtFpDm9+vOw!~FmTSf@`Oa**;jNq+6(3jpt2&xfP^Q9><*9o>V}SSCe*|nA8_*1* zLNnHPIm=_^(W$ADnz7H@L4&}~5;uv^_Pf7}U=t%P(Noix`&rj;iadK)B}{p5^}b9(w?)EvZViTjK zueE=#U-G|Kj|T3t-^aEF#KHdn-Ezx4gYMyHqD7C~-+S$fq|(noN_PMZI{cIB+}Cr! z;g+wY8S@NTSjKH0;=NYspL|qC=Cwk~=`YIR)%TG)8YHz_9C+6>fKCx=T+EXh`)oP> zni}K>Wco<;P~Cm*O0wD(2ekJ%t9EU*?kD@MVBaBO;2A$Jcl|#*J-_Z)#*0^x{Y(Dr{}J$w*_UcAX`9JqM>(AWWQ_La@NnIR*I5~DNHY9bR{#{IT;{%-7( zjw6s_LhtXyP`ra*ldH2tl8cz9v03ijR;d|H)mW_~DcQ5hbBgG~)bYnOZmoD89UJ|t zH1|-0K^+&M=CPkYS!ZSvTq=HKc8%VZmKA>4BX4Yias3*cNBe&pmN)oL1ll>x{92Go|nMNpE`*6ZYzI&_MB?ihL`-CsS&vc>Zms`lm?9+O3?#X@c2L>p* z;ujvH*SDlT%P{Gh8}j>y$kA~Myey!4Nte3w2%5I+a z@wgbntvmEg}bbX0;Lat#gu<4i8 zlJ>((TvzZST;wnQN^T1jBBQo_dtJ;pjOVaZZ7AF8w-(vQk_qCOKsUE zv?5p0W&B}p>3=$L!aza$QZA*NZPTolBI!YZLVY1QHaED%I5vjepi=f1vfTq zwA0MqC~b47z9K8NdhS|OS63POK7(U7Os20><6q0zc>ns4J1xYh%jm?sM4uq!=mlU{ z{N9bOzKv@8X2YuEb2#QqV%0Nm0mV_{NdsDEtD05tJmCYzbN=)#bt~w>rg?%>;Fn9L z#a()O=w*I>DaPU1u;t-m)A$HBYWu{)Ewdy6K8SL=N9Zhx2V8l`CRRYvZZ*i z(`YAu?3@YbjQh;EPk$va{GM+q927v%S&J3@Te%cpzmC0AU2tM7M#8o3cV=6O#@PIR zgWsPL5u2pc=cwvGr@bk)i42G=dFlADmpO9Z?_0VSVKNh0nO!4;#zQ|ldpiS4rm07M z%#Ar}j?WpJNzLRXt#{o_2vvoa%;}5K{ml+8uJc@TBNAch2XBZ6&)+D$bV}|NT4&UF zV-MN(-qMWEEV?oDcXRU$96?L%anhaY@I|^zAE}x9Lrggxy(eB4_v!0T%+_U%SNhqF ztNG-6?9Jb=?aWJ{V&H$z)ShR?b4uAAaGkE>?whbhM?u?eV#Q$k0N3o~@A7uud-m96 zFBA;0;#+{XlA`T@+L9M8Y}9_KjU-^S#NG8*ag6z|yi12ZjePD9w6mu=LUm-^v%kJ4 zdw#CdwO(_NI(nyitGV>L3jKfBj|H#yTR&D7m~i&O`O*nBt=6_#t=7RX$178^Q+rZ0 z;^fmW(_J!~`|3++$#mVVTym!KiRbP-vk&Ntom5naw{0%DxUS!(W%ZoE~7t&1506u>G+X&&j10% zn5M6*|Kao;Z@S0I=X&Sso#}|0;1T29-wLc8@@dtR?y8WuvEbLQHB^gP4T9{iG?qHB zTdnyox8;+6xTM>08F6*+7to$*xwy#Z=bf?MRod0a$XGqmX2pkAI|;;DJ9~#cj*TY3 zbxGrwALRN3S==Qt{1%|Wl-OypP7gp3*jrjVC)=KWD z)pv43q$z>6CI+8gZ9!X#4pae^`t5HNUKCekOEl+{pl4hY?#O_@xSR0BFFrW)`c$0l z7~UGDhYhQwcJh1nyzSwe>;D$Pajo~-g!hfnfjejvH}wr@gxa4&9WvxR&h??yLL#v` z5!Z-`R4UDY%V#uk(SqH5W_Nsm!-i8)r_gy?rn5KT;!a`edFnK~Per(yeoY36M5L!j zqcx3QzA#$T<2^0Z_#SW=gf}kD1@8*)UHGb=W*gJ>vCRU8aPb9Vc$g zX%q&barsMOeR!^!0Y> z&3_+>FO*eY8?otf-}J0w;N)O+plj9$Ly+Rtr}dow>Vfb1PY?V@PCaM=v*W*&htxrI zz@0B6YjZcoWRM}{_>Rt}*T<|%cYX?2^U;nQEVv@V$i<|1>KZLJ@RiOhBa3}gr%s&? z4I9lp^*fK6Cd4N8%NJjCFpIVoDe!&zZ_}JQvgQ=pSmAfma|LF;kLZo}RmW(1XgsZ! z33=&!QsQ|r+O+K1yS8q>gPzofl7k%cvm;B-WyRRmAaNhenAuhQkd2zZYm3DGKnd=w znz|hD29dW?K(*Pp-)IxVp-D;&zv9&&pDZKgDcxP&=PsU;m;dm>p`_z7`uOXtyS3W9 zyIw9S4@5ST6X6q50l2tJfZzF?)mW`W>V9x_mb~hu-6ZFxEV{qgzDJi5!N(Kl7h6<| zCnN0!H-GxR5FC?n?}6r?3Dc4J)UIH5wsj{}6;(Zp|LNjg+p&$D{ZGOBTT5}f;eI`| zR5k{nzx~?C9cFzyFD_Z_#hUVX-(YE*kt)w#?)nhqE_p*C3zA6s^nSd>^ZyF!yQth3 zbb~~{BL|zF8yWpB_P%%TZqj1;guGI1!;172*9+sU zvJBi`<^#L*#QX^n2I)y;-O{PZpq<@IlRk@y=ov1Ke~=!j%4XQ}s*(aQel@F*Nop&L zSL^bpr7{YpUYZLbLM&40kIb|(l~lEhk1b8DGe~NNwyWNrd&50>41-_+#*>eR^U3I~>H#40PgQc&PZBYI`*Q^bGn~HRfL02g% zXArgSORqa~vGTyOg=M`PYCL~Fxhz*M=dmR95(JNAfj3=UHOTM}UPV%#YOUxc%j?a4 z!n5SRD@^O_#=_XE0~8(z^wp+#(?ah1D>rXFupBdVm(Ts&kuZ@mv)AgYJZW6A2x;A^ z=`Cz34~*`MrZIIa8t2(@Fsdc-*p7Q_RaZamc*@qCVXX(7DS_x$^QD?LZ6^1O&!BYFj60u=<2I=QRscSpym^30wWMxkpGv zC&Jzz_sg^oH!QBtQ-^}o6SNde>1j{V%G|gi-MgrKc`VVg(sXJVSwvcyfUQ@L+|hH( z^gHz3mfLQFg(q|B z;6(U8HFytB1k)3yx6$!oZ`0mtFB@xXzg=7V?X0q9LE=NbJ2dw)Y!C4=c; z#1kr=zUio}+%9Kum5w37MU^x*`QU@UlfJq}T)^*FAAONIv#1y!124hA`-RoA_g z4S&37xzLd8%zVD?JRv{e{yi;w@hC_{psk!n`0U--E2xoizoEupzlKp(${JY^ptYPGEyuGxwnPCYmuP+t8KyAx*sEy*)JwhWNPlUSY!2{1# z^t9V131+hsM&jaq0;6mj&Q0jW>GcUz-^+&!s zQz>;(Y<4fnk3Z-w3XAXrN95z+yQjWSkAq@K`M=zcQUr{X#+q(Av)M7E$2vnptCB0&vF+UFZNCqutvvq0^Ob7M<0miA zbu4Jsb$`$9>j+3RnH2cT1$cAybw~aAT=qD3u8{RUMaC?vYYf9pf`8RJr#@+C&HpTC6SZFdS-(r2C1cJ0z2+Z_N>}V&<3y$KBjA;c z@~wBAy7xVNZmRIOhxl;6$r0VK{q&)ngM$k5SwF8LIen#2F7{%iWzDqxlCr^A{Fk#A zm0v|UDrb!}au^P^<}{|6n3{|fx#k@HULh>MFdib7btrpyX#WyDhjAcXCx5Qk#+XHQ z_tyOjYmq%U4HvJpu)LnvT_asG8`nQl65{%?xQwQ9!hUVu?OQP>AB;=lEs|{uUmkN@ zm%49F-(}IPKnFdYp_@JR;g^C>e9xBZ!@x(%ijZCN>sPq1z{1}8tU|*$X#Too<h%PeR5 z^gq9lriRqd?YXtZpF(-}jHib}5NCSwgZbm9ez#MFnl87D+vm4N3e-8X{D{FubfoVQ zrMQMnYuX7hc|>O`Qa0~<8fshLaS8_5S@~kI)1TewCFI zoOfJvXNK4lBE3@Rr9u`DikY;!DM*MN5%3MW?Yc5+sd!GbCD+&4yE#TGJ__Hq(^Bo# zE~VAdcT1JKwrDf@NHj|1s|;OexNu*&@JK?v^u*Mbzn7il0VSyTbgr(08-Xmu+uIx8 z{#41M-?D4pT9;ie^qe%3n{Vg2C7Sybl?|!of6ad%TCjz3@PpN>UFQo5;`^fBjMdG2 z+Ffx%c`iCqfiJ9VWO2*?>~#k*3u5XZ$-H;(zN)uMyz1p~q32@WbysmEPnv%DwfpZA z;7iUE8-%c{`RS*-EjG_n%sPME!eT6IqWPJ9YDm=j-z@)$2Skd?fp0kjUA)Z~-M{Aw z4la>5(?Y4CtMacuVY9@#q1w5MW1OCIS+(-1txR=iDL_bl1U7|5K4^Kh(r)fAkS#eu z9wM68Lw(s7PK9Ilj*Qn<8;S}u2C8Tl%U`C6)1Lcuna3gEnbGMjz7{Lk{^z%ZMRLOC zQRYVNr`L>hqV8C)YURkZWVYvf%Z;B&#FJ4IneF`e*aDmUVswr7R==Im7 zgg%G`pFDlK0J`Ou`W<}bw&At+vnvLJiIHDjo!HX1Q%I-?(jG*)FL64=X%_4x9aCpl zhI&ZYK*Qw@WE<->A9ha6&dt>u2Sclfbm|}_NYNqIi53=b-)EhRDg+4!0W-APuqxw* zarjg<7z&mPvo|P*F$L&uR~amE51pO%S(=qA3o0rU4-A5;L}ubK;!=%oz`XCbetV|o z@~@wny7;=%9=lQxrVi3`uB~Q16JEFZgfI2gbgQ^B3C)ANJ0xh+qc48f{4PB{egCDk zt+lO1Ob^Qt>)%&&RVJAEBUBacdwa8J8;h_*0dF0di~BvWWdHUV^q3*PH|sUNX9J`L z;dn!wwJDSo4SIiho7Rb_I-~V0QX7@a2O$9piVrcY!ZIX+ivkWzdf6z1*PLg^VGzb_ zEzXH)QXm6^4dFs9E5o z5tC|oT5z>D)Fj1wm@;21Proao&(7W?a#wx)yZqb3<1*=S>0W^=_Uj5I#ZP>aNj$km z%~3~5f+e@LI1$~(EI6df48O&0beI~X$9Hf_*t~)}E*1*xuoGzEg{lZ7 zLe3nm|CNZH=ztqGr3!(8D#il7O_fm!ylYCZ=U$zQdIw?w(bYfdNPNTRhH@|UPT+~~ zPrfm%4%=JL2Rp)AV{v}$4D{mh0K{1mw2XJj^H&?o!Q?Rck;X_FF58*V2ErKmAecc0 z|D-D0(KgwzdKqOHKNGrE@EVqv*MTe=db>wr>WDD|*lPKoKvJ8^*AZ^RaIRr3HO@YAX*(jB>F?F)_ZDvr>x;`V_UxB~_ z1|wMo$~q|jKmr24Q9+@-zuyxIY49}Nn6ksK++B}C^gfAA-P7FK%~_kW9>vR_xNO4{ z%W@%GKpMg9LbKT*{`XlF~j~=n4s%015^lR-6E`P&o2DG*kwpUmT!cHnL@0b1d zD6mvlK-AgLl38+xwF75ugwd~fY%Y8(3mY3*Ona@}bb#2Ii5S(cf|4*1r6C?g2r!uK(JkzOoTtUy zq$%aFwl)_CMEE2tDIX#2_6SzBu=v6z{Mgc>{X$z@P;d>j^|lKN5-tCij)Moo?J%hA z0X7aT?H3p!uA0+GHSxfp=`#Hq2FTKcDg=t*T17x4YSJ1S0ZPk8wXv5{2$AP#y&Y z(1DU?n4$qOGvcdUwtTo579Y^Kta^QlnQ|EVAhB>VU4S>_hHrx3`X`_mcSqQC9JB@t z#6k$c67NJD0`RW%_rBnY;!9Pq(6r*1>2rF`8hI?TzV7Gtu&aTqcwU@T&@sEb)|}t` zWZ{#!=#n3`o3z(ze^TxYefN4@`Uk6YvHeOLnLTI)KMS^*cF;$qRcN{Vy$Bs{HP_c{ z#&cpqJ`a{z8gVR`%0MWB2GA|V$lLgYl+7?yGD=}bXPn7fh+7B}=y#THFOyABErOaM zPBcg)w~vOpxx23bb@OKC8+kLFZ%kL;2LCY(VG%#A%1{Iohm22hw{vJ|41&l+)XcDS z&*ZkTiyAGbz-yrd4f-nREkGqMuc;}s>^sDFg`sN8}!8k zP_?c#y5a83?nMI?1l(-G;`h)sN91DnHEm4Z0a4RC_4qWP(lRrB?Cjpf;>oyf9mV}9 z6$)*Qde;Ov4Yz@AM1=7m=Z^__sOBjR?Aboo6at++JiS<>w$zjKz1VWIdnvgFF;%ZaxFcEHhmrG$D2CdVBOV-VdsHwgD*%kB!!_6hKN1vonoLeU?- zUc@vN`XW{-9-6*#?ub8^A?`vVA}FNpjGw5esEFEOb&T3>aN1V$D#mm`N)U=OToB(W z!4ZVpvUX>>nry<-)xxjY^+h_uhXs7UMRUQO?{?niEEW$LL|EVFLgtaXCR)p(AFNmW zkgDw4Pa#3USj&YD#LOTp4E~alX>dEo1#JjxLf4Ptb}s5p%7nD>k-iBBqR#^J9p*Pf zvJKWv;Mh%%kYiG7B#J9=>ytSS1=;^D2pp`oW+u1`z_il>f}9YSrKL^B*`{kk7u)SU zBk>WyM#Q!|V-0#46H=i3{)}YjzS(k@!Nmm&F1R{-s88S(ktcO}Si9a)D!=VNK0G$A9(3Fc) zLE-hneXE11dc)ecjJUXl!Ghd^+Y^!+OtPty{q+nKBIKxx!F?k9i?4WvEDW>%I5uHW z@m5bVpvTEOiw_RX?$BT`e2DHl@ua?EN?5!G6+yI#(@S8_Dk%{eU=I&kyjkQWRS~CI zA*v`)$w@)9b{94Nb~vFPp7N_|bTiY^KH^kDh=zPQ8Br(xdqmkC0_DWz5z5))L#?@r zuKTc`KvkuNNi9MVvV-++&gHbuRw9~UY02#ZaSh1qS*6qqAS?;^(&1L#keY%u#~0s$ zyDmtX@F?F)IgBhs_u5S5Gh7_B`6Hdh-khr;f(@4H8mv+g2&$nqy>Kxe7T5Zl4gLv= zVUZqSel?x-yk1EL%=)!%7;Ry(lgLFg*)`#4C8TBx#t0J``?rQA3k6blN-r_2oQack>vDCw$u~ zlraDN2@CKrR=WE)Y5&jvzN7>#3%LK1?Tz9a6fS=%rN@WEt0}|`m|cARf4-OM#Q)n) zZrlH{lau>Dc5=_&zN2}Ur{jjekN?(AFn{s(evdz55v)Ps+l2ChU7UzM{rwZh|3GP( zdQ9EX$Qsd$A~NHjcP_Pi;G1Q5ZmMXs+Y0>qq^qpZrR#yepzzFT8J`VED)9eBtl9qk zC1=*`DU)5io^h4OVN>sfgJDYJzX~FJ_#ThVyDp9S-S4qHpR?=We``cW#`9-BqiB?* zoxbpIzPrl4JtyiItDm}sod5T)5oNX-xWwbYG@SGge25?Z*5K#ewQl&?*cQVWi$Fs5 z8vdHsAq`0?E_%-5eNkHyoWVF>gmf&;wYgK)a1_GN{htppg=nfX^0UaN+4k`XQ|O}M z2xkvpNl~*p`P#-(@=NZE=G*J ziTp=8c~lg%eRsKt=<7=;w}{Ltahrjrq?P*u@@i0JGZIoo+368{P>T)qPd7&U7*7g1 zu@d4_*h*g09?JdueadojbVSD#(hEqTMa)|^LBaY6j6=AtZGtMnG{h{b@aQKR&784_ zZoa-7VEE7%5YEQoL^8QH)n>&oa{n0H}(MP{fa+xU0pq5HFG2J{nJ4@nGpxe4Bm z)yl_W>MrAvNLdL>@?}5*K(>SujF`3InP*s_4DIr|{TMI6wYS+lrt<2V@ZQ0(CDqfX#&#;vG}`-v1p_+^;4AyiNZ za$M?2yvM*@?72JVK1r|TBA8lT=7eJ7;utq=TJy~L?w1g0Zlt|MnBBjHxDR;{3K2}h z)>49SG^qEa@FTzM;>AtGUIJ@a0A0Gb!3foQxG?R;zU+^YSA=?LDD>Qk+AWez@|?SK zrkCOU#*XSbYlPmgeE`65iRC?b~}oeO=e#jT^S+Na7NuP#_3f)jvU0L91=u<~otULCLG`*z39& zALDOlTZ_mG>?tMKm82+yULM2#0%A*B?5m^C?+o9I3lW1fWV67m12wi6j^7HXocVsU zhqW^XOxRKS_ywCAo3ft*TbF|tYLG*I|r2^=BqxUR*aUc#4$rs(}Ah7 z{YGOroA809>8c3!B&M>Mm?nd6#HJ83(b$1Ft8ExFT0sfFzCEx^5R$`4Ghm*W2N6G* zldrm8v=l4$?nb}rCRjfsJ4ES600M}1eG%t30|PYCxPDi-DLC{;F=ys5`P%~;^|VbJ z=-jJ&N>`>&;vR;m5GNB86S2Bh*VGJ0GVtP%{a$$Y#WfyAM)9caoP zzVO}wlT9#IxCtVpyV46_Bt*ayftCt50})&z%ASRn_YiZ7EKCl`cFzucXbpoR&;}+0 zTTjT^BSpP)ClE1W-5Jx0Zj>{m`h*D9tNMQO-iTT;HbAx#C&{fBv-QhaUfp#p2e^Qc zasqoC(^hR=U3XEP9^-r3j%pPaLr0Pfz7P?#WYeZ^Jx)YW8YcyHrVhjd$@Y2IiXaO- zjU^r-5`I74W?b71Hl%mU=0c^Vn&iezT$E zz;qh%XsqE#J&R1$ zVZ7%iFdJIuF9EZAr=p`=wJ)@uz-0@$d16X%$6?o{oQDVpTln~BPzxHiWF17B=?M!^ z$UU<8N?UcUA@CFN=EFE66iTD2&Y-;C1+G1^43c$c&2$B(1USn^oNEV3y%6Xr6$Ke? z2{h{N;w6Pb5)8OT+<00*4)rrMrtJpPyWhd0;8W+Q(cGXdZhbP5L$C&HMI!RYDQ^7{ zKZTK-n*lP|(AZ+aeNE*?S05W~V>G8F$jeKOH2g5G4@^;zJ%s@{M#Mbk%e96gBsxRQ z4dxj1&~C@r2=oS}-i~B2BiE{a>H&1!!3g*z$>s4fkKt4>S+NKiGZV6{x%rdKLz*oMZ?=hKDg( z!_=#LBXpLbD;U1q0=5<6);(uK7xAX@P}|{Lt|)u*$QO=ih1g&utYpm%W&*qW2-&~8 zkSh!gMmmA{Q8t8jH}ui5TZR#pHcDQM_QFBif=fUy;+)+lD-@#S>=N%>{;h6ErijxJ zW^f(SClLcNmGj5G07(WUMlt%dK5)OeEP_m2qk6I-BQZQeyaP6*u6{{AN`)9jy?|LI znPdEsP^mm=0WZP>T?7nkcX%xge+cVzxtFPo4(+(eRVhJ5mlg&w@tN zOKoi2Pd8^QPDUpHSF{7lUs=X90`c{HD9Am0@)2%wdmTPrsL76~?p(_zs*F@{CYe7OF)%idYJwo?VWROa2;VV^z}CGn9`Zu8SUk>dBL#f+mw0 z#5rNhB8q0RegyrN4Zn$jlIjWEs<_x>mBl2mgLH&9WA5QAV`5$UjeZvNIquZs-oR0p z4L1iGATZz7ZiY*Sc=im>B2rP@F!am=e=i}8lG<=t5eK!*yc-}?3IKjIC%t#573Ewd>|9n~1o*(P9_k{-x2R>DkIZZ1G{LVr*-aM51h zncMxSuF4r4C^9iiJmsdxYtEox8iwBBW*j%5G8-BdPMx}W@7_whVQK)P@DHUT!o8}o z>RYx(w>l0=*Dogk zIQf03Bo4y|2iny)F%zvKu5WdIpms9z#knXMNEW-y4eSTLOr8WU1s3ix!+Omy0-?oK z2+M~%;o-bMCHEMA6Xg42ZvOJ}pE~Gm4nT9{o2&<{d)ATTi_B^@t_ z(nK6Z0Mgp-vt**lqW$QPEc>KSptnL(z0tWH>`$josakyEA6PJEEsH zikVnAq-b~ncLH2XF5vKL6~~GxVyq3XzCDPxx|&ChP{DLiAlV*|CD%{-E2N#tw1lB! zGT4j*OcHEN2vd`=jowT2!%m389<{I##<;ULMoH`54&c;(6HgRk@g(ki#Do-D?=T6I zH8Bwc`li*n2R9Sj0gKJA&+WiM(5&5ryL?snUKA8)ufX7GFE$YkUdglOBmx|vr+_cR z44}~leq3oCvAErRCq<2${C21{E!y93=6?1ibp#sL;kYF7ZM_4YuTD%(zJoSLm8(h3 z8?S1nUBL3tOu!2DG<`@=YJHzm_eNUNzi)QX7asQi@pUNyXscsphC0j~e%kq1Y}|;l z7?logj2f`rLxJjZD4MZHRm5Q|vKs zIRur^bttFq!eZm>q;{rlS+^sa(wA{4fMhVqu6X9tXoiTOf<}-F>It=-oR2McqoN=p z*~krv9S;PGA@gKTYDc`NxRHSKZ%|uJ1E_G{s-|1>_eS@ETNtkF#vmEddPK2Gc@R2RP6P>LPum3^f77)#gM|*f$I)In=vq|TEp@j zZiFOF6viz`r@WyhbJFa*@d%f=^(tg_MbMtTb8VB7m_RCiz|m}cv|@nEmYroA!evI9 zrRIl^LE@Vc(XfDFt2)=SsLnU&%U0Aq1=QuLkgK$zoVjuWyTCd3W&L+oG8##l)&TzEE-7u}ax55K=R z`G#6(i-dFU`t~Nc(S)IZutTJM+vlpI1gol~!7bAhRhwmRMX)5;Pm}<# zPlW9?RJ*3<=G4TGYv`j^hgAFd-tnsKr?r1b95+diej+9wtoULvX7A<1@7w*Yq>Zdz zk~4)mmzV%!lfQzQs_*kLTs!dOfECawk|tu05+p@HGB>&+J$hjKT*Pd1cyf6<>~iX& z&!6Y&?(V*am7}7-M~CO31{Rv1k4 zkvudqfK6o#&*GEf277yB*+BsO(hK9vP-|aWWxU%j36~(3_w(|~N{B{+|%rdT3ykhx}vq!&Q1JBBkw(-$B$`~x;&Q{RRAq>j#J+-;sv z)YUC|uwlbs0-!*YH!6*)$UM=?;?tsGKg@$QG5?%rj+vCWX zAi69N`&eTms#;W19f9UKc^=ICm?BpRl}EUN^sI5R5HD|d8DkbhG+HL4mx&ZgNkwJr zLo+m_sLPm615FZks2bZI@2p_@O0as8v|Lb)PNO!}6=rMe?A#__t-2A2A_@&XfDGi~ zIJuRH>2fFZBkmESCY0hpNMq_&wK<}po>x+`5^pL+D#TGM*M$=~W&U~_-)+~7Gd}d4 zp0WOfHjAR7A}Z$%Es+dIfwiGBL{_36SJsXGDdg?nil7sU?^N@*_jHn!Qpx>E32PIh?)ZJd^D0GW^6fG1~ynvJ;oIdSs=R3f`S6# z3b5(m^}-%klw$;PvZ&7}M>S7zBY7a;M?6CTa2xjw^mwm`1aCv2sd*Fc>_6KV0xwk6 z#--d#s0@1QV*G?xjASqPXKal$?r@n+vW$zN!l5ixT_fI|2HTWGD6loX(s9-DsbrxizD-hC;1Cu}+)0Y*muh30P0qRCF6XG$9%IS64 z4r{cZLeVPS`b0K7$~yZkHW%-fEmY{M9|acxeXC)B>6elAGw4U}K`2c&Z{^CJA6*SC zqOFIvGr{5ytr9N&{qyFt${C10V?ug*=oqz~n$odk3*5;3+9b zv+zL(*nwhxXKf8|QPK?}{1lD2yFf*Szk+F~0OBXSSPM z>^RfJ)ayU#vgFyL-wO(;5s%lqq}>?uF^Gdd*pS{7Vc1}&9$iT3tyGPO&T({(iT-nu zdZ4QbLJ9G#!M1}{^E%W@dj+hfhjk$W9>-Prr;WwV9_hvx7I{}OvH(dldQR8DocM^t z6D)osAIXN>`@%e!VW23Zft@1}tsyil7)}UorQ=r!xC8iU6WML#H=z_FuG)kMclLSP z3o%o65P`h<035L6-Bsc8Cg3n=3*>ek#(MCg1qw>W3sGa1Wz^Io@cC&Ya2564| zWmyM+Bubeq1@D@bxY;8$Uxpsw8->7c*GwB5gZRssj-yT}*x%};tgi)ic({t(!wN%} z2&qs3T}^e^Z`OVo?Hq<-JkH=s_?&`;Hhr^xU%VpFUfBJV(S`dt0pz8e0$`i0D)aAXXm;42qcjU_(X9+PByf?n6X)U?Ox_ zkfordrNwahRtj{IIv_-oKR+|(Zi+2|cD-+L49IH0n+atFo`$F-;Zey1BA7;uv8owB zLipz)6V3zTO%%&?TXB_m;1bvCEb}E;A;F6Q*s3_1H#4Bm0tat)XjR=-j64RL5wyxg z!k2g8dr?Ywqdh`TJY12K0;)j6OuOF(f&!M<13+$>;D5dhzt?Dd^DwD_6BDDxzXJ^> z&1+mR`y07fScoMc>Og3`aG(%AhGj(YvB!DVdW&vQNQlqt*IVU-#p`;eNh2DaYcc!Q9P}+nceSWd;s&~~(jkscbusv5kJ<{-6 z|D?Qg8Z{L0N5=Jg3`U0V5{7|-rTcq?1QdU67k4GRt88iE!aW8RF&SJGI}i25npkK0 z`(KC%e~7Z@CEtzS@>;c}EEHnfp_qnFlKTz!a=-6s-00sGftomi)cRA}WKRps{@57odkPi&el0Sc97$smoDZ zqWTbMgEX#MLiZn<3jOJ4FJCTNbR~p3;BW6CaQuw$(~dqrgN*ZV#JN!O)*J>&v9J?6 zu>XNf8TJU@=Q2jSb{dq4L^x3Cmi<7Q$^#`C^Q;ls><=GMV}nKp*yD9ezsorx;GrlE z7-g$L3#qP&b6Rd}-`am+7+FF%axzrf%E#^M3Ji&B z*RGL>il;{09u*FZ*$)_v&@@18bHnjV%NGgsIfs@UfQ+;Kqx;QUVrvq_Aob$)X5%)V zFn-TGox|6z?LZWESz53~@29MX>NUXfS4VEMixgjV2XXY|)}!z}z;hszQ`rsF*kY_p z0kk$Wt2e_t5_dDMThpGZw`Z2tQU4b(2c= zMD>THH31qmAOxjs7^LPAJ|a>dAnCw=NV*17Oe6Ba{($)D*H`>cc1coqT$y**{+YSu z3UfG3X@&1Q;unF$iQyw>_ANp%52Y-s8 zhe%*?)Uyy4M&#E`&W)d_dovH)&^t0y0O;HC>j5?)({6|Rg1kMw&r$TaMlR(|1!+dVH1u1myj}>&k;TSyS9l(jgIDhB`$GrXZ}q>MrNqS^@s) z;Rbe3(i+5PeP{569drXUb3rEnZtDbZQUJBwgl>T6Q)9ORI7V0jNR-<_1SrZ~S}=!S zF}rWnY3CFn^o``(oywWpaYWqx{WlUwopi#$as-Ul>O8;gpU+JGPmfZR-|}~=G2l*Y zKqLPaVy+&%ctyE*AD>(Yk2>Ty;ZjG}!LM@}+_KmtYy?~EI_Oct5lVjkBFUq0odZR7 zgQqaC0+j3SFzOQMuLZvwcEac`5HES0#8+4@U@6oHmVD3lp=1Gs3FHl}W{eLIIsy(C zA=9Ak#-*{{uOXC2KY+2 zVYnw!7A5}9U*LoyK8CC99-Bem1t4WaMM*k1WuVPr#W%=iv?LG*y&jmIfhK3xn&Smq z7+rKU$Tig7({mrU8!CD|RB!pP5}`rWcmA6{I`+`%g4Pzhsd;tS3KAhZEfKs)9tfYF z3%Zy7Kv;q1Khl&!y;epg#CHyP^P2w>4b>)dV~noiIZejIx7R4?xd=f|hF%49Ezg#&ff>-UF8a#3~Nc)7-34cofzW zo`8h8h!z7*@+lyYz-fZ{cnaWMbMMptI7jS!)p8u}i|x;}?tx|nu@1mEhfFU+G70%V zR2=ZUehW#`HHcR3T3T+#-bLgOAhG!b#vReb0|@pJVjA%DdnTu*cAy|3heP!qnsow6 zxd&Q}9RL9S#?z|+cpw`AGy$*2fen4BMW_UpA`8?+;8lMJTO1uTm##vs2>fi(TgHZ@ zsxX2HKn<|Om{T4AtqBM*<=d;KN{EG(spqm%O%8mn+DKPl)HB$-{oyn^84hZtm~ve@(by=Y=fz{Q3vs zzYgHQ4Ty#eSG&GCEJDmb05h!*ABtaY!sR2j?V{~Z5SVkB*3_q)HRFf|JV(q@3gGVQN54?nj=b?uC6W^L%&NwK_OL>2c&_2 z@bfbv`~v(L+go?2QRB7wUy94dftUaMYc!72YX`!0!bX8(c%FynDGULJw?a}V(8_u@ zJ|I4S`4UM+5ph8FBxG)gXM(78>&++GTbTPh-~PBLb`el){V;+9x7V_GK&XJ2Yj5wW z3S9hC@Dksl(;zrTFBmfovP|r0#Q7G zloj7AyrJK=#{mv0{quHEI|UpAl;GTj91OnZbr`7`2*4Fc$k?u!eEqFv7&7BK7ZKqc z%xzi$IVTilAXFuiFTrznq7V%UQq+S0DG;0>Xz^P~H(_9G5YLriR|?Ekq?iK(=mSuw zNYKP1f+G+|4cfXSjc8)JQ5Qi}aH@y`SvWF#9*iJKwF=~jfLDPY4wttHlqpb1h+q#K z780W&s&Rmqi4F%)fQ@7W`T&Qix5@|%&c8jzgP@KvRREAc)2_noz#~&_*=Im(=U0O; zC}0JleDSu53X5zGz93ZO-=jX&&QQ4mAu-ah~)1j+1ywD*(M{jrIESQGdkwF+n4A*A~5 zwz9G;L|a+J*w||;WPr#ZnE4CIVimD^4H@7L6zo6HH-i!O%AxzJM2Wosb$Ws@$YGHX z3!;1FtI8zW3BODSd;90=X@X*iC>uola;mDop?;kLri2{<$YC5jZ=OM>umi;DC%}zE z#h&j)TQax?WRJeM3^-?qAqhbULDA#Q#P$*P6>z8*6t7Ey(h3-h($B|0AoDviL_X#} zj7;iXNg<7EdfM83uyv|nhA-$;Pa&1e56?|XJB%LzA91!c8iZzWikOI6`@!D=%4l%R z&kZPLh(Q=8hT<&}ry#Fw1X&Q&pT)O68X6o#dX&Gt`Y8Tle*wU1ATaz4?R7z1fas@? z5!aBBW;TmLkIN&7ELU6m7<7ky4eBc(&Z#)I9yr60^TXSp28IAq9M}&Kfw3I=pi3;M z8NdL)ZCLszk|ru&`j3@qtXOCP(-jLb_mBF!J_vV(Sut*)cS#WPFwobZ1u`Fn0?aZn zB7#@({z-`NKv>0K?C_(`@hLD_3E<2>IzkB*SQY@j?gm>xX;h$deM3VPo=f2(bYm_o zD%w}2qpJ(*aX70xj1wF|=6~OwUx@1NR0Ljg050r37&dcvA|m91-y{GD0e5CM@+0Uo zkdgtdOAy#qKyI^l|5`P?w+w%l*KcU;ekQ~$K{d}eBD$)Ek$ z&Fsv~5(0sr=c)FezY@HTj8Vv{Hx+*6YY7ben5bN%IKTev;%}#_QBV3N7arBKUs+h~ zT6giBPMH)f9dVxlFystc%y~8zy1z#Qw5v|=-+}u1=+aldvU_m|#^C0GGz0dS0Z-;A z5lTB>`Skcga=ZxNXngY6tII#N0I$wP2l@~Ufpw%p5%jtgU^Q5Xj1)LM1;(3_e1U%D zL<2&eqf1QJB8GFCf%uN~s?D8OgCrl?Nh$l$K*{UwkZrCXsrO$rfRP>XVj^eHe)jkZ zda5X3h`KI8wyq8}ahtjA7NKM^nR5&hC}?`kd*vmhf#wkPyMn@l4*G(0F#fC;@1UxU zetsEL>>*Li?pYveL-6=`NR4qo)h|6Cp5b-nGJ}is@%Imfv2iaCa#*P}$;!zQK;(P* zo#K)^)I9P%`w$BqdE3fQh}tHCyK4cCcN5GkWQjos_B;cv9}gNX1H$o$2ZF5m52_EL z)lE%P5uh77u`K;yz-KrR9`9gqVMohsvx96z20Ev5CruJQ@(=?nP7xO=IFX-6UPSeHJ4 z!h{;8U4MUDo5RPIW26i;+pl*iY7sEt+nRf~mdJIU%?EA_{e_G9CgIc=6O1ph-}{?LH0 zwrgfH=IlgU`xRzK{VqdcwzdS0(0bCWhZ7s9`|Lc^W})rkUk|eMq4%gr!(=W!sc6HR z9PJ~c10yyir_a;v| z|NTa&zSc844!j>T9)3{US#k57X#4!!tbJirSc!M3gajvADmt1uJcGV8t6A&HXnc7q z+pt1LMy94dU(@kei2tLX@6wg22=Vl1BWR?~BhG|6ui@cQ1~pKbX-bY8W|S+&@%L2N zX>0B!`C_i#%1MzL$y{>8aUuKEgLaO|T2nola$>!_EJ4*{oDL~&r~BsQrn3GlL2ITxu4_X==m3EWHhr!c_nK9;#Bomd)lNme_5vNu z<}M6HK8w@rLo4IjgJBh(EL|bD3S3mfSIvk$er&AI*u3uvnQ!vE*zG;)>vDw??LaWP z8goIx|8$r@%V4ElzT~vm2E~1{>T7i^wI#&&NRh=8Ex8%hyLaQpX$Qi5Ql$JPkCUbz zWrtt%OzuB?xaDeTfkYQSXM3(4Uw9cVt;|3|rE}ok5iOxx*UPr>iLmZr#4OeQWUH1$ znOp}RQ8eF#aG-B>B7{?XJq0?w7s81$Y9~URrIhM$H0U40Bhqu?xHs*bM|vwGYi-HO z-aP{&Tc=e-L@@i))lEuM@Ik@OQkcCeY_v}=%Ez@o9v8B;ImsX(P8$*@*HqLQ4H78CY64!xF_YI+Y;rwGlPXzT~C&5!_s8R_HxUw ze4Rxy`_j1aiFKFU^4Gsy_j7Z7-g9#Hb*M#e#CM($S1r#49`&xV z!%LPC_m^t$VFVRJXN;%2>vR8eXH7@GKUALHWY%wzlYD&x#%pHS4y*dV8puAm;J)1gU{Pq(vt+o1v{L@>Y_m5XT!NH0D& z$<#}0d2NqwDyEb?2)rH>aFXccEs>J%<}`NuBez>;4DEu3GxfL4iB&aQC%fh@C3F4> zrx56#NT2%?OU+f<>n>`Y46VSYI#Yo*B!5z*_Ff|vj>PTdo^+!#UEiI5S_e;k*=A#AOO#DXagP(mF;ixT zloX!RPAhq*yF2fNj?v6M*JleiG)C} z_qOW_$|Af{m#({u+lQ8u1K3S_b>g02COe(jeW-Ang-qsIT-Vq4i8-%5XNnOu>zy9% zPfwYiAVLV6pV@mGJ)&V;-4Ntc)lf&p;0LG2O-O$_1jD}ebeTj$zNVR3No6efc!SuT zd-Fuk z)KZ>EzB+N}x5S+hn24nrH7k!YL+3saX&oHNPkfhYN`PZm_MsW!B-X;P(C;j|FU7g{@9uD14AKcS|h_dg_f_}Sz;W_6tS+a%6b zjR1c6;PSi4=A%2_PknxH*}!SHjjXc2dyPJ<1nw76;cn8IjndL7&yu(Lnwr|@(PA+n zao3Eb*M;Tq<@n&Jhy)&wEnB;yz*M2*ehfTpD(satHM@YY6uIURGVhSq`;bgmZU!wu9~Di%uV6F zaP?Mz)6^*=6_V`$rRR~&Ewed!^>4*F^U z>MOFxY1zI7Y_A({Miujn=D7ddr}ed|{rR}pviFUvcA~H_aZV&JI#iUm!f;1qbQG6o zj1K|DuM`^)^Yz`kr3P>17|pM*?hh3#EYGXqWQ*N>jKHV98qokhusXt*y`DGrKAIt* zSFMLV+SbVd(`0-JOpb0LTK_ew)tP0d(EP+TKn%D}MeV|C_M^*00vTMuu>ET63(A9Ca9cO|(NPt>$C67Y#S;S_DpS+DJLww_IdBzartVia z-J))bO{lKJ5)Ta<-TrJcq8n_@XOn7B^0_Y0V&rJll@#tve3&=2EMIi>+4MtUFM(-O z@g-YofxlfKTd0O|rQ9kvU!H7P{d#~aB|^x$Sr=3O(#Hf`BA6nu`5}>3j)ewhulGDF z&c~%Bi5HwF#a_E~u0LPYBmlR^`!>Fys?xM|Eu^Np7W2mE!DZGECok}IW@Dnlg`G@K^7lLh zyW%i8dEBy%g(yBDlCwN9^qm{NLNrl)^xN3s4!6l!#+Y+|-{HO`Y?W zu-(>1U6Z-Y>Q{VKXp^qI{#dQHm{Dl9$8g?u`5U-|34tIf+Bt#Jvq8_Uuqzs5-zFrG z74U{z^Y7Gl&87rFixJgcWU0W6i<_hT4Q2cXpi1p+-&O2yZ117 z&2cotO*gMBzIWLpl2gUWNwR6okV-Ucj`QH+{z5Z?@TW;!qf9H}rP5;4vjFj~0>J=> zvE(sA*mwwOD@pehb#eaYu0g}dJkOO(x5b5UW7hRQ}w31}=)S@$K-EM{QHV-NR8z3XRg9uQX+q3s_&sj8;!m z*nE~>eg=9vJjde6u(b|pn%FV+reyk2;nZORw^5sq+%lQkv0!FQZIE?RcZ&3}Gh znDp0M{r!t`*MB4cfB*Eqzu}LxN3bk?2uIODqSRLGcYlQ0$f=q@gNCC`UFyO`JO#w>zE8J!gT3Ey}aMQlA`z9{tQZ}k)fgL z?rsB^)&y)+2*@+zc`)gzIBI%LLj(5Sz4*uO?m!Xwj2K12q`MS)BGT$ zfC(DuP&F_Ps2eMZLON~0{NVbjpjZ-wXDGeBcpZ=q;9W*LF9*vN}*PGypEBfFig9t5Eax ztNr;a!0O?e?h;_7k3}8fN(A@%%!$?FAn+h9f4XSyqYTEvF^)|}P zcvOKdaeis3b=N_OSh$l02c=tL0H0y9#Eqj1Ek`Gqh<2J^PxqB zJOB|G3yX}3?A7)4&VXKcD_ARq$^j7&0t4!y333=%L0ZK@=?wVJwHCtIzR`cXXcOkk zyYm3Cg!On_HwDQ4;PiB6ON%BZO+D%KjmG@~rLmw=PD@R_4FGXRnR^Lrjufb`zJ2P{ zsU?Re0UXl&zLlrZ$dYoV0YlnBaU&xo1oY`{J)n-VRk+;n>)=5y?5~HHUi!yYRGA^@MQW<6i_)q<0S(!+uD_ojRdTuO3>J%pb#rlb zHO%&ey4uAN>1`blv~@s15N8^&^Z@zYNvi^QoyKMa(t40jI>1n*iRqut2|k5~bH`)Q zon5BQTefAzg$fvXP%YsALA%@3KQAWsKOj+Y7!#9Z z!1q?yHR0=pwF*2fq2!;y7RBLAhzpx#B3Tb$BG`o4UmdJkb6TYQqa+iYk{=Uic(25Ed`C<$GzW$BbX)|r_VfM-iqYwJ)RWheQ$B8?=Ex4%uLblz2{?% z2O?Y#pu7hDXPAO%V|@?q=Nm|4G_|#zsZ&5-AtvVaX9aKlJkvLnwWBB=-HAPZLR(3V ztlLedyH{35^X2xMZ73wr6$AF3oIWFX@%H__Qf{4`;+$q*2j|41gKZ2fd!75uWPo&; zeftN*`eUmNQW=vMtzLZ@+Mj1jE09(!FTAu{i=ZWEO*?nSkeZk6S<>&mQf}K_->>RwZ;td0qy&2Xv3qSzw9A|9oub=nem*GsqhT2KOOCdcZf`j)UfF%sZM`dJ z;Jarhv6RfabI#DBKX2h~?0njCF+=M|kcVvfFNg)%%8wT# zUGeF#XflhDB;0bpe%I3=!qPxcP>tDma$fBI75R19CEEld%)3B(>S?n@dmL=jlj3i4w;tu+ZA5RZX zso8dnUka)Ms9^RGdiFmtKGHGosYjRA=E=vy%Z(|An()-~7j9VbXW|q83$A&$2)zVI z;AZjNkg~VyzW0^biRbf z)c=OwPA%&wLq%Mse&QG7{ds^gL#ZgH+@z4RTFbOK(6clpVP8r<>0XSw3P!tDmbs}ZFV zgKAUb3YjRBm1IQSS>^^;B#%OoeHjGICYnPw04DCUx2=xFOp#1(8 z%&pM^of9RO+U{q(*%jLask@9pL~mMy;fC*J+njtM$MTy~CK-B}OMVe!1Z+=BuH?E| z|5KeB-Y@0J_qW|z1;NHOH-{;qHz!_FaatvrWgZS0h90B)>hythK0by|e0ewjh^R>< zPIF)D-kU}(<=czl6a&CH5qx`MbFX>7xivwlB3ZZ8GN>Y3Q7`|NlZdrL3d) zr=Vk>s=L&DL;5&JD%^?APB`bWkXMg!G*B`CN34vJ`u=Usk>gc!Yn!{P^%pzVrcDn3 z8w~EPlTK)*Wu>Ze1UO?PJMF*0R_~~CvioW{C1tBR5X~MZvR5L3t5am6FKvK{Z5d#u z9(D=Ey(&?vo2+*M1S2d}auh6^14jS|LwdQCeRPV;|Af<8Vh_8Z;=UL70AAj&|oc_Ps|?5o{*LpcM!o}6j##D%o*QfL2{-P^HJ z>~rbJ4tTI0x__?2V$Jo#g?zI%?U=1G2Mpt{EsIozsm%iO7EPd(JEY|}BokZdCpy>p zCR}*=41=l@GwWtrmJ0XNqyZ%AmSak{tVkY;c5|8WcZza95PTkvHrxJ zVe~|i6^oKV(e07k%k=5M?@R^+fRU681+fi_qXhC^Mhw^%u7WW7*Wjd5XVUUFy)KCE>f)2o-F23?f&DK zxrMOCJAoyHh}U}(^cBy#VPbt!(x-cqN)RsX%)WCW#@VUqp0O3#UA+Yf;VtQBHmy#^ z2e3CaK5t(0lvc+3q&y||JH;Im5$(=c`Sc4#()n$dzCQihdcAJGo7-`@q6fWmXU2Qd zDIe2c%Hv&ONjIwkj&da2o>-o4?e(T`a;T_49H!3eB*Q)3vM)ci^P2d<%5-dm|I)&V zg-=&(FNrQ~^Pbv)8658C@wB#v15JCCm@9u<@*KLu<-FFVa|2V=*5+|am|Z)m08pXT z!2z`pjZdJ}0gV%MYG!pSKO2O$%4Er`%FkdiXuTTjAT3D5$N{#?ut?YNB9q|khmyj= z=6!<(8|4lX3@VawM;zl=SGI)N@|`=+(s9jdc=&XLj^GPwM0V0xu2D)YKIWW&(?OZ% zn$5+MB}d!^l>vuChz0%ACQew9<9>VIz5cA;Kwn-i;B>I`ND<~}BkU`0-Ng|4Qwvb1 zE-zcG-qgS=RAE8V<|FnFyxNDHotQ1L?yV>;X)NrwBZCu0R;B)hx~0b52jS|{G=h#U z&9QY%TsIzkfW|9FDg<-EC@9^6kPmlM%l(}uUNmfH-d&bHZ+%cDKb@w^VXi4 zeBOyYRMrUkQ>>CkTpS^mI*SWgW|nUW>O3o}xDvX`4$OCLAd%GftV5eLwAv)kn2 zvCOwj+peTenW+;(%>cNEo*0qIJ{LgHnJUH^K)<)!BX0S`t8)fD;&~T_D%~gz&MwQ( zI3*pOM5yO8emiQilDL;S@?|$^x5W+GDFOZ2dM(| z^iYqlxe8efl%BD|Bv+`gqys9@nPP?j7?AwRFOtog&w?sm5kzS;5LX!svciA#uU8t{ zmg}mk8^K=$zj+e}@r>l=Vly=34FlK)N??z0a0o=yB}4JM3G4|4oWCUnb0MrcMSv$Ll_CZ1bA0S zg@WI{O$9lz5XfU8BPofu)VZV&pF~>j^)y1Bj)64GycBnBXr4Y_ux)vnH8WM2SE-!I zK(k!75J-b0fLK#i)=OIIpWsSrH>IF!_&=n}kgK1@7h_#ph-gkz%N0cEGfhe<_``_% z_U>E{xy&@y-tL;JK_i?s&9Sr7tZe9w{!epEm=e z^p;%H#@gR8EY49{NHOK=m%lDGJdr9}%GVdzTJ9IJ{=cDx%vYXN%*E_MFNdE9j4)n`?sf$x4S0F?h4VN3ce_LTQ_j>!K+I zkV}B}Iv{GoR2hGMeO$NLKCP=uUW<@nRBj0A4y&YV9`sZpK=lHzl+;%Ey}(2Oj_RT% z^&lBPPwzn0e>TZAo5?1E$6HiVET&(r&korOSF%C4|Dv<{Q((MZ?nZanxQSb5h2m!Z+(58fx`M1WriXX_*u;2ePn9*{Mfc zvAb?euP^oljyMSO$v{9+`ZBk;cQiAawJ<+NSIoiQk)jQ>$Txk#+ba-y0LcEnt+9cRU zi^z4k%kf&amFv0rv++ReYt>qkP&(mA*>Ha>|LJX{$Cx*x$o$u?3}?2Yzu{9apJBm$ zePCI@taS2vbOMA3cyCDCLy#Sfw`C^)@?$^z^|%|CIh1a~41zR}bFG&FLOR}61ZWgA zyjmLX0QsZNg)klx2t5-^ri&HunhCOu(Aa?I)T!&T3E7_no1Z*+QUlY_e0bj=b>xUd zvaBqO2kSw~E8}W!xFRiW1Oicp1Es1v$WX)R4m)W{3bw5jWu@PD{z9f=@p&-5TU#vn z9ebW#2V`=|ZlkkzD;aiB*okM5V?Z-0L8ubtUE3S^4xqQMblyDNvSYi2@bLpI9*cL2 zUOpJ09%J0&U`|z5aI#P{y#55zNprie?9>DNqT){gC(dcl0Jh6b{R6F84^n7Id$5qM ztvPJ+3=NMMEfjw$cY3(_vcu!NEM$Fk3A4F^x|+N})2&d( znw-Jl&J>>%Rl~y+gA|SWG5dK@Vpsl@&m-;s!4(!B$~71;(Jip^t$)`H2~0ZV-VgYc zJAPSR8v~9{zE%-?1Lt$pvb%4#sKC5S@qdt-2W=m-YW>4%DsU!Q*`KT_;mAzJP+oQ% zb-I>)ZXhJ|T^xk!gqs7yOqF?({Ia>NBu&U6eKa|P8dEPQRQudd_>c-2nbr&w{I2H0rIBMDCdQ*&u zTwVt4TGio(beX6jWlA7>~128R+uC39-yo9E3)Oj!TW#B^)eA*}LypLmO@rta_y zXMwWZldqOtqaVpl@BPa<#>R^(?S$gPaWRjL!pi~#hAR;Qn*;g)T>>5p{`tYhW16`p zO284^jj9A8D&Q*I;_Dx!Z?P~ln}H&@c%fcg;UvtOHiNFYAR-Ubl<>=`GvQS;IC1i1 z26TrzH1*Xa7qPMaYyue+XMm;wq6JT`vIgB3>0oUE2_@V*A-5JS?OBExXK>w0`Q}C| zdk4=dg`0i}JjK%MLdp2Kyl)^n_4dn*=ldd-2^4yL>do%aojtF^RKv1MyvCf52%VH~V~IALjr z*6ndk`UoQAS^uZzlR6$Wm{5JV+l_5A@$ks~U%uLa63x@h+D zN2id>Hq`+GgK#*?eI0VuF-Y!QCpra&hWq1z;dM;yg@E3nH)@Jr{WWH>xkkn{XMGd< z`WY3;@3#{|O5%aZRcWh=yFVaq|8Vp3+C+;ry*eYUm~4C^KUKpB-*UdRAe@#)ayoNv ztZHcgB1CA$f%i3bI9WXQ)}@*!0)Y%-fUQ(-F-J`IxW9@y$KV7B$ycMejm%qJtI~zp zj(g8fdlUA7bmuOGU43x=#acPX*;GeU#%`yFdfxY3fkJ)&h$7Ig){n0k%05$*)FlgK zH@x^nSKhSjAd5NhSI2p96ipZs+m0tKd#-6A+86j5h)S-VK|m?VJ>NqK3W%gu3gelk zX}m`683X8jtWA^#p-MN&nqm%qj$U$k%pU>=RRE}%J~U?);M+KAy_EohL&mY5l3Tq( z>A%!=Q!#wwtpeH67A_5XE|76xcoW0jyK!=wpGpQ?Gdt;!>9!~wl#J7vz>X&vC6D%K zSt@L(R=jzbe7#P$hJ18%YNlNM>nmsP0ZR14t~cv(f_nFt5gfDyP!hI|zYTZc7pNkb zY-<@o^sLoDbNtQ?EM~pXWSxZ*^rQ)tt6}VjNfu9AM!&?H2Qki!DIK z2$?l;0>dy4r7nmkhi*%EXT-q_gBD*4&chUQHb_sQv@(VcQ(rok*Oxl29cTtlX*#+4 z&1aGl6QK+P?K=GK;pDzn=sY{sTW$n!d)S9N-w@_AI5-hHowlz(O0;G^M|$}6Z5(LO z$G6rM&NA^YgIIes%Bd%twBs>27ATTZ0TfwPQSmjX#WSEoY-Jgx^cawh$uim&MbE|yp@dohx(^#M%(E z1ch#Iz>|O~lp+swGg1kr{^;X4G}36bYmmgAzBE2HMTFLW;FHpu;65e8IHf})>V~~6 z;49OiX-Bx21Mc0vzFxgTn>c9q83$#EX%Jt9gGqtHstlNoboIzhef>yIXyJjzC&FZ$ zO{gh!U21=*KokS$N~CH~#?GPdlNw|3vIo9gIo>Webi6CW_$LPKCH+UryPa#c&;XkT zdjKK7&`r>22T2DGQHd-FMGhneSg2qhUfjWxS7XmA@him?LJNB!xJkF>m*b%z*AzIy@`&bq^p^3=pqr(8m=Ao$;U`>J7-TZ_Try zyyRzVDs~CZQORu4FWLUG{ay>U>4)9`$IdM(sss5O5?;c{22QkIfd#i(BQF|iHmFcW zF*r445Pw5NOiUN}MOdhunG%RKz>Kp&-$SET$i|EFS2mHn5{r*j- zF;$fYOkp^9EGS}9=6F1N{Z*os88odX0rSo)A+ZtqY47_>8HfzT9JTBH)JvfsDvvJz zNLz-{+Nt(jIba#=&##&bM}$O2E5jZ9`FPKPZ^oi_*)Y*GkXOUzIn4YX`F|@pWuw1- zgZzX-ZS&qn{fk-j3i{*U|ET=*mw(e*T-^tP?SCG9od4f^VOR|l+@;VTWb<=*?1PJ` zI9fpn+Yjg%`SOJ_@V#wxUufwWd#jEe$SfWHxu7dXACG+d=l-Dn%ME%z#wOu#BPA$^ z6J6_M#g{!5xmvo!E`9;s!Oj8-u?+cFzyExF?CGqloTwBs;Qiq;EoyY054zdB@{|ty zJZo_mel<`{wZvQPB6gN2{2oWGow6R-GW`##aZpvUsy@0AKoLazQxOYpp;)!53P*9#!-H#Gv|WnJbf{g6LR$*vcWA~5z~x00l!dAzlb%z=&5!U z2LdgaP(6pmncfNf%=B1mI@5~wSnB5`qmoYjA2R$4*?i(6SVX&<2=SszVMt6M-F7(( zJ9U&9y+g_aNI4#d?VSV+bbRE(QvezR#rt>0NammK`91`>+qfCUcc~Dr`bfIyLm@a% zR{P?BkBn=w;W+B59UY$a)1Ds{i$P&#@QOKgv@T zaRTG?S1|}9n$P7JgRdK*tEK=McB*^*OJqorx0nNzG(;q4YA1?BJEwp2r`+|-+bAs+ zn*UIB|dmDU3|sAPrVvCZ!Sn6}lQ7w6TOS9iZaa8!+Z|E z7kc_s!9oQ@r?gr?LMIFHRFRw6ZO-?ZN`0hUMwi{evX|4FGXBe}wL;7M#Oi2(Mn*y|T4)pf(V~(Dl4508W>Jb>yn*PrppGDiETwnphN{>BetgK z=M{O?fV|JE8HnS!Jw2TYhSTf_DY|LgG_p4Mg7)CD;oFVAsSh{v9UJ&1dq?iNmoJJS zXfbO`2F7eI{PkJJlI`p6!fwS-5+c|a&5m4F9!6oYBjH)Fakgn6MN%jaD~)c7^fRB_ zX9(Hmn}brBW`v{WpF5aAz3}9v{fvg$$j+Zv!}H@v@SQoQM}79xm=^>zf*nDi5PuWJ z2iQ8g3B*>7*ryV`tO##O)NUvKat(4WW5nG1*wU!#7gd}g9f?F0I z(j&5V5yRjnO-Y<2d|#G+(8~_|gY`jH$GVZ9pNfk7>tk#2XQTzJlO8_gZj+AvR4^&w zyFn4i*cWM5{l|bRs$vja;MTlX z`f(O`{)bM>hdcJC?}q1~|DQCj$}>pT{IKR0z&*r|YhQW4(1MK@gywxcM?t8=JNzk| z0ib-O465O=gz__KS2>s6t6T-{^iIXP?!1B<0ZtUdn3XgDgLsD8%;TL*KaFtUz^I)c zzV-N(CE!kD;4P3}Af*mGTxCsPfh(?clEpY4`?m@^UhyM;FZQ+FwrP_fF*Xr{(f|*` zTt#)Y7fU7QaY6O(8YZGXR4~W9jU^2?G?hnla6!GpiRqH}IO_Q5)LO%r^7C!d*Ul!S zeOlVv;S}l}vChabqI(M{828MZl?Wq|7-xQ_Mmhe_)MOEE;JPpHQV4IP@&UO zj8y5deGC)LplN{mq(#uNtZh$rJLzj;x3=e&zpCDH{r#8yK2Lu=dPMC)_UF)B31$j4 zR`(8R2*2V!v7jVe-fdA}?4;qSA#$mXll8E|q(OG&p7_|)J9)HjxibG|GQ8}4^^Fh% z&z>tTlG}HuCGDg}>>9dW1;|O+)mwJ*TobXMNpd9a40c_)6ZDC!&4=e)4$Wja;>pF$ zndSHN@rknN`I?%u)g!LP1#gF@Z5{m&?72x1CQy0cX}0z@foc2pzhC;4|H9YRk-^-? z1BWvg(0&0Cg1813OzAi}|-HK0d*E`l(FBU6vz;8`RAL+ED_g_He;@snyBQ z=7IHtje+bG$UOHi(CgMPk$V}g-Y*sKTbCCOcRGGPNLgh;H!Y@- zTJ(}c-KqCL31hBlU+(G>q8U7qO*U$-YADMf4Pa|5E=|lmaymbB=Vif6FCpl~D)1*7 zwMY5o+sd&A1ENydPelp15KVk_mNy3i3Izi7!!~5UR>MlcO?ri1i z=yzrevrCQ7cignJ^W=vcaAqFk7W)0tWjkEM9F`eD( zQdA^zbuVM(rbXpx`mg(_^=}+61}ObP=xs7;dX1sF%-YX z*cd}mflV4#U#dLyU6wRv-5KHa*DqH*vw>$zvw z*A`v}P(?~3o<82pGw!v*Xko|ba>=Q!7Og3@EIizHuJ$6wO?x*^X zjEqO^?j5C9t0>^DP6#R<-or$N@6ps&wu|}r$+{+(t-Eq^x z5-;eaQF>bZ`Dk1=nWsGQ_I9+0!iODC=IOI7q3$L56Yo7J^ApuTJh|SVKCpYWK;5~7 ziLoBG2)|O>g5=qs)Kv;+~AmhK9<3CfGyd_GIk z%f(S*YW>}{nf@Z56JqkfH@M|6ofj_EOYoT)vFM1n5D=Q_`nYR~VM%)ZzIRvu4JAEc zBNdg`LFFlADgCvm*0bkun)Vs?uiW(TP5vfhX(?MOcEUu=b+cE=ihnkzz-E2C{Xq<) z87owBXtAHf9_XgP!q;7<<6B^r$DAcVkJ@M6Y1o_sMKzvFW$YYI-W}^?t3{!|BPB1% zc+>$@ST!zxRNW!()1s!|WVZ@Yf)w_j9M>6NsA2ql?jAV;~gk$K=WrHBh_TOiB*6s#!c!Nq5 z6hg3CsC%KDe)hQUi;ow*R7=~zD&dA3+s4n z>upe4C3K5B48`A`e2^dM{_>HUOImdFv4^~>hW-bS)~Shax4I4{cMc8>Czot*KU-q5SulYV&f2-*-YURcL*`*M2gg4VjWL}hBXqHZj&;G>XdzeQ$?})_0QpM;@ zt2(^7-Mr(1s?3{yAUof;9Q{fL#8}mpFodXGaxQW=Q%|9Ungq|MjBoI z%n8im1?k1fvg`g2%xcSyfNdoYm0UI>*!u1d(a??^BOE2P-dl}1#!?ThRo5L~wakCw z<4HS@RW}L8Uv3KL?0so()vUbARoRgxj#i8M$ZuERp|6>8kt;EUXUa4b_E)~dBj2?b zB323$3S(4J#aGAI?f+PR%hRA~UR^K)o3H23Xz7dZ6l-|-wUqDfAUyj!)ZK{B-Yw{5 zlwoP+wpcy?BCN}G>E7pMj(D93tx@Y-DGjeMQnKRfT;jYR<4kho$DNcl>N(p-j!jb{ z2e7yAM3~z%OZ!Eiid!=sdu-W8(a<>ii95q`eb0JigtzqLxj6mED51FRZ?bjIs)0mk z99V2EeK&9K&}?wiDmW-10VH6VDd#>LP#wCYOy8P(CVdN<+0>ZY)SGxU=TzO^m~B|* zxi){l=&HDxeazN)W40Xyu?Y&5Y;g9Ch&svJ>w^X|-i}ntna`=MU4>H_0?g!7vd^x& zSDXoXTc#5Aw8LOnakCI*ZKT91WY~=5Q-d9d`0_su-8029%fkZBLL?Lr#;0oRkiW;l z7YQ|LeHzQno!s*l#fypxM~#9~zEpouE2@-P+k7~~TWYXZ(sRTe8}+jqbK~SO5Dsad z-PKo&)z{DH>+7o>4=Qo&1R^#ic@*4?11<1P_*I)xjLENku0aq2rbs($NQybODmba+ zL^;hb;IR#}CUuNZ4Cp;Ro?G(qs<^m_6AyCY?%dpQ?0v(>eAu-s#)v0Cg){8FgZzbd zCi>rzS;wb4{|%XK+sE)8dD35xJLll#KYu`ZMcJ56|AOk%y(IQFTzof*(Ppa4kl%7= zxHw$Ek4M&tBVIe&_!NjmMH>ISYy}P5-Vxyo>5oNe+2s$Dz^w4?8g{loIZhA&#vpBnypOAv-4NV?YTRsG_!7(W*Judgs z&-$^asDuenUI@ zI`?P&;H2d8ZSU3-HZ_=M5)~I6dugS{%HsA6>Yy~q-Sqp` z<;ejt?m9+Qq~P{@tpfwosyahvn@dri<59g^%01KU_(WRSyUY*Wu4Z@0(Ttxd!IhoD zV-qXP_(a72yp*dnomV<+F;zJsg)?Gr%N8 zN8Ml+u@BbQD-^tHf&}^n_ued>l#2EE-aUB7Hjw5LGnUl9HRl^(-}`5F`0;Z66hgY- z-S?`DldXk(=|Km7$N?aJNi-vGc zNju&mc?c=t7n@RM2oQesxb&~e8q_9fXK3-Mw8gIs{(^2=*}5s1C}*8E&90xb=|)uU z;D-c|we^Z_321SKi0l4;P!VbYQ{}ey7|U&$sS~$XFS?B`G!SxO;uCJpSuZ zUn!#^?d1a}5|(3J)e`QnO$>m5Bwv>c-D{r6F^{q`5V#okIg3j%b+=_J;S z^H8?F9N8TEzu5cks3xxoh35HKPbTd2*g}_SwI(_aOv2 zUf|M0g{=#GBmodOa=cZyvSOYS6#xkfOkQ5{#}lcz8<9>z3X&2}3^e=M?A1TfluNnz zz=JabK(O@XjV-xX3s4R+%9(Z12u!h3=;KBGEw^p0Wb@F3>=bWCs+ILE7P^)9N%O_v z{ZYmmhv%)e0}@tNhiWo2aP2Tm!X{TDS&yHGh%C^Z8uw^V-6uZ&&U}+a$Cht`*qJIW zhZT(i$gSlA6gdO;IL{?Q>Wfm7K_@z~e9n?`YzbGE2v01Ejqj{&G1{HT5q|E3avvpG zglCA!K6BhkH+fxdFiv_GmLe@7vR9ozDZ=mB1FF@u)ZD(Lh432owXi`HJ1WsAmk>GA^GPi0? zlz11S;O`g9bDHlpQL}^flN3(ceLj}G{x<$2p*pW>UZb$Vp?%U8c4+mMS7&RY3l~ZR zZEdDRuUD`}BRM+c&dYaLEbj$dEL17hJeEmO=(~w(pPba@Q}~>r+LjZLu=)D{IXNq7 zYW9{fkSecA949k0qYVMP24M~ybt!fI*w|%oxx(Gfrbo?`=(FZqPg!Pu%Kfo080tcQ zf(+QeoBfo}F}<`q8#X$6Z&>m^#~&T)!nw}UfSNUVRm|^E2IU(R)$6)1%Zt59eO#OQLw~}$Og>cVY*E`g#?


-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 diff --git a/test-results/history-runtime/markdown-deleted-recovered-1920x1080.png b/test-results/history-runtime/markdown-deleted-recovered-1920x1080.png deleted file mode 100644 index a14f7b04a677d6c9ce586d2145997f728e5c8c69..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 129567 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 diff --git a/test-results/history-runtime/markdown-fragment-restored-1920x1080.png b/test-results/history-runtime/markdown-fragment-restored-1920x1080.png deleted file mode 100644 index 06e5926ae5127c89003f7a96d58d0ce686622f8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 180851 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 diff --git a/test-results/history-runtime/markdown-local-history-1280x800.png b/test-results/history-runtime/markdown-local-history-1280x800.png deleted file mode 100644 index 3731346f0996b96b13d7e4cf238a2b385b0b16f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117688 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

    ?h_~WA3H`=kKnLJa(e^fL}@%Wk!;Jc^rv?- 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

    Ey}#7v64; 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�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 w23NzEBo{+?XTFCX<-;*ahnm3$x7#4|$qh_* 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 diff --git a/test-results/history-runtime/writerside-fragment-restored-1920x1080.png b/test-results/history-runtime/writerside-fragment-restored-1920x1080.png deleted file mode 100644 index c81f68fbb9fa9c6ce088f9011f8cfbcc37f15f9a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 180021 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 z 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 Z8bKXq6u(^mHdevMr15{4#2Y*K{~x)Oo=^Y) diff --git a/test-results/history-runtime/writerside-report.json b/test-results/history-runtime/writerside-report.json deleted file mode 100644 index f055d27c..00000000 --- a/test-results/history-runtime/writerside-report.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "passed": true, - "checks": { - "native clipboard publication": true, - "explicit save captured": true, - "exact comparison region available": true, - "fragment restore": true, - "clipboardEntries": true, - "revisionReasons": true - }, - "screenshots": [ - "writerside-clipboard-history-1280x800.png", - "writerside-local-history-1280x800.png", - "writerside-comparison-1920x1080.png", - "writerside-fragment-restored-1920x1080.png" - ] -} diff --git a/test/src/spellcheck_projection_test.dart b/test/src/spellcheck_projection_test.dart index cae539d0..ffb27e52 100644 --- a/test/src/spellcheck_projection_test.dart +++ b/test/src/spellcheck_projection_test.dart @@ -281,7 +281,9 @@ void main() { expect(texts, contains('28. Document Conclusion')); } expect( - rich.runs.firstWhere((run) => run.text == 'Raw HTML block ').target, + rich.runs + .firstWhere((run) => run.text.trim() == 'Raw HTML block') + .target, isA(), reason: 'Protected HTML still gets checked in Source.', ); diff --git a/test/src/spelling_line_breaks_test.dart b/test/src/spelling_line_breaks_test.dart new file mode 100644 index 00000000..fb9e64e4 --- /dev/null +++ b/test/src/spelling_line_breaks_test.dart @@ -0,0 +1,245 @@ +import 'package:busymark/src/editor/wysiwyg/wysiwyg_document_controller.dart'; +import 'package:busymark/src/editor/wysiwyg/wysiwyg_inline_controller.dart'; +import 'package:busymark/src/markdown/markdown_model.dart'; +import 'package:busymark/src/markdown/markdown_parser.dart'; +import 'package:busymark/src/spellcheck/markdown_spelling_projection.dart'; +import 'package:busymark/src/spellcheck/spelling_projection.dart'; +import 'package:busymark/src/spellcheck/spelling_replacement.dart'; +import 'package:busymark/src/spellcheck/wysiwyg_spelling_projection.dart'; +import 'package:busymark/src/workspace/workspace_model.dart'; +import 'package:flutter_test/flutter_test.dart'; + +const _snapshot = SpellingSnapshotIdentity( + bufferId: 'line-breaks', + contentRevision: 1, + documentKind: DocumentKind.markdown, + contextGeneration: 1, +); + +void _expectProseAndCorrection( + String source, + String expectedText, + MarkdownMode mode, +) { + const filePath = '/line-breaks.md'; + final document = const MarkdownParser() + .parse( + filePath: filePath, + source: source, + mode: mode, + validateLocalReferences: false, + ) + .busyDocument; + final plain = const MarkdownSpellingProjector().project( + filePath: filePath, + source: source, + mode: mode, + languageId: 'en-CA', + snapshot: _snapshot, + ); + final rich = const WysiwygSpellingProjector().project( + document: document, + languageId: 'en-CA', + snapshot: _snapshot, + documentGeneration: 1, + ); + for (final projection in [plain, rich]) { + expect( + projection.complete, + isTrue, + reason: '$source: ${projection.message}', + ); + expect(projection.runs.map((run) => run.text), [ + expectedText, + ], reason: source); + final run = projection.runs.single; + expect(run.hasValidMapping, isTrue); + for (final word in ['helo', 'wrld']) { + final offset = run.text.indexOf(word); + final occurrence = SpellingOccurrence( + id: word, + run: run, + logicalStart: offset, + logicalEnd: offset + word.length, + word: word, + outcome: SpellingCheckOutcome.rejected, + ); + expect(occurrence.sourceStart, source.indexOf(word)); + expect(occurrence.sourceEnd, source.indexOf(word) + word.length); + final replacement = word == 'helo' ? 'hello' : 'world'; + final plan = const SpellingReplacementPlanner().build( + occurrence: occurrence, + suggestion: replacement, + ); + final expectedSource = source.replaceFirst(word, replacement); + expect(plan.applyToSource(source), expectedSource); + if (identical(projection, rich)) { + expect(run.target, isA()); + final target = run.target as SpellingRichBlockTarget; + final controller = BusyMarkWysiwygDocumentController( + document: document, + ); + try { + expect( + controller.replaceSpellingInBlock( + blockId: target.blockId, + expectedFieldText: busyMarkWysiwygEditableText( + controller.blockById(target.blockId)!, + ), + plan: plan, + ), + isTrue, + ); + expect(controller.markdown, expectedSource); + } finally { + controller.dispose(); + } + } + } + } +} + +void main() { + for (final mode in [ + MarkdownMode.commonMark, + MarkdownMode.gfm, + MarkdownMode.writersideMarkdown, + ]) { + group(mode.name, () { + for (final (name, prefix, continuation) in [ + ('paragraph', '', ''), + ('numbered list', '1. ', ' '), + ('lazy list continuation', '1. ', ''), + ('bulleted list', '- ', ' '), + ('blockquote', '> ', '> '), + ('list in a blockquote', '> 1. ', '> '), + ]) { + for (final (breakName, suffix, expected) in [ + ('soft break', '', 'helo wrld'), + ('space before soft break', ' ', 'helo wrld'), + ('two-space hard break', ' ', 'helo wrld'), + ('three-space hard break', ' ', 'helo wrld'), + ('backslash hard break', '\\', 'helo wrld'), + ('escaped backslash', '\\\\', 'helo\\ wrld'), + ('escaped backslash before hard break', '\\\\\\', 'helo\\ wrld'), + ('tab before soft break', '\t', 'helo\t wrld'), + ('space and tab before soft break', ' \t', 'helo \t wrld'), + ]) { + test('$name preserves $breakName and correction positions', () { + for (final lineEnding in ['\n', '\r\n', '\r']) { + _expectProseAndCorrection( + '$prefix' + 'helo$suffix$lineEnding$continuation**wrld**$lineEnding', + expected, + mode, + ); + } + }); + } + } + + test('literal numbered continuation remains prose', () { + for (final marker in ['2.', '2)']) { + _expectProseAndCorrection( + 'helo\n$marker wrld\n', + 'helo $marker wrld', + mode, + ); + } + }); + + test('indented paragraph continuation follows parser boundaries', () { + _expectProseAndCorrection('helo\n wrld\n', 'helo wrld', mode); + }); + + test('inline HTML breaks retain surrounding prose and corrections', () { + for (final tag in ['
    ', '
    ', '
    ', '
    ']) { + _expectProseAndCorrection('helo $tag **wrld**\n', 'helo wrld', mode); + _expectProseAndCorrection('helo $tag wrld\n', 'helo wrld', mode); + } + }); + + test('HTML layout newlines do not add extra spelling breaks', () { + for (final (source, expected) in [ + ('helo
    \nwrld\n', 'helo wrld'), + ('helo\n
    \n**wrld**\n', 'helo wrld'), + ('- helo
    \n wrld\n', 'helo wrld'), + ('> helo
    \n> wrld\n', 'helo wrld'), + ('helo
    wrld\n', 'helo wrld'), + ('a helo
    wrld
    \n', 'a helo wrld'), + ('helo wrld\n', 'helo wrld'), + ('[helo
    wrld](target)\n', 'helo wrld'), + ('[helo
    \nwrld](target)\n', 'helo wrld'), + ('[helo\n
    \n**wrld**](target)\n', 'helo wrld'), + ('helo

    wrld\n', 'helo wrld'), + ('helo &
    wrld\n', 'helo & wrld'), + ('helo
    wrld text\n', 'helo wrld text'), + ]) { + _expectProseAndCorrection(source, expected, mode); + } + }); + + test('HTML breaks keep readable metadata as a separate spelling run', () { + for (final lineEnding in [' ', '\n', '\r\n']) { + for (final linked in [false, true]) { + final prose = 'helowrld'; + final source = linked ? '[$prose](target)\n' : '$prose\n'; + final document = const MarkdownParser() + .parse( + filePath: '/break-metadata.md', + source: source, + mode: mode, + validateLocalReferences: false, + ) + .busyDocument; + final rich = const WysiwygSpellingProjector().project( + document: document, + languageId: 'en-CA', + snapshot: _snapshot, + documentGeneration: 1, + ); + expect(rich.complete, isTrue, reason: source); + expect(rich.runs.map((run) => run.text), [ + 'helo wrld', + 'titel', + ], reason: source); + final metadata = rich.runs.last; + expect(metadata.target, isA()); + final occurrence = SpellingOccurrence( + id: 'title', + run: metadata, + logicalStart: 0, + logicalEnd: 5, + word: 'titel', + outcome: SpellingCheckOutcome.rejected, + ); + final plan = const SpellingReplacementPlanner().build( + occurrence: occurrence, + suggestion: 'title', + ); + expect( + plan.applyToSource(source), + source.replaceFirst('titel', 'title'), + ); + } + } + }); + + test('formatting can contain a container line break', () { + for (final (prefix, continuation) in [('-', ' '), ('>', '> ')]) { + _expectProseAndCorrection( + '$prefix **helo \n$continuation' + 'wrld**\n', + 'helo wrld', + mode, + ); + } + }); + + test('HTML displayed as literal text keeps exact spelling targets', () { + const literal = '
    helo wrld'; + _expectProseAndCorrection('$literal\n', literal, mode); + }); + }); + } +} diff --git a/test/src/spelling_workspace_test.dart b/test/src/spelling_workspace_test.dart index 5fc4c886..4bee497a 100644 --- a/test/src/spelling_workspace_test.dart +++ b/test/src/spelling_workspace_test.dart @@ -78,6 +78,47 @@ void main() { } }); + testWidgets( + 'Writerside list hard break supports underlines and spelling review', + (tester) async { + const source = '1. helo \n**world**\n\n2. hello\n'; + const corrected = '1. hello \n**world**\n\n2. hello\n'; + final harness = await _pumpWorkspace( + tester, + source: source, + writerside: true, + ); + await _until(tester, () => harness.spelling.state.complete); + expect(find.text(l10n.spellingCheckIncomplete), findsNothing); + expect(harness.spelling.misspellings.map((word) => word.word), ['helo']); + final target = + harness.spelling.misspellings.single.run.target + as SpellingRichBlockTarget; + final field = tester + .widgetList( + find.byType(BusyMarkWysiwygBlockField), + ) + .singleWhere((field) => field.block.id == target.blockId); + expect(field.spellingRanges, isNotEmpty); + await tester.sendKeyEvent(LogicalKeyboardKey.f7); + final dialog = find.byType(BusyMarkSpellingReviewDialog); + final suggestion = find.descendant( + of: dialog, + matching: find.text('hello'), + ); + await _until(tester, () => suggestion.evaluate().isNotEmpty); + await tester.tap(suggestion); + await _until( + tester, + () => dialog.evaluate().isEmpty && harness.spelling.state.complete, + ); + expect(harness.workspace.activeText, corrected); + expect(harness.spelling.misspellings, isEmpty); + expect(find.text(l10n.spellingCheckIncomplete), findsNothing); + await tester.pumpWidget(const SizedBox.shrink()); + }, + ); + testWidgets( 'Writerside nested TOC and comment retain rich spelling through correction', (tester) async { From 9694665eb750f6a0bb24d4dd2e760a12df7cb471 Mon Sep 17 00:00:00 2001 From: Albert G Date: Wed, 7 Oct 2026 21:14:15 -0700 Subject: [PATCH 5/9] Fix/editor view paste replace bug (#47) * Fix pasted formatting boundaries in Editor fields Keep leading and trailing paste whitespace outside continuous strong and emphasis runs, while retaining destination formatting and internal spaces. Avoid duplicate inherited wrappers during structured field replacements and reuse the existing whitespace-preservation metadata for saved Markdown. Cover explicit structured fragments and normal/plain clipboard paste, including live ranges, serialization, reparsing, caret placement, undo/redo, whitespace-only replacements, nested styles, and formatting across links. Characterize HTML decoding separately so dropped fixture spaces cannot hide the replacement defect. * Fix clipboard whitespace and formatting runs across links --- .../wysiwyg/wysiwyg_clipboard_html.dart | 68 +- .../wysiwyg/wysiwyg_document_controller.dart | 229 +++- lib/src/editor/wysiwyg/wysiwyg_editor.dart | 1 + lib/src/markdown/raw_html_adapter.dart | 14 +- .../markdown_serializer_metadata_test.dart | 65 ++ test/src/source_paste_engine_test.dart | 79 ++ test/src/wysiwyg_clipboard_test.dart | 1009 ++++++++++++++++- 7 files changed, 1422 insertions(+), 43 deletions(-) diff --git a/lib/src/editor/wysiwyg/wysiwyg_clipboard_html.dart b/lib/src/editor/wysiwyg/wysiwyg_clipboard_html.dart index 12595636..596e3850 100644 --- a/lib/src/editor/wysiwyg/wysiwyg_clipboard_html.dart +++ b/lib/src/editor/wysiwyg/wysiwyg_clipboard_html.dart @@ -39,18 +39,21 @@ class WysiwygClipboardHtml { final content = start >= 0 && end > start ? source.substring(start + ''.length, end) : source; - final body = html.parse(content).body; - if (body == null) return null; + // Fragment parsing retains leading text that document parsing consumes + // before an inferred . Full clipboard documents are accepted too. + final body = html.parseFragment(content); final normalizer = _HtmlNormalizer(); final clean = dom.Element.tag('div') ..nodes.addAll(normalizer.nodes(body.nodes, 0, const {})); var id = 0; - final parsed = const RawHtmlAdapter().parseRawHtmlBlock( - clean.outerHtml, - () => 'clipboard-html-${id++}', - ); + final parsed = const RawHtmlAdapter( + preserveInlineWhitespace: true, + ).parseRawHtmlBlock(clean.outerHtml, () => 'clipboard-html-${id++}'); if (parsed == null || !parsed.safe || parsed.blocks.isEmpty) return null; BusyBlock task(BusyBlock block) { + block = block.copyWith( + inlines: busyMarkWysiwygNormalizeClipboardFormatting(block.inlines), + ); final children = [for (final child in block.children) task(child)]; if ((block.kind == BusyBlockKind.unorderedListItem || block.kind == BusyBlockKind.orderedListItem) && @@ -77,7 +80,16 @@ class WysiwygClipboardHtml { dirty: true, ); } - return block.copyWith(children: children, dirty: true); + return block.copyWith( + children: children, + attributes: { + ...block.attributes, + if (block.plainText.isNotEmpty && + block.plainText.trimRight() != block.plainText) + busyMarkPreserveTextWhitespaceAttribute: 'true', + }, + dirty: true, + ); } return WysiwygClipboardFragment( @@ -328,6 +340,7 @@ class _HtmlNormalizer { 'script', 'style', 'head', + 'title', 'meta', 'link', 'iframe', @@ -347,27 +360,44 @@ class _HtmlNormalizer { throw const FormatException('Clipboard HTML nesting limit'); } final out = []; - for (final node in input) { + final siblings = input.toList(); + for (var index = 0; index < siblings.length; index++) { + final node = siblings[index]; if (++count > maxRawHtmlNodes) { throw const FormatException('Clipboard HTML node limit'); } if (node is dom.Text) { - final content = node.data.trim(); - if (content.isEmpty || styles.isEmpty) { - out.add(dom.Text(node.data)); - continue; + bool structural(dom.Node? sibling) => + sibling is dom.Element && + isSafeBlockHtmlTag(sibling.localName ?? ''); + final before = index > 0 ? siblings[index - 1] : null; + final after = index + 1 < siblings.length ? siblings[index + 1] : null; + var data = node.data; + final leading = data.substring(0, data.length - data.trimLeft().length); + final trailing = data.substring(data.trimRight().length); + if ((before == null || structural(before)) && + RegExp(r'[\r\n]').hasMatch(leading)) { + data = data.trimLeft(); + } + if ((after == null || structural(after)) && + RegExp(r'[\r\n]').hasMatch(trailing)) { + data = data.trimRight(); + } + if (data.trim().isEmpty) { + // Indentation between blocks is layout. Newlines at a container's + // edges are also layout; explicit horizontal inline spaces are text. + if (structural(before) || + structural(after) || + ((before == null || after == null) && + RegExp(r'[\r\n]').hasMatch(node.data))) { + continue; + } } - // Markdown emphasis cannot open/close against whitespace. Keep that - // whitespace as text outside the formatting, not inside delimiters. - final start = node.data.length - node.data.trimLeft().length; - final end = node.data.trimRight().length; - if (start > 0) out.add(dom.Text(node.data.substring(0, start))); - dom.Node text = dom.Text(content); + dom.Node text = dom.Text(data); for (final tag in _formattingTags.where(styles.contains)) { text = _element(tag, [text]); } out.add(text); - if (end < node.data.length) out.add(dom.Text(node.data.substring(end))); continue; } if (node is! dom.Element) continue; diff --git a/lib/src/editor/wysiwyg/wysiwyg_document_controller.dart b/lib/src/editor/wysiwyg/wysiwyg_document_controller.dart index 61ec123c..177ef9e0 100644 --- a/lib/src/editor/wysiwyg/wysiwyg_document_controller.dart +++ b/lib/src/editor/wysiwyg/wysiwyg_document_controller.dart @@ -522,6 +522,7 @@ class BusyMarkWysiwygDocumentController extends ChangeNotifier { String text, { Iterable activeInlineKinds = const [], bool preserveTextWhitespace = false, + bool normalizePastedFormatting = false, }) { _replaceBlock( blockId, @@ -530,6 +531,7 @@ class BusyMarkWysiwygDocumentController extends ChangeNotifier { text, activeInlineKinds: activeInlineKinds, preserveTextWhitespace: preserveTextWhitespace, + normalizePastedFormatting: normalizePastedFormatting, ), ); } @@ -2159,13 +2161,19 @@ class BusyMarkWysiwygDocumentController extends ChangeNotifier { clipboardBlock.inlines, _inlineContextForReplacement(block.inlines, start, end), ); - final mergedInlines = _refreshBareUrlLinks( - _mergeAdjacentInlineStyles([ - ...partition.before, - ...insertedInlines, - ...partition.after, - ]), - ); + var mergedInlines = _mergeAdjacentInlineStyles([ + ...partition.before, + ...insertedInlines, + ...partition.after, + ]); + if (!ownsDestinationStructure) { + mergedInlines = _normalizePastedFormatting( + mergedInlines, + start, + start + inserted.text.length, + ); + } + mergedInlines = _refreshBareUrlLinks(mergedInlines); if (ownsDestinationStructure) { final structural = _styledBlockToBusyBlock(inserted, rootId: block.id); final retainsDescendants = _isBlockContentContainer(structural.kind); @@ -2188,7 +2196,12 @@ class BusyMarkWysiwygDocumentController extends ChangeNotifier { // select its descendants. Keep the destination structure and only // replace its inline content. kind: block.kind, - attributes: block.attributes, + attributes: _attributesForText( + block.attributes, + block.kind, + beforeText + inserted.text + afterText, + preserveTextWhitespace: true, + ), inlines: mergedInlines, preserveRaw: false, dirty: true, @@ -2987,6 +3000,17 @@ BusyBlock busyMarkWysiwygClipboardBlock(BusyWysiwygStyledBlock styled) { ); } +/// HTML decoding uses the same run boundaries as insertion, after all inline +/// wrappers are available. Trimming individual HTML text leaves would turn +/// internal spaces in nested formatting into unformatted boundary spaces. +List busyMarkWysiwygNormalizeClipboardFormatting( + List inlines, +) => _normalizePastedFormatting( + _mergeAdjacentInlineStyles(inlines), + 0, + inlines.fold(0, (length, inline) => length + inline.plainText.length), +); + List busyMarkWysiwygClipboardInlineSlice( List inlines, int start, @@ -3409,6 +3433,11 @@ List _applyInlineReplacementContext( busyMarkSameInlineSemantics(wrapper, result.single)) { continue; } + if (_isMarkdownEmphasis(wrapper.kind)) { + // The inherited wrapper already supplies this style, including through + // differently styled children. Do not nest an incoming copy inside it. + result = _withoutInlineContext(result, wrapper); + } result = [ wrapper.copyWith( text: result.map((inline) => inline.plainText).join(), @@ -3419,6 +3448,124 @@ List _applyInlineReplacementContext( return result; } +List _withoutInlineContext( + List inlines, + BusyInline wrapper, +) => [ + for (final inline in inlines) + if (inline.children.isEmpty) + inline + else if (busyMarkSameInlineSemantics(inline, wrapper)) + ..._withoutInlineContext(inline.children, wrapper) + else + inline.copyWith( + children: _withoutInlineContext(inline.children, wrapper), + ), +]; + +bool _isMarkdownEmphasis(BusyInlineKind kind) => + kind == BusyInlineKind.strong || kind == BusyInlineKind.emphasis; + +// Normalize only runs touched by paste, after merging the surviving and +// inserted content. Whitespace between surviving formatted characters stays +// inside the run; boundary whitespace remains text outside its delimiters. +List _normalizePastedFormatting( + List inlines, + int start, + int end, +) { + final text = inlines.map((inline) => inline.plainText).join(); + final ranges = busyInlineStyleRanges(inlines); + final runs = + <({BusyInlineKind kind, int start, int end, int first, int last})>[]; + for (final kind in [BusyInlineKind.strong, BusyInlineKind.emphasis]) { + final styled = ranges.where((range) => range.kind == kind).toList(); + for (var index = 0; index < styled.length; index++) { + final runStart = styled[index].start; + var runEnd = styled[index].end; + // A single visual run can cross link or other wrapper boundaries. + while (index + 1 < styled.length && styled[index + 1].start <= runEnd) { + index++; + if (styled[index].end > runEnd) runEnd = styled[index].end; + } + if (runStart >= end || runEnd <= start) continue; + var first = runStart; + var last = runEnd; + while (first < last && _formattingWhitespace.hasMatch(text[first])) { + first++; + } + while (last > first && _formattingWhitespace.hasMatch(text[last - 1])) { + last--; + } + runs.add(( + kind: kind, + start: runStart, + end: runEnd, + first: first, + last: last, + )); + } + } + + List normalize(List values, int offset) { + final result = []; + for (final inline in values) { + final inlineStart = offset; + final length = inline.plainText.length; + offset += length; + if (inline.children.isEmpty) { + result.add(inline); + continue; + } + final children = normalize(inline.children, inlineStart); + final run = runs + .where( + (run) => + run.kind == inline.kind && + run.start <= inlineStart && + run.end >= offset, + ) + .firstOrNull; + final first = run == null + ? 0 + : (run.first - inlineStart).clamp(0, length); + final last = run == null + ? length + : (run.last - inlineStart).clamp(first, length); + if (first == 0 && last == length) { + result.add(inline.copyWith(children: children)); + continue; + } + final leading = _partitionInlinesForReplacement( + children, + first, + first, + refreshUrls: false, + ); + final trailing = _partitionInlinesForReplacement( + leading.after, + last - first, + last - first, + refreshUrls: false, + ); + result.addAll([ + ...leading.before, + if (last > first) + inline.copyWith( + text: inline.plainText.substring(first, last), + children: trailing.before, + ), + ...trailing.after, + ]); + } + return _mergeAdjacentInlineStyles(result); + } + + return normalize(inlines, 0); +} + +final _formattingWhitespace = RegExp(r'\s', unicode: true); + bool _containsInlineKind(List inlines, BusyInlineKind kind) { for (final inline in inlines) { if (inline.kind == kind || _containsInlineKind(inline.children, kind)) { @@ -3973,6 +4120,7 @@ BusyBlock _blockWithEditedText( String nextText, { Iterable activeInlineKinds = const [], bool preserveTextWhitespace = false, + bool normalizePastedFormatting = false, }) { final oldText = block.plainText; final oldRanges = busyInlineStyleRanges(block.inlines); @@ -3992,13 +4140,23 @@ BusyBlock _blockWithEditedText( nextText, nextRanges, ); + var inlines = _restoreSemanticInlineAnchors( + originalInlines: block.inlines, + oldText: oldText, + newText: nextText, + rebuiltInlines: rebuiltInlines, + ); + if (normalizePastedFormatting) { + final prefix = _commonPrefixLength(oldText, nextText); + final suffix = _commonSuffixLength(oldText, nextText, prefix); + inlines = _normalizePastedFormatting( + inlines, + prefix, + nextText.length - suffix, + ); + } return block.copyWith( - inlines: _restoreSemanticInlineAnchors( - originalInlines: block.inlines, - oldText: oldText, - newText: nextText, - rebuiltInlines: rebuiltInlines, - ), + inlines: inlines, attributes: _attributesForText( block.attributes, block.kind, @@ -4652,12 +4810,51 @@ List _inlinesFromStyleRanges( List _mergeAdjacentInlineStyles(List inlines) { final merged = []; - for (final sourceInline in inlines) { - final inline = sourceInline.children.isEmpty + BusyInline? formatting(BusyInline? inline) { + if (inline?.kind == BusyInlineKind.link && inline!.children.length == 1) { + inline = inline.children.single; + } + return inline?.kind == BusyInlineKind.strong || + inline?.kind == BusyInlineKind.emphasis + ? inline + : null; + } + + for (var index = 0; index < inlines.length; index++) { + final sourceInline = inlines[index]; + var inline = sourceInline.children.isEmpty ? sourceInline : sourceInline.copyWith( children: _mergeAdjacentInlineStyles(sourceInline.children), ); + if (inline.kind == BusyInlineKind.link) { + final before = formatting(merged.lastOrNull); + final after = formatting( + index + 1 < inlines.length ? inlines[index + 1] : null, + ); + var children = inline.children; + while (children.length == 1 && + _isMarkdownEmphasis(children.single.kind)) { + final wrapper = children.single; + if ((before == null || !_canMergeInlineStyles(before, wrapper)) && + (after == null || !_canMergeInlineStyles(wrapper, after))) { + children = wrapper.children; + continue; + } + // A fully styled label belongs to the adjoining visual run. Lift its + // wrapper so merging can enclose the intact link in one delimiter pair, + // including whitespace internal to that run (e.g. "hello [world]"). + inline = wrapper.copyWith( + text: inline.plainText, + children: [ + inline.copyWith( + children: _withoutInlineContext(inline.children, wrapper), + ), + ], + ); + break; + } + } if (merged.isEmpty || !_canMergeInlineStyles(merged.last, inline)) { merged.add(inline); continue; diff --git a/lib/src/editor/wysiwyg/wysiwyg_editor.dart b/lib/src/editor/wysiwyg/wysiwyg_editor.dart index e3894f25..5b81f6d4 100644 --- a/lib/src/editor/wysiwyg/wysiwyg_editor.dart +++ b/lib/src/editor/wysiwyg/wysiwyg_editor.dart @@ -1964,6 +1964,7 @@ class BusyMarkWysiwygEditorState extends State { value, activeInlineKinds: pendingInlineKinds, preserveTextWhitespace: origin == _WysiwygTextEditOrigin.paste, + normalizePastedFormatting: origin == _WysiwygTextEditOrigin.paste, ); if (value.isNotEmpty) { _pendingInlineKindsByBlockId.remove(blockId); diff --git a/lib/src/markdown/raw_html_adapter.dart b/lib/src/markdown/raw_html_adapter.dart index 2a2f5c36..c2f67e17 100644 --- a/lib/src/markdown/raw_html_adapter.dart +++ b/lib/src/markdown/raw_html_adapter.dart @@ -51,7 +51,11 @@ class RawHtmlInlineParseResult { } class RawHtmlAdapter { - const RawHtmlAdapter(); + const RawHtmlAdapter({this.preserveInlineWhitespace = false}); + + /// Clipboard selections can explicitly include spaces at inline edges. + /// Callers enabling this must first remove structural HTML layout whitespace. + final bool preserveInlineWhitespace; RawHtmlBlockParseResult? parseRawHtmlBlock( String rawSource, @@ -379,7 +383,7 @@ class RawHtmlAdapter { for (final node in nodes) { if (node is html.Text) { - if (node.data.trim().isNotEmpty) { + if (node.data.trim().isNotEmpty || preserveInlineWhitespace) { _appendInlineText(inlineBuffer, _collapseHtmlWhitespace(node.data)); } continue; @@ -620,7 +624,7 @@ class RawHtmlAdapter { final nestedBlocks = []; for (final child in element.nodes) { if (child is html.Text) { - if (child.data.trim().isNotEmpty) { + if (child.data.trim().isNotEmpty || preserveInlineWhitespace) { _appendInlineText(inlines, _collapseHtmlWhitespace(child.data)); } continue; @@ -953,6 +957,7 @@ class RawHtmlAdapter { Map? ranges, Iterable ignoredPositionMarkers = const [], }) { + if (preserveInlineWhitespace) return inlines.toList(); if (inlines.isEmpty) { return const []; } @@ -1006,6 +1011,9 @@ class RawHtmlAdapter { String value, { Iterable ignoredPositionMarkers = const [], }) { + if (preserveInlineWhitespace && !RegExp(r'[\r\n\t\f]').hasMatch(value)) { + return value.replaceAll(RegExp(r'[^\S ]+'), ' '); + } final markers = ignoredPositionMarkers .where((marker) => marker.isNotEmpty) .toList(growable: false); diff --git a/test/src/markdown_serializer_metadata_test.dart b/test/src/markdown_serializer_metadata_test.dart index 554457a7..64fde130 100644 --- a/test/src/markdown_serializer_metadata_test.dart +++ b/test/src/markdown_serializer_metadata_test.dart @@ -10,6 +10,71 @@ import 'package:flutter_test/flutter_test.dart'; void main() { const serializer = BusyMarkMarkdownSerializer(); + test( + 'reconstructed formatting across links retains offsets and leaf metadata', + () { + for (final kind in [BusyInlineKind.strong, BusyInlineKind.emphasis]) { + final block = busyMarkWysiwygClipboardBlock( + BusyWysiwygStyledBlock( + kind: BusyBlockKind.paragraph, + text: 'hello world ', + ranges: [ + BusyInlineStyleRange(start: 0, end: 11, kind: kind), + const BusyInlineStyleRange( + start: 6, + end: 11, + kind: BusyInlineKind.link, + destination: 'guide.md', + attributes: {'title': 'Guide', 'target': '_blank'}, + ), + ], + ), + ); + final delimiter = kind == BusyInlineKind.strong ? '**' : '*'; + final expected = + '${delimiter}hello [world](guide.md "Guide")$delimiter '; + for (var offset = 0; offset <= block.plainText.length; offset++) { + final result = serializer.serializeInlineFragmentWithOffsets( + block.inlines, + textOffset: offset, + ); + expect(result.source, expected); + final expectedOffset = offset == 0 + ? 0 + : offset < 6 + ? delimiter.length + offset + : offset == 6 + ? delimiter.length + 6 + : offset < 11 + ? delimiter.length + offset + 1 + : offset == 11 + ? expected.length - 1 + : expected.length; + expect( + result.sourceOffset, + expectedOffset, + reason: '$kind offset $offset', + ); + expect( + result.textAtoms.map((atom) => atom.text).join(), + 'hello world ', + ); + for (final atom in result.textAtoms) { + expect( + expected.substring(atom.sourceStart, atom.sourceEnd), + atom.text, + ); + } + } + final link = busyInlineStyleRanges( + block.inlines, + ).singleWhere((range) => range.kind == BusyInlineKind.link); + expect((link.start, link.end, link.destination), (6, 11, 'guide.md')); + expect(link.attributes, {'title': 'Guide', 'target': '_blank'}); + } + }, + ); + test( 'partially formatted URL source offsets and text atoms survive save and edit', () { diff --git a/test/src/source_paste_engine_test.dart b/test/src/source_paste_engine_test.dart index 27daf5a5..ebc65dde 100644 --- a/test/src/source_paste_engine_test.dart +++ b/test/src/source_paste_engine_test.dart @@ -13,6 +13,85 @@ import 'package:flutter_test/flutter_test.dart'; void main() { const engine = SourcePasteEngine(); + test( + 'HTML Source paste retains boundary spaces and formatting across links', + () { + for (final mode in [ + MarkdownMode.commonMark, + MarkdownMode.writersideMarkdown, + ]) { + for (final value in [ + ( + html: 'hello world ', + expected: '**hello world** \n', + linked: false, + ), + ( + html: 'hello world ', + expected: '**hello world** \n', + linked: false, + ), + ( + html: 'hello world ', + expected: '**hello [world](guide.md)** \n', + linked: true, + ), + ]) { + final fragment = const WysiwygClipboardHtml().decode( + value.html, + mode: mode, + )!; + final applied = _applyReady( + 'Target\n', + engine.prepareStructured( + target: SourcePasteDocumentSnapshot( + expectedSource: 'Target\n', + selection: const TextSelection(baseOffset: 0, extentOffset: 6), + format: SourceDocumentFormat.markdown, + markdownMode: mode, + filePath: '/project/source.md', + ), + fragment: fragment, + ), + ); + expect(applied.source, value.expected); + final block = const MarkdownParser() + .parse( + filePath: '/project/source.md', + source: applied.source, + mode: mode, + ) + .busyDocument + .blocks + .single; + expect(block.plainText, 'hello world'); + final ranges = busyInlineStyleRanges(block.inlines); + expect( + { + for (final range in ranges.where( + (range) => range.kind == BusyInlineKind.strong, + )) + for (var offset = range.start; offset < range.end; offset++) + offset, + }, + {for (var offset = 0; offset < 11; offset++) offset}, + ); + final links = ranges.where( + (range) => range.kind == BusyInlineKind.link, + ); + if (value.linked) { + expect( + (links.single.start, links.single.end, links.single.destination), + (6, 11, 'guide.md'), + ); + } else { + expect(links, isEmpty); + } + } + } + }, + ); + test('single rich paragraph repairs independently surviving endpoints', () { final cases = <({String source, int start, int end, String expected})>[ ( diff --git a/test/src/wysiwyg_clipboard_test.dart b/test/src/wysiwyg_clipboard_test.dart index fdeadab8..b8016d3c 100644 --- a/test/src/wysiwyg_clipboard_test.dart +++ b/test/src/wysiwyg_clipboard_test.dart @@ -12,6 +12,7 @@ import 'package:busymark/src/clipboard/clipboard_history_controller.dart'; import 'package:busymark/src/clipboard/clipboard_history_panel.dart'; import 'package:busymark/src/clipboard/clipboard_insertion.dart'; import 'package:busymark/src/clipboard/clipboard_models.dart'; +import 'package:busymark/src/editor/clipboard_paste_resolver.dart'; import 'package:busymark/src/editor/wysiwyg/wysiwyg_clipboard_fragment.dart'; import 'package:busymark/src/editor/wysiwyg/wysiwyg_clipboard_html.dart'; import 'package:busymark/src/editor/wysiwyg/wysiwyg_document_controller.dart'; @@ -22,6 +23,7 @@ import 'package:busymark/src/editor/writerside_video_player_host.dart'; import 'package:busymark/src/markdown/busymark_document.dart'; import 'package:busymark/src/markdown/markdown_model.dart'; import 'package:busymark/src/markdown/markdown_parser.dart'; +import 'package:busymark/src/markdown/raw_html_adapter.dart'; import 'package:busymark/src/platform/native_menu_service.dart'; import 'package:busymark/src/platform/rich_clipboard_service.dart'; import 'package:busymark/src/visualization/visualization_providers.dart'; @@ -39,6 +41,23 @@ const _source = '# Issues\n\n**When** selecting all, keep *formatting*.\n\n- [ ] First task\n- [x] Second task\n'; const _parser = MarkdownParser(); +final _htmlBoundaries = [ + for (final boundary in [ + (leading: '', trailing: ' '), + (leading: '', trailing: ' '), + (leading: ' ', trailing: ''), + (leading: '', trailing: ''), + ]) + for (final inside in [false, true]) + ( + leading: boundary.leading, + trailing: boundary.trailing, + html: inside + ? '${boundary.leading}hello world${boundary.trailing}' + : '${boundary.leading}hello world${boundary.trailing}', + ), +]; + WysiwygClipboardFragment _fragment( String source, { String path = '/source/topic.md', @@ -86,6 +105,129 @@ String _insert( return output; } +// Keep boundary spaces in the fixture independently of Markdown/HTML parsing. +WysiwygClipboardFragment _boundaryFragment(String leading, String trailing) => + WysiwygClipboardFragment( + mode: MarkdownMode.writersideMarkdown, + blocks: [ + BusyWysiwygStyledBlock( + kind: BusyBlockKind.paragraph, + text: '${leading}hello world$trailing', + ranges: [ + BusyInlineStyleRange( + start: leading.length, + end: leading.length + 11, + kind: BusyInlineKind.strong, + ), + ], + ), + ], + ); + +List _inlineTree(List inlines) => [ + for (final inline in inlines) + [inline.kind.name, inline.plainText, _inlineTree(inline.children)], +]; + +List<(int, int)> _strongRanges(BusyBlock block) => [ + for (final range in busyInlineStyleRanges(block.inlines)) + if (range.kind == BusyInlineKind.strong) (range.start, range.end), +]; + +// Compare coverage rather than wrapper nesting: a visual run may have several +// equivalent inline representations, but every character must retain its style. +void _expectInlineSemantics( + BusyBlock block, + String text, + List expected, +) { + expect(block.plainText, text); + final actual = busyInlineStyleRanges(block.inlines); + for (final kind in [ + BusyInlineKind.strong, + BusyInlineKind.emphasis, + BusyInlineKind.link, + ]) { + Map coverage(List ranges) => { + for (final range in ranges.where((range) => range.kind == kind)) + for (var offset = range.start; offset < range.end; offset++) + offset: kind == BusyInlineKind.link ? range.destination ?? '' : true, + }; + expect(coverage(actual), coverage(expected), reason: '$kind in $text'); + } +} + +void _expectSavedSemantics( + String markdown, + MarkdownMode mode, + String text, + List ranges, +) { + final parsed = _parser + .parse(filePath: '/reparsed.md', source: markdown, mode: mode) + .busyDocument; + // Markdown block parsing intentionally consumes trailing paragraph whitespace. + // The original editor text and saved bytes are checked separately. + final recovered = text.trimRight(); + _expectInlineSemantics(parsed.blocks.single, recovered, [ + for (final range in ranges) + BusyInlineStyleRange( + start: range.start.clamp(0, recovered.length), + end: range.end.clamp(0, recovered.length), + kind: range.kind, + destination: range.destination, + ), + ]); + expect(parsed.blocks.single.plainText, isNot(contains('**'))); +} + +void _expectBoundaryReplacement( + BusyBlock block, + String markdown, + int? caret, { + required String leading, + required String trailing, +}) { + expect( + { + 'text': block.plainText, + 'strong': _strongRanges(block), + 'markdown': markdown, + if (caret != null) 'caret': caret, + }, + { + 'text': '${leading}hello world$trailing', + 'strong': [(leading.length, leading.length + 11)], + 'markdown': '$leading**hello world**$trailing\n', + if (caret != null) 'caret': leading.length + 11 + trailing.length, + }, + reason: 'Live inline tree: ${_inlineTree(block.inlines)}', + ); + expect(_inlineTree(block.inlines), [ + if (leading.isNotEmpty) ['text', leading, []], + [ + 'strong', + 'hello world', + [ + ['text', 'hello world', []], + ], + ], + if (trailing.isNotEmpty) ['text', trailing, []], + ]); + for (final mode in [ + MarkdownMode.commonMark, + MarkdownMode.writersideMarkdown, + ]) { + _expectSavedSemantics(markdown, mode, block.plainText, [ + BusyInlineStyleRange( + start: leading.length, + end: leading.length + 11, + kind: BusyInlineKind.strong, + ), + ]); + } +} + void main() { TestWidgetsFlutterBinding.ensureInitialized(); @@ -108,6 +250,408 @@ void main() { }, ); + for (final trailing in [' ', ' ']) { + test('structured replacement boundary with ${trailing.length} spaces', () { + final fragment = _boundaryFragment('', trailing); + final incoming = busyMarkWysiwygClipboardBlock(fragment.blocks.single); + expect(incoming.plainText, 'hello world$trailing'); + expect(_strongRanges(incoming), [(0, 11)]); + expect(incoming.inlines.last.kind, BusyInlineKind.text); + expect(incoming.inlines.last.text, trailing); + final document = _parser + .parse(filePath: '/destination.md', source: '**hello wold**\n') + .busyDocument; + final controller = BusyMarkWysiwygDocumentController(document: document); + addTearDown(controller.dispose); + final result = controller.insertStyledBlocksAtSelection( + blockId: document.blocks.single.id, + selectionStart: 0, + selectionEnd: 10, + blocks: fragment.blocks, + replacementScope: BusyWysiwygReplacementScope.fieldContent, + ); + _expectBoundaryReplacement( + controller.document.blocks.single, + controller.markdown, + result!.offset, + leading: '', + trailing: trailing, + ); + }); + } + + for (final kind in [BusyInlineKind.strong, BusyInlineKind.emphasis]) { + for (final mode in [ + MarkdownMode.commonMark, + MarkdownMode.writersideMarkdown, + ]) { + test( + 'paste boundary preserves a ${kind.name} run across link wrappers ($mode)', + () { + final ranges = [ + BusyInlineStyleRange(start: 0, end: 11, kind: kind), + const BusyInlineStyleRange( + start: 6, + end: 11, + kind: BusyInlineKind.link, + destination: 'guide.md', + attributes: {'title': 'Guide'}, + ), + ]; + final fragment = WysiwygClipboardFragment( + mode: mode, + blocks: [ + BusyWysiwygStyledBlock( + kind: BusyBlockKind.paragraph, + text: 'hello world ', + ranges: ranges, + ), + ], + ); + final incoming = fragment.documentBlocks.single; + _expectInlineSemantics(incoming, 'hello world ', ranges); + final document = _parser + .parse( + filePath: '/destination.md', + source: 'Target\n', + mode: mode, + ) + .busyDocument; + final controller = BusyMarkWysiwygDocumentController( + document: document, + ); + addTearDown(controller.dispose); + controller.insertStyledBlocksAtSelection( + blockId: document.blocks.single.id, + selectionStart: 0, + selectionEnd: 6, + blocks: fragment.blocks, + replacementScope: BusyWysiwygReplacementScope.fieldContent, + ); + final pasted = controller.document.blocks.single; + _expectInlineSemantics(pasted, 'hello world ', ranges); + final link = busyInlineStyleRanges( + pasted.inlines, + ).singleWhere((range) => range.kind == BusyInlineKind.link); + expect(link.destination, 'guide.md'); + expect(link.attributes, {'title': 'Guide'}); + _expectSavedSemantics( + controller.markdown, + mode, + 'hello world ', + ranges, + ); + final delimiter = kind == BusyInlineKind.strong ? '**' : '*'; + expect( + controller.markdown, + '$delimiter' + 'hello [world](guide.md "Guide")$delimiter \n', + ); + }, + ); + } + } + + test('HTML decoding preserves formatting-edge whitespace', () { + for (final value in _htmlBoundaries) { + final decoded = const WysiwygClipboardHtml().decode( + value.html, + mode: MarkdownMode.writersideMarkdown, + )!; + _expectInlineSemantics( + decoded.documentBlocks.single, + '${value.leading}hello world${value.trailing}', + [ + BusyInlineStyleRange( + start: value.leading.length, + end: value.leading.length + 11, + kind: BusyInlineKind.strong, + ), + ], + ); + expect( + decoded.markdown, + '${value.leading}**hello world**${value.trailing}\n', + ); + } + }); + + test( + 'HTML clipboard documents preserve body spaces and discard head content', + () { + final decoded = const WysiwygClipboardHtml().decode( + 'Other document' + ' hello world ', + mode: MarkdownMode.commonMark, + )!; + expect(decoded.blocks.single.text, ' hello world '); + expect(decoded.markdown, ' **hello world** \n'); + }, + ); + + for (final kind in [BusyInlineKind.strong, BusyInlineKind.emphasis]) { + for (final nested in [false, true]) { + test( + 'HTML formatting retains internal whitespace across a link ($kind, nested=$nested)', + () { + final tag = kind == BusyInlineKind.strong ? 'strong' : 'em'; + final otherTag = kind == BusyInlineKind.strong ? 'em' : 'strong'; + final label = nested ? '<$otherTag>world' : 'world'; + final fragment = const WysiwygClipboardHtml().decode( + '<$tag>hello $label ', + mode: MarkdownMode.commonMark, + )!; + final ranges = [ + BusyInlineStyleRange(start: 0, end: 11, kind: kind), + if (nested) + BusyInlineStyleRange( + start: 6, + end: 11, + kind: kind == BusyInlineKind.strong + ? BusyInlineKind.emphasis + : BusyInlineKind.strong, + ), + const BusyInlineStyleRange( + start: 6, + end: 11, + kind: BusyInlineKind.link, + destination: 'guide.md', + ), + ]; + _expectInlineSemantics( + fragment.documentBlocks.single, + 'hello world ', + ranges, + ); + final output = _insert(fragment); + for (final mode in [ + MarkdownMode.commonMark, + MarkdownMode.writersideMarkdown, + ]) { + _expectSavedSemantics(output, mode, 'hello world ', ranges); + } + expect(output.endsWith(' \n'), isTrue); + }, + ); + } + } + + test( + 'clipboard whitespace mode leaves ordinary raw HTML normalization intact', + () { + var id = 0; + for (final preserve in [false, true]) { + final blocks = RawHtmlAdapter(preserveInlineWhitespace: preserve) + .parseRawHtmlBlock( + '
    hello world
    ', + () => 'html-${id++}', + )! + .blocks; + expect( + blocks.single.plainText, + preserve ? ' hello world ' : 'hello world', + ); + expect(_strongRanges(blocks.single), [ + (preserve ? 1 : 0, preserve ? 12 : 11), + ]); + } + }, + ); + + test('clipboard HTML layout whitespace adds no structural text', () { + final decoded = const WysiwygClipboardHtml().decode(''' +
    +

    + Heading +

    +

    First

    +

    + Second +

    +
      +
    • Parent +
      • Child
      +
    • +
    + + + +
    AB
    OneTwo
    +
    + ''', mode: MarkdownMode.writersideMarkdown)!; + final blocks = decoded.documentBlocks; + expect(blocks.map((block) => block.kind), [ + BusyBlockKind.heading, + BusyBlockKind.paragraph, + BusyBlockKind.paragraph, + BusyBlockKind.unorderedListItem, + BusyBlockKind.table, + ]); + expect(blocks.take(4).map((block) => block.plainText), [ + 'Heading', + 'First', + 'Second', + 'Parent', + ]); + expect(blocks[3].children.single.plainText, 'Child'); + expect( + blocks.last.children + .expand((row) => row.children) + .map((cell) => cell.plainText), + ['A', 'B', 'One', 'Two'], + ); + }); + + for (final mode in [ + MarkdownMode.commonMark, + MarkdownMode.writersideMarkdown, + ]) { + for (final value in [ + ( + name: 'adjacent strong segments', + text: 'hello world ', + ranges: const [ + BusyInlineStyleRange(start: 0, end: 6, kind: BusyInlineKind.strong), + BusyInlineStyleRange(start: 6, end: 11, kind: BusyInlineKind.strong), + ], + ), + ( + name: 'adjacent strong and emphasis', + text: 'helloworld ', + ranges: const [ + BusyInlineStyleRange(start: 0, end: 5, kind: BusyInlineKind.strong), + BusyInlineStyleRange( + start: 5, + end: 10, + kind: BusyInlineKind.emphasis, + ), + ], + ), + ( + name: 'strong beside a plain link', + text: 'hello world ', + ranges: const [ + BusyInlineStyleRange(start: 0, end: 5, kind: BusyInlineKind.strong), + BusyInlineStyleRange( + start: 6, + end: 11, + kind: BusyInlineKind.link, + destination: 'guide.md', + ), + ], + ), + ( + name: 'partially strong link label', + text: 'hello world ', + ranges: const [ + BusyInlineStyleRange(start: 6, end: 11, kind: BusyInlineKind.strong), + BusyInlineStyleRange( + start: 0, + end: 11, + kind: BusyInlineKind.link, + destination: 'guide.md', + ), + ], + ), + ( + name: 'strong run starting in a link', + text: 'hello world ', + ranges: const [ + BusyInlineStyleRange(start: 0, end: 11, kind: BusyInlineKind.strong), + BusyInlineStyleRange( + start: 0, + end: 5, + kind: BusyInlineKind.link, + destination: 'guide.md', + ), + ], + ), + ( + name: 'nested strong and emphasis across a link', + text: 'hello world ', + ranges: const [ + BusyInlineStyleRange(start: 0, end: 11, kind: BusyInlineKind.strong), + BusyInlineStyleRange( + start: 6, + end: 11, + kind: BusyInlineKind.emphasis, + ), + BusyInlineStyleRange( + start: 6, + end: 11, + kind: BusyInlineKind.link, + destination: 'guide.md', + ), + ], + ), + ( + name: 'nested emphasis and strong across a link', + text: 'hello world ', + ranges: const [ + BusyInlineStyleRange( + start: 0, + end: 11, + kind: BusyInlineKind.emphasis, + ), + BusyInlineStyleRange(start: 6, end: 11, kind: BusyInlineKind.strong), + BusyInlineStyleRange( + start: 6, + end: 11, + kind: BusyInlineKind.link, + destination: 'guide.md', + ), + ], + ), + ( + name: 'nested coincident formatting', + text: 'hello world ', + ranges: const [ + BusyInlineStyleRange(start: 0, end: 11, kind: BusyInlineKind.strong), + BusyInlineStyleRange( + start: 0, + end: 11, + kind: BusyInlineKind.emphasis, + ), + ], + ), + ]) { + test('paste serialization preserves ${value.name} ($mode)', () { + final document = _parser + .parse(filePath: '/destination.md', source: 'Target\n', mode: mode) + .busyDocument; + final controller = BusyMarkWysiwygDocumentController( + document: document, + ); + addTearDown(controller.dispose); + controller.insertStyledBlocksAtSelection( + blockId: document.blocks.single.id, + selectionStart: 0, + selectionEnd: 6, + replacementScope: BusyWysiwygReplacementScope.fieldContent, + blocks: [ + BusyWysiwygStyledBlock( + kind: BusyBlockKind.paragraph, + text: value.text, + ranges: value.ranges, + ), + ], + ); + _expectInlineSemantics( + controller.document.blocks.single, + value.text, + value.ranges, + ); + expect(controller.markdown.endsWith(' \n'), isTrue); + _expectSavedSemantics( + controller.markdown, + mode, + value.text, + value.ranges, + ); + }); + } + } + test('single rich paragraphs preserve list descendants through source', () { final incoming = _fragment('**X**\n').blocks; final cases = <({String source, BusyBlockKind kind})>[ @@ -512,15 +1056,12 @@ void main() { bool hostToasts = false, bool providerScope = false, bool focusFirstField = true, + MarkdownMode mode = MarkdownMode.writersideMarkdown, WysiwygEditorSessionState Function(BusyDocument document)? initialSessionFor, }) async { final document = _parser - .parse( - filePath: filePath ?? '/$id.md', - source: source, - mode: MarkdownMode.writersideMarkdown, - ) + .parse(filePath: filePath ?? '/$id.md', source: source, mode: mode) .busyDocument; final app = MaterialApp( localizationsDelegates: AppLocalizations.localizationsDelegates, @@ -1561,6 +2102,464 @@ void main() { }, ); + for (final mode in [ + MarkdownMode.commonMark, + MarkdownMode.writersideMarkdown, + ]) { + for (final withPlainText in [false, true]) { + for (final value in _htmlBoundaries) { + testWidgets( + 'normal HTML paste retains boundary spaces ($mode, plain=$withPlainText, ${value.html})', + (tester) async { + const original = '**hello wold**\n'; + var saved = original; + BusyDocument? live; + systemData = { + 'html': value.html, + if (withPlainText) + 'text': '${value.leading}hello world${value.trailing}', + }; + await mount( + tester, + 'html-boundary', + original, + (source) => saved = source, + onDocumentChanged: (document) => live = document, + mode: mode, + ); + final service = tester + .widget( + find.byType(BusyMarkWysiwygEditor), + ) + .clipboardService!; + final snapshot = BusyMarkClipboardSnapshot.fromSystem( + await service.read(), + ); + expect(snapshot.richFragment, isNull); + expect( + snapshot.text, + withPlainText + ? '${value.leading}hello world${value.trailing}' + : null, + ); + final candidate = + const BusyMarkClipboardPasteResolver() + .resolve( + snapshot: snapshot, + mode: BusyMarkPasteMode.normal, + destination: BusyMarkPasteDestination.editor, + markdownMode: mode, + ) + .candidates + .first + as BusyMarkStructuredPasteCandidate; + expect(candidate.source, BusyMarkStructuredClipboardSource.html); + // Exercise the keyboard path even when the decoder is defective. + tester + .widget(find.byType(TextField).first) + .controller! + .selection = const TextSelection( + baseOffset: 0, + extentOffset: 10, + ); + await tester.pump(); + await key(tester, LogicalKeyboardKey.keyV); + await tester.pumpAndSettle(); + _expectBoundaryReplacement( + live!.blocks.single, + saved, + tester + .widget(find.byType(TextField).first) + .controller! + .selection + .extentOffset, + leading: value.leading, + trailing: value.trailing, + ); + expect( + candidate.fragment.blocks.single.text, + '${value.leading}hello world${value.trailing}', + ); + await key(tester, LogicalKeyboardKey.keyZ); + await tester.pumpAndSettle(); + expect(saved, original); + _expectInlineSemantics(live!.blocks.single, 'hello wold', [ + const BusyInlineStyleRange( + start: 0, + end: 10, + kind: BusyInlineKind.strong, + ), + ]); + await key(tester, LogicalKeyboardKey.keyZ, shift: true); + await tester.pumpAndSettle(); + _expectBoundaryReplacement( + live!.blocks.single, + saved, + null, + leading: value.leading, + trailing: value.trailing, + ); + }, + ); + } + } + } + + for (final mode in [ + MarkdownMode.commonMark, + MarkdownMode.writersideMarkdown, + ]) { + for (final kind in [BusyInlineKind.strong, BusyInlineKind.emphasis]) { + for (final useHtml in [false, true]) { + testWidgets( + 'normal ${useHtml ? 'HTML' : 'structured'} paste saves linked ${kind.name} and restores history ($mode)', + (tester) async { + var saved = 'Target\n'; + BusyDocument? live; + final ranges = [ + BusyInlineStyleRange(start: 0, end: 11, kind: kind), + const BusyInlineStyleRange( + start: 6, + end: 11, + kind: BusyInlineKind.link, + destination: 'guide.md', + attributes: {'title': 'Guide'}, + ), + ]; + final fragment = WysiwygClipboardFragment( + mode: mode, + blocks: [ + BusyWysiwygStyledBlock( + kind: BusyBlockKind.paragraph, + text: 'hello world ', + ranges: ranges, + ), + ], + ); + await mount( + tester, + 'linked-paste', + saved, + (source) => saved = source, + onDocumentChanged: (document) => live = document, + mode: mode, + ); + final service = tester + .widget( + find.byType(BusyMarkWysiwygEditor), + ) + .clipboardService!; + final tag = kind == BusyInlineKind.strong ? 'strong' : 'em'; + expect( + await service.write( + RichClipboardData( + text: 'hello world ', + html: useHtml + ? '<$tag>hello world ' + : null, + richFragment: useHtml ? null : fragment.encode(), + ), + ), + isTrue, + ); + tester + .widget(find.byType(TextField).first) + .controller! + .selection = const TextSelection( + baseOffset: 0, + extentOffset: 6, + ); + await tester.pump(); + await key(tester, LogicalKeyboardKey.keyV); + await tester.pumpAndSettle(); + final delimiter = kind == BusyInlineKind.strong ? '**' : '*'; + final expected = + '${delimiter}hello [world](guide.md "Guide")$delimiter \n'; + void check() { + expect(saved, expected); + _expectInlineSemantics( + live!.blocks.single, + 'hello world ', + ranges, + ); + _expectSavedSemantics(saved, mode, 'hello world ', ranges); + } + + check(); + expect( + tester + .widget(find.byType(TextField).first) + .controller! + .selection, + const TextSelection.collapsed(offset: 12), + ); + await key(tester, LogicalKeyboardKey.keyZ); + await tester.pumpAndSettle(); + expect(saved, 'Target\n'); + _expectInlineSemantics(live!.blocks.single, 'Target', []); + await key(tester, LogicalKeyboardKey.keyZ, shift: true); + await tester.pumpAndSettle(); + check(); + await mount(tester, 'linked-reopened', saved, (_) {}, mode: mode); + expect( + tester + .widget(find.byType(TextField).first) + .controller! + .text, + 'hello world', + ); + final reopened = _parser + .parse( + filePath: '/linked-reopened.md', + source: saved, + mode: mode, + ) + .busyDocument; + _expectInlineSemantics( + reopened.blocks.single, + 'hello world', + ranges, + ); + }, + ); + } + } + } + + for (final plain in [false, true]) { + for (final boundary in [ + (leading: '', trailing: ' '), + (leading: '', trailing: ' '), + (leading: ' ', trailing: ''), + (leading: '', trailing: ''), + ]) { + testWidgets('${plain ? 'plain' : 'structured'} paste boundary ' + '${boundary.leading.length}/${boundary.trailing.length}', ( + tester, + ) async { + const original = '**hello wold**\n'; + var saved = original; + BusyDocument? live; + await mount( + tester, + 'paste-boundary', + original, + (value) => saved = value, + onDocumentChanged: (value) => live = value, + ); + final fragment = _boundaryFragment( + boundary.leading, + boundary.trailing, + ); + final service = tester + .widget(find.byType(BusyMarkWysiwygEditor)) + .clipboardService!; + expect( + await service.write( + RichClipboardData( + text: fragment.blocks.single.text, + richFragment: fragment.encode(), + ), + ), + isTrue, + ); + final incoming = await service.read(); + expect(incoming.text, fragment.blocks.single.text); + expect( + _strongRanges( + WysiwygClipboardFragment.decode( + incoming.richFragment!, + )!.documentBlocks.single, + ), + [(boundary.leading.length, boundary.leading.length + 11)], + ); + final field = tester.widget(find.byType(TextField).first); + expect(field.controller!.text, 'hello wold'); + field.controller!.selection = const TextSelection( + baseOffset: 0, + extentOffset: 10, + ); + await tester.pump(); + await key(tester, LogicalKeyboardKey.keyV, shift: plain); + await tester.pumpAndSettle(); + void check({bool checkCaret = true}) { + final current = tester + .widget(find.byType(TextField).first) + .controller!; + expect(current.text, fragment.blocks.single.text); + expect(current.selection.isCollapsed, isTrue); + _expectBoundaryReplacement( + live!.blocks.single, + saved, + checkCaret ? current.selection.extentOffset : null, + leading: boundary.leading, + trailing: boundary.trailing, + ); + } + + check(); + await key(tester, LogicalKeyboardKey.keyZ); + await tester.pumpAndSettle(); + expect(saved, original); + expect(live!.blocks.single.plainText, 'hello wold'); + expect(_strongRanges(live!.blocks.single), [(0, 10)]); + await key(tester, LogicalKeyboardKey.keyZ, shift: true); + await tester.pumpAndSettle(); + check(checkCaret: false); + }); + } + } + + for (final plain in [false, true]) { + for (final value in [ + ( + name: 'whitespace only', + source: '**hello wold**\n', + start: 0, + end: 10, + text: ' ', + ranges: [], + expected: ' \n', + ), + ( + name: 'internal spaces', + source: '**Target**\n', + start: 2, + end: 4, + text: ' ', + ranges: [], + expected: '**Ta et**\n', + ), + ( + name: 'emphasis', + source: '*hello wold*\n', + start: 0, + end: 10, + text: 'hello world ', + ranges: [ + const BusyInlineStyleRange( + start: 0, + end: 11, + kind: BusyInlineKind.emphasis, + ), + ], + expected: '*hello world* \n', + ), + ( + name: 'nested emphasis', + source: '**hello *wold***\n', + start: 0, + end: 10, + text: 'hello world ', + ranges: [ + const BusyInlineStyleRange( + start: 0, + end: 11, + kind: BusyInlineKind.strong, + ), + const BusyInlineStyleRange( + start: 6, + end: 11, + kind: BusyInlineKind.emphasis, + ), + ], + expected: '**hello *world*** \n', + ), + ]) { + testWidgets( + '${plain ? 'plain' : 'structured'} paste boundary preserves ${value.name}', + (tester) async { + var saved = value.source; + BusyDocument? live; + await mount( + tester, + 'paste-format-boundary', + saved, + (source) => saved = source, + onDocumentChanged: (document) => live = document, + ); + final fragment = WysiwygClipboardFragment( + mode: MarkdownMode.writersideMarkdown, + blocks: [ + BusyWysiwygStyledBlock( + kind: BusyBlockKind.paragraph, + text: value.text, + ranges: value.ranges, + ), + ], + ); + final service = tester + .widget( + find.byType(BusyMarkWysiwygEditor), + ) + .clipboardService!; + expect( + await service.write( + RichClipboardData( + text: value.text, + richFragment: fragment.encode(), + ), + ), + isTrue, + ); + tester + .widget(find.byType(TextField).first) + .controller! + .selection = TextSelection( + baseOffset: value.start, + extentOffset: value.end, + ); + await tester.pump(); + await key(tester, LogicalKeyboardKey.keyV, shift: plain); + await tester.pumpAndSettle(); + void check({bool checkCaret = true}) { + expect( + saved, + value.expected, + reason: + 'Live inline tree: ${_inlineTree(live!.blocks.single.inlines)}', + ); + final field = tester + .widget(find.byType(TextField).first) + .controller!; + expect(field.text, live!.blocks.single.plainText); + if (checkCaret) { + expect( + field.selection, + TextSelection.collapsed( + offset: value.start + value.text.length, + ), + ); + } + if (value.text == ' ') { + expect(field.text, ' '); + expect(_inlineTree(live!.blocks.single.inlines), [ + ['text', ' ', []], + ]); + } else { + final reparsed = _parser + .parse(filePath: '/reparsed.md', source: saved) + .busyDocument + .blocks + .single; + expect(_inlineTree(live!.blocks.single.inlines), [ + ..._inlineTree(reparsed.inlines), + if (value.expected.endsWith(' \n')) ['text', ' ', []], + ]); + } + } + + check(); + await key(tester, LogicalKeyboardKey.keyZ); + expect(saved, value.source); + await key(tester, LogicalKeyboardKey.keyZ, shift: true); + await tester.pumpAndSettle(); + check(checkCaret: false); + }, + ); + } + } + testWidgets('plain paste persists intentional whitespace through history', ( tester, ) async { From c3db6b58172f5f2aef3ecfa1fec084953fb4ebf3 Mon Sep 17 00:00:00 2001 From: Albert G Date: Wed, 7 Oct 2026 22:24:18 -0700 Subject: [PATCH 6/9] Enhance document tab menus and unify safe tab closing (#48) --- lib/l10n/app_ar.arb | 2 + lib/l10n/app_de.arb | 2 + lib/l10n/app_en.arb | 2 + lib/l10n/app_es.arb | 2 + lib/l10n/app_et.arb | 2 + lib/l10n/app_fa.arb | 2 + lib/l10n/app_fr.arb | 2 + lib/l10n/app_hi.arb | 2 + lib/l10n/app_id.arb | 2 + lib/l10n/app_it.arb | 2 + lib/l10n/app_ja.arb | 2 + lib/l10n/app_ko.arb | 2 + lib/l10n/app_nb.arb | 2 + lib/l10n/app_nl.arb | 2 + lib/l10n/app_pl.arb | 2 + lib/l10n/app_pt.arb | 2 + lib/l10n/app_pt_BR.arb | 2 + lib/l10n/app_ru.arb | 2 + lib/l10n/app_tr.arb | 2 + lib/l10n/app_uk.arb | 2 + lib/l10n/app_vi.arb | 2 + lib/l10n/app_zh.arb | 2 + lib/l10n/app_zh_CN.arb | 2 + lib/l10n/generated/app_localizations.dart | 6 + lib/l10n/generated/app_localizations_ar.dart | 3 + lib/l10n/generated/app_localizations_de.dart | 3 + lib/l10n/generated/app_localizations_en.dart | 3 + lib/l10n/generated/app_localizations_es.dart | 3 + lib/l10n/generated/app_localizations_et.dart | 3 + lib/l10n/generated/app_localizations_fa.dart | 3 + lib/l10n/generated/app_localizations_fr.dart | 3 + lib/l10n/generated/app_localizations_hi.dart | 3 + lib/l10n/generated/app_localizations_id.dart | 3 + lib/l10n/generated/app_localizations_it.dart | 3 + lib/l10n/generated/app_localizations_ja.dart | 3 + lib/l10n/generated/app_localizations_ko.dart | 3 + lib/l10n/generated/app_localizations_nb.dart | 3 + lib/l10n/generated/app_localizations_nl.dart | 3 + lib/l10n/generated/app_localizations_pl.dart | 3 + lib/l10n/generated/app_localizations_pt.dart | 6 + lib/l10n/generated/app_localizations_ru.dart | 3 + lib/l10n/generated/app_localizations_tr.dart | 3 + lib/l10n/generated/app_localizations_uk.dart | 3 + lib/l10n/generated/app_localizations_vi.dart | 3 + lib/l10n/generated/app_localizations_zh.dart | 6 + lib/src/app/busymark_app.dart | 56 +- .../presentation/workspace_screen.dart | 363 ++++--- lib/src/workspace/workspace_controller.dart | 18 +- lib/src/workspace/workspace_safety.dart | 19 + lib/src/workspace/workspace_tab_actions.dart | 271 +++++ test/src/app_smoke_test.dart | 984 +++++++++++++++++- test/src/nextcloud_notes_ui_test.dart | 138 +++ test/src/workspace_controller_test.dart | 49 + test/src/workspace_safety_test.dart | 543 ++++++++++ 54 files changed, 2350 insertions(+), 212 deletions(-) create mode 100644 lib/src/workspace/workspace_tab_actions.dart diff --git a/lib/l10n/app_ar.arb b/lib/l10n/app_ar.arb index 8e57304c..2aa57512 100644 --- a/lib/l10n/app_ar.arb +++ b/lib/l10n/app_ar.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "إغلاق علامات التبويب الأخرى", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "موضوع من قالب...", "tocSaveAsTemplate": "حفظ كقالب", "tocTemplateDialog": "إنشاء موضوع من قالب", diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index 1724b1f7..f03cdfa5 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Andere Tabs schließen", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Thema aus Vorlage...", "tocSaveAsTemplate": "Als Vorlage speichern", "tocTemplateDialog": "Thema aus Vorlage erstellen", diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 87f7b9b1..859d2d71 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Close other tabs", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Topic from Template...", "@tocTopicFromTemplate": {"description": "Writerside template dialog or user-template storage feedback."}, "tocSaveAsTemplate": "Save as Template", diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index 6f046521..49c9a990 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Cerrar las otras pestañas", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Tema desde plantilla...", "tocSaveAsTemplate": "Guardar como plantilla", "tocTemplateDialog": "Crear tema desde plantilla", diff --git a/lib/l10n/app_et.arb b/lib/l10n/app_et.arb index 12e9e91c..d9395233 100644 --- a/lib/l10n/app_et.arb +++ b/lib/l10n/app_et.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Sulge teised vahelehed", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Teema mallist...", "tocSaveAsTemplate": "Salvesta mallina", "tocTemplateDialog": "Loo teema mallist", diff --git a/lib/l10n/app_fa.arb b/lib/l10n/app_fa.arb index 42521715..eec843d9 100644 --- a/lib/l10n/app_fa.arb +++ b/lib/l10n/app_fa.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "بستن زبانه‌های دیگر", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "موضوع از الگو...", "tocSaveAsTemplate": "ذخیره به‌عنوان الگو", "tocTemplateDialog": "ایجاد موضوع از الگو", diff --git a/lib/l10n/app_fr.arb b/lib/l10n/app_fr.arb index 5ec0a443..240e1d93 100644 --- a/lib/l10n/app_fr.arb +++ b/lib/l10n/app_fr.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Fermer les autres onglets", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Sujet à partir d’un modèle...", "tocSaveAsTemplate": "Enregistrer comme modèle", "tocTemplateDialog": "Créer un sujet à partir d’un modèle", diff --git a/lib/l10n/app_hi.arb b/lib/l10n/app_hi.arb index a548caf1..e24df421 100644 --- a/lib/l10n/app_hi.arb +++ b/lib/l10n/app_hi.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "अन्य टैब बंद करें", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "टेम्पलेट से विषय...", "tocSaveAsTemplate": "टेम्पलेट के रूप में सहेजें", "tocTemplateDialog": "टेम्पलेट से विषय बनाएँ", diff --git a/lib/l10n/app_id.arb b/lib/l10n/app_id.arb index b4e7dd2f..2a8bbdfd 100644 --- a/lib/l10n/app_id.arb +++ b/lib/l10n/app_id.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Tutup tab lainnya", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Topik dari Templat...", "tocSaveAsTemplate": "Simpan sebagai Templat", "tocTemplateDialog": "Buat Topik dari Templat", diff --git a/lib/l10n/app_it.arb b/lib/l10n/app_it.arb index da86472f..793ab8d7 100644 --- a/lib/l10n/app_it.arb +++ b/lib/l10n/app_it.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Chiudi le altre schede", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Argomento da modello...", "tocSaveAsTemplate": "Salva come modello", "tocTemplateDialog": "Crea argomento da modello", diff --git a/lib/l10n/app_ja.arb b/lib/l10n/app_ja.arb index f5acddd1..1e179041 100644 --- a/lib/l10n/app_ja.arb +++ b/lib/l10n/app_ja.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "他のタブを閉じる", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "テンプレートからトピック...", "tocSaveAsTemplate": "テンプレートとして保存", "tocTemplateDialog": "テンプレートからトピックを作成", diff --git a/lib/l10n/app_ko.arb b/lib/l10n/app_ko.arb index 69c463dd..654962d3 100644 --- a/lib/l10n/app_ko.arb +++ b/lib/l10n/app_ko.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "다른 탭 닫기", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "템플릿에서 토픽...", "tocSaveAsTemplate": "템플릿으로 저장", "tocTemplateDialog": "템플릿에서 토픽 만들기", diff --git a/lib/l10n/app_nb.arb b/lib/l10n/app_nb.arb index 41036699..2f5ec1af 100644 --- a/lib/l10n/app_nb.arb +++ b/lib/l10n/app_nb.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Lukk andre faner", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Emne fra mal...", "tocSaveAsTemplate": "Lagre som mal", "tocTemplateDialog": "Opprett emne fra mal", diff --git a/lib/l10n/app_nl.arb b/lib/l10n/app_nl.arb index e9ebf0aa..84dbf3b5 100644 --- a/lib/l10n/app_nl.arb +++ b/lib/l10n/app_nl.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Andere tabbladen sluiten", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Onderwerp uit sjabloon...", "tocSaveAsTemplate": "Opslaan als sjabloon", "tocTemplateDialog": "Onderwerp uit sjabloon maken", diff --git a/lib/l10n/app_pl.arb b/lib/l10n/app_pl.arb index f9929456..dd0cab21 100644 --- a/lib/l10n/app_pl.arb +++ b/lib/l10n/app_pl.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Zamknij pozostałe karty", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Temat z szablonu...", "tocSaveAsTemplate": "Zapisz jako szablon", "tocTemplateDialog": "Utwórz temat z szablonu", diff --git a/lib/l10n/app_pt.arb b/lib/l10n/app_pt.arb index 9c439090..3af842ac 100644 --- a/lib/l10n/app_pt.arb +++ b/lib/l10n/app_pt.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Fechar os outros separadores", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Tópico a partir de modelo...", "tocSaveAsTemplate": "Guardar como modelo", "tocTemplateDialog": "Criar tópico a partir de modelo", diff --git a/lib/l10n/app_pt_BR.arb b/lib/l10n/app_pt_BR.arb index 073e6620..e87cb4a6 100644 --- a/lib/l10n/app_pt_BR.arb +++ b/lib/l10n/app_pt_BR.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Fechar as outras abas", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Tópico a partir de modelo...", "tocSaveAsTemplate": "Salvar como modelo", "tocTemplateDialog": "Criar tópico a partir de modelo", diff --git a/lib/l10n/app_ru.arb b/lib/l10n/app_ru.arb index 4d5d3e8a..bdbc6b44 100644 --- a/lib/l10n/app_ru.arb +++ b/lib/l10n/app_ru.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Закрыть другие вкладки", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Тема из шаблона...", "tocSaveAsTemplate": "Сохранить как шаблон", "tocTemplateDialog": "Создать тему из шаблона", diff --git a/lib/l10n/app_tr.arb b/lib/l10n/app_tr.arb index 567ec90e..4785e077 100644 --- a/lib/l10n/app_tr.arb +++ b/lib/l10n/app_tr.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Diğer sekmeleri kapat", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Şablondan Konu...", "tocSaveAsTemplate": "Şablon Olarak Kaydet", "tocTemplateDialog": "Şablondan Konu Oluştur", diff --git a/lib/l10n/app_uk.arb b/lib/l10n/app_uk.arb index 782057fd..ddd4afbe 100644 --- a/lib/l10n/app_uk.arb +++ b/lib/l10n/app_uk.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Закрити інші вкладки", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Тема з шаблону...", "tocSaveAsTemplate": "Зберегти як шаблон", "tocTemplateDialog": "Створити тему з шаблону", diff --git a/lib/l10n/app_vi.arb b/lib/l10n/app_vi.arb index d51a6492..eb65a12e 100644 --- a/lib/l10n/app_vi.arb +++ b/lib/l10n/app_vi.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "Đóng các thẻ khác", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "Chủ đề từ mẫu...", "tocSaveAsTemplate": "Lưu thành mẫu", "tocTemplateDialog": "Tạo chủ đề từ mẫu", diff --git a/lib/l10n/app_zh.arb b/lib/l10n/app_zh.arb index 69910cd2..994d1ca2 100644 --- a/lib/l10n/app_zh.arb +++ b/lib/l10n/app_zh.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "关闭其他标签页", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "从模板创建主题...", "tocSaveAsTemplate": "保存为模板", "tocTemplateDialog": "从模板创建主题", diff --git a/lib/l10n/app_zh_CN.arb b/lib/l10n/app_zh_CN.arb index 072d21bb..fd68bac9 100644 --- a/lib/l10n/app_zh_CN.arb +++ b/lib/l10n/app_zh_CN.arb @@ -1,4 +1,6 @@ { + "closeOtherTabs": "关闭其他标签页", + "@closeOtherTabs": {"description": "Document tab context menu action that closes every other document and comparison tab while retaining this document."}, "tocTopicFromTemplate": "从模板创建主题...", "tocSaveAsTemplate": "保存为模板", "tocTemplateDialog": "从模板创建主题", diff --git a/lib/l10n/generated/app_localizations.dart b/lib/l10n/generated/app_localizations.dart index a637c4d3..e1e8e06b 100644 --- a/lib/l10n/generated/app_localizations.dart +++ b/lib/l10n/generated/app_localizations.dart @@ -139,6 +139,12 @@ abstract class AppLocalizations { Locale('zh', 'CN'), ]; + /// Document tab context menu action that closes every other document and comparison tab while retaining this document. + /// + /// In en, this message translates to: + /// **'Close other tabs'** + String get closeOtherTabs; + /// Writerside template dialog or user-template storage feedback. /// /// In en, this message translates to: diff --git a/lib/l10n/generated/app_localizations_ar.dart b/lib/l10n/generated/app_localizations_ar.dart index 829f7b52..76d72800 100644 --- a/lib/l10n/generated/app_localizations_ar.dart +++ b/lib/l10n/generated/app_localizations_ar.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsAr extends AppLocalizations { AppLocalizationsAr([String locale = 'ar']) : super(locale); + @override + String get closeOtherTabs => 'إغلاق علامات التبويب الأخرى'; + @override String get tocTopicFromTemplate => 'موضوع من قالب...'; diff --git a/lib/l10n/generated/app_localizations_de.dart b/lib/l10n/generated/app_localizations_de.dart index 7d14940a..3cc2529a 100644 --- a/lib/l10n/generated/app_localizations_de.dart +++ b/lib/l10n/generated/app_localizations_de.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsDe extends AppLocalizations { AppLocalizationsDe([String locale = 'de']) : super(locale); + @override + String get closeOtherTabs => 'Andere Tabs schließen'; + @override String get tocTopicFromTemplate => 'Thema aus Vorlage...'; diff --git a/lib/l10n/generated/app_localizations_en.dart b/lib/l10n/generated/app_localizations_en.dart index 8e6eb55f..8167b45e 100644 --- a/lib/l10n/generated/app_localizations_en.dart +++ b/lib/l10n/generated/app_localizations_en.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsEn extends AppLocalizations { AppLocalizationsEn([String locale = 'en']) : super(locale); + @override + String get closeOtherTabs => 'Close other tabs'; + @override String get tocTopicFromTemplate => 'Topic from Template...'; diff --git a/lib/l10n/generated/app_localizations_es.dart b/lib/l10n/generated/app_localizations_es.dart index b8edaca3..1ac695e1 100644 --- a/lib/l10n/generated/app_localizations_es.dart +++ b/lib/l10n/generated/app_localizations_es.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsEs extends AppLocalizations { AppLocalizationsEs([String locale = 'es']) : super(locale); + @override + String get closeOtherTabs => 'Cerrar las otras pestañas'; + @override String get tocTopicFromTemplate => 'Tema desde plantilla...'; diff --git a/lib/l10n/generated/app_localizations_et.dart b/lib/l10n/generated/app_localizations_et.dart index f3537d4d..5d6113d7 100644 --- a/lib/l10n/generated/app_localizations_et.dart +++ b/lib/l10n/generated/app_localizations_et.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsEt extends AppLocalizations { AppLocalizationsEt([String locale = 'et']) : super(locale); + @override + String get closeOtherTabs => 'Sulge teised vahelehed'; + @override String get tocTopicFromTemplate => 'Teema mallist...'; diff --git a/lib/l10n/generated/app_localizations_fa.dart b/lib/l10n/generated/app_localizations_fa.dart index 33bb866f..72e4348a 100644 --- a/lib/l10n/generated/app_localizations_fa.dart +++ b/lib/l10n/generated/app_localizations_fa.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsFa extends AppLocalizations { AppLocalizationsFa([String locale = 'fa']) : super(locale); + @override + String get closeOtherTabs => 'بستن زبانه‌های دیگر'; + @override String get tocTopicFromTemplate => 'موضوع از الگو...'; diff --git a/lib/l10n/generated/app_localizations_fr.dart b/lib/l10n/generated/app_localizations_fr.dart index cdb5d92c..f89665b7 100644 --- a/lib/l10n/generated/app_localizations_fr.dart +++ b/lib/l10n/generated/app_localizations_fr.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsFr extends AppLocalizations { AppLocalizationsFr([String locale = 'fr']) : super(locale); + @override + String get closeOtherTabs => 'Fermer les autres onglets'; + @override String get tocTopicFromTemplate => 'Sujet à partir d’un modèle...'; diff --git a/lib/l10n/generated/app_localizations_hi.dart b/lib/l10n/generated/app_localizations_hi.dart index bebc77ba..95bf4155 100644 --- a/lib/l10n/generated/app_localizations_hi.dart +++ b/lib/l10n/generated/app_localizations_hi.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsHi extends AppLocalizations { AppLocalizationsHi([String locale = 'hi']) : super(locale); + @override + String get closeOtherTabs => 'अन्य टैब बंद करें'; + @override String get tocTopicFromTemplate => 'टेम्पलेट से विषय...'; diff --git a/lib/l10n/generated/app_localizations_id.dart b/lib/l10n/generated/app_localizations_id.dart index 7b39a059..a659acba 100644 --- a/lib/l10n/generated/app_localizations_id.dart +++ b/lib/l10n/generated/app_localizations_id.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsId extends AppLocalizations { AppLocalizationsId([String locale = 'id']) : super(locale); + @override + String get closeOtherTabs => 'Tutup tab lainnya'; + @override String get tocTopicFromTemplate => 'Topik dari Templat...'; diff --git a/lib/l10n/generated/app_localizations_it.dart b/lib/l10n/generated/app_localizations_it.dart index 5e55b154..d1778ed2 100644 --- a/lib/l10n/generated/app_localizations_it.dart +++ b/lib/l10n/generated/app_localizations_it.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsIt extends AppLocalizations { AppLocalizationsIt([String locale = 'it']) : super(locale); + @override + String get closeOtherTabs => 'Chiudi le altre schede'; + @override String get tocTopicFromTemplate => 'Argomento da modello...'; diff --git a/lib/l10n/generated/app_localizations_ja.dart b/lib/l10n/generated/app_localizations_ja.dart index 336f3b88..978559a7 100644 --- a/lib/l10n/generated/app_localizations_ja.dart +++ b/lib/l10n/generated/app_localizations_ja.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsJa extends AppLocalizations { AppLocalizationsJa([String locale = 'ja']) : super(locale); + @override + String get closeOtherTabs => '他のタブを閉じる'; + @override String get tocTopicFromTemplate => 'テンプレートからトピック...'; diff --git a/lib/l10n/generated/app_localizations_ko.dart b/lib/l10n/generated/app_localizations_ko.dart index 2aa28746..d1fa3a7b 100644 --- a/lib/l10n/generated/app_localizations_ko.dart +++ b/lib/l10n/generated/app_localizations_ko.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsKo extends AppLocalizations { AppLocalizationsKo([String locale = 'ko']) : super(locale); + @override + String get closeOtherTabs => '다른 탭 닫기'; + @override String get tocTopicFromTemplate => '템플릿에서 토픽...'; diff --git a/lib/l10n/generated/app_localizations_nb.dart b/lib/l10n/generated/app_localizations_nb.dart index 7bef7fab..5bfd8520 100644 --- a/lib/l10n/generated/app_localizations_nb.dart +++ b/lib/l10n/generated/app_localizations_nb.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsNb extends AppLocalizations { AppLocalizationsNb([String locale = 'nb']) : super(locale); + @override + String get closeOtherTabs => 'Lukk andre faner'; + @override String get tocTopicFromTemplate => 'Emne fra mal...'; diff --git a/lib/l10n/generated/app_localizations_nl.dart b/lib/l10n/generated/app_localizations_nl.dart index e1c8bab0..64c19b13 100644 --- a/lib/l10n/generated/app_localizations_nl.dart +++ b/lib/l10n/generated/app_localizations_nl.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsNl extends AppLocalizations { AppLocalizationsNl([String locale = 'nl']) : super(locale); + @override + String get closeOtherTabs => 'Andere tabbladen sluiten'; + @override String get tocTopicFromTemplate => 'Onderwerp uit sjabloon...'; diff --git a/lib/l10n/generated/app_localizations_pl.dart b/lib/l10n/generated/app_localizations_pl.dart index ae31859c..a457b923 100644 --- a/lib/l10n/generated/app_localizations_pl.dart +++ b/lib/l10n/generated/app_localizations_pl.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsPl extends AppLocalizations { AppLocalizationsPl([String locale = 'pl']) : super(locale); + @override + String get closeOtherTabs => 'Zamknij pozostałe karty'; + @override String get tocTopicFromTemplate => 'Temat z szablonu...'; diff --git a/lib/l10n/generated/app_localizations_pt.dart b/lib/l10n/generated/app_localizations_pt.dart index ed892b2f..8c0f12e4 100644 --- a/lib/l10n/generated/app_localizations_pt.dart +++ b/lib/l10n/generated/app_localizations_pt.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsPt extends AppLocalizations { AppLocalizationsPt([String locale = 'pt']) : super(locale); + @override + String get closeOtherTabs => 'Fechar os outros separadores'; + @override String get tocTopicFromTemplate => 'Tópico a partir de modelo...'; @@ -4840,6 +4843,9 @@ class AppLocalizationsPt extends AppLocalizations { class AppLocalizationsPtBr extends AppLocalizationsPt { AppLocalizationsPtBr() : super('pt_BR'); + @override + String get closeOtherTabs => 'Fechar as outras abas'; + @override String get tocTopicFromTemplate => 'Tópico a partir de modelo...'; diff --git a/lib/l10n/generated/app_localizations_ru.dart b/lib/l10n/generated/app_localizations_ru.dart index 53bd7592..fea1fb18 100644 --- a/lib/l10n/generated/app_localizations_ru.dart +++ b/lib/l10n/generated/app_localizations_ru.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsRu extends AppLocalizations { AppLocalizationsRu([String locale = 'ru']) : super(locale); + @override + String get closeOtherTabs => 'Закрыть другие вкладки'; + @override String get tocTopicFromTemplate => 'Тема из шаблона...'; diff --git a/lib/l10n/generated/app_localizations_tr.dart b/lib/l10n/generated/app_localizations_tr.dart index f1346556..536284ac 100644 --- a/lib/l10n/generated/app_localizations_tr.dart +++ b/lib/l10n/generated/app_localizations_tr.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsTr extends AppLocalizations { AppLocalizationsTr([String locale = 'tr']) : super(locale); + @override + String get closeOtherTabs => 'Diğer sekmeleri kapat'; + @override String get tocTopicFromTemplate => 'Şablondan Konu...'; diff --git a/lib/l10n/generated/app_localizations_uk.dart b/lib/l10n/generated/app_localizations_uk.dart index 7f79a0a4..fc60b4b0 100644 --- a/lib/l10n/generated/app_localizations_uk.dart +++ b/lib/l10n/generated/app_localizations_uk.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsUk extends AppLocalizations { AppLocalizationsUk([String locale = 'uk']) : super(locale); + @override + String get closeOtherTabs => 'Закрити інші вкладки'; + @override String get tocTopicFromTemplate => 'Тема з шаблону...'; diff --git a/lib/l10n/generated/app_localizations_vi.dart b/lib/l10n/generated/app_localizations_vi.dart index 6dfe4d66..37eaa057 100644 --- a/lib/l10n/generated/app_localizations_vi.dart +++ b/lib/l10n/generated/app_localizations_vi.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsVi extends AppLocalizations { AppLocalizationsVi([String locale = 'vi']) : super(locale); + @override + String get closeOtherTabs => 'Đóng các thẻ khác'; + @override String get tocTopicFromTemplate => 'Chủ đề từ mẫu...'; diff --git a/lib/l10n/generated/app_localizations_zh.dart b/lib/l10n/generated/app_localizations_zh.dart index 3f02fda9..c9e5b6da 100644 --- a/lib/l10n/generated/app_localizations_zh.dart +++ b/lib/l10n/generated/app_localizations_zh.dart @@ -10,6 +10,9 @@ import 'app_localizations.dart'; class AppLocalizationsZh extends AppLocalizations { AppLocalizationsZh([String locale = 'zh']) : super(locale); + @override + String get closeOtherTabs => '关闭其他标签页'; + @override String get tocTopicFromTemplate => '从模板创建主题...'; @@ -4569,6 +4572,9 @@ class AppLocalizationsZh extends AppLocalizations { class AppLocalizationsZhCn extends AppLocalizationsZh { AppLocalizationsZhCn() : super('zh_CN'); + @override + String get closeOtherTabs => '关闭其他标签页'; + @override String get tocTopicFromTemplate => '从模板创建主题...'; diff --git a/lib/src/app/busymark_app.dart b/lib/src/app/busymark_app.dart index 7bc3bd5a..59fcd1d2 100644 --- a/lib/src/app/busymark_app.dart +++ b/lib/src/app/busymark_app.dart @@ -22,6 +22,7 @@ import '../workspace/workspace_model.dart'; import '../workspace/presentation/welcome_screen.dart'; import '../workspace/workspace_safety.dart'; import '../workspace/workspace_tabs.dart'; +import '../workspace/workspace_tab_actions.dart'; import 'app_router.dart'; import 'app_locale.dart'; import 'app_settings.dart'; @@ -728,44 +729,16 @@ class BusyMarkApp extends ConsumerWidget { return; } final activeTab = tabs[activeIndex]; - if (activeTab.kind == WorkspaceTabKind.file) { - if (activeTab.dirty && - (!await confirmSafeToCloseActiveDocument(context, ref) || - !context.mounted)) { - return; - } - } - await _closeWorkspaceTab(ref, activeTab); + await closeWorkspaceTab(context, ref, workspace: workspace, tab: activeTab); } Future _closeAllOpenFileTabs( BuildContext context, WidgetRef ref, ) async { - final workspaceState = ref.read(workspaceControllerProvider); - final workspace = workspaceState.workspace; - final gitState = ref.read(gitControllerProvider); - if (workspace == null || - workspaceTabEntries( - workspace: workspace, - gitState: gitState, - documentBuffers: workspaceState.documentBuffers, - activeBufferId: workspaceState.activeBufferId, - localHistoryRevisionId: ref - .read(localHistoryControllerProvider) - .selectedRevisionId, - localHistoryDocumentName: ref - .read(localHistoryControllerProvider) - .selectedDocument - ?.displayName, - ).isEmpty) { - return; - } - if (!await confirmSafeToContinue(context, ref) || !context.mounted) { - return; - } - await ref.read(workspaceControllerProvider.notifier).closeAllOpenFileTabs(); - ref.read(gitControllerProvider.notifier).clearSelection(); + final workspace = ref.read(workspaceControllerProvider).workspace; + if (workspace == null) return; + await closeAllWorkspaceTabs(context, ref, workspace: workspace); } Future _activateWorkspaceTab( @@ -791,25 +764,6 @@ class BusyMarkApp extends ConsumerWidget { } } - Future _closeWorkspaceTab(WidgetRef ref, WorkspaceTabEntry tab) async { - final gitController = ref.read(gitControllerProvider.notifier); - switch (tab.kind) { - case WorkspaceTabKind.file: - await ref - .read(workspaceControllerProvider.notifier) - .closeDocumentBuffer(tab.bufferId!); - gitController.deactivateDiffFile(); - case WorkspaceTabKind.gitDiff: - if (tab.path.isEmpty) { - gitController.clearSelection(); - } else { - gitController.closeDiffFile(tab.path); - } - case WorkspaceTabKind.localHistory: - ref.read(localHistoryControllerProvider.notifier).clearComparison(); - } - } - Future _chooseWorkspaceFolder(WidgetRef ref) async { final context = rootNavigatorKey.currentContext; if (context == null) { diff --git a/lib/src/workspace/presentation/workspace_screen.dart b/lib/src/workspace/presentation/workspace_screen.dart index b3dc73ca..73736445 100644 --- a/lib/src/workspace/presentation/workspace_screen.dart +++ b/lib/src/workspace/presentation/workspace_screen.dart @@ -118,6 +118,7 @@ import '../workspace_model.dart'; import '../workspace_message.dart'; import '../workspace_safety.dart'; import '../workspace_tabs.dart'; +import '../workspace_tab_actions.dart'; import 'welcome_screen.dart'; import 'writerside_instance_dialog.dart'; import 'writerside_markdown_import_dialog.dart'; @@ -680,6 +681,135 @@ class _SearchReturnFocus { class WorkspaceScreen extends ConsumerWidget { const WorkspaceScreen({super.key}); + Future _showTabMenu( + BuildContext context, + WidgetRef ref, + Workspace workspace, + WorkspaceTabEntry entry, + Offset position, + ) async { + if (!isWorkspaceTabCurrent(ref, workspace, entry)) return; + final state = ref.read(workspaceControllerProvider); + final buffer = state.documentBuffers + .where((buffer) => buffer.id == entry.bufferId) + .firstOrNull; + final history = ref.read(localHistoryControllerProvider); + final entries = workspaceTabEntries( + workspace: state.workspace!, + gitState: ref.read(gitControllerProvider), + documentBuffers: state.documentBuffers, + activeBufferId: state.activeBufferId, + localHistoryRevisionId: history.selectedRevisionId, + localHistoryDocumentName: history.selectedDocument?.displayName, + ); + final action = await showBusyMarkContextMenu<_WorkspaceTabAction>( + context, + position, + items: [ + BusyMarkPopupMenuItem( + value: _WorkspaceTabAction.close, + label: context.l10n.close, + icon: BusyMarkGlyphs.clear, + ), + if (entry.kind == WorkspaceTabKind.file) ...[ + BusyMarkPopupMenuItem( + value: _WorkspaceTabAction.closeOthers, + label: context.l10n.closeOtherTabs, + icon: BusyMarkGlyphs.clear, + enabled: entries.any((tab) => tab.key != entry.key), + ), + BusyMarkPopupMenuItem( + value: _WorkspaceTabAction.closeAll, + label: context.l10n.shortcutCloseAllTabs, + icon: BusyMarkGlyphs.clear, + ), + const PopupMenuDivider(height: BusyMarkSpacing.sm), + BusyMarkPopupMenuItem( + value: _WorkspaceTabAction.copyPath, + label: context.l10n.copyPath, + icon: BusyMarkGlyphs.copy, + enabled: + buffer != null && + !buffer.isRemote && + buffer.filePath != null && + buffer.filePath!.isNotEmpty, + ), + const PopupMenuDivider(height: BusyMarkSpacing.sm), + BusyMarkPopupMenuItem( + value: _WorkspaceTabAction.localHistory, + label: context.l10n.localHistoryEllipsis, + icon: BusyMarkGlyphs.documentHistory, + ), + ], + ], + ); + if (action == null || + !context.mounted || + !isWorkspaceTabCurrent(ref, workspace, entry)) { + return; + } + final actionWorkspace = ref.read(workspaceControllerProvider).workspace!; + switch (action) { + case _WorkspaceTabAction.localHistory: + final requestedBuffer = ref + .read(workspaceControllerProvider) + .documentBuffers + .where((candidate) => candidate.id == entry.bufferId) + .firstOrNull; + if (requestedBuffer == null) return; + final controller = ref.read(workspaceControllerProvider.notifier); + final historyController = ref.read( + localHistoryControllerProvider.notifier, + ); + if (!await controller.activateDocumentBuffer(requestedBuffer.id) || + !context.mounted || + !isWorkspaceTabCurrent(ref, actionWorkspace, entry)) { + return; + } + final currentRequestedBuffer = ref + .read(workspaceControllerProvider) + .documentBuffers + .where((candidate) => candidate.id == requestedBuffer.id) + .firstOrNull; + if (currentRequestedBuffer == null) return; + await historyController.selectDocumentForBuffer(currentRequestedBuffer); + if (!context.mounted || !ref.context.mounted) return; + ref + .read(_sidebarShortcutRequestProvider.notifier) + .select(_SidebarTab.localHistory); + case _WorkspaceTabAction.close: + await closeWorkspaceTab( + context, + ref, + workspace: actionWorkspace, + tab: entry, + ); + case _WorkspaceTabAction.closeOthers: + await closeOtherWorkspaceTabs( + context, + ref, + workspace: actionWorkspace, + retainedTab: entry, + ); + case _WorkspaceTabAction.closeAll: + await closeAllWorkspaceTabs(context, ref, workspace: actionWorkspace); + case _WorkspaceTabAction.copyPath: + final current = ref + .read(workspaceControllerProvider) + .documentBuffers + .where((buffer) => buffer.id == entry.bufferId) + .firstOrNull; + final path = current?.filePath; + if (current == null || + current.isRemote || + path == null || + path.isEmpty) { + return; + } + await _copyToClipboard(path); + } + } + @override Widget build(BuildContext context, WidgetRef ref) { final state = ref.watch(workspaceControllerProvider); @@ -721,6 +851,11 @@ class WorkspaceScreen extends ConsumerWidget { state: state, gitState: gitState, localHistoryState: localHistoryState, + onClose: (entry) => unawaited( + closeWorkspaceTab(context, ref, workspace: workspace, tab: entry), + ), + onShowMenu: (entry, position) => + _showTabMenu(context, ref, workspace, entry, position), ), Expanded( child: localHistoryState.selectedRevision != null @@ -10260,11 +10395,15 @@ class _EditorTabStrip extends ConsumerWidget { required this.state, required this.gitState, required this.localHistoryState, + required this.onClose, + required this.onShowMenu, }); final WorkspaceState state; final GitState gitState; final LocalHistoryState localHistoryState; + final void Function(WorkspaceTabEntry) onClose; + final void Function(WorkspaceTabEntry, Offset) onShowMenu; @override Widget build(BuildContext context, WidgetRef ref) { @@ -10306,6 +10445,7 @@ class _EditorTabStrip extends ConsumerWidget { itemBuilder: (context, index) { final entry = entries[index]; return _WorkspaceTabButton( + key: ValueKey(entry.key), title: _tabTitle(context, workspace, entry), icon: _tabIcon(workspace, entry), diff: entry.kind == WorkspaceTabKind.gitDiff, @@ -10313,14 +10453,9 @@ class _EditorTabStrip extends ConsumerWidget { dirty: _tabDirty(workspace, entry), onSelected: () => _selectTab(context, ref, workspace, entry), - onClose: () => _closeTab(context, ref, workspace, entry), - onSecondaryTapUp: (details) => _showTabMenu( - context, - ref, - workspace, - entry, - details.globalPosition, - ), + onClose: () => onClose(entry), + onSecondaryTapUp: (details) => + onShowMenu(entry, details.globalPosition), ); }, separatorBuilder: (context, index) => @@ -10418,100 +10553,19 @@ class _EditorTabStrip extends ConsumerWidget { return; } } - - Future _closeTab( - BuildContext context, - WidgetRef ref, - Workspace workspace, - WorkspaceTabEntry entry, - ) async { - final gitController = ref.read(gitControllerProvider.notifier); - switch (entry.kind) { - case WorkspaceTabKind.file: - final controller = ref.read(workspaceControllerProvider.notifier); - if (entry.dirty) { - if (entry.bufferId != state.activeBufferId) { - await controller.activateDocumentBuffer(entry.bufferId!); - } - if (!context.mounted || - !await confirmSafeToCloseActiveDocument(context, ref) || - !context.mounted) { - return; - } - } - await controller.closeDocumentBuffer(entry.bufferId!); - gitController.deactivateDiffFile(); - case WorkspaceTabKind.gitDiff: - if (entry.path.isEmpty) { - gitController.clearSelection(); - } else { - gitController.closeDiffFile(entry.path); - } - case WorkspaceTabKind.localHistory: - ref.read(localHistoryControllerProvider.notifier).clearComparison(); - } - } - - Future _showTabMenu( - BuildContext context, - WidgetRef ref, - Workspace workspace, - WorkspaceTabEntry entry, - Offset position, - ) async { - final action = await showBusyMarkContextMenu<_WorkspaceTabAction>( - context, - position, - items: [ - if (entry.kind == WorkspaceTabKind.file) - BusyMarkPopupMenuItem( - value: _WorkspaceTabAction.localHistory, - label: context.l10n.localHistoryEllipsis, - icon: BusyMarkGlyphs.documentHistory, - ), - if (entry.kind == WorkspaceTabKind.file) - const PopupMenuDivider(height: BusyMarkSpacing.sm), - BusyMarkPopupMenuItem( - value: _WorkspaceTabAction.close, - label: MaterialLocalizations.of(context).closeButtonTooltip, - icon: BusyMarkGlyphs.clear, - ), - ], - ); - if (action == null || !context.mounted) return; - switch (action) { - case _WorkspaceTabAction.localHistory: - final requestedBuffer = state.documentBuffers - .where((candidate) => candidate.id == entry.bufferId) - .firstOrNull; - if (requestedBuffer == null) return; - final activated = await ref - .read(workspaceControllerProvider.notifier) - .activateDocumentBuffer(requestedBuffer.id); - if (!activated || !context.mounted) return; - final currentRequestedBuffer = ref - .read(workspaceControllerProvider) - .documentBuffers - .where((candidate) => candidate.id == requestedBuffer.id) - .firstOrNull; - if (currentRequestedBuffer == null) return; - await ref - .read(localHistoryControllerProvider.notifier) - .selectDocumentForBuffer(currentRequestedBuffer); - if (!context.mounted) return; - ref - .read(_sidebarShortcutRequestProvider.notifier) - .select(_SidebarTab.localHistory); - case _WorkspaceTabAction.close: - await _closeTab(context, ref, workspace, entry); - } - } } -enum _WorkspaceTabAction { localHistory, close } +enum _WorkspaceTabAction { + close, + closeOthers, + closeAll, + copyPath, + localHistory, +} class _WorkspaceTabButton extends StatelessWidget { const _WorkspaceTabButton({ + super.key, required this.title, required this.icon, required this.diff, @@ -10544,66 +10598,69 @@ class _WorkspaceTabButton extends StatelessWidget { borderRadius: const BorderRadius.vertical( top: Radius.circular(BusyMarkRadius.sm), ), - child: InkWell( - borderRadius: const BorderRadius.vertical( - top: Radius.circular(BusyMarkRadius.sm), - ), - hoverColor: colors.controlHover, - onTap: onSelected, - onSecondaryTapUp: onSecondaryTapUp, - child: Container( - height: BusyMarkSizes.paneHeaderHeight - BusyMarkSpacing.xs, - constraints: const BoxConstraints(minWidth: 112, maxWidth: 240), - decoration: BoxDecoration( - borderRadius: const BorderRadius.vertical( - top: Radius.circular(BusyMarkRadius.sm), - ), - border: Border.all(color: borderColor), - ), - padding: const EdgeInsetsDirectional.only( - start: BusyMarkSpacing.sm, - end: BusyMarkSpacing.xs, + child: GestureDetector( + onTertiaryTapUp: (_) => onClose(), + child: InkWell( + borderRadius: const BorderRadius.vertical( + top: Radius.circular(BusyMarkRadius.sm), ), - child: Row( - mainAxisSize: MainAxisSize.min, - children: [ - if (dirty) ...[ - Container( - width: BusyMarkSizes.markerDot, - height: BusyMarkSizes.markerDot, - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.primary, - shape: BoxShape.circle, + hoverColor: colors.controlHover, + onTap: onSelected, + onSecondaryTapUp: onSecondaryTapUp, + child: Container( + height: BusyMarkSizes.paneHeaderHeight - BusyMarkSpacing.xs, + constraints: const BoxConstraints(minWidth: 112, maxWidth: 240), + decoration: BoxDecoration( + borderRadius: const BorderRadius.vertical( + top: Radius.circular(BusyMarkRadius.sm), + ), + border: Border.all(color: borderColor), + ), + padding: const EdgeInsetsDirectional.only( + start: BusyMarkSpacing.sm, + end: BusyMarkSpacing.xs, + ), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + if (dirty) ...[ + Container( + width: BusyMarkSizes.markerDot, + height: BusyMarkSizes.markerDot, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.primary, + shape: BoxShape.circle, + ), ), - ), - const SizedBox(width: BusyMarkSpacing.sm), - ] else ...[ - if (diff) - _DiffCompareIcon(color: foreground) - else - Icon(icon, size: BusyMarkSizes.iconSm, color: foreground), - const SizedBox(width: BusyMarkSpacing.sm), - ], - Flexible( - child: Text( - title, - maxLines: 1, - overflow: TextOverflow.ellipsis, - softWrap: false, - style: Theme.of(context).textTheme.labelMedium?.copyWith( - color: foreground, - fontWeight: active ? FontWeight.w700 : FontWeight.w500, + const SizedBox(width: BusyMarkSpacing.sm), + ] else ...[ + if (diff) + _DiffCompareIcon(color: foreground) + else + Icon(icon, size: BusyMarkSizes.iconSm, color: foreground), + const SizedBox(width: BusyMarkSpacing.sm), + ], + Flexible( + child: Text( + title, + maxLines: 1, + overflow: TextOverflow.ellipsis, + softWrap: false, + style: Theme.of(context).textTheme.labelMedium?.copyWith( + color: foreground, + fontWeight: active ? FontWeight.w700 : FontWeight.w500, + ), ), ), - ), - const SizedBox(width: BusyMarkSpacing.xs), - BusyMarkCompactIconButton( - tooltip: MaterialLocalizations.of(context).closeButtonTooltip, - icon: BusyMarkGlyphs.clear, - foregroundColor: foreground, - onPressed: onClose, - ), - ], + const SizedBox(width: BusyMarkSpacing.xs), + BusyMarkCompactIconButton( + tooltip: MaterialLocalizations.of(context).closeButtonTooltip, + icon: BusyMarkGlyphs.clear, + foregroundColor: foreground, + onPressed: onClose, + ), + ], + ), ), ), ), diff --git a/lib/src/workspace/workspace_controller.dart b/lib/src/workspace/workspace_controller.dart index bc9559dd..4bbdb20e 100644 --- a/lib/src/workspace/workspace_controller.dart +++ b/lib/src/workspace/workspace_controller.dart @@ -4947,12 +4947,18 @@ class WorkspaceController extends Notifier { if (candidate.id != bufferId) candidate, ]; if (remaining.isEmpty) { - _removalOperationRevision++; - state = workspace.isRemote - ? WorkspaceState(workspace: workspace.copyWith(markdown: null)) - : const WorkspaceState(); - _fileMonitor.updateOpenFilePaths(const []); - _schedulePersistence(); + if (_supportsOpenFileTabs(workspace)) { + // The last buffer can be an untitled draft in a folder/project. + // Discarding that draft closes a view and retains the workspace. + await _clearOpenFileTabs(workspace); + } else { + _removalOperationRevision++; + state = workspace.isRemote + ? WorkspaceState(workspace: workspace.copyWith(markdown: null)) + : const WorkspaceState(); + _fileMonitor.updateOpenFilePaths(const []); + _schedulePersistence(); + } await _localHistory.handleBufferClosed( bufferId, historySettled: historySettled, diff --git a/lib/src/workspace/workspace_safety.dart b/lib/src/workspace/workspace_safety.dart index b03969aa..0efaf568 100644 --- a/lib/src/workspace/workspace_safety.dart +++ b/lib/src/workspace/workspace_safety.dart @@ -99,6 +99,24 @@ Future confirmSafeToCloseActiveDocument( return _confirmUnsavedChanges(context, ref, dirtyBufferIds: [active.id]); } +/// Resolves only dirty documents in the requested close set, including +/// inactive buffers, without prompting for a retained document. +Future confirmSafeToCloseDocumentBuffers( + BuildContext context, + WidgetRef ref, + Iterable bufferIds, +) { + final requested = bufferIds.toSet(); + return _confirmUnsavedChanges( + context, + ref, + dirtyBufferIds: [ + for (final buffer in ref.read(workspaceControllerProvider).dirtyBuffers) + if (requested.contains(buffer.id)) buffer.id, + ], + ); +} + Future _confirmUnsavedChanges( BuildContext context, WidgetRef ref, { @@ -175,6 +193,7 @@ Future _confirmUnsavedChanges( ), ); + if (!context.mounted || !ref.context.mounted) return false; final currentState = ref.read(workspaceControllerProvider); final currentDirtyIds = currentState.dirtyBuffers .map((buffer) => buffer.id) diff --git a/lib/src/workspace/workspace_tab_actions.dart b/lib/src/workspace/workspace_tab_actions.dart new file mode 100644 index 00000000..857472f4 --- /dev/null +++ b/lib/src/workspace/workspace_tab_actions.dart @@ -0,0 +1,271 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_riverpod/flutter_riverpod.dart'; + +import '../git/application/git_controller.dart'; +import '../local_history/local_history_controller.dart'; +import 'workspace_controller.dart'; +import 'workspace_model.dart'; +import 'workspace_safety.dart'; +import 'workspace_tabs.dart'; + +// All tab-closing entry points share this guard, including keyboard commands. +// The controller is the workspace owner's identity, independent of tab widgets. +final _closing = Expando(); + +List _tabs(WidgetRef ref, WorkspaceState state) { + final workspace = state.workspace; + if (workspace == null) return const []; + final history = ref.read(localHistoryControllerProvider); + return workspaceTabEntries( + workspace: workspace, + gitState: ref.read(gitControllerProvider), + documentBuffers: state.documentBuffers, + activeBufferId: state.activeBufferId, + localHistoryRevisionId: history.selectedRevisionId, + localHistoryDocumentName: history.selectedDocument?.displayName, + ); +} + +bool _sameWorkspace(Workspace workspace, WorkspaceState state) => + state.workspace?.id == workspace.id && + state.workspace?.openedAt == workspace.openedAt; + +bool _tabSurvivedFirstSave( + Workspace workspace, + WorkspaceState state, + WorkspaceTabEntry tab, +) => + workspace.kind == WorkspaceKind.untitledMarkdown && + state.workspace?.kind == WorkspaceKind.singleMarkdown && + tab.kind == WorkspaceTabKind.file && + tab.path.isEmpty && + state.documentBuffers.any( + (buffer) => + buffer.id == tab.bufferId && + buffer.filePath != null && + buffer.filePath!.isNotEmpty, + ); + +/// Validates a tab captured before an asynchronous menu was presented. +bool isWorkspaceTabCurrent( + WidgetRef ref, + Workspace workspace, + WorkspaceTabEntry tab, +) { + if (!ref.context.mounted) return false; + final state = ref.read(workspaceControllerProvider); + return (_sameWorkspace(workspace, state) || + _tabSurvivedFirstSave(workspace, state, tab)) && + _tabs(ref, state).any((candidate) => candidate.key == tab.key); +} + +/// Closes the specified view without selecting it before confirmation. +Future closeWorkspaceTab( + BuildContext context, + WidgetRef ref, { + required Workspace workspace, + required WorkspaceTabEntry tab, +}) => _closeTabs(context, ref, workspace: workspace, clicked: tab); + +/// Keeps the specified document and its editor session, then activates it. +Future closeOtherWorkspaceTabs( + BuildContext context, + WidgetRef ref, { + required Workspace workspace, + required WorkspaceTabEntry retainedTab, +}) => retainedTab.kind != WorkspaceTabKind.file + ? Future.value(false) + : _closeTabs( + context, + ref, + workspace: workspace, + clicked: retainedTab, + retain: true, + ); + +/// Closes captured views while preserving the controller's workspace lifecycle. +Future closeAllWorkspaceTabs( + BuildContext context, + WidgetRef ref, { + required Workspace workspace, +}) => _closeTabs(context, ref, workspace: workspace); + +Future _closeTabs( + BuildContext context, + WidgetRef ref, { + required Workspace workspace, + WorkspaceTabEntry? clicked, + bool retain = false, +}) async { + if (!context.mounted || !ref.context.mounted) return false; + final controller = ref.read(workspaceControllerProvider.notifier); + if (_closing[controller] == true) return false; + final initial = ref.read(workspaceControllerProvider); + if (!_sameWorkspace(workspace, initial) && + (clicked == null || + !_tabSurvivedFirstSave(workspace, initial, clicked))) { + return false; + } + final tabs = _tabs(ref, initial); + if (clicked != null && !tabs.any((tab) => tab.key == clicked.key)) { + return false; + } + final targets = [ + for (final tab in tabs) + if (clicked == null || + (retain ? tab.key != clicked.key : tab.key == clicked.key)) + tab, + ]; + if (targets.isEmpty) return false; + final bufferIds = { + for (final tab in targets) + if (tab.kind == WorkspaceTabKind.file) tab.bufferId!, + }; + // Capture controllers before destructive awaits. Callers must supply a ref + // owned by WorkspaceScreen or the app, never the disappearing tab strip. + final git = ref.read(gitControllerProvider.notifier); + final history = ref.read(localHistoryControllerProvider.notifier); + var operationWorkspace = initial.workspace!; + var documentsFinished = false; + bool currentWorkspace() { + if (!context.mounted || !ref.context.mounted) return false; + final live = ref.read(workspaceControllerProvider); + if (retain) { + if (!live.documentBuffers.any( + (buffer) => buffer.id == clicked!.bufferId, + )) { + return false; + } + final revision = ref + .read(localHistoryControllerProvider) + .selectedRevisionId; + // A new comparison cannot be cleared merely to activate the retained + // document. Stop if it replaced the captured comparison during a wait. + if (revision != null && + !targets.any( + (tab) => + tab.kind == WorkspaceTabKind.localHistory && + tab.bufferId == revision, + )) { + return false; + } + } + final current = live.workspace; + if (current?.id == operationWorkspace.id && + current?.openedAt == operationWorkspace.openedAt) { + return true; + } + // First Save As replaces an untitled workspace, preserving buffer IDs. + // Require a surviving original draft that acquired a local path. + if (operationWorkspace.kind == WorkspaceKind.untitledMarkdown && + current?.kind == WorkspaceKind.singleMarkdown && + initial.documentBuffers.any( + (original) => + original.isUntitled && + live.documentBuffers.any( + (buffer) => buffer.id == original.id && buffer.filePath != null, + ), + )) { + operationWorkspace = current!; + return true; + } + // Authorized discard/closing of the last pathless local buffer can return + // to Welcome. There is no document removal left to perform in that case. + return current == null && + operationWorkspace.kind == WorkspaceKind.untitledMarkdown && + live.documentBuffers.isEmpty; + } + + _closing[controller] = true; + try { + if (!await confirmSafeToCloseDocumentBuffers(context, ref, bufferIds) || + !currentWorkspace()) { + return false; + } + var live = ref.read(workspaceControllerProvider); + if (live.documentBuffers.any( + (buffer) => bufferIds.contains(buffer.id) && buffer.isDirty, + )) { + return false; + } + if (clicked == null) { + // The local bulk API owns history flushing and folder/project empty + // state. It must never see documents opened after target capture. + if (live.documentBuffers.any( + (buffer) => !bufferIds.contains(buffer.id), + )) { + return false; + } + if (live.documentBuffers.isNotEmpty && + switch (live.workspace!.kind) { + WorkspaceKind.singleMarkdown || + WorkspaceKind.markdownFolder || + WorkspaceKind.writersideModule => true, + WorkspaceKind.untitledMarkdown || + WorkspaceKind.nextcloudNotes => false, + }) { + if (!await controller.closeAllOpenFileTabs() || !currentWorkspace()) { + return false; + } + documentsFinished = true; + } + } + if (!documentsFinished) { + for (final id in bufferIds) { + if (!currentWorkspace()) return false; + live = ref.read(workspaceControllerProvider); + final buffer = live.documentBuffers + .where((buffer) => buffer.id == id) + .firstOrNull; + // Discard can already have removed an untitled/deleted buffer. + if (buffer == null) continue; + if (buffer.isDirty) return false; + final closed = await controller.closeDocumentBuffer(id); + if (!currentWorkspace()) return false; + if (!closed && + ref + .read(workspaceControllerProvider) + .documentBuffers + .any((buffer) => buffer.id == id)) { + return false; + } + } + } + if (!currentWorkspace()) return false; + final gitTargets = targets + .where((tab) => tab.kind == WorkspaceTabKind.gitDiff) + .toList(); + final liveGit = ref.read(gitControllerProvider); + if (gitTargets.isNotEmpty) { + final paths = gitTargets.map((tab) => tab.path).toSet(); + if (liveGit.openDiffFilePaths.every(paths.contains) && + (liveGit.openDiffFilePaths.isNotEmpty || paths.contains(''))) { + git.clearSelection(); + } else { + for (final path in paths) { + if (path.isNotEmpty) git.closeDiffFile(path); + } + } + } + final revisionId = ref + .read(localHistoryControllerProvider) + .selectedRevisionId; + if (targets.any( + (tab) => + tab.kind == WorkspaceTabKind.localHistory && + tab.bufferId == revisionId, + )) { + history.clearComparison(); + } + if (retain) { + if (!await controller.activateDocumentBuffer(clicked!.bufferId!) || + !currentWorkspace()) { + return false; + } + git.deactivateDiffFile(); + } + return true; + } finally { + _closing[controller] = false; + } +} diff --git a/test/src/app_smoke_test.dart b/test/src/app_smoke_test.dart index 5e31eef9..fd2d2b99 100644 --- a/test/src/app_smoke_test.dart +++ b/test/src/app_smoke_test.dart @@ -5530,6 +5530,981 @@ code }, ); + Future waitForTabAction( + WidgetTester tester, + bool Function() done, + ) async { + for (var i = 0; i < 1500 && !done(); i++) { + await tester.runAsync( + () => Future.delayed(const Duration(milliseconds: 10)), + ); + await tester.pump(const Duration(milliseconds: 10)); + } + expect(done(), isTrue, reason: 'Tab action did not finish'); + await tester.pumpAndSettle(); + } + + Future tabOperation( + WidgetTester tester, + Future Function() operation, + ) async { + late T result; + Object? error; + StackTrace? stack; + var done = false; + unawaited( + operation().then( + (value) { + result = value; + done = true; + }, + onError: (Object caught, StackTrace trace) { + error = caught; + stack = trace; + done = true; + }, + ), + ); + await waitForTabAction(tester, () => done); + if (error != null) Error.throwWithStackTrace(error!, stack!); + return result; + } + + Future< + ({ + ProviderContainer container, + WorkspaceController controller, + _TabbedWorkspaceService service, + List paths, + }) + > + tabWorkspace( + WidgetTester tester, { + int count = 3, + bool git = false, + WorkspaceKind kind = WorkspaceKind.markdownFolder, + }) async { + final temp = Directory.systemTemp.createTempSync('busymark_tab_actions_'); + addTearDown(() => temp.deleteSync(recursive: true)); + final paths = [ + for (var i = 0; i < count; i++) + '${temp.path}/${['a space 文.md', 'b.md', 'c.md'][i]}', + ]; + for (final path in paths) { + File(path).writeAsStringSync('# Original\n'); + } + final service = _TabbedWorkspaceService( + rootPath: temp.path, + paths: paths, + kind: kind, + ); + final container = ProviderContainer( + overrides: [ + ..._smokeAccentOverrides, + linuxHeaderBarServiceProvider.overrideWithValue(headerBarService), + localSettingsStoreProvider.overrideWithValue( + _MemorySettingsStore() + ..value = AppSettings.defaults() + .copyWith( + autoSave: false, + validateOnEdit: false, + documentViewMode: DocumentViewModePreference.source, + ) + .toJson(), + ), + workspaceServiceProvider.overrideWithValue(service), + startupPathProvider.overrideWithValue(temp.path), + if (git) + gitControllerProvider.overrideWith( + () => _PresetGitController(_gitDiffState(temp.path)), + ), + ], + ); + addTearDown(container.dispose); + await tester.pumpWidget( + UncontrolledProviderScope( + container: container, + child: const BusyMarkApp(), + ), + ); + for ( + var i = 0; + i < 40 && container.read(workspaceControllerProvider).workspace == null; + i++ + ) { + await tester.pump(const Duration(milliseconds: 100)); + } + final controller = container.read(workspaceControllerProvider.notifier); + await tabOperation(tester, () async { + for (final path in paths.skip(1)) { + await controller.openActiveFile(path); + } + }); + await tester.pumpAndSettle(); + return ( + container: container, + controller: controller, + service: service, + paths: paths, + ); + } + + Finder documentTab(DocumentBuffer buffer) => + find.byKey(ValueKey('file:${buffer.id}')); + Finder tabLabel(DocumentBuffer buffer) => find + .descendant(of: documentTab(buffer), matching: find.byType(Text)) + .first; + Future openTabMenu(WidgetTester tester, DocumentBuffer buffer) async { + await tester.ensureVisible(documentTab(buffer)); + await tester.pumpAndSettle(); + await tester.tap(tabLabel(buffer), buttons: kSecondaryButton); + await tester.pumpAndSettle(); + } + + Future openTabComparison( + WidgetTester tester, + ProviderContainer container, + ) async { + final history = container.read(localHistoryControllerProvider.notifier); + final buffer = container.read(workspaceControllerProvider).activeBuffer!; + // Keep these memory-store operations in the test's zone so pending history + // work and its completion callbacks can drain through pump(). + var done = false; + unawaited(() async { + await history.flushAll( + container.read(workspaceControllerProvider).documentBuffers, + ); + await history.selectDocumentForBuffer(buffer); + await history.selectRevision( + container + .read(localHistoryControllerProvider) + .selectedRevisions + .first + .id, + ); + done = true; + }()); + await waitForTabAction(tester, () => done); + expect( + container.read(localHistoryControllerProvider).selectedRevision, + isNotNull, + ); + } + + for (final count in [1, 3]) { + testWidgets( + 'document tab menu ordering and dismissal with $count documents', + (tester) async { + final h = await tabWorkspace(tester, count: count); + final before = h.container.read(workspaceControllerProvider); + await openTabMenu(tester, before.documentBuffers.first); + final entries = tester + .widgetList>( + find.byWidgetPredicate((w) => w is PopupMenuEntry), + ) + .toList(); + expect( + entries.map( + (e) => e is BusyMarkPopupMenuItem ? e.label : 'separator', + ), + [ + l10n.close, + l10n.closeOtherTabs, + l10n.shortcutCloseAllTabs, + 'separator', + l10n.copyPath, + 'separator', + l10n.localHistoryEllipsis, + ], + ); + expect((entries[1] as PopupMenuItem).enabled, count > 1); + expect((entries[4] as PopupMenuItem).enabled, isTrue); + expect( + entries.whereType().map((e) => e.height), + everyElement(BusyMarkSpacing.sm), + ); + expect( + h.container.read(workspaceControllerProvider).activeBufferId, + before.activeBufferId, + ); + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + final after = h.container.read(workspaceControllerProvider); + expect(after.activeBufferId, before.activeBufferId); + expect( + after.documentBuffers.map((b) => b.id), + before.documentBuffers.map((b) => b.id), + ); + expect(after.activeText, before.activeText); + }, + ); + } + + for (final trigger in ['menu', 'middle', 'cross']) { + for (final active in [false, true]) { + testWidgets( + '$trigger closes exactly the ${active ? 'active' : 'inactive'} document tab', + (tester) async { + final h = await tabWorkspace(tester); + final before = h.container.read(workspaceControllerProvider); + final target = active + ? before.activeBuffer! + : before.documentBuffers.first; + if (trigger == 'menu') { + await openTabMenu(tester, target); + await tester.tap(find.text(l10n.close)); + } else if (trigger == 'middle') { + final gesture = await tester.startGesture( + tester.getCenter(tabLabel(target)), + kind: PointerDeviceKind.mouse, + buttons: kTertiaryButton, + ); + await tester.pump(); + expect( + h.container.read(workspaceControllerProvider).documentBuffers, + hasLength(3), + ); + expect( + h.container.read(workspaceControllerProvider).activeBufferId, + before.activeBufferId, + ); + await gesture.up(); + } else { + await tester.tap( + find.descendant( + of: documentTab(target), + matching: find.byTooltip('Close'), + ), + ); + } + await waitForTabAction( + tester, + () => + h.container + .read(workspaceControllerProvider) + .documentBuffers + .length == + 2, + ); + final after = h.container.read(workspaceControllerProvider); + expect( + after.documentBuffers.map((b) => b.id), + before.documentBuffers + .where((b) => b.id != target.id) + .map((b) => b.id), + ); + if (!active) expect(after.activeBufferId, before.activeBufferId); + expect(h.service.saveCount, 0); + }, + ); + } + } + + for (final trigger in [ + 'middle', + 'menu', + 'cross', + 'keyboard', + 'allKeyboard', + ]) { + for (final action in ['Cancel', 'Save', 'Discard']) { + testWidgets('$trigger closes dirty document with $action once', ( + tester, + ) async { + final h = await tabWorkspace(tester); + await tabOperation( + tester, + () => h.controller.activateDocumentBuffer( + h.container + .read(workspaceControllerProvider) + .documentBuffers + .first + .id, + ), + ); + h.controller.updateActiveText('# Unsaved target\n'); + h.controller.updateActiveEditorState( + h.container + .read(workspaceControllerProvider) + .activeBuffer! + .editorState + .copyWith( + mode: DocumentViewModePreference.source, + selection: const TextSelection(baseOffset: 2, extentOffset: 9), + ), + ); + await tester.pumpAndSettle(); + final target = h.container + .read(workspaceControllerProvider) + .activeBuffer!; + await tabOperation( + tester, + () => h.controller.activateDocumentBuffer( + h.container + .read(workspaceControllerProvider) + .documentBuffers + .last + .id, + ), + ); + await tester.pumpAndSettle(); + if (trigger == 'keyboard') { + await tabOperation( + tester, + () => h.controller.activateDocumentBuffer(target.id), + ); + } + final activeId = h.container + .read(workspaceControllerProvider) + .activeBufferId; + if (trigger == 'middle') { + await tester.tap(tabLabel(target), buttons: kTertiaryButton); + } else if (trigger == 'menu') { + await openTabMenu(tester, target); + await tester.tap(find.text(l10n.close)); + } else if (trigger == 'cross') { + await tester.tap( + find.descendant( + of: documentTab(target), + matching: find.byTooltip('Close'), + ), + ); + } else { + await tester.sendKeyDownEvent(LogicalKeyboardKey.controlLeft); + if (trigger == 'allKeyboard') { + await tester.sendKeyDownEvent(LogicalKeyboardKey.shiftLeft); + } + await tester.sendKeyEvent(LogicalKeyboardKey.keyW); + if (trigger == 'allKeyboard') { + await tester.sendKeyUpEvent(LogicalKeyboardKey.shiftLeft); + } + await tester.sendKeyUpEvent(LogicalKeyboardKey.controlLeft); + } + await tester.pumpAndSettle(); + expect(find.text(l10n.unsavedChanges), findsOneWidget); + expect( + h.container.read(workspaceControllerProvider).activeBufferId, + activeId, + ); + await tester.tap(find.text(action)); + await tester.pumpAndSettle(); + if (action != 'Cancel') { + await waitForTabAction( + tester, + () => + h.container + .read(workspaceControllerProvider) + .documentBuffers + .length == + (trigger == 'allKeyboard' ? 0 : 2), + ); + } + final remaining = h.container + .read(workspaceControllerProvider) + .documentBuffers; + if (action == 'Cancel') { + final kept = remaining.singleWhere((b) => b.id == target.id); + expect(kept.text, target.text); + expect(kept.isDirty, isTrue); + expect(kept.editorState.selection, target.editorState.selection); + expect( + kept.editorState.undoState, + same(target.editorState.undoState), + ); + expect( + h.container.read(workspaceControllerProvider).activeBufferId, + activeId, + ); + } else { + expect(remaining.any((b) => b.id == target.id), isFalse); + expect(remaining, hasLength(trigger == 'allKeyboard' ? 0 : 2)); + } + expect(h.service.saveCount, action == 'Save' ? 1 : 0); + }); + } + } + + testWidgets( + 'wheel rotation and primary and secondary tab interactions remain independent', + (tester) async { + final h = await tabWorkspace(tester); + final target = h.container + .read(workspaceControllerProvider) + .documentBuffers + .first; + await tester.sendEventToBinding( + PointerScrollEvent( + position: tester.getCenter(tabLabel(target)), + scrollDelta: const Offset(0, 24), + ), + ); + await tester.pumpAndSettle(); + expect( + h.container.read(workspaceControllerProvider).documentBuffers, + hasLength(3), + ); + await openTabMenu(tester, target); + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + expect( + h.container.read(workspaceControllerProvider).activeBufferId, + isNot(target.id), + ); + await tester.tap(tabLabel(target)); + await tester.pumpAndSettle(); + expect( + h.container.read(workspaceControllerProvider).activeBufferId, + target.id, + ); + }, + ); + + for (final bulk in ['other', 'all']) { + testWidgets( + 'close $bulk document tabs also closes Git and Local History comparisons', + (tester) async { + final h = await tabWorkspace(tester, git: true); + final retainedId = h.container + .read(workspaceControllerProvider) + .documentBuffers + .first + .id; + await tabOperation( + tester, + () => h.controller.activateDocumentBuffer(retainedId), + ); + h.controller.updateActiveText('# Retained unsaved draft\n'); + h.controller.updateActiveEditorState( + h.container + .read(workspaceControllerProvider) + .activeBuffer! + .editorState + .copyWith( + mode: DocumentViewModePreference.source, + selection: const TextSelection(baseOffset: 3, extentOffset: 11), + scrollOffset: 12, + foldedRegionKeys: const {'keep-fold'}, + ), + ); + await tester.pumpAndSettle(); + await tester.pumpAndSettle(); + await tabOperation( + tester, + () => h.controller.activateDocumentBuffer( + h.container + .read(workspaceControllerProvider) + .documentBuffers + .last + .id, + ), + ); + await tester.pumpAndSettle(); + final retained = h.container + .read(workspaceControllerProvider) + .documentBuffers + .first; + await openTabComparison(tester, h.container); + final historyBefore = h.container + .read(localHistoryControllerProvider) + .snapshot + .revisions + .length; + await openTabMenu(tester, retained); + await tester.tap( + find.text( + bulk == 'other' ? l10n.closeOtherTabs : l10n.shortcutCloseAllTabs, + ), + ); + await tester.pumpAndSettle(); + if (bulk == 'all') { + expect(find.text(l10n.unsavedChanges), findsOneWidget); + await tester.tap(find.text(l10n.discard)); + await tester.pumpAndSettle(); + } else { + expect(find.text(l10n.unsavedChanges), findsNothing); + } + await waitForTabAction( + tester, + () => + h.container + .read(workspaceControllerProvider) + .documentBuffers + .length == + (bulk == 'other' ? 1 : 0), + ); + final after = h.container.read(workspaceControllerProvider); + expect( + h.container.read(gitControllerProvider).openDiffFilePaths, + isEmpty, + ); + expect( + h.container.read(gitControllerProvider).selectedDiffForDisplay, + isNull, + ); + expect( + h.container.read(localHistoryControllerProvider).selectedRevisionId, + isNull, + ); + expect( + h.container + .read(localHistoryControllerProvider) + .snapshot + .revisions + .length, + greaterThanOrEqualTo(historyBefore), + ); + expect(h.service.saveCount, 0); + if (bulk == 'other') { + expect(after.documentBuffers.single.id, retained.id); + expect(after.activeBufferId, retained.id); + expect(after.activeBuffer!.text, retained.text); + expect(after.activeBuffer!.isDirty, isTrue); + expect(retained.editorState.undoState.undo, isNotEmpty); + expect( + after.activeBuffer!.editorState.selection, + retained.editorState.selection, + ); + expect( + after.activeBuffer!.editorState.foldedRegionKeys, + retained.editorState.foldedRegionKeys, + ); + expect( + after.activeBuffer!.editorState.undoState, + same(retained.editorState.undoState), + ); + } else { + expect(after.documentBuffers, isEmpty); + expect(after.workspace!.kind, WorkspaceKind.markdownFolder); + expect(after.workspace!.openFilePaths, isEmpty); + } + }, + ); + } + + testWidgets( + 'comparison-only neighbors enable Close other tabs and middle click closes comparison views', + (tester) async { + final h = await tabWorkspace(tester, count: 1, git: true); + await openTabComparison(tester, h.container); + final target = h.container + .read(workspaceControllerProvider) + .activeBuffer!; + await openTabMenu(tester, target); + final other = tester.widget>( + find.byWidgetPredicate( + (w) => w is BusyMarkPopupMenuItem && w.label == l10n.closeOtherTabs, + ), + ); + expect(other.enabled, isTrue); + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + final revision = h.container + .read(localHistoryControllerProvider) + .selectedRevisionId; + await tester.scrollUntilVisible( + find.byKey(ValueKey('localHistory:$revision')), + 180, + scrollable: find + .descendant( + of: find.byKey(const ValueKey('editor-tab-strip')), + matching: find.byType(Scrollable), + ) + .first, + ); + await tester.pumpAndSettle(); + await tester.tap( + find.descendant( + of: find.byKey(ValueKey('localHistory:$revision')), + matching: find.byType(Text), + ), + buttons: kTertiaryButton, + ); + await tester.pumpAndSettle(); + expect( + h.container.read(localHistoryControllerProvider).selectedRevisionId, + isNull, + ); + await tester.tap( + find.descendant( + of: find.byKey(const ValueKey('gitDiff:README.md')), + matching: find.byType(Text), + ), + buttons: kTertiaryButton, + ); + await tester.pumpAndSettle(); + expect(h.container.read(gitControllerProvider).openDiffFilePaths, [ + 'guide.md', + ]); + await openTabMenu(tester, target); + await tester.tap(find.text(l10n.closeOtherTabs)); + await tester.pumpAndSettle(); + expect( + h.container.read(gitControllerProvider).openDiffFilePaths, + isEmpty, + ); + expect( + h.container.read(workspaceControllerProvider).activeBufferId, + target.id, + ); + }, + ); + + testWidgets('bulk close survives the strip disappearing', (tester) async { + final h = await tabWorkspace(tester, kind: WorkspaceKind.singleMarkdown); + final target = h.container + .read(workspaceControllerProvider) + .documentBuffers + .first; + await openTabMenu(tester, target); + await tester.tap(find.text(l10n.closeOtherTabs)); + await tester.pumpAndSettle(); + await waitForTabAction( + tester, + () => + h.container + .read(workspaceControllerProvider) + .documentBuffers + .length == + 1, + ); + expect( + h.container.read(workspaceControllerProvider).documentBuffers.single.id, + target.id, + ); + expect(find.byKey(const ValueKey('editor-tab-strip')), findsNothing); + expect(tester.takeException(), isNull); + }); + + testWidgets( + 'Copy path uses exact live inactive path even after Save As or deletion', + (tester) async { + String? clipboard; + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + SystemChannels.platform, + (call) async { + if (call.method == 'Clipboard.setData') { + clipboard = (call.arguments as Map)['text'] as String; + } + return null; + }, + ); + addTearDown( + () => tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + SystemChannels.platform, + null, + ), + ); + final h = await tabWorkspace(tester); + var target = h.container + .read(workspaceControllerProvider) + .documentBuffers + .first; + final active = h.container + .read(workspaceControllerProvider) + .activeBufferId; + await openTabMenu(tester, target); + await tester.tap(find.text(l10n.copyPath)); + await tester.pumpAndSettle(); + expect(clipboard, h.paths.first); + expect( + h.container.read(workspaceControllerProvider).activeBufferId, + active, + ); + File(h.paths.first).deleteSync(); + await openTabMenu(tester, target); + await tester.tap(find.text(l10n.copyPath)); + await tester.pumpAndSettle(); + expect(clipboard, h.paths.first); + await tabOperation(tester, () => h.controller.createMarkdownFile()); + target = h.container.read(workspaceControllerProvider).activeBuffer!; + await tester.pumpAndSettle(); + await openTabMenu(tester, target); + final copy = tester.widget>( + find.byWidgetPredicate( + (w) => w is BusyMarkPopupMenuItem && w.label == l10n.copyPath, + ), + ); + expect(copy.enabled, isFalse); + await tester.tap(find.text(l10n.copyPath)); + await tester.pump(); + expect(clipboard, h.paths.first); + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + final newPath = '${h.service.rootPath}/saved 文 space.md'; + await openTabMenu( + tester, + h.container.read(workspaceControllerProvider).documentBuffers[1], + ); + // A live path change while a native menu is pending is covered below. + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + await tabOperation(tester, () => h.controller.saveActiveAs(newPath)); + await tester.pumpAndSettle(); + target = h.container.read(workspaceControllerProvider).activeBuffer!; + await tabOperation( + tester, + () => h.controller.activateDocumentBuffer( + h.container.read(workspaceControllerProvider).documentBuffers[1].id, + ), + ); + await tester.pumpAndSettle(); + await openTabMenu(tester, target); + await tester.tap(find.text(l10n.copyPath)); + await tester.pumpAndSettle(); + expect(clipboard, newPath); + }, + ); + + for (final selected in [0, 1, 2, 4, 6]) { + testWidgets( + 'native document menu serializes entries and dispatches index $selected', + (tester) async { + final h = await tabWorkspace(tester); + final before = h.container.read(workspaceControllerProvider); + final target = before.documentBuffers.first; + Map? shown; + String? clipboard; + const channel = MethodChannel('busymark/native_menus'); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + (call) async { + if (call.method == 'show') { + shown = call.arguments as Map; + return selected; + } + return true; + }, + ); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + SystemChannels.platform, + (call) async { + if (call.method == 'Clipboard.setData') { + clipboard = (call.arguments as Map)['text'] as String; + } + return null; + }, + ); + addTearDown(() { + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + null, + ); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + SystemChannels.platform, + null, + ); + }); + await openTabMenu(tester, target); + expect((shown!['entries'] as List).map((e) => (e as Map)['label']), [ + l10n.close, + l10n.closeOtherTabs, + l10n.shortcutCloseAllTabs, + '', + l10n.copyPath, + '', + l10n.localHistoryEllipsis, + ]); + expect( + (shown!['entries'] as List).map((e) => (e as Map)['separator']), + [false, false, false, true, false, true, false], + ); + expect((shown!['entries'] as List).map((e) => (e as Map)['enabled']), [ + true, + true, + true, + false, + true, + false, + true, + ]); + if (selected <= 2) { + await waitForTabAction( + tester, + () => + h.container + .read(workspaceControllerProvider) + .documentBuffers + .length == + [2, 1, 0][selected], + ); + } + if (selected == 6) { + await waitForTabAction( + tester, + () => + h.container + .read(localHistoryControllerProvider) + .selectedDocument != + null, + ); + } + final after = h.container.read(workspaceControllerProvider); + if (selected == 0) { + expect(after.documentBuffers.any((b) => b.id == target.id), isFalse); + } + if (selected == 1) expect(after.documentBuffers.single.id, target.id); + if (selected == 2) expect(after.documentBuffers, isEmpty); + if (selected == 4) { + expect(clipboard, target.filePath); + expect(after.activeBufferId, before.activeBufferId); + } + if (selected == 6) { + expect(after.activeBufferId, target.id); + expect( + h.container + .read(localHistoryControllerProvider) + .selectedDocument + ?.currentPath, + target.filePath, + ); + expect(find.byType(LocalHistoryPanel), findsOneWidget); + } + }, + ); + } + + testWidgets( + 'pending native Close follows an untitled buffer through its first save', + (tester) async { + final h = await tabWorkspace( + tester, + count: 1, + kind: WorkspaceKind.singleMarkdown, + ); + await tabOperation(tester, () => h.controller.createMarkdownWorkspace()); + h.controller.updateActiveText('# First-save target\n'); + await tester.pumpAndSettle(); + final target = h.container + .read(workspaceControllerProvider) + .activeBuffer!; + await tabOperation(tester, () => h.controller.createMarkdownFile()); + final retainedId = h.container + .read(workspaceControllerProvider) + .activeBufferId; + final result = Completer(); + const channel = MethodChannel('busymark/native_menus'); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler(channel, ( + call, + ) async { + if (call.method == 'show') return await result.future; + return true; + }); + addTearDown( + () => tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + null, + ), + ); + await tester.tap(tabLabel(target), buttons: kSecondaryButton); + await tester.pump(); + await tabOperation(tester, () async { + await h.controller.activateDocumentBuffer(target.id); + await h.controller.saveActiveAs( + '${h.service.rootPath}/first saved 文.md', + ); + await h.controller.activateDocumentBuffer(retainedId!); + }); + expect( + h.container.read(workspaceControllerProvider).workspace!.kind, + WorkspaceKind.singleMarkdown, + ); + result.complete(0); + await waitForTabAction( + tester, + () => + h.container + .read(workspaceControllerProvider) + .documentBuffers + .length == + 1, + ); + final after = h.container.read(workspaceControllerProvider); + expect(after.documentBuffers.single.id, retainedId); + expect(after.documentBuffers.single.isDirty, isTrue); + expect(find.text(l10n.unsavedChanges), findsNothing); + }, + ); + + for (final actionIndex in [0, 4]) { + for (final change in ['remove', 'workspace', 'path']) { + testWidgets( + 'pending native menu index $actionIndex validates live target after $change', + (tester) async { + final h = await tabWorkspace(tester); + final target = h.container + .read(workspaceControllerProvider) + .documentBuffers + .first; + final result = Completer(); + String? clipboard; + const channel = MethodChannel('busymark/native_menus'); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + (call) async { + if (call.method == 'show') return await result.future; + return true; + }, + ); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + SystemChannels.platform, + (call) async { + if (call.method == 'Clipboard.setData') { + clipboard = (call.arguments as Map)['text'] as String; + } + return null; + }, + ); + addTearDown(() { + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + null, + ); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + SystemChannels.platform, + null, + ); + }); + await tester.tap(tabLabel(target), buttons: kSecondaryButton); + await tester.pump(); + String? newPath; + await tabOperation(tester, () async { + if (change == 'remove') { + await h.controller.closeDocumentBuffer(target.id); + } + if (change == 'workspace') { + await h.controller.createMarkdownWorkspace(); + } + if (change == 'path') { + await h.controller.activateDocumentBuffer(target.id); + newPath = '${h.service.rootPath}/renamed 文 space.md'; + await h.controller.saveActiveAs(newPath!); + } + }); + final beforeDispatch = h.container.read(workspaceControllerProvider); + result.complete(actionIndex); + await tester.pumpAndSettle(); + final after = h.container.read(workspaceControllerProvider); + if (change == 'path') { + if (actionIndex == 4) expect(clipboard, newPath); + if (actionIndex == 0) { + expect( + after.documentBuffers.any((b) => b.id == target.id), + isFalse, + ); + } + } else { + expect(clipboard, isNull); + expect( + after.documentBuffers.map((b) => b.id), + beforeDispatch.documentBuffers.map((b) => b.id), + ); + expect(after.activeBufferId, beforeDispatch.activeBufferId); + } + }, + ); + } + } + testWidgets('tab keyboard shortcuts move and close editor tabs', ( tester, ) async { @@ -14488,8 +15463,13 @@ class _StartupWorkspaceService extends WorkspaceService { } class _TabbedWorkspaceService extends WorkspaceService { - _TabbedWorkspaceService({required this.rootPath, required this.paths}); + _TabbedWorkspaceService({ + required this.rootPath, + required this.paths, + this.kind = WorkspaceKind.markdownFolder, + }); + final WorkspaceKind kind; final String rootPath; final List paths; final _sources = {}; @@ -14512,7 +15492,7 @@ class _TabbedWorkspaceService extends WorkspaceService { return Workspace( id: rootPath, rootPath: rootPath, - kind: WorkspaceKind.markdownFolder, + kind: kind, openedAt: DateTime(2026), activeFilePath: paths.first, activeFileModifiedAt: DateTime(2026), diff --git a/test/src/nextcloud_notes_ui_test.dart b/test/src/nextcloud_notes_ui_test.dart index 4d7f9c2f..86d902c7 100644 --- a/test/src/nextcloud_notes_ui_test.dart +++ b/test/src/nextcloud_notes_ui_test.dart @@ -23,7 +23,9 @@ import 'package:busymark/src/workspace/presentation/settings_screen.dart'; import 'package:busymark/src/workspace/recovery_persistence.dart'; import 'package:busymark/src/workspace/session_persistence.dart'; import 'package:busymark/src/workspace/workspace_controller.dart'; +import 'package:busymark/src/workspace/workspace_model.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/gestures.dart'; import 'package:flutter/services.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:flutter_test/flutter_test.dart'; @@ -370,6 +372,135 @@ void main() { await tester.pumpWidget(const SizedBox.shrink()); }); + for (final action in ['middle', 'other', 'all']) { + testWidgets( + 'remote tab $action closing keeps notes and disables Copy path', + (tester) async { + final container = ProviderContainer( + overrides: [ + nextcloudNotesRepositoryProvider.overrideWith( + (ref) async => repository, + ), + localSettingsStoreProvider.overrideWithValue(_TabSettings()), + linuxAccentPlatformProvider.overrideWithValue(false), + localHistoryStoreProvider.overrideWithValue( + MemoryLocalHistoryStore(), + ), + documentSessionStoreProvider.overrideWithValue( + MemoryDocumentSessionStore(), + ), + documentRecoveryStoreProvider.overrideWithValue( + MemoryDocumentRecoveryStore(), + ), + ], + ); + addTearDown(container.dispose); + final controller = container.read(workspaceControllerProvider.notifier); + const personalId = '223e4567-e89b-42d3-a456-426614174000'; + const sharedId = '323e4567-e89b-42d3-a456-426614174000'; + await tester.runAsync(() async { + await controller.openNextcloudWorkspace(accountId); + await controller.openNextcloudNote(personalId); + await controller.openNextcloudNote(sharedId); + }); + container.read(appRouterProvider).go('/workspace'); + await tester.pumpWidget( + UncontrolledProviderScope( + container: container, + child: const BusyMarkApp(), + ), + ); + await tester.pumpAndSettle(); + final target = container + .read(workspaceControllerProvider) + .documentBuffers + .singleWhere((buffer) => buffer.remoteNote?.localId == personalId); + final activeId = container + .read(workspaceControllerProvider) + .activeBufferId; + Finder label() => find + .descendant( + of: find.byKey(ValueKey('file:${target.id}')), + matching: find.byType(Text), + ) + .first; + Map? menu; + var choice = 4; // Disabled Copy path must not dispatch or write. + var clipboardWrites = 0; + const channel = MethodChannel('busymark/native_menus'); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + (call) async { + if (call.method == 'show') { + menu = call.arguments as Map; + return choice; + } + return true; + }, + ); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + SystemChannels.platform, + (call) async { + if (call.method == 'Clipboard.setData') clipboardWrites++; + return null; + }, + ); + addTearDown(() { + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + null, + ); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + SystemChannels.platform, + null, + ); + }); + await tester.tap(label(), buttons: kSecondaryButton); + await tester.pumpAndSettle(); + final entries = menu!['entries'] as List; + expect((entries[4] as Map)['enabled'], isFalse); + expect(clipboardWrites, 0); + expect( + container.read(workspaceControllerProvider).activeBufferId, + activeId, + ); + if (action == 'middle') { + await tester.tap(label(), buttons: kTertiaryButton); + } else { + choice = action == 'other' ? 1 : 2; + await tester.tap(label(), buttons: kSecondaryButton); + } + for (var i = 0; i < 100; i++) { + await tester.runAsync( + () => Future.delayed(const Duration(milliseconds: 10)), + ); + await tester.pump(const Duration(milliseconds: 10)); + if (container + .read(workspaceControllerProvider) + .documentBuffers + .length == + (action == 'all' ? 0 : 1)) { + break; + } + } + await tester.pumpAndSettle(); + final state = container.read(workspaceControllerProvider); + expect(state.documentBuffers, hasLength(action == 'all' ? 0 : 1)); + if (action == 'other') expect(state.activeBufferId, target.id); + if (action == 'middle') { + expect(state.documentBuffers.single.remoteNote?.localId, sharedId); + } + expect(state.workspace!.kind, WorkspaceKind.nextcloudNotes); + expect((repository as _CachedNotesRepository).deleteCalls, 0); + expect(repository.noteById(personalId)?.content, 'private search text'); + expect(repository.noteById(sharedId)?.content, 'shared material'); + expect(clipboardWrites, 0); + expect(tester.takeException(), isNull); + await tester.pumpWidget(const SizedBox.shrink()); + }, + ); + } + testWidgets( 'cached note list searches content and excludes clean deletion tombstones', (tester) async { @@ -915,6 +1046,13 @@ class _CachedNotesRepository extends NotesRepository { ), ); + int deleteCalls = 0; + @override + Future delete(String localId) { + deleteCalls++; + return super.delete(localId); + } + @override Future synchronize(String accountId) async {} } diff --git a/test/src/workspace_controller_test.dart b/test/src/workspace_controller_test.dart index 4b2fa3fe..40b23ceb 100644 --- a/test/src/workspace_controller_test.dart +++ b/test/src/workspace_controller_test.dart @@ -4978,6 +4978,55 @@ void _registerResponsivenessTests() { ); }, ); + for (final project in [false, true]) { + for (final discard in [false, true]) { + test( + 'last untitled buffer keeps ${project ? 'project' : 'folder'} open on ${discard ? 'discard' : 'bulk close'}', + () async { + final root = project + ? await responsiveness.syntheticProject() + : await Directory.systemTemp.createTemp('busymark-tabs-folder-'); + if (!project) { + addTearDown(() => root.delete(recursive: true)); + await File( + p.join(root.path, 'saved.md'), + ).writeAsString('# Saved\n'); + } + final harness = await _createControllerHarness( + fileMonitor: _ControlledFileMonitor(), + ); + await harness.settingsController.setAutoSave(false); + final controller = harness.controller._notifier; + await controller.openPath(root.path); + final savedId = controller.state.activeBuffer!.id; + await controller.createMarkdownFile(); + final draft = controller.state.activeBuffer!; + await controller.closeDocumentBuffer(savedId); + expect(controller.state.documentBuffers.single.id, draft.id); + final workspaceId = controller.state.workspace!.id; + if (discard) { + expect(await controller.discardActiveChanges(), isTrue); + } else { + controller.state = controller.state.copyWith( + documentBuffers: [draft.copyWith(dirty: false)], + ); + expect(await controller.closeAllOpenFileTabs(), isTrue); + } + expect(controller.state.documentBuffers, isEmpty); + expect(controller.state.workspace!.id, workspaceId); + expect( + controller.state.workspace!.kind, + project + ? WorkspaceKind.writersideModule + : WorkspaceKind.markdownFolder, + ); + expect(controller.state.workspace!.openFilePaths, isEmpty); + expect(controller.state.workspace!.sourceOverrides, isEmpty); + }, + ); + } + } + test( 'closing all Writerside tabs completes override relinquishment', () async { diff --git a/test/src/workspace_safety_test.dart b/test/src/workspace_safety_test.dart index 3f8e8a95..6e9819b2 100644 --- a/test/src/workspace_safety_test.dart +++ b/test/src/workspace_safety_test.dart @@ -10,6 +10,10 @@ import 'package:busymark/src/workspace/document_buffer.dart'; import 'package:busymark/src/workspace/workspace_controller.dart'; import 'package:busymark/src/workspace/workspace_model.dart'; import 'package:busymark/src/workspace/workspace_safety.dart'; +import 'package:busymark/src/workspace/workspace_tab_actions.dart'; +import 'package:busymark/src/workspace/workspace_tabs.dart'; +import 'package:busymark/src/git/application/git_controller.dart'; +import 'package:busymark/src/local_history/local_history_controller.dart'; import 'package:busymark/src/workspace/workspace_service.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; @@ -1018,6 +1022,513 @@ void main() { }, ); } + Future< + ({WidgetRef ref, WorkspaceController controller, bool? Function() result}) + > + closeHarness( + WidgetTester tester, + _IdentityWorkspaceService service, + Set targets, { + String operation = 'confirm', + WorkspaceController Function()? createController, + }) async { + bool? result; + late WidgetRef ref; + await tester.pumpWidget( + ProviderScope( + overrides: [ + localSettingsStoreProvider.overrideWithValue( + _MemorySettingsStore() + ..value = AppSettings.defaults() + .copyWith(autoSave: false, validateOnEdit: false) + .toJson(), + ), + workspaceServiceProvider.overrideWithValue(service), + if (createController != null) + workspaceControllerProvider.overrideWith(createController), + ], + child: MaterialApp( + localizationsDelegates: AppLocalizations.localizationsDelegates, + supportedLocales: AppLocalizations.supportedLocales, + home: Scaffold( + body: Consumer( + builder: (context, widgetRef, _) { + ref = widgetRef; + return TextButton( + onPressed: () async { + final state = ref.read(workspaceControllerProvider); + final workspace = state.workspace!; + final tab = WorkspaceTabEntry.file( + path: '', + active: false, + bufferId: targets.firstOrNull ?? state.activeBufferId!, + ); + result = switch (operation) { + 'one' => await closeWorkspaceTab( + context, + ref, + workspace: workspace, + tab: tab, + ), + 'other' => await closeOtherWorkspaceTabs( + context, + ref, + workspace: workspace, + retainedTab: tab, + ), + 'all' => await closeAllWorkspaceTabs( + context, + ref, + workspace: workspace, + ), + _ => await confirmSafeToCloseDocumentBuffers( + context, + ref, + targets, + ), + }; + }, + child: const Text('Close targets'), + ); + }, + ), + ), + ), + ), + ); + final controller = ref.read(workspaceControllerProvider.notifier); + await controller.openPath(service.rootPath); + final firstId = ref.read(workspaceControllerProvider).activeBufferId!; + await controller.openActiveFile(service.secondPath); + await controller.activateDocumentBuffer(firstId); + return (ref: ref, controller: controller, result: () => result); + } + + for (final choice in ['Cancel', 'Save', 'Discard']) { + testWidgets( + 'ID scoped confirmation combines dirty targets and excludes retained draft on $choice', + (tester) async { + final service = _IdentityWorkspaceService(); + final targets = {}; + final h = await closeHarness(tester, service, targets); + h.controller.updateActiveText('# Edited first\n'); + targets.add(h.ref.read(workspaceControllerProvider).activeBufferId!); + await h.controller.openActiveFile(service.secondPath); + h.controller.updateActiveText('# Edited second\n'); + targets.add(h.ref.read(workspaceControllerProvider).activeBufferId!); + await h.controller.createMarkdownFile(); + h.controller.updateActiveText('# Retained dirty\n'); + final retained = h.ref.read(workspaceControllerProvider).activeBuffer!; + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + expect( + find.text(l10n.unsavedChangesMultipleMessage(2)), + findsOneWidget, + ); + expect(find.text(retained.displayName), findsNothing); + await tester.tap(find.text(choice)); + await tester.pumpAndSettle(); + expect(h.result(), choice != 'Cancel'); + final state = h.ref.read(workspaceControllerProvider); + expect(state.activeBufferId, retained.id); + expect(state.activeBuffer!.text, retained.text); + expect(state.activeBuffer!.isDirty, isTrue); + expect(state.dirtyBuffers, hasLength(choice == 'Cancel' ? 3 : 1)); + expect(service.saves, hasLength(choice == 'Save' ? 2 : 0)); + }, + ); + } + + for (final change in ['revision', 'active', 'workspace', 'removed']) { + testWidgets( + 'ID scoped confirmation rejects $change changes while dialog is open', + (tester) async { + final service = _IdentityWorkspaceService(); + final targets = {}; + final h = await closeHarness(tester, service, targets); + h.controller.updateActiveText('# Dirty original\n'); + targets.add(h.ref.read(workspaceControllerProvider).activeBufferId!); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + if (change == 'revision') { + h.controller.updateActiveText('# New revision\n'); + } + if (change == 'active') { + await h.controller.openActiveFile(service.secondPath); + } + if (change == 'workspace') { + await h.controller.openPath(service.saveAsPath); + } + if (change == 'removed') { + await h.controller.closeDocumentBuffer(targets.first, discard: true); + } + final before = h.ref.read(workspaceControllerProvider); + await tester.tap(find.text(l10n.discard)); + await tester.pumpAndSettle(); + expect(h.result(), isFalse); + final after = h.ref.read(workspaceControllerProvider); + expect( + after.documentBuffers.map((b) => b.id), + before.documentBuffers.map((b) => b.id), + ); + expect(after.activeBufferId, before.activeBufferId); + expect(after.activeText, before.activeText); + expect(service.saves, isEmpty); + }, + ); + } + + testWidgets( + 'failed scoped save stops subsequent targets and ordinary closing', + (tester) async { + final service = _IdentityWorkspaceService()..failSave = true; + final targets = {}; + final h = await closeHarness(tester, service, targets, operation: 'all'); + h.controller.updateActiveText('# First edited\n'); + await h.controller.openActiveFile(service.secondPath); + h.controller.updateActiveText('# Second edited\n'); + final before = h.ref.read(workspaceControllerProvider); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + await tester.tap(find.text(l10n.save)); + await tester.pumpAndSettle(); + expect(h.result(), isFalse); + expect(service.saves, hasLength(1)); + final after = h.ref.read(workspaceControllerProvider); + expect( + after.documentBuffers.map((b) => b.id), + before.documentBuffers.map((b) => b.id), + ); + expect(after.dirtyBuffers, hasLength(2)); + expect(after.activeBufferId, before.activeBufferId); + }, + ); + + for (final saveAs in ['cancel', 'save']) { + testWidgets('scoped tab close supports untitled first Save As $saveAs', ( + tester, + ) async { + final service = _IdentityWorkspaceService(); + const channel = MethodChannel('plugins.flutter.io/file_selector'); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler(channel, ( + call, + ) async { + expect(call.method, 'getSavePath'); + return saveAs == 'save' ? service.saveAsPath : null; + }); + addTearDown( + () => tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + null, + ), + ); + final targets = {}; + final h = await closeHarness(tester, service, targets, operation: 'one'); + await h.controller.createMarkdownWorkspace(); + h.controller.updateActiveText('# Untitled close draft\n'); + targets.add(h.ref.read(workspaceControllerProvider).activeBufferId!); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + await tester.tap(find.text(l10n.save)); + await tester.pumpAndSettle(); + expect(h.result(), saveAs == 'save'); + final state = h.ref.read(workspaceControllerProvider); + if (saveAs == 'save') { + expect(state.documentBuffers, isEmpty); + expect(state.workspace!.kind, WorkspaceKind.singleMarkdown); + expect( + service.documents[service.saveAsPath], + '# Untitled close draft\n', + ); + } else { + expect(state.activeBufferId, targets.first); + expect(state.activeText, '# Untitled close draft\n'); + expect(state.isDirty, isTrue); + } + }); + } + + testWidgets( + 'close all aborts when another document opens during confirmation', + (tester) async { + final service = _IdentityWorkspaceService(); + final h = await closeHarness( + tester, + service, + {}, + operation: 'all', + ); + h.controller.updateActiveText('# Edited first\n'); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + final activeId = h.ref.read(workspaceControllerProvider).activeBufferId!; + await h.controller.createMarkdownFile(); + final newId = h.ref.read(workspaceControllerProvider).activeBufferId!; + await h.controller.activateDocumentBuffer(activeId); + await tester.tap(find.text(l10n.discard)); + await tester.pumpAndSettle(); + expect(h.result(), isFalse); + expect( + h.ref + .read(workspaceControllerProvider) + .documentBuffers + .any((b) => b.id == newId), + isTrue, + ); + expect( + h.ref.read(workspaceControllerProvider).documentBuffers, + hasLength(3), + ); + }, + ); + + for (final operation in ['one', 'other', 'all']) { + testWidgets( + 'rejected $operation close stops and preserves comparison state', + (tester) async { + final targets = {}; + final controller = _RejectedCloseController(); + final h = await closeHarness( + tester, + _IdentityWorkspaceService(), + targets, + operation: operation, + createController: () => controller, + ); + if (operation == 'other') { + await h.controller.createMarkdownFile(); + } + final before = h.ref.read(workspaceControllerProvider); + targets.add(before.documentBuffers.last.id); + final git = h.ref.read(gitControllerProvider.notifier); + git.state = git.state.copyWith(openDiffFilePaths: ['comparison.md']); + final history = h.ref.read(localHistoryControllerProvider.notifier); + history.state = history.state.copyWith( + selectedRevisionId: 'revision-to-keep', + ); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + expect(h.result(), isFalse); + expect(controller.closedIds, hasLength(operation == 'all' ? 0 : 1)); + expect(controller.bulkCalls, operation == 'all' ? 1 : 0); + expect( + h.ref + .read(workspaceControllerProvider) + .documentBuffers + .map((b) => b.id), + before.documentBuffers.map((b) => b.id), + ); + expect(h.ref.read(gitControllerProvider).openDiffFilePaths, [ + 'comparison.md', + ]); + expect( + h.ref.read(localHistoryControllerProvider).selectedRevisionId, + 'revision-to-keep', + ); + }, + ); + } + + testWidgets('canceled Save As after an earlier save stops close other tabs', ( + tester, + ) async { + final service = _IdentityWorkspaceService(); + final targets = {}; + final h = await closeHarness(tester, service, targets, operation: 'other'); + h.controller.updateActiveText('# Retained dirty text\n'); + final retained = h.ref.read(workspaceControllerProvider).activeBuffer!; + targets.add(retained.id); + await h.controller.openActiveFile(service.secondPath); + h.controller.updateActiveText('# Target to save\n'); + await h.controller.createMarkdownFile(); + h.controller.updateActiveText('# Untitled target\n'); + const channel = MethodChannel('plugins.flutter.io/file_selector'); + tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + (_) async => null, + ); + addTearDown( + () => tester.binding.defaultBinaryMessenger.setMockMethodCallHandler( + channel, + null, + ), + ); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + expect(find.text(l10n.unsavedChangesMultipleMessage(2)), findsOneWidget); + await tester.tap(find.text(l10n.save)); + await tester.pumpAndSettle(); + expect(h.result(), isFalse); + final state = h.ref.read(workspaceControllerProvider); + expect(state.documentBuffers, hasLength(3)); + expect( + state.documentBuffers.singleWhere((b) => b.id == retained.id).text, + retained.text, + ); + expect( + state.documentBuffers.singleWhere((b) => b.id == retained.id).isDirty, + isTrue, + ); + expect(state.bufferForPath(service.secondPath)!.isDirty, isFalse); + expect(service.saves.single, ( + path: service.secondPath, + text: '# Target to save\n', + )); + }); + + for (final standalone in [false, true]) { + testWidgets( + 'close all finishes when discard already removes ${standalone ? 'standalone' : 'folder'} untitled targets', + (tester) async { + final h = await closeHarness( + tester, + _IdentityWorkspaceService(), + {}, + operation: 'all', + ); + if (standalone) { + await h.controller.createMarkdownWorkspace(); + } else { + final savedIds = h.ref + .read(workspaceControllerProvider) + .documentBuffers + .map((b) => b.id) + .toList(); + await h.controller.createMarkdownFile(); + for (final id in savedIds) { + await h.controller.closeDocumentBuffer(id); + } + } + h.controller.updateActiveText('# Draft to discard\n'); + await h.controller.createMarkdownFile(); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + expect( + find.text(l10n.unsavedChangesMultipleMessage(2)), + findsOneWidget, + ); + await tester.tap(find.text(l10n.discard)); + await tester.pumpAndSettle(); + expect(h.result(), isTrue); + final state = h.ref.read(workspaceControllerProvider); + expect(state.documentBuffers, isEmpty); + if (standalone) { + expect(state.workspace, isNull); + } else { + expect(state.workspace!.kind, WorkspaceKind.markdownFolder); + } + }, + ); + } + + testWidgets( + 'close other tabs keeps documents opened during confirmation outside the captured set', + (tester) async { + final service = _IdentityWorkspaceService(); + final targets = {}; + final h = await closeHarness( + tester, + service, + targets, + operation: 'other', + ); + targets.add(h.ref.read(workspaceControllerProvider).activeBufferId!); + await h.controller.openActiveFile(service.secondPath); + h.controller.updateActiveText('# Target dirty\n'); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + final originalActiveId = h.ref + .read(workspaceControllerProvider) + .activeBufferId!; + await h.controller.createMarkdownFile(); + final newBuffer = h.ref.read(workspaceControllerProvider).activeBuffer!; + await h.controller.activateDocumentBuffer(originalActiveId); + await tester.tap(find.text(l10n.discard)); + await tester.pumpAndSettle(); + expect(h.result(), isTrue); + final state = h.ref.read(workspaceControllerProvider); + expect(state.documentBuffers.map((b) => b.id), [ + targets.first, + newBuffer.id, + ]); + expect(state.activeBufferId, targets.first); + expect(state.documentBuffers.last.isDirty, isTrue); + }, + ); + + testWidgets( + 'close other tabs preserves a comparison opened during confirmation', + (tester) async { + final service = _IdentityWorkspaceService(); + final targets = {}; + final h = await closeHarness( + tester, + service, + targets, + operation: 'other', + ); + targets.add(h.ref.read(workspaceControllerProvider).activeBufferId!); + await h.controller.openActiveFile(service.secondPath); + h.controller.updateActiveText('# Target dirty\n'); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + final history = h.ref.read(localHistoryControllerProvider.notifier); + await history.flushAll( + h.ref.read(workspaceControllerProvider).documentBuffers, + ); + await history.selectDocumentForBuffer( + h.ref.read(workspaceControllerProvider).activeBuffer!, + ); + final revision = h.ref + .read(localHistoryControllerProvider) + .selectedRevisions + .first + .id; + await history.selectRevision(revision); + await tester.tap(find.text(l10n.discard)); + await tester.pumpAndSettle(); + expect(h.result(), isFalse); + expect( + h.ref.read(workspaceControllerProvider).documentBuffers, + hasLength(2), + ); + expect( + h.ref.read(localHistoryControllerProvider).selectedRevisionId, + revision, + ); + }, + ); + + testWidgets( + 'shared closing rejects overlapping operations before a second prompt', + (tester) async { + final targets = {}; + final h = await closeHarness( + tester, + _IdentityWorkspaceService(), + targets, + operation: 'all', + ); + h.controller.updateActiveText('# Dirty\n'); + await tester.tap(find.text('Close targets')); + await tester.pumpAndSettle(); + final state = h.ref.read(workspaceControllerProvider); + final second = await closeAllWorkspaceTabs( + h.ref.context, + h.ref, + workspace: state.workspace!, + ); + expect(second, isFalse); + expect(find.text(l10n.unsavedChanges), findsOneWidget); + await tester.tap(find.text(l10n.cancel)); + await tester.pumpAndSettle(); + expect(h.result(), isFalse); + expect( + h.ref.read(workspaceControllerProvider).documentBuffers, + hasLength(2), + ); + }, + ); } double _contrastRatio(Color foreground, Color background) { @@ -1057,6 +1568,7 @@ class _IdentityWorkspaceService extends WorkspaceService { final firstSaveStarted = Completer(); final pathExistsCheckStarted = Completer(); final pathExistsChecks = []; + var failSave = false; var firstChangedOnDisk = false; var pauseFirstSave = false; Completer? pendingFileChangedResult; @@ -1130,6 +1642,7 @@ class _IdentityWorkspaceService extends WorkspaceService { @override Future saveText(String path, String text) async { saves.add((path: path, text: text)); + if (failSave) throw StateError('save rejected'); if (pauseFirstSave && saves.length == 1) { firstSaveStarted.complete(); await _releaseFirstSave.future; @@ -1151,6 +1664,17 @@ class _IdentityWorkspaceService extends WorkspaceService { } } + @override + Future saveNewText( + String path, + String text, { + Future Function()? onPublished, + }) async { + final result = await saveText(path, text); + await onPublished?.call(); + return result; + } + @override Future saveTextReplacingPath( String path, @@ -1197,3 +1721,22 @@ class _IdentityWorkspaceService extends WorkspaceService { ); } } + +class _RejectedCloseController extends WorkspaceController { + final closedIds = []; + int bulkCalls = 0; + @override + Future closeDocumentBuffer( + String bufferId, { + bool discard = false, + }) async { + closedIds.add(bufferId); + return false; + } + + @override + Future closeAllOpenFileTabs() async { + bulkCalls++; + return false; + } +} From 7508acba265cf5d6938fb575bdf45b96ec3382ab Mon Sep 17 00:00:00 2001 From: Albert G Date: Wed, 7 Oct 2026 23:41:47 -0700 Subject: [PATCH 7/9] Support replacement home page selection during Writerside topic removal (#49) --- lib/l10n/app_ar.arb | 12 +- lib/l10n/app_de.arb | 10 +- lib/l10n/app_en.arb | 20 +- lib/l10n/app_es.arb | 10 +- lib/l10n/app_et.arb | 14 +- lib/l10n/app_fa.arb | 12 +- lib/l10n/app_fr.arb | 12 +- lib/l10n/app_hi.arb | 12 +- lib/l10n/app_id.arb | 16 +- lib/l10n/app_it.arb | 10 +- lib/l10n/app_ja.arb | 16 +- lib/l10n/app_ko.arb | 16 +- lib/l10n/app_nb.arb | 10 +- lib/l10n/app_nl.arb | 16 +- lib/l10n/app_pl.arb | 12 +- lib/l10n/app_pt.arb | 10 +- lib/l10n/app_pt_BR.arb | 10 +- lib/l10n/app_ru.arb | 12 +- lib/l10n/app_tr.arb | 16 +- lib/l10n/app_uk.arb | 12 +- lib/l10n/app_vi.arb | 16 +- lib/l10n/app_zh.arb | 16 +- lib/l10n/app_zh_CN.arb | 16 +- lib/l10n/generated/app_localizations.dart | 36 +- lib/l10n/generated/app_localizations_ar.dart | 20 +- lib/l10n/generated/app_localizations_de.dart | 18 +- lib/l10n/generated/app_localizations_en.dart | 20 +- lib/l10n/generated/app_localizations_es.dart | 18 +- lib/l10n/generated/app_localizations_et.dart | 18 +- lib/l10n/generated/app_localizations_fa.dart | 20 +- lib/l10n/generated/app_localizations_fr.dart | 20 +- lib/l10n/generated/app_localizations_hi.dart | 20 +- lib/l10n/generated/app_localizations_id.dart | 20 +- lib/l10n/generated/app_localizations_it.dart | 18 +- lib/l10n/generated/app_localizations_ja.dart | 20 +- lib/l10n/generated/app_localizations_ko.dart | 20 +- lib/l10n/generated/app_localizations_nb.dart | 18 +- lib/l10n/generated/app_localizations_nl.dart | 20 +- lib/l10n/generated/app_localizations_pl.dart | 20 +- lib/l10n/generated/app_localizations_pt.dart | 36 +- lib/l10n/generated/app_localizations_ru.dart | 20 +- lib/l10n/generated/app_localizations_tr.dart | 20 +- lib/l10n/generated/app_localizations_uk.dart | 20 +- lib/l10n/generated/app_localizations_vi.dart | 20 +- lib/l10n/generated/app_localizations_zh.dart | 38 +- .../presentation/workspace_screen.dart | 97 ++++- .../writerside_topic_removal_service.dart | 181 +++++++- test/src/writerside_toc_regressions_test.dart | 327 ++++++++++++++- test/src/writerside_toc_workspace_test.dart | 93 +++++ ...writerside_topic_removal_service_test.dart | 390 ++++++++++++++++++ 50 files changed, 1684 insertions(+), 190 deletions(-) diff --git a/lib/l10n/app_ar.arb b/lib/l10n/app_ar.arb index 2aa57512..8489ba65 100644 --- a/lib/l10n/app_ar.arb +++ b/lib/l10n/app_ar.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "لا يمكن حذف موضوع البدء ⁨{topic}⁩. اختر صفحة بدء أخرى أولًا.", + "errorWritersideStartTopicDelete": "لا يمكن حذف الصفحة الرئيسية {topic}. اختر صفحة رئيسية أخرى أولًا.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2671,7 +2671,11 @@ } } }, - "topicIsStartPageRemovalWarning": "يُستخدم هذا الموضوع كصفحة بدء لمثيل. راجع استخداماته وعيّن صفحة بدء أخرى قبل المتابعة.", + "topicIsHomePageRemovalWarning": "هذا الموضوع هو الصفحة الرئيسية لهذا المثيل. اختر صفحة رئيسية أخرى قبل إزالته من جدول المحتويات.", + "newHomePage": "الصفحة الرئيسية الجديدة", + "chooseHomePage": "اختر صفحة رئيسية", + "noHomePageReplacement": "أضف موضوعًا مؤهلًا آخر إلى هذا المثيل أو اربطه به قبل إزالة صفحته الرئيسية.", + "topicIsStartPageRemovalWarning": "هذا الموضوع هو الصفحة الرئيسية لمثيل. عيّن صفحة رئيسية أخرى قبل حذف ملفه المصدر.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, @@ -2696,7 +2700,7 @@ "@topicUsageTocElements": { "description": "Usage group label for TOC elements." }, - "topicUsageStartPages": "صفحات البدء", + "topicUsageStartPages": "الصفحات الرئيسية", "@topicUsageStartPages": { "description": "Usage group label for instance start pages." }, diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index f03cdfa5..7f2644d0 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Das Startthema {topic} kann nicht gelöscht werden. Wählen Sie zuerst eine andere Startseite aus.", + "errorWritersideStartTopicDelete": "Die Startseite {topic} kann nicht gelöscht werden. Wählen Sie zuerst eine andere Startseite.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2671,7 +2671,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Dieses Thema wird als Startseite einer Instanz verwendet. Prüfen Sie seine Verwendungen und weisen Sie eine andere Startseite zu, bevor Sie fortfahren.", + "topicIsHomePageRemovalWarning": "Dieses Thema ist die Startseite dieser Instanz. Wählen Sie eine andere Startseite, bevor Sie es aus dem Inhaltsverzeichnis entfernen.", + "newHomePage": "Neue Startseite", + "chooseHomePage": "Startseite auswählen", + "noHomePageReplacement": "Fügen Sie dieser Instanz ein anderes geeignetes Thema hinzu oder verknüpfen Sie es, bevor Sie ihre Startseite entfernen.", + "topicIsStartPageRemovalWarning": "Dieses Thema ist die Startseite einer Instanz. Legen Sie eine andere Startseite fest, bevor Sie seine Quelldatei löschen.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 859d2d71..30936f30 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -964,8 +964,16 @@ "description": "Disclosure that children of a removed TOC element are promoted.", "placeholders": {"count": {"type": "int"}} }, - "topicIsStartPageRemovalWarning": "This topic is used as an instance start page. Review its usages and assign another start page before continuing.", - "@topicIsStartPageRemovalWarning": {"description": "Warning that blocks deletion of a Writerside start-page topic."}, + "topicIsHomePageRemovalWarning": "This topic is the Home Page for this instance. Choose another Home Page before removing it from the TOC.", + "@topicIsHomePageRemovalWarning": {"description": "Home Page replacement in the Remove TOC Element dialog."}, + "newHomePage": "New Home Page", + "@newHomePage": {"description": "Home Page replacement in the Remove TOC Element dialog."}, + "chooseHomePage": "Choose a Home Page", + "@chooseHomePage": {"description": "Home Page replacement in the Remove TOC Element dialog."}, + "noHomePageReplacement": "Add or link another eligible topic to this instance before removing its Home Page.", + "@noHomePageReplacement": {"description": "Home Page replacement in the Remove TOC Element dialog."}, + "topicIsStartPageRemovalWarning": "This topic is a Home Page for an instance. Assign another Home Page before deleting its source file.", + "@topicIsStartPageRemovalWarning": {"description": "Warning that blocks Safe Delete of a Writerside Home Page."}, "topicUsagesCount": "{count} usages found.", "@topicUsagesCount": { "description": "Sentence reporting the number of Writerside topic usages in the removal dialog.", @@ -977,8 +985,8 @@ "@topicUsagesFound": {"description": "Description above Writerside topic usage groups."}, "topicUsageTocElements": "TOC elements", "@topicUsageTocElements": {"description": "Usage group label for Writerside TOC elements."}, - "topicUsageStartPages": "Start pages", - "@topicUsageStartPages": {"description": "Usage group label for Writerside instance start pages."}, + "topicUsageStartPages": "Home Pages", + "@topicUsageStartPages": {"description": "Usage group label for Writerside instance Home Pages."}, "topicUsageTopicLinks": "Topic links", "@topicUsageTopicLinks": {"description": "Usage group label for links to a Writerside topic."}, "topicUsageIncludes": "Includes", @@ -1399,9 +1407,9 @@ "@errorWritersideTocNodeMissing": {"description": "Detail shown when a selected Writerside TOC entry no longer exists."}, "errorWritersideTocInvalidMove": "A TOC entry cannot be moved into itself or one of its children.", "@errorWritersideTocInvalidMove": {"description": "Detail shown when a Writerside TOC move would create a cycle."}, - "errorWritersideStartTopicDelete": "The start topic {topic} cannot be deleted. Choose another start page first.", + "errorWritersideStartTopicDelete": "The Home Page {topic} cannot be deleted. Choose another Home Page first.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": {"topic": {"type": "String"}} }, "errorWritersideSafeDeleteRequired": "Use Safe Delete for Writerside topic files.", diff --git a/lib/l10n/app_es.arb b/lib/l10n/app_es.arb index 49c9a990..919eb98b 100644 --- a/lib/l10n/app_es.arb +++ b/lib/l10n/app_es.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "El tema de inicio {topic} no se puede eliminar. Elija primero otra página de inicio.", + "errorWritersideStartTopicDelete": "No se puede eliminar la página de inicio {topic}. Elige otra página de inicio primero.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2671,7 +2671,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Este tema se usa como página de inicio de una instancia. Revisa sus usos y asigna otra página de inicio antes de continuar.", + "topicIsHomePageRemovalWarning": "Este tema es la página de inicio de esta instancia. Elige otra página de inicio antes de quitarlo de la tabla de contenido.", + "newHomePage": "Nueva página de inicio", + "chooseHomePage": "Elegir página de inicio", + "noHomePageReplacement": "Añade o vincula otro tema válido a esta instancia antes de quitar su página de inicio.", + "topicIsStartPageRemovalWarning": "Este tema es la página de inicio de una instancia. Asigna otra página de inicio antes de eliminar su archivo de origen.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, diff --git a/lib/l10n/app_et.arb b/lib/l10n/app_et.arb index d9395233..22fbad6f 100644 --- a/lib/l10n/app_et.arb +++ b/lib/l10n/app_et.arb @@ -1586,9 +1586,13 @@ } } }, - "topicIsStartPageRemovalWarning": "Seda teemat kasutatakse eksemplari avalehena. Enne jätkamist vaata kasutuskohad üle ja määra teine avaleht.", + "topicIsHomePageRemovalWarning": "See teema on selle eksemplari avaleht. Vali teine avaleht enne selle eemaldamist sisukorrast.", + "newHomePage": "Uus avaleht", + "chooseHomePage": "Vali avaleht", + "noHomePageReplacement": "Lisa või lingi sellele eksemplarile teine sobiv teema enne selle avalehe eemaldamist.", + "topicIsStartPageRemovalWarning": "See teema on eksemplari avaleht. Määra teine avaleht enne selle lähtefaili kustutamist.", "@topicIsStartPageRemovalWarning": { - "description": "Warning that blocks deletion of a Writerside start-page topic." + "description": "Warning that blocks Safe Delete of a Writerside Home Page." }, "topicUsagesCount": "Leiti {count} kasutuskohta.", "@topicUsagesCount": { @@ -1613,7 +1617,7 @@ }, "topicUsageStartPages": "Avalehed", "@topicUsageStartPages": { - "description": "Usage group label for Writerside instance start pages." + "description": "Usage group label for Writerside instance Home Pages." }, "topicUsageTopicLinks": "Teemalingid", "@topicUsageTopicLinks": { @@ -2215,9 +2219,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Avaleheks määratud teemat „{topic}” ei saa kustutada. Vali esmalt teine avaleht.", + "errorWritersideStartTopicDelete": "Avaleht {topic} ei saa kustutada. Vali esmalt teine avaleht.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" diff --git a/lib/l10n/app_fa.arb b/lib/l10n/app_fa.arb index eec843d9..b880d7cc 100644 --- a/lib/l10n/app_fa.arb +++ b/lib/l10n/app_fa.arb @@ -1887,9 +1887,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "موضوع شروع ⁨{topic}⁩ را نمی‌توان حذف کرد. ابتدا صفحهٔ شروع دیگری را انتخاب کنید.", + "errorWritersideStartTopicDelete": "صفحهٔ اصلی {topic} قابل حذف نیست. ابتدا صفحهٔ اصلی دیگری انتخاب کنید.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2711,7 +2711,11 @@ } } }, - "topicIsStartPageRemovalWarning": "این موضوع به‌عنوان صفحهٔ آغاز یک نمونه استفاده می‌شود. موارد استفاده را مرور و پیش از ادامه صفحهٔ آغاز دیگری تعیین کنید.", + "topicIsHomePageRemovalWarning": "این موضوع صفحهٔ اصلی این نمونه است. پیش از حذف آن از فهرست مطالب، صفحهٔ اصلی دیگری انتخاب کنید.", + "newHomePage": "صفحهٔ اصلی جدید", + "chooseHomePage": "انتخاب صفحهٔ اصلی", + "noHomePageReplacement": "پیش از حذف صفحهٔ اصلی، موضوع مناسب دیگری به این نمونه اضافه یا پیوند دهید.", + "topicIsStartPageRemovalWarning": "این موضوع صفحهٔ اصلی یک نمونه است. پیش از حذف فایل منبع آن، صفحهٔ اصلی دیگری تعیین کنید.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, @@ -2737,7 +2741,7 @@ "@topicUsageTocElements": { "description": "Usage group label for TOC elements." }, - "topicUsageStartPages": "صفحه‌های آغاز", + "topicUsageStartPages": "صفحه‌های اصلی", "@topicUsageStartPages": { "description": "Usage group label for instance start pages." }, diff --git a/lib/l10n/app_fr.arb b/lib/l10n/app_fr.arb index 240e1d93..608257f8 100644 --- a/lib/l10n/app_fr.arb +++ b/lib/l10n/app_fr.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Le sujet de démarrage {topic} ne peut pas être supprimé. Choisissez d’abord une autre page de démarrage.", + "errorWritersideStartTopicDelete": "La page d’accueil {topic} ne peut pas être supprimée. Choisissez d’abord une autre page d’accueil.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2671,7 +2671,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Ce sujet sert de page de démarrage à une instance. Examinez ses utilisations et attribuez une autre page de démarrage avant de continuer.", + "topicIsHomePageRemovalWarning": "Ce sujet est la page d’accueil de cette instance. Choisissez une autre page d’accueil avant de le retirer de la table des matières.", + "newHomePage": "Nouvelle page d’accueil", + "chooseHomePage": "Choisir une page d’accueil", + "noHomePageReplacement": "Ajoutez ou liez un autre sujet admissible à cette instance avant de retirer sa page d’accueil.", + "topicIsStartPageRemovalWarning": "Ce sujet est la page d’accueil d’une instance. Définissez une autre page d’accueil avant de supprimer son fichier source.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, @@ -2696,7 +2700,7 @@ "@topicUsageTocElements": { "description": "Usage group label for TOC elements." }, - "topicUsageStartPages": "Pages de démarrage", + "topicUsageStartPages": "Pages d’accueil", "@topicUsageStartPages": { "description": "Usage group label for instance start pages." }, diff --git a/lib/l10n/app_hi.arb b/lib/l10n/app_hi.arb index e24df421..b99755a9 100644 --- a/lib/l10n/app_hi.arb +++ b/lib/l10n/app_hi.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "आरंभिक विषय {topic} को हटाया नहीं जा सकता। पहले कोई दूसरा आरंभ पेज चुनें।", + "errorWritersideStartTopicDelete": "मुखपृष्ठ {topic} को हटाया नहीं जा सकता। पहले कोई दूसरा मुखपृष्ठ चुनें।", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2671,7 +2671,11 @@ } } }, - "topicIsStartPageRemovalWarning": "यह विषय किसी इंस्टेंस के प्रारंभ पृष्ठ के रूप में उपयोग हो रहा है। इसके उपयोगों की समीक्षा करें और आगे बढ़ने से पहले कोई दूसरा प्रारंभ पृष्ठ निर्धारित करें।", + "topicIsHomePageRemovalWarning": "यह विषय इस इंस्टेंस का मुखपृष्ठ है। इसे विषय-सूची से हटाने से पहले कोई दूसरा मुखपृष्ठ चुनें।", + "newHomePage": "नया मुखपृष्ठ", + "chooseHomePage": "मुखपृष्ठ चुनें", + "noHomePageReplacement": "इसका मुखपृष्ठ हटाने से पहले इस इंस्टेंस में कोई दूसरा योग्य विषय जोड़ें या लिंक करें।", + "topicIsStartPageRemovalWarning": "यह विषय किसी इंस्टेंस का मुखपृष्ठ है। इसकी स्रोत फ़ाइल हटाने से पहले कोई दूसरा मुखपृष्ठ निर्धारित करें।", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, @@ -2696,7 +2700,7 @@ "@topicUsageTocElements": { "description": "Usage group label for TOC elements." }, - "topicUsageStartPages": "प्रारंभ पृष्ठ", + "topicUsageStartPages": "मुखपृष्ठ", "@topicUsageStartPages": { "description": "Usage group label for instance start pages." }, diff --git a/lib/l10n/app_id.arb b/lib/l10n/app_id.arb index 2a8bbdfd..4b25ffd3 100644 --- a/lib/l10n/app_id.arb +++ b/lib/l10n/app_id.arb @@ -1674,9 +1674,13 @@ } } }, - "topicIsStartPageRemovalWarning": "Topik ini digunakan sebagai halaman awal instance. Tinjau penggunaannya dan tetapkan halaman awal lain sebelum melanjutkan.", + "topicIsHomePageRemovalWarning": "Topik ini adalah halaman utama instance ini. Pilih halaman utama lain sebelum menghapusnya dari daftar isi.", + "newHomePage": "Halaman utama baru", + "chooseHomePage": "Pilih halaman utama", + "noHomePageReplacement": "Tambahkan atau tautkan topik lain yang memenuhi syarat ke instance ini sebelum menghapus halaman utamanya.", + "topicIsStartPageRemovalWarning": "Topik ini adalah halaman utama sebuah instance. Tetapkan halaman utama lain sebelum menghapus file sumbernya.", "@topicIsStartPageRemovalWarning": { - "description": "Warning that blocks deletion of a Writerside start-page topic." + "description": "Warning that blocks Safe Delete of a Writerside Home Page." }, "topicUsagesCount": "{count} penggunaan ditemukan.", "@topicUsagesCount": { @@ -1699,9 +1703,9 @@ "@topicUsageTocElements": { "description": "Usage group label for Writerside TOC elements." }, - "topicUsageStartPages": "Halaman awal", + "topicUsageStartPages": "Halaman utama", "@topicUsageStartPages": { - "description": "Usage group label for Writerside instance start pages." + "description": "Usage group label for Writerside instance Home Pages." }, "topicUsageTopicLinks": "Tautan topik", "@topicUsageTopicLinks": { @@ -2510,9 +2514,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Topik awal {topic} tidak dapat dihapus. Pilih halaman awal lain terlebih dahulu.", + "errorWritersideStartTopicDelete": "Halaman utama {topic} tidak dapat dihapus. Pilih halaman utama lain terlebih dahulu.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" diff --git a/lib/l10n/app_it.arb b/lib/l10n/app_it.arb index 793ab8d7..74a442bb 100644 --- a/lib/l10n/app_it.arb +++ b/lib/l10n/app_it.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "L'argomento iniziale {topic} non può essere eliminato. Scegli prima un'altra pagina iniziale.", + "errorWritersideStartTopicDelete": "La pagina iniziale {topic} non può essere eliminata. Scegli prima un’altra pagina iniziale.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2671,7 +2671,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Questo argomento è utilizzato come pagina iniziale di un’istanza. Esaminane gli utilizzi e assegna un’altra pagina iniziale prima di continuare.", + "topicIsHomePageRemovalWarning": "Questo argomento è la pagina iniziale di questa istanza. Scegli un’altra pagina iniziale prima di rimuoverlo dal sommario.", + "newHomePage": "Nuova pagina iniziale", + "chooseHomePage": "Scegli una pagina iniziale", + "noHomePageReplacement": "Aggiungi o collega un altro argomento idoneo a questa istanza prima di rimuovere la sua pagina iniziale.", + "topicIsStartPageRemovalWarning": "Questo argomento è la pagina iniziale di un’istanza. Imposta un’altra pagina iniziale prima di eliminare il suo file sorgente.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, diff --git a/lib/l10n/app_ja.arb b/lib/l10n/app_ja.arb index 1e179041..b923ea74 100644 --- a/lib/l10n/app_ja.arb +++ b/lib/l10n/app_ja.arb @@ -1674,9 +1674,13 @@ } } }, - "topicIsStartPageRemovalWarning": "このトピックはインスタンスの開始ページとして使用されています。使用箇所を確認し、続行する前に別の開始ページを割り当ててください。", + "topicIsHomePageRemovalWarning": "このトピックはこのインスタンスのホームページです。目次から削除する前に、別のホームページを選択してください。", + "newHomePage": "新しいホームページ", + "chooseHomePage": "ホームページを選択", + "noHomePageReplacement": "ホームページを削除する前に、このインスタンスに別の適切なトピックを追加またはリンクしてください。", + "topicIsStartPageRemovalWarning": "このトピックはインスタンスのホームページです。ソースファイルを削除する前に、別のホームページを設定してください。", "@topicIsStartPageRemovalWarning": { - "description": "Warning that blocks deletion of a Writerside start-page topic." + "description": "Warning that blocks Safe Delete of a Writerside Home Page." }, "topicUsagesCount": "{count} 件の使用箇所が見つかりました。", "@topicUsagesCount": { @@ -1699,9 +1703,9 @@ "@topicUsageTocElements": { "description": "Usage group label for Writerside TOC elements." }, - "topicUsageStartPages": "開始ページ", + "topicUsageStartPages": "ホームページ", "@topicUsageStartPages": { - "description": "Usage group label for Writerside instance start pages." + "description": "Usage group label for Writerside instance Home Pages." }, "topicUsageTopicLinks": "トピックリンク", "@topicUsageTopicLinks": { @@ -2510,9 +2514,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "開始トピック {topic} は削除できません。先に別の開始ページを選択してください。", + "errorWritersideStartTopicDelete": "ホームページ {topic} は削除できません。先に別のホームページを選択してください。", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" diff --git a/lib/l10n/app_ko.arb b/lib/l10n/app_ko.arb index 654962d3..49ab8b8c 100644 --- a/lib/l10n/app_ko.arb +++ b/lib/l10n/app_ko.arb @@ -1674,9 +1674,13 @@ } } }, - "topicIsStartPageRemovalWarning": "이 토픽은 인스턴스 시작 페이지로 사용됩니다. 계속하기 전에 사용처를 검토하고 다른 시작 페이지를 지정하세요.", + "topicIsHomePageRemovalWarning": "이 토픽은 이 인스턴스의 홈 페이지입니다. 목차에서 제거하기 전에 다른 홈 페이지를 선택하세요.", + "newHomePage": "새 홈 페이지", + "chooseHomePage": "홈 페이지 선택", + "noHomePageReplacement": "홈 페이지를 제거하기 전에 이 인스턴스에 다른 적합한 토픽을 추가하거나 연결하세요.", + "topicIsStartPageRemovalWarning": "이 토픽은 인스턴스의 홈 페이지입니다. 소스 파일을 삭제하기 전에 다른 홈 페이지를 지정하세요.", "@topicIsStartPageRemovalWarning": { - "description": "Warning that blocks deletion of a Writerside start-page topic." + "description": "Warning that blocks Safe Delete of a Writerside Home Page." }, "topicUsagesCount": "사용처 {count}개를 찾았습니다.", "@topicUsagesCount": { @@ -1699,9 +1703,9 @@ "@topicUsageTocElements": { "description": "Usage group label for Writerside TOC elements." }, - "topicUsageStartPages": "시작 페이지", + "topicUsageStartPages": "홈 페이지", "@topicUsageStartPages": { - "description": "Usage group label for Writerside instance start pages." + "description": "Usage group label for Writerside instance Home Pages." }, "topicUsageTopicLinks": "토픽 링크", "@topicUsageTopicLinks": { @@ -2510,9 +2514,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "시작 토픽 {topic}을(를) 삭제할 수 없습니다. 먼저 다른 시작 페이지를 선택하세요.", + "errorWritersideStartTopicDelete": "홈 페이지 {topic}을(를) 삭제할 수 없습니다. 먼저 다른 홈 페이지를 선택하세요.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" diff --git a/lib/l10n/app_nb.arb b/lib/l10n/app_nb.arb index 2f5ec1af..218d41f3 100644 --- a/lib/l10n/app_nb.arb +++ b/lib/l10n/app_nb.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Startemnet {topic} kan ikke slettes. Velg en annen startside først.", + "errorWritersideStartTopicDelete": "Startsiden {topic} kan ikke slettes. Velg en annen startside først.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2671,7 +2671,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Dette emnet brukes som startside for en instans. Se gjennom bruken, og angi en annen startside før du fortsetter.", + "topicIsHomePageRemovalWarning": "Dette emnet er startsiden for denne instansen. Velg en annen startside før du fjerner det fra innholdsfortegnelsen.", + "newHomePage": "Ny startside", + "chooseHomePage": "Velg en startside", + "noHomePageReplacement": "Legg til eller koble et annet egnet emne til denne instansen før du fjerner startsiden.", + "topicIsStartPageRemovalWarning": "Dette emnet er startsiden for en instans. Angi en annen startside før du sletter kildefilen.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, diff --git a/lib/l10n/app_nl.arb b/lib/l10n/app_nl.arb index 84dbf3b5..308d7c3b 100644 --- a/lib/l10n/app_nl.arb +++ b/lib/l10n/app_nl.arb @@ -1674,9 +1674,13 @@ } } }, - "topicIsStartPageRemovalWarning": "Dit onderwerp wordt gebruikt als startpagina van een instantie. Controleer het gebruik ervan en wijs een andere startpagina toe voordat u verdergaat.", + "topicIsHomePageRemovalWarning": "Dit onderwerp is de startpagina van deze instantie. Kies een andere startpagina voordat u het uit de inhoudsopgave verwijdert.", + "newHomePage": "Nieuwe startpagina", + "chooseHomePage": "Startpagina kiezen", + "noHomePageReplacement": "Voeg een ander geschikt onderwerp toe aan deze instantie of koppel het voordat u de startpagina verwijdert.", + "topicIsStartPageRemovalWarning": "Dit onderwerp is de startpagina van een instantie. Stel een andere startpagina in voordat u het bronbestand verwijdert.", "@topicIsStartPageRemovalWarning": { - "description": "Warning that blocks deletion of a Writerside start-page topic." + "description": "Warning that blocks Safe Delete of a Writerside Home Page." }, "topicUsagesCount": "{count} gebruikslocaties gevonden.", "@topicUsagesCount": { @@ -1699,9 +1703,9 @@ "@topicUsageTocElements": { "description": "Usage group label for Writerside TOC elements." }, - "topicUsageStartPages": "Startpagina's", + "topicUsageStartPages": "Startpagina’s", "@topicUsageStartPages": { - "description": "Usage group label for Writerside instance start pages." + "description": "Usage group label for Writerside instance Home Pages." }, "topicUsageTopicLinks": "Onderwerplinks", "@topicUsageTopicLinks": { @@ -2510,9 +2514,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Het startonderwerp {topic} kan niet worden verwijderd. Kies eerst een andere startpagina.", + "errorWritersideStartTopicDelete": "De startpagina {topic} kan niet worden verwijderd. Kies eerst een andere startpagina.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" diff --git a/lib/l10n/app_pl.arb b/lib/l10n/app_pl.arb index dd0cab21..f65627db 100644 --- a/lib/l10n/app_pl.arb +++ b/lib/l10n/app_pl.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Nie można usunąć tematu początkowego {topic}. Najpierw wybierz inną stronę początkową.", + "errorWritersideStartTopicDelete": "Nie można usunąć strony głównej {topic}. Najpierw wybierz inną stronę główną.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2697,7 +2697,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Ten temat jest używany jako strona początkowa instancji. Przejrzyj jego użycia i przypisz inną stronę początkową przed kontynuowaniem.", + "topicIsHomePageRemovalWarning": "Ten temat jest stroną główną tej instancji. Wybierz inną stronę główną przed usunięciem go ze spisu treści.", + "newHomePage": "Nowa strona główna", + "chooseHomePage": "Wybierz stronę główną", + "noHomePageReplacement": "Dodaj lub połącz inny odpowiedni temat z tą instancją przed usunięciem jej strony głównej.", + "topicIsStartPageRemovalWarning": "Ten temat jest stroną główną instancji. Ustaw inną stronę główną przed usunięciem jego pliku źródłowego.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, @@ -2722,7 +2726,7 @@ "@topicUsageTocElements": { "description": "Usage group label for TOC elements." }, - "topicUsageStartPages": "Strony początkowe", + "topicUsageStartPages": "Strony główne", "@topicUsageStartPages": { "description": "Usage group label for instance start pages." }, diff --git a/lib/l10n/app_pt.arb b/lib/l10n/app_pt.arb index 3af842ac..448b4cee 100644 --- a/lib/l10n/app_pt.arb +++ b/lib/l10n/app_pt.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "O tópico inicial {topic} não pode ser eliminado. Escolha primeiro outra página inicial.", + "errorWritersideStartTopicDelete": "Não é possível eliminar a página inicial {topic}. Escolha primeiro outra página inicial.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2671,7 +2671,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Este tópico é usado como página inicial de uma instância. Reveja os usos dele e atribua outra página inicial antes de continuar.", + "topicIsHomePageRemovalWarning": "Este tópico é a página inicial desta instância. Escolha outra página inicial antes de o remover do índice.", + "newHomePage": "Nova página inicial", + "chooseHomePage": "Escolher página inicial", + "noHomePageReplacement": "Adicione ou associe outro tópico elegível a esta instância antes de remover a sua página inicial.", + "topicIsStartPageRemovalWarning": "Este tópico é a página inicial de uma instância. Defina outra página inicial antes de eliminar o seu ficheiro de origem.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, diff --git a/lib/l10n/app_pt_BR.arb b/lib/l10n/app_pt_BR.arb index e87cb4a6..5f6cdadf 100644 --- a/lib/l10n/app_pt_BR.arb +++ b/lib/l10n/app_pt_BR.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "O tópico inicial {topic} não pode ser excluído. Escolha primeiro outra página inicial.", + "errorWritersideStartTopicDelete": "Não é possível excluir a página inicial {topic}. Escolha outra página inicial primeiro.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2671,7 +2671,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Este tópico é usado como página inicial de uma instância. Revise os usos dele e atribua outra página inicial antes de continuar.", + "topicIsHomePageRemovalWarning": "Este tópico é a página inicial desta instância. Escolha outra página inicial antes de removê-lo do sumário.", + "newHomePage": "Nova página inicial", + "chooseHomePage": "Escolher página inicial", + "noHomePageReplacement": "Adicione ou vincule outro tópico elegível a esta instância antes de remover sua página inicial.", + "topicIsStartPageRemovalWarning": "Este tópico é a página inicial de uma instância. Defina outra página inicial antes de excluir seu arquivo de origem.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, diff --git a/lib/l10n/app_ru.arb b/lib/l10n/app_ru.arb index bdbc6b44..e2553671 100644 --- a/lib/l10n/app_ru.arb +++ b/lib/l10n/app_ru.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Стартовую тему {topic} нельзя удалить. Сначала выберите другую стартовую страницу.", + "errorWritersideStartTopicDelete": "Домашнюю страницу {topic} нельзя удалить. Сначала выберите другую домашнюю страницу.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2697,7 +2697,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Эта тема используется как стартовая страница экземпляра. Просмотрите её использования и назначьте другую стартовую страницу, прежде чем продолжить.", + "topicIsHomePageRemovalWarning": "Эта тема является домашней страницей этого экземпляра. Выберите другую домашнюю страницу перед её удалением из оглавления.", + "newHomePage": "Новая домашняя страница", + "chooseHomePage": "Выбрать домашнюю страницу", + "noHomePageReplacement": "Добавьте или привяжите к этому экземпляру другую подходящую тему перед удалением его домашней страницы.", + "topicIsStartPageRemovalWarning": "Эта тема является домашней страницей экземпляра. Назначьте другую домашнюю страницу перед удалением её исходного файла.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, @@ -2722,7 +2726,7 @@ "@topicUsageTocElements": { "description": "Usage group label for TOC elements." }, - "topicUsageStartPages": "Стартовые страницы", + "topicUsageStartPages": "Домашние страницы", "@topicUsageStartPages": { "description": "Usage group label for instance start pages." }, diff --git a/lib/l10n/app_tr.arb b/lib/l10n/app_tr.arb index 4785e077..8c2ca4d1 100644 --- a/lib/l10n/app_tr.arb +++ b/lib/l10n/app_tr.arb @@ -1674,9 +1674,13 @@ } } }, - "topicIsStartPageRemovalWarning": "Bu konu bir Writerside örneğinin başlangıç sayfası olarak kullanılıyor. Devam etmeden önce kullanımlarını inceleyin ve başka bir başlangıç sayfası atayın.", + "topicIsHomePageRemovalWarning": "Bu konu bu örneğin ana sayfasıdır. İçindekilerden kaldırmadan önce başka bir ana sayfa seçin.", + "newHomePage": "Yeni ana sayfa", + "chooseHomePage": "Ana sayfa seçin", + "noHomePageReplacement": "Ana sayfasını kaldırmadan önce bu örneğe başka bir uygun konu ekleyin veya bağlayın.", + "topicIsStartPageRemovalWarning": "Bu konu bir örneğin ana sayfasıdır. Kaynak dosyasını silmeden önce başka bir ana sayfa atayın.", "@topicIsStartPageRemovalWarning": { - "description": "Warning that blocks deletion of a Writerside start-page topic." + "description": "Warning that blocks Safe Delete of a Writerside Home Page." }, "topicUsagesCount": "{count} kullanım bulundu.", "@topicUsagesCount": { @@ -1699,9 +1703,9 @@ "@topicUsageTocElements": { "description": "Usage group label for Writerside TOC elements." }, - "topicUsageStartPages": "Başlangıç sayfaları", + "topicUsageStartPages": "Ana sayfalar", "@topicUsageStartPages": { - "description": "Usage group label for Writerside instance start pages." + "description": "Usage group label for Writerside instance Home Pages." }, "topicUsageTopicLinks": "Konu bağlantıları", "@topicUsageTopicLinks": { @@ -2510,9 +2514,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "{topic} başlangıç konusu silinemez. Önce başka bir başlangıç sayfası seçin.", + "errorWritersideStartTopicDelete": "Ana sayfa {topic} silinemez. Önce başka bir ana sayfa seçin.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" diff --git a/lib/l10n/app_uk.arb b/lib/l10n/app_uk.arb index ddd4afbe..a3f6a69d 100644 --- a/lib/l10n/app_uk.arb +++ b/lib/l10n/app_uk.arb @@ -1879,9 +1879,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Початкову тему {topic} не можна видалити. Спочатку виберіть іншу початкову сторінку.", + "errorWritersideStartTopicDelete": "Домашню сторінку {topic} не можна видалити. Спочатку виберіть іншу домашню сторінку.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" @@ -2697,7 +2697,11 @@ } } }, - "topicIsStartPageRemovalWarning": "Ця тема використовується як початкова сторінка екземпляра. Перегляньте її використання та призначте іншу початкову сторінку, перш ніж продовжити.", + "topicIsHomePageRemovalWarning": "Ця тема є домашньою сторінкою цього екземпляра. Виберіть іншу домашню сторінку, перш ніж видалити її зі змісту.", + "newHomePage": "Нова домашня сторінка", + "chooseHomePage": "Вибрати домашню сторінку", + "noHomePageReplacement": "Додайте або прив’яжіть іншу придатну тему до цього екземпляра перед видаленням його домашньої сторінки.", + "topicIsStartPageRemovalWarning": "Ця тема є домашньою сторінкою екземпляра. Призначте іншу домашню сторінку перед видаленням її вихідного файлу.", "@topicIsStartPageRemovalWarning": { "description": "Warning shown when the topic is used as an instance start page." }, @@ -2722,7 +2726,7 @@ "@topicUsageTocElements": { "description": "Usage group label for TOC elements." }, - "topicUsageStartPages": "Початкові сторінки", + "topicUsageStartPages": "Домашні сторінки", "@topicUsageStartPages": { "description": "Usage group label for instance start pages." }, diff --git a/lib/l10n/app_vi.arb b/lib/l10n/app_vi.arb index eb65a12e..27e538ac 100644 --- a/lib/l10n/app_vi.arb +++ b/lib/l10n/app_vi.arb @@ -1674,9 +1674,13 @@ } } }, - "topicIsStartPageRemovalWarning": "Chủ đề này đang được dùng làm trang bắt đầu của một thực thể. Hãy xem lại cách sử dụng và chỉ định trang bắt đầu khác trước khi tiếp tục.", + "topicIsHomePageRemovalWarning": "Chủ đề này là trang chủ của thực thể này. Chọn trang chủ khác trước khi xóa chủ đề khỏi mục lục.", + "newHomePage": "Trang chủ mới", + "chooseHomePage": "Chọn trang chủ", + "noHomePageReplacement": "Thêm hoặc liên kết một chủ đề hợp lệ khác vào thực thể này trước khi xóa trang chủ của nó.", + "topicIsStartPageRemovalWarning": "Chủ đề này là trang chủ của một thực thể. Chỉ định trang chủ khác trước khi xóa tệp nguồn của chủ đề.", "@topicIsStartPageRemovalWarning": { - "description": "Warning that blocks deletion of a Writerside start-page topic." + "description": "Warning that blocks Safe Delete of a Writerside Home Page." }, "topicUsagesCount": "Tìm thấy {count} lượt sử dụng.", "@topicUsagesCount": { @@ -1699,9 +1703,9 @@ "@topicUsageTocElements": { "description": "Usage group label for Writerside TOC elements." }, - "topicUsageStartPages": "Trang bắt đầu", + "topicUsageStartPages": "Các trang chủ", "@topicUsageStartPages": { - "description": "Usage group label for Writerside instance start pages." + "description": "Usage group label for Writerside instance Home Pages." }, "topicUsageTopicLinks": "Liên kết chủ đề", "@topicUsageTopicLinks": { @@ -2510,9 +2514,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "Không thể xóa chủ đề bắt đầu {topic}. Hãy chọn một trang bắt đầu khác trước.", + "errorWritersideStartTopicDelete": "Không thể xóa trang chủ {topic}. Hãy chọn trang chủ khác trước.", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" diff --git a/lib/l10n/app_zh.arb b/lib/l10n/app_zh.arb index 994d1ca2..3210e922 100644 --- a/lib/l10n/app_zh.arb +++ b/lib/l10n/app_zh.arb @@ -1674,9 +1674,13 @@ } } }, - "topicIsStartPageRemovalWarning": "此主题被用作实例的起始页。请查看其使用情况,并在继续前指定其他起始页。", + "topicIsHomePageRemovalWarning": "此主题是此实例的主页。从目录中移除它之前,请选择另一个主页。", + "newHomePage": "新主页", + "chooseHomePage": "选择主页", + "noHomePageReplacement": "移除主页之前,请向此实例添加或链接另一个符合条件的主题。", + "topicIsStartPageRemovalWarning": "此主题是某个实例的主页。删除其源文件之前,请指定另一个主页。", "@topicIsStartPageRemovalWarning": { - "description": "Warning that blocks deletion of a Writerside start-page topic." + "description": "Warning that blocks Safe Delete of a Writerside Home Page." }, "topicUsagesCount": "找到 {count} 处使用。", "@topicUsagesCount": { @@ -1699,9 +1703,9 @@ "@topicUsageTocElements": { "description": "Usage group label for Writerside TOC elements." }, - "topicUsageStartPages": "起始页", + "topicUsageStartPages": "主页", "@topicUsageStartPages": { - "description": "Usage group label for Writerside instance start pages." + "description": "Usage group label for Writerside instance Home Pages." }, "topicUsageTopicLinks": "主题链接", "@topicUsageTopicLinks": { @@ -2510,9 +2514,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "无法删除起始主题 {topic}。请先选择其他起始页。", + "errorWritersideStartTopicDelete": "无法删除主页 {topic}。请先选择另一个主页。", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" diff --git a/lib/l10n/app_zh_CN.arb b/lib/l10n/app_zh_CN.arb index fd68bac9..d6863563 100644 --- a/lib/l10n/app_zh_CN.arb +++ b/lib/l10n/app_zh_CN.arb @@ -1674,9 +1674,13 @@ } } }, - "topicIsStartPageRemovalWarning": "此主题被用作实例的起始页。请查看其使用情况,并在继续前指定其他起始页。", + "topicIsHomePageRemovalWarning": "此主题是此实例的主页。从目录中移除它之前,请选择另一个主页。", + "newHomePage": "新主页", + "chooseHomePage": "选择主页", + "noHomePageReplacement": "移除主页之前,请向此实例添加或链接另一个符合条件的主题。", + "topicIsStartPageRemovalWarning": "此主题是某个实例的主页。删除其源文件之前,请指定另一个主页。", "@topicIsStartPageRemovalWarning": { - "description": "Warning that blocks deletion of a Writerside start-page topic." + "description": "Warning that blocks Safe Delete of a Writerside Home Page." }, "topicUsagesCount": "找到 {count} 处使用。", "@topicUsagesCount": { @@ -1699,9 +1703,9 @@ "@topicUsageTocElements": { "description": "Usage group label for Writerside TOC elements." }, - "topicUsageStartPages": "起始页", + "topicUsageStartPages": "主页", "@topicUsageStartPages": { - "description": "Usage group label for Writerside instance start pages." + "description": "Usage group label for Writerside instance Home Pages." }, "topicUsageTopicLinks": "主题链接", "@topicUsageTopicLinks": { @@ -2510,9 +2514,9 @@ "@errorWritersideTocInvalidMove": { "description": "Detail shown when a Writerside TOC move would create a cycle." }, - "errorWritersideStartTopicDelete": "无法删除起始主题 {topic}。请先选择其他起始页。", + "errorWritersideStartTopicDelete": "无法删除主页 {topic}。请先选择另一个主页。", "@errorWritersideStartTopicDelete": { - "description": "Detail shown when attempting to delete the start topic of a Writerside instance.", + "description": "Detail shown when attempting to delete the Home Page of a Writerside instance.", "placeholders": { "topic": { "type": "String" diff --git a/lib/l10n/generated/app_localizations.dart b/lib/l10n/generated/app_localizations.dart index e1e8e06b..5b1d05a6 100644 --- a/lib/l10n/generated/app_localizations.dart +++ b/lib/l10n/generated/app_localizations.dart @@ -2875,10 +2875,34 @@ abstract class AppLocalizations { /// **'{count, plural, =1{1 child topic will move up one level.} other{{count} child topics will move up one level.}}'** String childTopicsPromoted(int count); - /// Warning that blocks deletion of a Writerside start-page topic. + /// Home Page replacement in the Remove TOC Element dialog. /// /// In en, this message translates to: - /// **'This topic is used as an instance start page. Review its usages and assign another start page before continuing.'** + /// **'This topic is the Home Page for this instance. Choose another Home Page before removing it from the TOC.'** + String get topicIsHomePageRemovalWarning; + + /// Home Page replacement in the Remove TOC Element dialog. + /// + /// In en, this message translates to: + /// **'New Home Page'** + String get newHomePage; + + /// Home Page replacement in the Remove TOC Element dialog. + /// + /// In en, this message translates to: + /// **'Choose a Home Page'** + String get chooseHomePage; + + /// Home Page replacement in the Remove TOC Element dialog. + /// + /// In en, this message translates to: + /// **'Add or link another eligible topic to this instance before removing its Home Page.'** + String get noHomePageReplacement; + + /// Warning that blocks Safe Delete of a Writerside Home Page. + /// + /// In en, this message translates to: + /// **'This topic is a Home Page for an instance. Assign another Home Page before deleting its source file.'** String get topicIsStartPageRemovalWarning; /// Sentence reporting the number of Writerside topic usages in the removal dialog. @@ -2905,10 +2929,10 @@ abstract class AppLocalizations { /// **'TOC elements'** String get topicUsageTocElements; - /// Usage group label for Writerside instance start pages. + /// Usage group label for Writerside instance Home Pages. /// /// In en, this message translates to: - /// **'Start pages'** + /// **'Home Pages'** String get topicUsageStartPages; /// Usage group label for links to a Writerside topic. @@ -3859,10 +3883,10 @@ abstract class AppLocalizations { /// **'A TOC entry cannot be moved into itself or one of its children.'** String get errorWritersideTocInvalidMove; - /// Detail shown when attempting to delete the start topic of a Writerside instance. + /// Detail shown when attempting to delete the Home Page of a Writerside instance. /// /// In en, this message translates to: - /// **'The start topic {topic} cannot be deleted. Choose another start page first.'** + /// **'The Home Page {topic} cannot be deleted. Choose another Home Page first.'** String errorWritersideStartTopicDelete(String topic); /// Error shown when generic file deletion is attempted for a Writerside topic. diff --git a/lib/l10n/generated/app_localizations_ar.dart b/lib/l10n/generated/app_localizations_ar.dart index 76d72800..6a9cc5f3 100644 --- a/lib/l10n/generated/app_localizations_ar.dart +++ b/lib/l10n/generated/app_localizations_ar.dart @@ -1537,9 +1537,23 @@ class AppLocalizationsAr extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'هذا الموضوع هو الصفحة الرئيسية لهذا المثيل. اختر صفحة رئيسية أخرى قبل إزالته من جدول المحتويات.'; + + @override + String get newHomePage => 'الصفحة الرئيسية الجديدة'; + + @override + String get chooseHomePage => 'اختر صفحة رئيسية'; + + @override + String get noHomePageReplacement => + 'أضف موضوعًا مؤهلًا آخر إلى هذا المثيل أو اربطه به قبل إزالة صفحته الرئيسية.'; + @override String get topicIsStartPageRemovalWarning => - 'يُستخدم هذا الموضوع كصفحة بدء لمثيل. راجع استخداماته وعيّن صفحة بدء أخرى قبل المتابعة.'; + 'هذا الموضوع هو الصفحة الرئيسية لمثيل. عيّن صفحة رئيسية أخرى قبل حذف ملفه المصدر.'; @override String topicUsagesCount(int count) { @@ -1557,7 +1571,7 @@ class AppLocalizationsAr extends AppLocalizations { String get topicUsageTocElements => 'عناصر جدول المحتويات'; @override - String get topicUsageStartPages => 'صفحات البدء'; + String get topicUsageStartPages => 'الصفحات الرئيسية'; @override String get topicUsageTopicLinks => 'روابط الموضوعات'; @@ -2191,7 +2205,7 @@ class AppLocalizationsAr extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'لا يمكن حذف موضوع البدء ⁨$topic⁩. اختر صفحة بدء أخرى أولًا.'; + return 'لا يمكن حذف الصفحة الرئيسية $topic. اختر صفحة رئيسية أخرى أولًا.'; } @override diff --git a/lib/l10n/generated/app_localizations_de.dart b/lib/l10n/generated/app_localizations_de.dart index 3cc2529a..81c2afce 100644 --- a/lib/l10n/generated/app_localizations_de.dart +++ b/lib/l10n/generated/app_localizations_de.dart @@ -1552,9 +1552,23 @@ class AppLocalizationsDe extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Dieses Thema ist die Startseite dieser Instanz. Wählen Sie eine andere Startseite, bevor Sie es aus dem Inhaltsverzeichnis entfernen.'; + + @override + String get newHomePage => 'Neue Startseite'; + + @override + String get chooseHomePage => 'Startseite auswählen'; + + @override + String get noHomePageReplacement => + 'Fügen Sie dieser Instanz ein anderes geeignetes Thema hinzu oder verknüpfen Sie es, bevor Sie ihre Startseite entfernen.'; + @override String get topicIsStartPageRemovalWarning => - 'Dieses Thema wird als Startseite einer Instanz verwendet. Prüfen Sie seine Verwendungen und weisen Sie eine andere Startseite zu, bevor Sie fortfahren.'; + 'Dieses Thema ist die Startseite einer Instanz. Legen Sie eine andere Startseite fest, bevor Sie seine Quelldatei löschen.'; @override String topicUsagesCount(int count) { @@ -2198,7 +2212,7 @@ class AppLocalizationsDe extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Das Startthema $topic kann nicht gelöscht werden. Wählen Sie zuerst eine andere Startseite aus.'; + return 'Die Startseite $topic kann nicht gelöscht werden. Wählen Sie zuerst eine andere Startseite.'; } @override diff --git a/lib/l10n/generated/app_localizations_en.dart b/lib/l10n/generated/app_localizations_en.dart index 8167b45e..ae6f199d 100644 --- a/lib/l10n/generated/app_localizations_en.dart +++ b/lib/l10n/generated/app_localizations_en.dart @@ -1528,9 +1528,23 @@ class AppLocalizationsEn extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'This topic is the Home Page for this instance. Choose another Home Page before removing it from the TOC.'; + + @override + String get newHomePage => 'New Home Page'; + + @override + String get chooseHomePage => 'Choose a Home Page'; + + @override + String get noHomePageReplacement => + 'Add or link another eligible topic to this instance before removing its Home Page.'; + @override String get topicIsStartPageRemovalWarning => - 'This topic is used as an instance start page. Review its usages and assign another start page before continuing.'; + 'This topic is a Home Page for an instance. Assign another Home Page before deleting its source file.'; @override String topicUsagesCount(int count) { @@ -1549,7 +1563,7 @@ class AppLocalizationsEn extends AppLocalizations { String get topicUsageTocElements => 'TOC elements'; @override - String get topicUsageStartPages => 'Start pages'; + String get topicUsageStartPages => 'Home Pages'; @override String get topicUsageTopicLinks => 'Topic links'; @@ -2174,7 +2188,7 @@ class AppLocalizationsEn extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'The start topic $topic cannot be deleted. Choose another start page first.'; + return 'The Home Page $topic cannot be deleted. Choose another Home Page first.'; } @override diff --git a/lib/l10n/generated/app_localizations_es.dart b/lib/l10n/generated/app_localizations_es.dart index 1ac695e1..744490fa 100644 --- a/lib/l10n/generated/app_localizations_es.dart +++ b/lib/l10n/generated/app_localizations_es.dart @@ -1549,9 +1549,23 @@ class AppLocalizationsEs extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Este tema es la página de inicio de esta instancia. Elige otra página de inicio antes de quitarlo de la tabla de contenido.'; + + @override + String get newHomePage => 'Nueva página de inicio'; + + @override + String get chooseHomePage => 'Elegir página de inicio'; + + @override + String get noHomePageReplacement => + 'Añade o vincula otro tema válido a esta instancia antes de quitar su página de inicio.'; + @override String get topicIsStartPageRemovalWarning => - 'Este tema se usa como página de inicio de una instancia. Revisa sus usos y asigna otra página de inicio antes de continuar.'; + 'Este tema es la página de inicio de una instancia. Asigna otra página de inicio antes de eliminar su archivo de origen.'; @override String topicUsagesCount(int count) { @@ -2196,7 +2210,7 @@ class AppLocalizationsEs extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'El tema de inicio $topic no se puede eliminar. Elija primero otra página de inicio.'; + return 'No se puede eliminar la página de inicio $topic. Elige otra página de inicio primero.'; } @override diff --git a/lib/l10n/generated/app_localizations_et.dart b/lib/l10n/generated/app_localizations_et.dart index 5d6113d7..1aa28afd 100644 --- a/lib/l10n/generated/app_localizations_et.dart +++ b/lib/l10n/generated/app_localizations_et.dart @@ -1532,9 +1532,23 @@ class AppLocalizationsEt extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'See teema on selle eksemplari avaleht. Vali teine avaleht enne selle eemaldamist sisukorrast.'; + + @override + String get newHomePage => 'Uus avaleht'; + + @override + String get chooseHomePage => 'Vali avaleht'; + + @override + String get noHomePageReplacement => + 'Lisa või lingi sellele eksemplarile teine sobiv teema enne selle avalehe eemaldamist.'; + @override String get topicIsStartPageRemovalWarning => - 'Seda teemat kasutatakse eksemplari avalehena. Enne jätkamist vaata kasutuskohad üle ja määra teine avaleht.'; + 'See teema on eksemplari avaleht. Määra teine avaleht enne selle lähtefaili kustutamist.'; @override String topicUsagesCount(int count) { @@ -2171,7 +2185,7 @@ class AppLocalizationsEt extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Avaleheks määratud teemat „$topic” ei saa kustutada. Vali esmalt teine avaleht.'; + return 'Avaleht $topic ei saa kustutada. Vali esmalt teine avaleht.'; } @override diff --git a/lib/l10n/generated/app_localizations_fa.dart b/lib/l10n/generated/app_localizations_fa.dart index 72e4348a..5255ea37 100644 --- a/lib/l10n/generated/app_localizations_fa.dart +++ b/lib/l10n/generated/app_localizations_fa.dart @@ -1560,9 +1560,23 @@ class AppLocalizationsFa extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'این موضوع صفحهٔ اصلی این نمونه است. پیش از حذف آن از فهرست مطالب، صفحهٔ اصلی دیگری انتخاب کنید.'; + + @override + String get newHomePage => 'صفحهٔ اصلی جدید'; + + @override + String get chooseHomePage => 'انتخاب صفحهٔ اصلی'; + + @override + String get noHomePageReplacement => + 'پیش از حذف صفحهٔ اصلی، موضوع مناسب دیگری به این نمونه اضافه یا پیوند دهید.'; + @override String get topicIsStartPageRemovalWarning => - 'این موضوع به‌عنوان صفحهٔ آغاز یک نمونه استفاده می‌شود. موارد استفاده را مرور و پیش از ادامه صفحهٔ آغاز دیگری تعیین کنید.'; + 'این موضوع صفحهٔ اصلی یک نمونه است. پیش از حذف فایل منبع آن، صفحهٔ اصلی دیگری تعیین کنید.'; @override String topicUsagesCount(int count) { @@ -1584,7 +1598,7 @@ class AppLocalizationsFa extends AppLocalizations { String get topicUsageTocElements => 'عناصر فهرست مطالب'; @override - String get topicUsageStartPages => 'صفحه‌های آغاز'; + String get topicUsageStartPages => 'صفحه‌های اصلی'; @override String get topicUsageTopicLinks => 'پیوندهای موضوع'; @@ -2212,7 +2226,7 @@ class AppLocalizationsFa extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'موضوع شروع ⁨$topic⁩ را نمی‌توان حذف کرد. ابتدا صفحهٔ شروع دیگری را انتخاب کنید.'; + return 'صفحهٔ اصلی $topic قابل حذف نیست. ابتدا صفحهٔ اصلی دیگری انتخاب کنید.'; } @override diff --git a/lib/l10n/generated/app_localizations_fr.dart b/lib/l10n/generated/app_localizations_fr.dart index f89665b7..ad479e4f 100644 --- a/lib/l10n/generated/app_localizations_fr.dart +++ b/lib/l10n/generated/app_localizations_fr.dart @@ -1553,9 +1553,23 @@ class AppLocalizationsFr extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Ce sujet est la page d’accueil de cette instance. Choisissez une autre page d’accueil avant de le retirer de la table des matières.'; + + @override + String get newHomePage => 'Nouvelle page d’accueil'; + + @override + String get chooseHomePage => 'Choisir une page d’accueil'; + + @override + String get noHomePageReplacement => + 'Ajoutez ou liez un autre sujet admissible à cette instance avant de retirer sa page d’accueil.'; + @override String get topicIsStartPageRemovalWarning => - 'Ce sujet sert de page de démarrage à une instance. Examinez ses utilisations et attribuez une autre page de démarrage avant de continuer.'; + 'Ce sujet est la page d’accueil d’une instance. Définissez une autre page d’accueil avant de supprimer son fichier source.'; @override String topicUsagesCount(int count) { @@ -1574,7 +1588,7 @@ class AppLocalizationsFr extends AppLocalizations { String get topicUsageTocElements => 'Éléments de la table des matières'; @override - String get topicUsageStartPages => 'Pages de démarrage'; + String get topicUsageStartPages => 'Pages d’accueil'; @override String get topicUsageTopicLinks => 'Liens vers le sujet'; @@ -2202,7 +2216,7 @@ class AppLocalizationsFr extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Le sujet de démarrage $topic ne peut pas être supprimé. Choisissez d’abord une autre page de démarrage.'; + return 'La page d’accueil $topic ne peut pas être supprimée. Choisissez d’abord une autre page d’accueil.'; } @override diff --git a/lib/l10n/generated/app_localizations_hi.dart b/lib/l10n/generated/app_localizations_hi.dart index 95bf4155..864bd746 100644 --- a/lib/l10n/generated/app_localizations_hi.dart +++ b/lib/l10n/generated/app_localizations_hi.dart @@ -1528,9 +1528,23 @@ class AppLocalizationsHi extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'यह विषय इस इंस्टेंस का मुखपृष्ठ है। इसे विषय-सूची से हटाने से पहले कोई दूसरा मुखपृष्ठ चुनें।'; + + @override + String get newHomePage => 'नया मुखपृष्ठ'; + + @override + String get chooseHomePage => 'मुखपृष्ठ चुनें'; + + @override + String get noHomePageReplacement => + 'इसका मुखपृष्ठ हटाने से पहले इस इंस्टेंस में कोई दूसरा योग्य विषय जोड़ें या लिंक करें।'; + @override String get topicIsStartPageRemovalWarning => - 'यह विषय किसी इंस्टेंस के प्रारंभ पृष्ठ के रूप में उपयोग हो रहा है। इसके उपयोगों की समीक्षा करें और आगे बढ़ने से पहले कोई दूसरा प्रारंभ पृष्ठ निर्धारित करें।'; + 'यह विषय किसी इंस्टेंस का मुखपृष्ठ है। इसकी स्रोत फ़ाइल हटाने से पहले कोई दूसरा मुखपृष्ठ निर्धारित करें।'; @override String topicUsagesCount(int count) { @@ -1548,7 +1562,7 @@ class AppLocalizationsHi extends AppLocalizations { String get topicUsageTocElements => 'TOC तत्व'; @override - String get topicUsageStartPages => 'प्रारंभ पृष्ठ'; + String get topicUsageStartPages => 'मुखपृष्ठ'; @override String get topicUsageTopicLinks => 'विषय लिंक'; @@ -2168,7 +2182,7 @@ class AppLocalizationsHi extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'आरंभिक विषय $topic को हटाया नहीं जा सकता। पहले कोई दूसरा आरंभ पेज चुनें।'; + return 'मुखपृष्ठ $topic को हटाया नहीं जा सकता। पहले कोई दूसरा मुखपृष्ठ चुनें।'; } @override diff --git a/lib/l10n/generated/app_localizations_id.dart b/lib/l10n/generated/app_localizations_id.dart index a659acba..350e4af3 100644 --- a/lib/l10n/generated/app_localizations_id.dart +++ b/lib/l10n/generated/app_localizations_id.dart @@ -1533,9 +1533,23 @@ class AppLocalizationsId extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Topik ini adalah halaman utama instance ini. Pilih halaman utama lain sebelum menghapusnya dari daftar isi.'; + + @override + String get newHomePage => 'Halaman utama baru'; + + @override + String get chooseHomePage => 'Pilih halaman utama'; + + @override + String get noHomePageReplacement => + 'Tambahkan atau tautkan topik lain yang memenuhi syarat ke instance ini sebelum menghapus halaman utamanya.'; + @override String get topicIsStartPageRemovalWarning => - 'Topik ini digunakan sebagai halaman awal instance. Tinjau penggunaannya dan tetapkan halaman awal lain sebelum melanjutkan.'; + 'Topik ini adalah halaman utama sebuah instance. Tetapkan halaman utama lain sebelum menghapus file sumbernya.'; @override String topicUsagesCount(int count) { @@ -1553,7 +1567,7 @@ class AppLocalizationsId extends AppLocalizations { String get topicUsageTocElements => 'elemen TOC'; @override - String get topicUsageStartPages => 'Halaman awal'; + String get topicUsageStartPages => 'Halaman utama'; @override String get topicUsageTopicLinks => 'Tautan topik'; @@ -2173,7 +2187,7 @@ class AppLocalizationsId extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Topik awal $topic tidak dapat dihapus. Pilih halaman awal lain terlebih dahulu.'; + return 'Halaman utama $topic tidak dapat dihapus. Pilih halaman utama lain terlebih dahulu.'; } @override diff --git a/lib/l10n/generated/app_localizations_it.dart b/lib/l10n/generated/app_localizations_it.dart index d1778ed2..9d934a04 100644 --- a/lib/l10n/generated/app_localizations_it.dart +++ b/lib/l10n/generated/app_localizations_it.dart @@ -1546,9 +1546,23 @@ class AppLocalizationsIt extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Questo argomento è la pagina iniziale di questa istanza. Scegli un’altra pagina iniziale prima di rimuoverlo dal sommario.'; + + @override + String get newHomePage => 'Nuova pagina iniziale'; + + @override + String get chooseHomePage => 'Scegli una pagina iniziale'; + + @override + String get noHomePageReplacement => + 'Aggiungi o collega un altro argomento idoneo a questa istanza prima di rimuovere la sua pagina iniziale.'; + @override String get topicIsStartPageRemovalWarning => - 'Questo argomento è utilizzato come pagina iniziale di un’istanza. Esaminane gli utilizzi e assegna un’altra pagina iniziale prima di continuare.'; + 'Questo argomento è la pagina iniziale di un’istanza. Imposta un’altra pagina iniziale prima di eliminare il suo file sorgente.'; @override String topicUsagesCount(int count) { @@ -2194,7 +2208,7 @@ class AppLocalizationsIt extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'L\'argomento iniziale $topic non può essere eliminato. Scegli prima un\'altra pagina iniziale.'; + return 'La pagina iniziale $topic non può essere eliminata. Scegli prima un’altra pagina iniziale.'; } @override diff --git a/lib/l10n/generated/app_localizations_ja.dart b/lib/l10n/generated/app_localizations_ja.dart index 978559a7..a4c4d779 100644 --- a/lib/l10n/generated/app_localizations_ja.dart +++ b/lib/l10n/generated/app_localizations_ja.dart @@ -1485,9 +1485,23 @@ class AppLocalizationsJa extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'このトピックはこのインスタンスのホームページです。目次から削除する前に、別のホームページを選択してください。'; + + @override + String get newHomePage => '新しいホームページ'; + + @override + String get chooseHomePage => 'ホームページを選択'; + + @override + String get noHomePageReplacement => + 'ホームページを削除する前に、このインスタンスに別の適切なトピックを追加またはリンクしてください。'; + @override String get topicIsStartPageRemovalWarning => - 'このトピックはインスタンスの開始ページとして使用されています。使用箇所を確認し、続行する前に別の開始ページを割り当ててください。'; + 'このトピックはインスタンスのホームページです。ソースファイルを削除する前に、別のホームページを設定してください。'; @override String topicUsagesCount(int count) { @@ -1504,7 +1518,7 @@ class AppLocalizationsJa extends AppLocalizations { String get topicUsageTocElements => '目次要素'; @override - String get topicUsageStartPages => '開始ページ'; + String get topicUsageStartPages => 'ホームページ'; @override String get topicUsageTopicLinks => 'トピックリンク'; @@ -2103,7 +2117,7 @@ class AppLocalizationsJa extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return '開始トピック $topic は削除できません。先に別の開始ページを選択してください。'; + return 'ホームページ $topic は削除できません。先に別のホームページを選択してください。'; } @override diff --git a/lib/l10n/generated/app_localizations_ko.dart b/lib/l10n/generated/app_localizations_ko.dart index d1fa3a7b..0e9a24d3 100644 --- a/lib/l10n/generated/app_localizations_ko.dart +++ b/lib/l10n/generated/app_localizations_ko.dart @@ -1482,9 +1482,23 @@ class AppLocalizationsKo extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + '이 토픽은 이 인스턴스의 홈 페이지입니다. 목차에서 제거하기 전에 다른 홈 페이지를 선택하세요.'; + + @override + String get newHomePage => '새 홈 페이지'; + + @override + String get chooseHomePage => '홈 페이지 선택'; + + @override + String get noHomePageReplacement => + '홈 페이지를 제거하기 전에 이 인스턴스에 다른 적합한 토픽을 추가하거나 연결하세요.'; + @override String get topicIsStartPageRemovalWarning => - '이 토픽은 인스턴스 시작 페이지로 사용됩니다. 계속하기 전에 사용처를 검토하고 다른 시작 페이지를 지정하세요.'; + '이 토픽은 인스턴스의 홈 페이지입니다. 소스 파일을 삭제하기 전에 다른 홈 페이지를 지정하세요.'; @override String topicUsagesCount(int count) { @@ -1501,7 +1515,7 @@ class AppLocalizationsKo extends AppLocalizations { String get topicUsageTocElements => '목차 요소'; @override - String get topicUsageStartPages => '시작 페이지'; + String get topicUsageStartPages => '홈 페이지'; @override String get topicUsageTopicLinks => '토픽 링크'; @@ -2099,7 +2113,7 @@ class AppLocalizationsKo extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return '시작 토픽 $topic을(를) 삭제할 수 없습니다. 먼저 다른 시작 페이지를 선택하세요.'; + return '홈 페이지 $topic을(를) 삭제할 수 없습니다. 먼저 다른 홈 페이지를 선택하세요.'; } @override diff --git a/lib/l10n/generated/app_localizations_nb.dart b/lib/l10n/generated/app_localizations_nb.dart index 5bfd8520..01153870 100644 --- a/lib/l10n/generated/app_localizations_nb.dart +++ b/lib/l10n/generated/app_localizations_nb.dart @@ -1535,9 +1535,23 @@ class AppLocalizationsNb extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Dette emnet er startsiden for denne instansen. Velg en annen startside før du fjerner det fra innholdsfortegnelsen.'; + + @override + String get newHomePage => 'Ny startside'; + + @override + String get chooseHomePage => 'Velg en startside'; + + @override + String get noHomePageReplacement => + 'Legg til eller koble et annet egnet emne til denne instansen før du fjerner startsiden.'; + @override String get topicIsStartPageRemovalWarning => - 'Dette emnet brukes som startside for en instans. Se gjennom bruken, og angi en annen startside før du fortsetter.'; + 'Dette emnet er startsiden for en instans. Angi en annen startside før du sletter kildefilen.'; @override String topicUsagesCount(int count) { @@ -2176,7 +2190,7 @@ class AppLocalizationsNb extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Startemnet $topic kan ikke slettes. Velg en annen startside først.'; + return 'Startsiden $topic kan ikke slettes. Velg en annen startside først.'; } @override diff --git a/lib/l10n/generated/app_localizations_nl.dart b/lib/l10n/generated/app_localizations_nl.dart index 64c19b13..46021aec 100644 --- a/lib/l10n/generated/app_localizations_nl.dart +++ b/lib/l10n/generated/app_localizations_nl.dart @@ -1538,9 +1538,23 @@ class AppLocalizationsNl extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Dit onderwerp is de startpagina van deze instantie. Kies een andere startpagina voordat u het uit de inhoudsopgave verwijdert.'; + + @override + String get newHomePage => 'Nieuwe startpagina'; + + @override + String get chooseHomePage => 'Startpagina kiezen'; + + @override + String get noHomePageReplacement => + 'Voeg een ander geschikt onderwerp toe aan deze instantie of koppel het voordat u de startpagina verwijdert.'; + @override String get topicIsStartPageRemovalWarning => - 'Dit onderwerp wordt gebruikt als startpagina van een instantie. Controleer het gebruik ervan en wijs een andere startpagina toe voordat u verdergaat.'; + 'Dit onderwerp is de startpagina van een instantie. Stel een andere startpagina in voordat u het bronbestand verwijdert.'; @override String topicUsagesCount(int count) { @@ -1559,7 +1573,7 @@ class AppLocalizationsNl extends AppLocalizations { String get topicUsageTocElements => 'TOC-elementen'; @override - String get topicUsageStartPages => 'Startpagina\'s'; + String get topicUsageStartPages => 'Startpagina’s'; @override String get topicUsageTopicLinks => 'Onderwerplinks'; @@ -2187,7 +2201,7 @@ class AppLocalizationsNl extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Het startonderwerp $topic kan niet worden verwijderd. Kies eerst een andere startpagina.'; + return 'De startpagina $topic kan niet worden verwijderd. Kies eerst een andere startpagina.'; } @override diff --git a/lib/l10n/generated/app_localizations_pl.dart b/lib/l10n/generated/app_localizations_pl.dart index a457b923..04b550f9 100644 --- a/lib/l10n/generated/app_localizations_pl.dart +++ b/lib/l10n/generated/app_localizations_pl.dart @@ -1556,9 +1556,23 @@ class AppLocalizationsPl extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Ten temat jest stroną główną tej instancji. Wybierz inną stronę główną przed usunięciem go ze spisu treści.'; + + @override + String get newHomePage => 'Nowa strona główna'; + + @override + String get chooseHomePage => 'Wybierz stronę główną'; + + @override + String get noHomePageReplacement => + 'Dodaj lub połącz inny odpowiedni temat z tą instancją przed usunięciem jej strony głównej.'; + @override String get topicIsStartPageRemovalWarning => - 'Ten temat jest używany jako strona początkowa instancji. Przejrzyj jego użycia i przypisz inną stronę początkową przed kontynuowaniem.'; + 'Ten temat jest stroną główną instancji. Ustaw inną stronę główną przed usunięciem jego pliku źródłowego.'; @override String topicUsagesCount(int count) { @@ -1577,7 +1591,7 @@ class AppLocalizationsPl extends AppLocalizations { String get topicUsageTocElements => 'Elementy spisu treści'; @override - String get topicUsageStartPages => 'Strony początkowe'; + String get topicUsageStartPages => 'Strony główne'; @override String get topicUsageTopicLinks => 'Linki do tematów'; @@ -2208,7 +2222,7 @@ class AppLocalizationsPl extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Nie można usunąć tematu początkowego $topic. Najpierw wybierz inną stronę początkową.'; + return 'Nie można usunąć strony głównej $topic. Najpierw wybierz inną stronę główną.'; } @override diff --git a/lib/l10n/generated/app_localizations_pt.dart b/lib/l10n/generated/app_localizations_pt.dart index 8c0f12e4..96acc585 100644 --- a/lib/l10n/generated/app_localizations_pt.dart +++ b/lib/l10n/generated/app_localizations_pt.dart @@ -1543,9 +1543,23 @@ class AppLocalizationsPt extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Este tópico é a página inicial desta instância. Escolha outra página inicial antes de o remover do índice.'; + + @override + String get newHomePage => 'Nova página inicial'; + + @override + String get chooseHomePage => 'Escolher página inicial'; + + @override + String get noHomePageReplacement => + 'Adicione ou associe outro tópico elegível a esta instância antes de remover a sua página inicial.'; + @override String get topicIsStartPageRemovalWarning => - 'Este tópico é usado como página inicial de uma instância. Reveja os usos dele e atribua outra página inicial antes de continuar.'; + 'Este tópico é a página inicial de uma instância. Defina outra página inicial antes de eliminar o seu ficheiro de origem.'; @override String topicUsagesCount(int count) { @@ -2187,7 +2201,7 @@ class AppLocalizationsPt extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'O tópico inicial $topic não pode ser eliminado. Escolha primeiro outra página inicial.'; + return 'Não é possível eliminar a página inicial $topic. Escolha primeiro outra página inicial.'; } @override @@ -6377,9 +6391,23 @@ class AppLocalizationsPtBr extends AppLocalizationsPt { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Este tópico é a página inicial desta instância. Escolha outra página inicial antes de removê-lo do sumário.'; + + @override + String get newHomePage => 'Nova página inicial'; + + @override + String get chooseHomePage => 'Escolher página inicial'; + + @override + String get noHomePageReplacement => + 'Adicione ou vincule outro tópico elegível a esta instância antes de remover sua página inicial.'; + @override String get topicIsStartPageRemovalWarning => - 'Este tópico é usado como página inicial de uma instância. Revise os usos dele e atribua outra página inicial antes de continuar.'; + 'Este tópico é a página inicial de uma instância. Defina outra página inicial antes de excluir seu arquivo de origem.'; @override String topicUsagesCount(int count) { @@ -7021,7 +7049,7 @@ class AppLocalizationsPtBr extends AppLocalizationsPt { @override String errorWritersideStartTopicDelete(String topic) { - return 'O tópico inicial $topic não pode ser excluído. Escolha primeiro outra página inicial.'; + return 'Não é possível excluir a página inicial $topic. Escolha outra página inicial primeiro.'; } @override diff --git a/lib/l10n/generated/app_localizations_ru.dart b/lib/l10n/generated/app_localizations_ru.dart index fea1fb18..68d792a0 100644 --- a/lib/l10n/generated/app_localizations_ru.dart +++ b/lib/l10n/generated/app_localizations_ru.dart @@ -1552,9 +1552,23 @@ class AppLocalizationsRu extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Эта тема является домашней страницей этого экземпляра. Выберите другую домашнюю страницу перед её удалением из оглавления.'; + + @override + String get newHomePage => 'Новая домашняя страница'; + + @override + String get chooseHomePage => 'Выбрать домашнюю страницу'; + + @override + String get noHomePageReplacement => + 'Добавьте или привяжите к этому экземпляру другую подходящую тему перед удалением его домашней страницы.'; + @override String get topicIsStartPageRemovalWarning => - 'Эта тема используется как стартовая страница экземпляра. Просмотрите её использования и назначьте другую стартовую страницу, прежде чем продолжить.'; + 'Эта тема является домашней страницей экземпляра. Назначьте другую домашнюю страницу перед удалением её исходного файла.'; @override String topicUsagesCount(int count) { @@ -1572,7 +1586,7 @@ class AppLocalizationsRu extends AppLocalizations { String get topicUsageTocElements => 'Элементы оглавления'; @override - String get topicUsageStartPages => 'Стартовые страницы'; + String get topicUsageStartPages => 'Домашние страницы'; @override String get topicUsageTopicLinks => 'Ссылки на темы'; @@ -2203,7 +2217,7 @@ class AppLocalizationsRu extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Стартовую тему $topic нельзя удалить. Сначала выберите другую стартовую страницу.'; + return 'Домашнюю страницу $topic нельзя удалить. Сначала выберите другую домашнюю страницу.'; } @override diff --git a/lib/l10n/generated/app_localizations_tr.dart b/lib/l10n/generated/app_localizations_tr.dart index 536284ac..a4ef4597 100644 --- a/lib/l10n/generated/app_localizations_tr.dart +++ b/lib/l10n/generated/app_localizations_tr.dart @@ -1534,9 +1534,23 @@ class AppLocalizationsTr extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Bu konu bu örneğin ana sayfasıdır. İçindekilerden kaldırmadan önce başka bir ana sayfa seçin.'; + + @override + String get newHomePage => 'Yeni ana sayfa'; + + @override + String get chooseHomePage => 'Ana sayfa seçin'; + + @override + String get noHomePageReplacement => + 'Ana sayfasını kaldırmadan önce bu örneğe başka bir uygun konu ekleyin veya bağlayın.'; + @override String get topicIsStartPageRemovalWarning => - 'Bu konu bir Writerside örneğinin başlangıç sayfası olarak kullanılıyor. Devam etmeden önce kullanımlarını inceleyin ve başka bir başlangıç sayfası atayın.'; + 'Bu konu bir örneğin ana sayfasıdır. Kaynak dosyasını silmeden önce başka bir ana sayfa atayın.'; @override String topicUsagesCount(int count) { @@ -1554,7 +1568,7 @@ class AppLocalizationsTr extends AppLocalizations { String get topicUsageTocElements => 'İçindekiler öğeleri'; @override - String get topicUsageStartPages => 'Başlangıç sayfaları'; + String get topicUsageStartPages => 'Ana sayfalar'; @override String get topicUsageTopicLinks => 'Konu bağlantıları'; @@ -2172,7 +2186,7 @@ class AppLocalizationsTr extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return '$topic başlangıç konusu silinemez. Önce başka bir başlangıç sayfası seçin.'; + return 'Ana sayfa $topic silinemez. Önce başka bir ana sayfa seçin.'; } @override diff --git a/lib/l10n/generated/app_localizations_uk.dart b/lib/l10n/generated/app_localizations_uk.dart index fc60b4b0..830590c4 100644 --- a/lib/l10n/generated/app_localizations_uk.dart +++ b/lib/l10n/generated/app_localizations_uk.dart @@ -1559,9 +1559,23 @@ class AppLocalizationsUk extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Ця тема є домашньою сторінкою цього екземпляра. Виберіть іншу домашню сторінку, перш ніж видалити її зі змісту.'; + + @override + String get newHomePage => 'Нова домашня сторінка'; + + @override + String get chooseHomePage => 'Вибрати домашню сторінку'; + + @override + String get noHomePageReplacement => + 'Додайте або прив’яжіть іншу придатну тему до цього екземпляра перед видаленням його домашньої сторінки.'; + @override String get topicIsStartPageRemovalWarning => - 'Ця тема використовується як початкова сторінка екземпляра. Перегляньте її використання та призначте іншу початкову сторінку, перш ніж продовжити.'; + 'Ця тема є домашньою сторінкою екземпляра. Призначте іншу домашню сторінку перед видаленням її вихідного файлу.'; @override String topicUsagesCount(int count) { @@ -1580,7 +1594,7 @@ class AppLocalizationsUk extends AppLocalizations { String get topicUsageTocElements => 'Елементи змісту'; @override - String get topicUsageStartPages => 'Початкові сторінки'; + String get topicUsageStartPages => 'Домашні сторінки'; @override String get topicUsageTopicLinks => 'Посилання на теми'; @@ -2212,7 +2226,7 @@ class AppLocalizationsUk extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Початкову тему $topic не можна видалити. Спочатку виберіть іншу початкову сторінку.'; + return 'Домашню сторінку $topic не можна видалити. Спочатку виберіть іншу домашню сторінку.'; } @override diff --git a/lib/l10n/generated/app_localizations_vi.dart b/lib/l10n/generated/app_localizations_vi.dart index 37eaa057..7fbddeeb 100644 --- a/lib/l10n/generated/app_localizations_vi.dart +++ b/lib/l10n/generated/app_localizations_vi.dart @@ -1527,9 +1527,23 @@ class AppLocalizationsVi extends AppLocalizations { return '$_temp0'; } + @override + String get topicIsHomePageRemovalWarning => + 'Chủ đề này là trang chủ của thực thể này. Chọn trang chủ khác trước khi xóa chủ đề khỏi mục lục.'; + + @override + String get newHomePage => 'Trang chủ mới'; + + @override + String get chooseHomePage => 'Chọn trang chủ'; + + @override + String get noHomePageReplacement => + 'Thêm hoặc liên kết một chủ đề hợp lệ khác vào thực thể này trước khi xóa trang chủ của nó.'; + @override String get topicIsStartPageRemovalWarning => - 'Chủ đề này đang được dùng làm trang bắt đầu của một thực thể. Hãy xem lại cách sử dụng và chỉ định trang bắt đầu khác trước khi tiếp tục.'; + 'Chủ đề này là trang chủ của một thực thể. Chỉ định trang chủ khác trước khi xóa tệp nguồn của chủ đề.'; @override String topicUsagesCount(int count) { @@ -1548,7 +1562,7 @@ class AppLocalizationsVi extends AppLocalizations { String get topicUsageTocElements => 'Phần tử mục lục'; @override - String get topicUsageStartPages => 'Trang bắt đầu'; + String get topicUsageStartPages => 'Các trang chủ'; @override String get topicUsageTopicLinks => 'Liên kết chủ đề'; @@ -2168,7 +2182,7 @@ class AppLocalizationsVi extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return 'Không thể xóa chủ đề bắt đầu $topic. Hãy chọn một trang bắt đầu khác trước.'; + return 'Không thể xóa trang chủ $topic. Hãy chọn trang chủ khác trước.'; } @override diff --git a/lib/l10n/generated/app_localizations_zh.dart b/lib/l10n/generated/app_localizations_zh.dart index c9e5b6da..005f0425 100644 --- a/lib/l10n/generated/app_localizations_zh.dart +++ b/lib/l10n/generated/app_localizations_zh.dart @@ -1469,8 +1469,19 @@ class AppLocalizationsZh extends AppLocalizations { } @override - String get topicIsStartPageRemovalWarning => - '此主题被用作实例的起始页。请查看其使用情况,并在继续前指定其他起始页。'; + String get topicIsHomePageRemovalWarning => '此主题是此实例的主页。从目录中移除它之前,请选择另一个主页。'; + + @override + String get newHomePage => '新主页'; + + @override + String get chooseHomePage => '选择主页'; + + @override + String get noHomePageReplacement => '移除主页之前,请向此实例添加或链接另一个符合条件的主题。'; + + @override + String get topicIsStartPageRemovalWarning => '此主题是某个实例的主页。删除其源文件之前,请指定另一个主页。'; @override String topicUsagesCount(int count) { @@ -1487,7 +1498,7 @@ class AppLocalizationsZh extends AppLocalizations { String get topicUsageTocElements => '目录元素'; @override - String get topicUsageStartPages => '起始页'; + String get topicUsageStartPages => '主页'; @override String get topicUsageTopicLinks => '主题链接'; @@ -2072,7 +2083,7 @@ class AppLocalizationsZh extends AppLocalizations { @override String errorWritersideStartTopicDelete(String topic) { - return '无法删除起始主题 $topic。请先选择其他起始页。'; + return '无法删除主页 $topic。请先选择另一个主页。'; } @override @@ -6031,8 +6042,19 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { } @override - String get topicIsStartPageRemovalWarning => - '此主题被用作实例的起始页。请查看其使用情况,并在继续前指定其他起始页。'; + String get topicIsHomePageRemovalWarning => '此主题是此实例的主页。从目录中移除它之前,请选择另一个主页。'; + + @override + String get newHomePage => '新主页'; + + @override + String get chooseHomePage => '选择主页'; + + @override + String get noHomePageReplacement => '移除主页之前,请向此实例添加或链接另一个符合条件的主题。'; + + @override + String get topicIsStartPageRemovalWarning => '此主题是某个实例的主页。删除其源文件之前,请指定另一个主页。'; @override String topicUsagesCount(int count) { @@ -6049,7 +6071,7 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { String get topicUsageTocElements => '目录元素'; @override - String get topicUsageStartPages => '起始页'; + String get topicUsageStartPages => '主页'; @override String get topicUsageTopicLinks => '主题链接'; @@ -6634,7 +6656,7 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String errorWritersideStartTopicDelete(String topic) { - return '无法删除起始主题 $topic。请先选择其他起始页。'; + return '无法删除主页 $topic。请先选择另一个主页。'; } @override diff --git a/lib/src/workspace/presentation/workspace_screen.dart b/lib/src/workspace/presentation/workspace_screen.dart index 73736445..7aa58be1 100644 --- a/lib/src/workspace/presentation/workspace_screen.dart +++ b/lib/src/workspace/presentation/workspace_screen.dart @@ -2604,6 +2604,7 @@ class _SidebarState extends ConsumerState<_Sidebar> { _WritersideTopicRemovalTarget target, { bool updateUsagesAutomatically = true, String? redirectTopicPath, + String? homePageTopicPath, bool applyIfUnused = false, }) async { if (!await confirmSafeToRefactorWritersideProject(context, ref) || @@ -2628,6 +2629,9 @@ class _SidebarState extends ConsumerState<_Sidebar> { final initialRedirect = analysis.redirectTargets .where((candidate) => candidate.topicPath == redirectTopicPath) .firstOrNull; + final initialHomePage = analysis.homePageReplacementForTopic( + homePageTopicPath, + ); _WritersideTopicRemovalDialogResult decision; if (applyIfUnused && analysis.relevantUsages.isEmpty) { decision = _WritersideTopicRemovalDialogResult.apply( @@ -2645,6 +2649,7 @@ class _SidebarState extends ConsumerState<_Sidebar> { analysis: analysis, initialUpdateUsagesAutomatically: updateUsagesAutomatically, initialRedirectTarget: initialRedirect, + initialHomePageReplacement: initialHomePage, ), ); if (!mounted || !context.mounted || selected == null) { @@ -2659,6 +2664,7 @@ class _SidebarState extends ConsumerState<_Sidebar> { analysis: analysis, updateUsagesAutomatically: decision.updateUsagesAutomatically, redirectTopicPath: decision.redirectTarget?.topicPath, + homePageTopicPath: decision.homePageReplacement?.topicPath, ); }); return null; @@ -2677,6 +2683,7 @@ class _SidebarState extends ConsumerState<_Sidebar> { target, updateUsagesAutomatically: decision.updateUsagesAutomatically, redirectTopicPath: decision.redirectTarget?.topicPath, + homePageTopicPath: decision.homePageReplacement?.topicPath, applyIfUnused: applyIfUnused, ); } @@ -2685,6 +2692,7 @@ class _SidebarState extends ConsumerState<_Sidebar> { analysis: analysis, updateUsagesAutomatically: decision.updateUsagesAutomatically, redirectTarget: decision.redirectTarget, + homePageReplacement: decision.homePageReplacement, ), ); if (!mounted || !context.mounted) { @@ -2742,6 +2750,19 @@ class _SidebarState extends ConsumerState<_Sidebar> { _showLatestWorkspaceMessage(context); return; } + final homePage = analysis.homePageReplacementForTopic( + review.homePageTopicPath, + ); + if (analysis.requiresHomePageReplacement && homePage == null) { + await _runWritersideTopicRemoval( + context, + review.target, + updateUsagesAutomatically: review.updateUsagesAutomatically, + redirectTopicPath: review.redirectTopicPath, + homePageTopicPath: review.homePageTopicPath, + ); + return; + } final redirect = review.redirectTopicPath == null ? null : analysis.redirectTargets @@ -2757,16 +2778,20 @@ class _SidebarState extends ConsumerState<_Sidebar> { ); return; } - if (analysis.blockingUsages.any( - (usage) => - !review.updateUsagesAutomatically || !usage.canUpdateAutomatically, - )) { + if (analysis + .unresolvedBlockingUsages(homePage) + .any( + (usage) => + !review.updateUsagesAutomatically || + !usage.canUpdateAutomatically, + )) { setState(() { _topicUsageReview = _WritersideTopicUsageReview( target: review.target, analysis: analysis, updateUsagesAutomatically: review.updateUsagesAutomatically, redirectTopicPath: review.redirectTopicPath, + homePageTopicPath: homePage?.topicPath, ); }); return; @@ -2776,6 +2801,7 @@ class _SidebarState extends ConsumerState<_Sidebar> { analysis: analysis, updateUsagesAutomatically: review.updateUsagesAutomatically, redirectTarget: redirect, + homePageReplacement: homePage, ), ); if (!mounted || !context.mounted) return; @@ -3824,29 +3850,35 @@ class _WritersideTopicRemovalDialogResult { required this.reviewUsages, required this.updateUsagesAutomatically, required this.redirectTarget, + required this.homePageReplacement, }); const _WritersideTopicRemovalDialogResult.review({ required bool updateUsagesAutomatically, required WritersideTopicRedirectTarget? redirectTarget, + WritersideHomePageReplacement? homePageReplacement, }) : this._( reviewUsages: true, updateUsagesAutomatically: updateUsagesAutomatically, redirectTarget: redirectTarget, + homePageReplacement: homePageReplacement, ); const _WritersideTopicRemovalDialogResult.apply({ required bool updateUsagesAutomatically, required WritersideTopicRedirectTarget? redirectTarget, + WritersideHomePageReplacement? homePageReplacement, }) : this._( reviewUsages: false, updateUsagesAutomatically: updateUsagesAutomatically, redirectTarget: redirectTarget, + homePageReplacement: homePageReplacement, ); final bool reviewUsages; final bool updateUsagesAutomatically; final WritersideTopicRedirectTarget? redirectTarget; + final WritersideHomePageReplacement? homePageReplacement; } class _WritersideTopicUsageReview { @@ -3855,12 +3887,14 @@ class _WritersideTopicUsageReview { required this.analysis, required this.updateUsagesAutomatically, required this.redirectTopicPath, + required this.homePageTopicPath, }); final _WritersideTopicRemovalTarget target; final WritersideTopicRemovalAnalysis analysis; final bool updateUsagesAutomatically; final String? redirectTopicPath; + final String? homePageTopicPath; } class _WritersideTopicRemovalDialog extends StatefulWidget { @@ -3868,11 +3902,13 @@ class _WritersideTopicRemovalDialog extends StatefulWidget { required this.analysis, required this.initialUpdateUsagesAutomatically, required this.initialRedirectTarget, + required this.initialHomePageReplacement, }); final WritersideTopicRemovalAnalysis analysis; final bool initialUpdateUsagesAutomatically; final WritersideTopicRedirectTarget? initialRedirectTarget; + final WritersideHomePageReplacement? initialHomePageReplacement; @override State<_WritersideTopicRemovalDialog> createState() => @@ -3883,14 +3919,15 @@ class _WritersideTopicRemovalDialogState extends State<_WritersideTopicRemovalDialog> { late bool _updateUsagesAutomatically; WritersideTopicRedirectTarget? _redirectTarget; + WritersideHomePageReplacement? _homePageReplacement; WritersideTopicRemovalAnalysis get _analysis => widget.analysis; bool get _canApply { - if (_analysis.blockingUsages.isEmpty) { - return true; - } - return _updateUsagesAutomatically && _analysis.canUpdateUsagesAutomatically; + final blocking = _analysis.unresolvedBlockingUsages(_homePageReplacement); + return blocking.isEmpty || + (_updateUsagesAutomatically && + blocking.every((usage) => usage.canUpdateAutomatically)); } @override @@ -3898,8 +3935,9 @@ class _WritersideTopicRemovalDialogState super.initState(); _updateUsagesAutomatically = widget.initialUpdateUsagesAutomatically && - _analysis.canUpdateUsagesAutomatically; + _analysis.canUpdateOtherUsagesAutomatically; _redirectTarget = widget.initialRedirectTarget; + _homePageReplacement = widget.initialHomePageReplacement; } @override @@ -3930,6 +3968,7 @@ class _WritersideTopicRemovalDialogState _WritersideTopicRemovalDialogResult.review( updateUsagesAutomatically: _updateUsagesAutomatically, redirectTarget: _redirectTarget, + homePageReplacement: _homePageReplacement, ), ), ), @@ -3947,6 +3986,7 @@ class _WritersideTopicRemovalDialogState _WritersideTopicRemovalDialogResult.apply( updateUsagesAutomatically: _updateUsagesAutomatically, redirectTarget: _redirectTarget, + homePageReplacement: _homePageReplacement, ), ) : null, @@ -3968,10 +4008,45 @@ class _WritersideTopicRemovalDialogState if (_analysis.isStartPage) ...[ const SizedBox(height: BusyMarkSpacing.md), BusyMarkStatusBox( - message: context.l10n.topicIsStartPageRemovalWarning, + message: removeFromInstance + ? context.l10n.topicIsHomePageRemovalWarning + : context.l10n.topicIsStartPageRemovalWarning, kind: BusyMarkStatusKind.warning, ), ], + if (_analysis.requiresHomePageReplacement) ...[ + const SizedBox(height: BusyMarkSpacing.md), + if (_analysis.homePageReplacements.isEmpty) + BusyMarkStatusBox( + message: context.l10n.noHomePageReplacement, + kind: BusyMarkStatusKind.warning, + ) + else + Row( + children: [ + Text(context.l10n.newHomePage), + const SizedBox(width: BusyMarkSpacing.sm), + Expanded( + child: BusyMarkPopupSelector( + value: _homePageReplacement, + label: + _homePageReplacement?.label ?? + context.l10n.chooseHomePage, + tooltip: context.l10n.newHomePage, + options: [ + for (final candidate in _analysis.homePageReplacements) + BusyMarkPopupSelectorOption( + value: candidate, + label: candidate.label, + ), + ], + onSelected: (value) => + setState(() => _homePageReplacement = value), + ), + ), + ], + ), + ], if (removeFromInstance) Row( children: [ @@ -4015,7 +4090,7 @@ class _WritersideTopicRemovalDialogState children: [ BusyMarkCheckbox( value: _updateUsagesAutomatically, - onChanged: _analysis.canUpdateUsagesAutomatically + onChanged: _analysis.canUpdateOtherUsagesAutomatically ? (value) => setState( () => _updateUsagesAutomatically = value ?? false, ) diff --git a/lib/src/writerside/writerside_topic_removal_service.dart b/lib/src/writerside/writerside_topic_removal_service.dart index 85ce73a8..d82552d9 100644 --- a/lib/src/writerside/writerside_topic_removal_service.dart +++ b/lib/src/writerside/writerside_topic_removal_service.dart @@ -94,6 +94,21 @@ class WritersideTopicRedirectTarget { final List nodePath; } +/// Identified by topic and instance, never by a positional TOC node path. +class WritersideHomePageReplacement { + const WritersideHomePageReplacement({ + required this.topicPath, + required this.treePath, + required this.topicReference, + required this.label, + }); + + final String topicPath; + final String treePath; + final String topicReference; + final String label; +} + class WritersideTopicRemovalAnalysis { WritersideTopicRemovalAnalysis({ required this.mode, @@ -112,6 +127,7 @@ class WritersideTopicRemovalAnalysis { required this.isStartPage, required List usages, required List redirectTargets, + List homePageReplacements = const [], required this.fingerprint, List projectModuleRoots = const [], }) : projectRoot = @@ -140,7 +156,8 @@ class WritersideTopicRemovalAnalysis { ? null : List.unmodifiable(selectedNodePath), usages = List.unmodifiable(usages), - redirectTargets = List.unmodifiable(redirectTargets); + redirectTargets = List.unmodifiable(redirectTargets), + homePageReplacements = List.unmodifiable(homePageReplacements); final WritersideTopicRemovalMode mode; final String projectRoot; @@ -159,6 +176,7 @@ class WritersideTopicRemovalAnalysis { final bool isStartPage; final List usages; final List redirectTargets; + final List homePageReplacements; final String fingerprint; List get relevantUsages => @@ -187,6 +205,51 @@ class WritersideTopicRemovalAnalysis { bool get canUpdateUsagesAutomatically => blockingUsages.every((usage) => usage.canUpdateAutomatically); + + bool get requiresHomePageReplacement => + mode == WritersideTopicRemovalMode.removeFromInstance && + selectedTreePath != null && + isStartPage; + + WritersideHomePageReplacement? homePageReplacementForTopic(String? path) => + path == null || !requiresHomePageReplacement + ? null + : homePageReplacements + .where((candidate) => p.equals(candidate.topicPath, path)) + .firstOrNull; + + bool resolvesHomePageUsage( + WritersideTopicUsage usage, + WritersideHomePageReplacement? replacement, + ) => + requiresHomePageReplacement && + replacement != null && + usage.relevant && + usage.kind == WritersideTopicUsageKind.startPage && + p.equals(usage.filePath, selectedTreePath!) && + homePageReplacements.any( + (candidate) => + p.equals(candidate.treePath, replacement.treePath) && + p.equals(candidate.topicPath, replacement.topicPath) && + candidate.topicReference == replacement.topicReference, + ); + + List unresolvedBlockingUsages( + WritersideHomePageReplacement? replacement, + ) => blockingUsages + .where((usage) => !resolvesHomePageUsage(usage, replacement)) + .toList(growable: false); + + // The checkbox controls link/include edits only. A pending explicit Home + // Page choice must not discard consent or disable those otherwise safe edits. + bool get canUpdateOtherUsagesAutomatically => blockingUsages.every( + (usage) => + usage.canUpdateAutomatically || + (requiresHomePageReplacement && + homePageReplacements.isNotEmpty && + usage.kind == WritersideTopicUsageKind.startPage && + p.equals(usage.filePath, selectedTreePath!)), + ); } class WritersideTopicRemovalRequest { @@ -194,11 +257,13 @@ class WritersideTopicRemovalRequest { required this.analysis, this.updateUsagesAutomatically = false, this.redirectTarget, + this.homePageReplacement, }); final WritersideTopicRemovalAnalysis analysis; final bool updateUsagesAutomatically; final WritersideTopicRedirectTarget? redirectTarget; + final WritersideHomePageReplacement? homePageReplacement; } class WritersideTopicRemovalResult { @@ -469,6 +534,11 @@ class WritersideTopicRemovalService { mode: mode, preferredTree: snapshot.trees[preferredTree]!, ), + homePageReplacements: + mode == WritersideTopicRemovalMode.removeFromInstance && + selectedTree != null + ? _homePageReplacements(snapshot, snapshot.trees[selectedTree]!) + : const [], fingerprint: snapshot.fingerprint, projectModuleRoots: snapshot.moduleRoots, ); @@ -505,10 +575,29 @@ class WritersideTopicRemovalService { args: {'topic': analysis.topicFileName}, ); } - final blocking = analysis.blockingUsages; + final requestedReplacement = request.homePageReplacement; + WritersideHomePageReplacement? replacement; + if (requestedReplacement != null) { + final tree = snapshot.trees[analysis.selectedTreePath]; + if (!analysis.requiresHomePageReplacement || tree == null) { + throw const BusyMarkException('writerside.toc.path-invalid'); + } + replacement = _homePageReplacements(snapshot, tree) + .where( + (candidate) => + p.equals(candidate.treePath, requestedReplacement.treePath) && + p.equals(candidate.topicPath, requestedReplacement.topicPath) && + candidate.topicReference == requestedReplacement.topicReference, + ) + .firstOrNull; + if (replacement == null) { + throw const BusyMarkException('writerside.toc.path-invalid'); + } + } + final blocking = analysis.unresolvedBlockingUsages(replacement); if (blocking.isNotEmpty && (!request.updateUsagesAutomatically || - !analysis.canUpdateUsagesAutomatically)) { + blocking.any((usage) => !usage.canUpdateAutomatically))) { throw BusyMarkException( 'writerside.topic-removal.usages-remain', args: {'path': analysis.topicPath}, @@ -523,6 +612,13 @@ class WritersideTopicRemovalService { for (final tree in snapshot.trees.values) tree.path: XmlDocument.parse(tree.source), }; + if (replacement != null) { + treeDocuments[replacement.treePath]!.rootElement.setAttribute( + 'start-page', + replacement.topicReference, + ); + changedTreePaths.add(replacement.treePath); + } XmlElement? selectedRemovalElement; if (analysis.mode == WritersideTopicRemovalMode.removeFromInstance) { @@ -779,6 +875,7 @@ class WritersideTopicRemovalService { final sourceUsageRemains = _plannedUsageRemains( analysis, updateUsagesAutomatically: request.updateUsagesAutomatically, + homePageReplacement: replacement, ); if (analysis.mode == WritersideTopicRemovalMode.safeDeleteFile && sourceUsageRemains) { @@ -1957,9 +2054,11 @@ class WritersideTopicRemovalService { bool _plannedUsageRemains( WritersideTopicRemovalAnalysis analysis, { required bool updateUsagesAutomatically, + WritersideHomePageReplacement? homePageReplacement, }) { for (final usage in analysis.usages) { if (!usage.relevant) return true; + if (analysis.resolvesHomePageUsage(usage, homePageReplacement)) continue; if (usage.kind == WritersideTopicUsageKind.tocElement && usage.canUpdateAutomatically) { continue; @@ -2074,6 +2173,82 @@ class WritersideTopicRemovalService { .toList(growable: false); } + List _homePageReplacements( + _RemovalSnapshot snapshot, + _TreeSnapshot tree, + ) { + final instance = tree.owner.instances + .where((candidate) => p.equals(candidate.sourceTreePath, tree.path)) + .firstOrNull; + if (instance == null || + instance.isLibrary || + tree.document.rootElement.getAttribute('is-library') == 'true' || + !tree.owner.config.instanceSources.any( + (source) => p.equals(p.join(tree.owner.rootPath, source), tree.path), + )) { + return const []; + } + final presenter = WritersideTocPresenter( + module: tree.owner, + instance: instance, + modulesByOrigin: snapshot.project.modulesByOrigin, + ); + final result = []; + final seen = {}; + for (final node in instance.navigationTocRoots.expand( + (root) => root.flatten(), + )) { + if (!node.canEditStructure || + !p.equals(node.sourceTreePath!, tree.path) || + node.href != null || + node.includeResolutionError != null) { + continue; + } + final element = _elementAtPath( + tree.document.rootElement, + node.sourceTocPath!, + ); + // start-page resolves in the host module without a TOC origin. Keep the + // authored topic reference and require the same resolution as Set Home. + final reference = element.getAttribute('topic'); + final topic = reference == null || reference.isEmpty + ? null + : tree.owner.topicByReference(reference); + final resolvedTopic = presenter.present(node).topic; + if (topic == null || + resolvedTopic == null || + element.getAttribute('href') != null || + !p.equals(topic.filePath, resolvedTopic.filePath) || + !snapshot.sources.containsKey(normalizePath(topic.filePath)) || + p.equals(topic.filePath, snapshot.topic.filePath) || + !seen.add(normalizePath(topic.filePath))) { + continue; + } + result.add( + WritersideHomePageReplacement( + topicPath: topic.filePath, + treePath: tree.path, + topicReference: reference!, + label: topic.title?.trim().isNotEmpty == true + ? topic.title!.trim() + : topic.fileName, + ), + ); + } + return [ + for (final candidate in result) + WritersideHomePageReplacement( + topicPath: candidate.topicPath, + treePath: candidate.treePath, + topicReference: candidate.topicReference, + label: + result.where((other) => other.label == candidate.label).length > 1 + ? '${candidate.label} (${candidate.topicReference})' + : candidate.label, + ), + ]; + } + List _resolvedRedirectTargets( _RemovalSnapshot snapshot, _TreeSnapshot tree, diff --git a/test/src/writerside_toc_regressions_test.dart b/test/src/writerside_toc_regressions_test.dart index 72f60043..173082df 100644 --- a/test/src/writerside_toc_regressions_test.dart +++ b/test/src/writerside_toc_regressions_test.dart @@ -12,12 +12,14 @@ import 'package:busymark/src/workspace/recovery_persistence.dart'; import 'package:busymark/src/workspace/session_persistence.dart'; import 'package:busymark/src/workspace/workspace_controller.dart'; import 'package:busymark/src/writerside/writerside_template_service.dart'; +import 'package:busymark/src/writerside/writerside_topic_removal_service.dart'; import 'package:flutter/material.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/services.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:path/path.dart' as p; +import 'package:xml/xml.dart'; void main() { late Directory root; @@ -137,6 +139,51 @@ void main() { await tester.pumpAndSettle(); } + Future openRemoval(WidgetTester tester, {String row = '0'}) async { + await tester.tap( + find.byKey(ValueKey('workspace-sidebar-toc-row-$row')), + buttons: kSecondaryMouseButton, + ); + await tester.pumpAndSettle(); + await tester.runAsync(() => tester.tap(find.text('Remove TOC Element'))); + await _settle( + tester, + until: () => find.text('Set redirect to:').evaluate().isNotEmpty, + ); + } + + Finder homeSelector() => + find.byType(BusyMarkPopupSelector); + + BusyMarkDialogButton removeButton(WidgetTester tester) => + tester.widget(find.widgetWithText(BusyMarkDialogButton, 'Remove')); + + Finder automaticCheckbox() => find + .descendant( + of: find.byType(BusyMarkDialogShell), + matching: find.byType(BusyMarkCheckbox), + ) + .last; + + Future chooseHome(WidgetTester tester) async { + await tester.tap(find.text('Choose a Home Page')); + await tester.pumpAndSettle(); + await tester.tap(find.text('guides/install.md')); + await tester.pumpAndSettle(); + } + + Future keepOrphan(WidgetTester tester) async { + await _settle( + tester, + until: () => find.text('Keep Topic File').evaluate().isNotEmpty, + timeout: const Duration(seconds: 30), + diagnostics: () => + '${container.read(workspaceControllerProvider).message}', + ); + await tester.tap(find.text('Keep Topic File')); + await _settle(tester); + } + bool selected(WidgetTester tester, String path) => (tester.widget( find.descendant( @@ -271,12 +318,289 @@ void main() { findsOneWidget, ); expect(find.text('Set redirect to'), findsNothing); + expect( + find.text( + 'This topic is the Home Page for this instance. Choose another Home Page before removing it from the TOC.', + ), + findsOneWidget, + ); + expect(find.text('New Home Page'), findsOneWidget); + final picker = tester + .widget>( + homeSelector(), + ); + expect(picker.value, isNull); + expect(picker.options.map((option) => option.value.topicReference), [ + 'guides/install.md', + 'elsewhere/install.md', + ]); + expect(removeButton(tester).onPressed, isNull); + await chooseHome(tester); + expect(removeButton(tester).onPressed, isNotNull); await tester.tap(find.text('Cancel')); await tester.pumpAndSettle(); expect(await tester.runAsync(tree.readAsString), original); + expect(File(topicPath('other.md')).existsSync(), isTrue); + }, + ); + + testWidgets( + 'Home Page removal assigns the chosen topic and keeps the orphan source', + (tester) async { + await start(tester); + await openRemoval(tester); + await tester.tap(automaticCheckbox()); + await tester.pumpAndSettle(); + expect( + tester.widget(automaticCheckbox()).value, + isFalse, + ); + await chooseHome(tester); + expect(removeButton(tester).onPressed, isNotNull); + await tester.runAsync(() => tester.tap(find.text('Remove'))); + await keepOrphan(tester); + final tree = XmlDocument.parse( + File(p.join(root.path, 'guide.tree')).readAsStringSync(), + ); + expect(tree.rootElement.getAttribute('start-page'), 'guides/install.md'); + expect( + tree + .findAllElements('toc-element') + .where((node) => node.getAttribute('topic') == 'other.md'), + isEmpty, + ); + expect( + tree + .findAllElements('toc-element') + .any((node) => node.getAttribute('accepts-web-file-names') != null), + isFalse, + ); + expect(File(topicPath('other.md')).existsSync(), isTrue); }, ); + testWidgets('Home Page removal with no candidate explains how to unblock it', ( + tester, + ) async { + final tree = File(p.join(root.path, 'guide.tree')); + tree.writeAsStringSync( + '', + ); + final original = tree.readAsStringSync(); + await start(tester); + await openRemoval(tester); + expect(homeSelector(), findsNothing); + expect( + find.text( + 'Add or link another eligible topic to this instance before removing its Home Page.', + ), + findsOneWidget, + ); + expect(removeButton(tester).onPressed, isNull); + await tester.tap(find.text('Cancel')); + await tester.pumpAndSettle(); + expect(tree.readAsStringSync(), original); + }); + + testWidgets( + 'Review Usages without a Home Page choice resumes in the actionable dialog', + (tester) async { + await start(tester); + final tree = File(p.join(root.path, 'guide.tree')); + final original = tree.readAsStringSync(); + await openRemoval(tester); + await tester.tap(find.text('Review Usages')); + await tester.pumpAndSettle(); + expect(tree.readAsStringSync(), original); + await tester.runAsync(() => tester.tap(find.text('Do Refactor'))); + await _settle(tester, until: () => homeSelector().evaluate().isNotEmpty); + expect( + tester + .widget>( + homeSelector(), + ) + .value, + isNull, + ); + expect(removeButton(tester).onPressed, isNull); + await chooseHome(tester); + await tester.runAsync(() => tester.tap(find.text('Remove'))); + await keepOrphan(tester); + expect( + XmlDocument.parse( + tree.readAsStringSync(), + ).rootElement.getAttribute('start-page'), + 'guides/install.md', + ); + }, + ); + + testWidgets( + 'Review Usages keeps the explicit Home Page choice across changed TOC positions', + (tester) async { + await start(tester); + final tree = File(p.join(root.path, 'guide.tree')); + final original = tree.readAsStringSync(); + await openRemoval(tester); + await chooseHome(tester); + await tester.tap(find.text('Review Usages')); + await tester.pumpAndSettle(); + expect(tree.readAsStringSync(), original); + tree.writeAsStringSync( + original.replaceFirst( + '', + '', + ), + ); + await tester.runAsync(() => tester.tap(find.text('Do Refactor'))); + await keepOrphan(tester); + expect( + XmlDocument.parse( + tree.readAsStringSync(), + ).rootElement.getAttribute('start-page'), + 'guides/install.md', + ); + expect(File(topicPath('other.md')).existsSync(), isTrue); + }, + ); + + testWidgets( + 'Review Usages reopens the selector when the chosen replacement is no longer eligible', + (tester) async { + await start(tester); + final tree = File(p.join(root.path, 'guide.tree')); + await openRemoval(tester); + await chooseHome(tester); + await tester.tap(find.text('Review Usages')); + await tester.pumpAndSettle(); + tree.writeAsStringSync( + tree.readAsStringSync().replaceAll( + 'topic="guides/install.md"', + 'topic="elsewhere/install.md"', + ), + ); + final changed = tree.readAsStringSync(); + await tester.runAsync(() => tester.tap(find.text('Do Refactor'))); + await _settle(tester, until: () => homeSelector().evaluate().isNotEmpty); + final picker = tester + .widget>( + homeSelector(), + ); + expect(picker.value, isNull); + expect( + picker.options.single.value.topicReference, + 'elsewhere/install.md', + ); + expect(removeButton(tester).onPressed, isNull); + await tester.tap(find.text('Cancel')); + await tester.pumpAndSettle(); + expect(tree.readAsStringSync(), changed); + }, + ); + + testWidgets( + 'Home Page replacement and automatic usage consent remain independent', + (tester) async { + File( + topicPath('guides/install.md'), + ).writeAsStringSync('# guides/install.md\n\n[Other](../other.md)\n'); + await start(tester); + await openRemoval(tester); + expect( + tester.widget(automaticCheckbox()).onChanged, + isNotNull, + ); + await tester.tap(automaticCheckbox()); + await tester.pumpAndSettle(); + await chooseHome(tester); + expect(removeButton(tester).onPressed, isNull); + await tester.tap(automaticCheckbox()); + await tester.pumpAndSettle(); + expect(removeButton(tester).onPressed, isNotNull); + await tester.runAsync(() => tester.tap(find.text('Remove'))); + await keepOrphan(tester); + expect( + File(topicPath('guides/install.md')).readAsStringSync(), + isNot(contains('../other.md')), + ); + expect( + XmlDocument.parse( + File(p.join(root.path, 'guide.tree')).readAsStringSync(), + ).rootElement.getAttribute('start-page'), + 'guides/install.md', + ); + }, + ); + + testWidgets( + 'non-Home-Page removal has no Home Page selector and remains enabled', + (tester) async { + await start(tester); + final tree = File(p.join(root.path, 'guide.tree')); + final original = tree.readAsStringSync(); + await openRemoval(tester, row: '4'); + expect(homeSelector(), findsNothing); + expect(find.text('New Home Page'), findsNothing); + expect(removeButton(tester).onPressed, isNotNull); + await tester.tap(find.text('Cancel')); + await tester.pumpAndSettle(); + expect(tree.readAsStringSync(), original); + }, + ); + + testWidgets('Home Page choice is revalidated after saving a dirty buffer', ( + tester, + ) async { + await start(tester); + await tester.runAsync( + () => controller().openActiveFile(topicPath('guides/install.md')), + ); + await _settle(tester); + await openRemoval(tester); + await chooseHome(tester); + controller().updateActiveText( + '# guides/install.md\n\nSaved during removal.\n', + ); + await tester.pumpAndSettle(); + await tester.runAsync(() => tester.tap(find.text('Remove'))); + await _settle( + tester, + until: () => find.text('Unsaved changes').evaluate().isNotEmpty, + ); + await tester.runAsync( + () => tester.tap(find.widgetWithText(BusyMarkDialogButton, 'Save')), + ); + await _settle(tester, until: () => homeSelector().evaluate().isNotEmpty); + expect( + tester + .widget>( + homeSelector(), + ) + .value + ?.topicReference, + 'guides/install.md', + ); + expect(removeButton(tester).onPressed, isNotNull); + expect( + XmlDocument.parse( + File(p.join(root.path, 'guide.tree')).readAsStringSync(), + ).rootElement.getAttribute('start-page'), + 'other.md', + ); + await tester.runAsync(() => tester.tap(find.text('Remove'))); + await keepOrphan(tester); + expect( + XmlDocument.parse( + File(p.join(root.path, 'guide.tree')).readAsStringSync(), + ).rootElement.getAttribute('start-page'), + 'guides/install.md', + ); + expect( + File(topicPath('guides/install.md')).readAsStringSync(), + contains('Saved during removal.'), + ); + }); + testWidgets( 'New Topic surfaces expose local Markdown import only at root/sibling', (tester) async { @@ -472,8 +796,9 @@ Future _settle( WidgetTester tester, { bool Function()? until, String Function()? diagnostics, + Duration timeout = const Duration(seconds: 10), }) async { - final deadline = DateTime.now().add(const Duration(seconds: 10)); + final deadline = DateTime.now().add(timeout); for ( var i = 0; until == null ? i < 30 : DateTime.now().isBefore(deadline); diff --git a/test/src/writerside_toc_workspace_test.dart b/test/src/writerside_toc_workspace_test.dart index cd1bf787..9bdfc30f 100644 --- a/test/src/writerside_toc_workspace_test.dart +++ b/test/src/writerside_toc_workspace_test.dart @@ -166,6 +166,99 @@ void main() { }, ); + for (final afterPublication in [false, true]) { + test( + 'combined Home Page removal rechecks dirty buffers (published=$afterPublication)', + () async { + final root = await fixture(); + const service = WorkspaceService(); + final workspace = await service.openPath(root.path); + final tree = File(p.join(root.path, 'guide.tree')); + final originals = { + for (final file in root.listSync(recursive: true).whereType()) + file.path: file.readAsStringSync(), + }; + final home = workspace.writersideModule!.topicByReference('home.md')!; + final analysis = await service.analyzeWritersideTopicRemoval( + workspace, + topicPath: home.filePath, + mode: WritersideTopicRemovalMode.removeFromInstance, + treePath: tree.path, + nodePath: [0], + ); + final replacement = analysis.homePageReplacements.singleWhere( + (candidate) => candidate.topicReference == 'details.topic', + ); + var rejected = false; + await expectLater( + service.applyWritersideTopicRemoval( + workspace, + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: replacement, + updateUsagesAutomatically: true, + ), + validateBeforeCommit: (paths) { + expect(paths, contains(tree.path)); + if (!afterPublication || + tree.readAsStringSync() != originals[tree.path]) { + rejected = true; + throw StateError('became dirty'); + } + }, + ), + throwsStateError, + ); + expect(rejected, isTrue); + for (final entry in originals.entries) { + expect(File(entry.key).readAsStringSync(), entry.value); + } + }, + ); + } + + test( + 'combined Home Page removal preserves other instances and unrelated attributes', + () async { + final root = await fixture(); + const service = WorkspaceService(); + final workspace = await service.openPath(root.path); + final tree = File(p.join(root.path, 'guide.tree')); + final api = File(p.join(root.path, 'api.tree')); + final apiBefore = api.readAsStringSync(); + final home = workspace.writersideModule!.topicByReference('home.md')!; + final source = File(home.filePath).readAsStringSync(); + final analysis = await service.analyzeWritersideTopicRemoval( + workspace, + topicPath: home.filePath, + mode: WritersideTopicRemovalMode.removeFromInstance, + treePath: tree.path, + nodePath: [0], + ); + await service.applyWritersideTopicRemoval( + workspace, + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: analysis.homePageReplacements.singleWhere( + (candidate) => candidate.topicReference == 'details.topic', + ), + updateUsagesAutomatically: true, + ), + ); + final xml = XmlDocument.parse(tree.readAsStringSync()).rootElement; + expect(xml.getAttribute('start-page'), 'details.topic'); + expect(xml.getAttribute('name'), 'User Guide'); + expect( + xml + .findAllElements('toc-element') + .any((element) => element.getAttribute('topic') == 'home.md'), + isFalse, + ); + expect(api.readAsStringSync(), apiBefore); + expect(File(home.filePath).readAsStringSync(), source); + }, + ); + for (final scenario in [ ( name: 'empty instance', diff --git a/test/src/writerside_topic_removal_service_test.dart b/test/src/writerside_topic_removal_service_test.dart index 60b45462..90db0e84 100644 --- a/test/src/writerside_topic_removal_service_test.dart +++ b/test/src/writerside_topic_removal_service_test.dart @@ -14,6 +14,365 @@ import 'package:xml/xml.dart'; void main() { const service = WritersideTopicRemovalService(); + Future analyzeHome( + ({Directory root, WritersideModule module}) fixture, + ) => service.analyze( + module: fixture.module, + topicPath: _topic(fixture.module, 'doomed.md').filePath, + mode: WritersideTopicRemovalMode.removeFromInstance, + selectedTreePath: p.join(fixture.root.path, 'guide.tree'), + selectedNodePath: const [0], + ); + + for (final redirect in [false, true]) { + test( + 'explicit Home Page replacement promotes children (redirect=$redirect)', + () async { + final fixture = await _homeFixture(); + final analysis = await analyzeHome(fixture); + final replacement = analysis.homePageReplacements.singleWhere( + (candidate) => candidate.topicReference == 'guides/new.md', + ); + expect(replacement.label, 'New (guides/new.md)'); + expect( + analysis.blockingUsages.single.kind, + WritersideTopicUsageKind.startPage, + ); + expect(analysis.canUpdateUsagesAutomatically, isFalse); + expect(analysis.unresolvedBlockingUsages(replacement), isEmpty); + + final result = await service.apply( + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: replacement, + redirectTarget: redirect + ? analysis.redirectTargets.singleWhere( + (candidate) => candidate.topicPath == replacement.topicPath, + ) + : null, + ), + ); + + final tree = _tree(fixture.root, 'guide.tree'); + expect(tree.rootElement.getAttribute('start-page'), 'guides/new.md'); + expect(tree.rootElement.getAttribute('web-path'), '/guide'); + expect(_topics(tree), ['guides/new.md', 'elsewhere/new.md']); + expect(result.promotedChildren, 1); + expect(result.orphaned, isTrue); + expect(result.deletedFile, isFalse); + expect(result.redirectAdded, redirect); + expect( + tree + .findAllElements('toc-element') + .first + .getAttribute('accepts-web-file-names'), + redirect ? 'doomed.html' : isNull, + ); + expect(File(analysis.topicPath).existsSync(), isTrue); + }, + ); + } + + test( + 'Home Page removal requires a replacement even with automatic consent', + () async { + final fixture = await _homeFixture(); + final analysis = await analyzeHome(fixture); + final originals = _sources(fixture.root); + for (final automatic in [false, true]) { + await expectLater( + service.apply( + WritersideTopicRemovalRequest( + analysis: analysis, + updateUsagesAutomatically: automatic, + ), + ), + throwsA(isA()), + ); + expect(_sources(fixture.root), originals); + } + }, + ); + + test( + 'invalid or wrong-instance Home Page replacements fail without writes', + () async { + final fixture = await _homeFixture( + otherTree: + '', + ); + final analysis = await analyzeHome(fixture); + final valid = analysis.homePageReplacements.first; + final originals = _sources(fixture.root); + final invalid = [ + WritersideHomePageReplacement( + topicPath: analysis.topicPath, + treePath: valid.treePath, + topicReference: 'doomed.md', + label: 'Doomed', + ), + WritersideHomePageReplacement( + topicPath: _topic(fixture.module, 'outside.md').filePath, + treePath: valid.treePath, + topicReference: 'outside.md', + label: 'Outside', + ), + WritersideHomePageReplacement( + topicPath: valid.topicPath, + treePath: p.join(fixture.root.path, 'other.tree'), + topicReference: valid.topicReference, + label: valid.label, + ), + WritersideHomePageReplacement( + topicPath: valid.topicPath, + treePath: valid.treePath, + topicReference: 'missing.md', + label: valid.label, + ), + ]; + for (final replacement in invalid) { + await expectLater( + service.apply( + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: replacement, + updateUsagesAutomatically: true, + ), + ), + throwsA(isA()), + ); + expect(_sources(fixture.root), originals); + } + final safeDelete = await service.analyze( + module: fixture.module, + topicPath: analysis.topicPath, + mode: WritersideTopicRemovalMode.safeDeleteFile, + ); + expect(safeDelete.homePageReplacements, isEmpty); + await expectLater( + service.apply( + WritersideTopicRemovalRequest( + analysis: safeDelete, + homePageReplacement: valid, + updateUsagesAutomatically: true, + ), + ), + throwsA( + isA().having( + (error) => error.code, + 'code', + 'writerside.topic-file.is-start-page', + ), + ), + ); + expect(_sources(fixture.root), originals); + }, + ); + + test( + 'Home Page candidates respect conditions, editable provenance and topic resolution', + () async { + final fixture = await _fixture( + trees: { + 'guide.tree': ''' + + + + + + + + + +''', + 'library.tree': + '', + }, + configuredTrees: ['guide.tree', 'library.tree'], + topics: { + for (final name in [ + 'doomed', + 'eligible', + 'inactive', + 'external', + 'ref', + 'included', + ]) + '$name.md': '# $name\n', + }, + ); + final analysis = await analyzeHome(fixture); + expect( + analysis.homePageReplacements.map( + (candidate) => candidate.topicReference, + ), + ['eligible.md'], + ); + }, + ); + + test( + 'explicit Home Page replacement still requires consent for links and includes', + () async { + final fixture = await _homeFixture( + referrer: + '# Referrer\n\n[Old](doomed.md)\n\n\n', + ); + final analysis = await analyzeHome(fixture); + final replacement = analysis.homePageReplacements.first; + final originals = _sources(fixture.root); + expect(analysis.canUpdateOtherUsagesAutomatically, isTrue); + expect(analysis.unresolvedBlockingUsages(replacement), hasLength(2)); + await expectLater( + service.apply( + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: replacement, + ), + ), + throwsA(isA()), + ); + expect(_sources(fixture.root), originals); + final result = await service.apply( + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: replacement, + updateUsagesAutomatically: true, + ), + ); + expect(result.orphaned, isTrue); + expect( + result.updatedUsageFiles, + contains(p.join(fixture.root.path, 'topics', 'referrer.md')), + ); + expect( + File( + p.join(fixture.root.path, 'topics', 'referrer.md'), + ).readAsStringSync(), + isNot(contains('doomed.md')), + ); + }, + ); + + test( + 'explicit Home Page replacement cannot resolve non-automatic blockers', + () async { + final fixture = await _homeFixture( + referrer: '# Referrer\n\nunfinished.\n', + ); + final analysis = await analyzeHome(fixture); + expect(analysis.canUpdateOtherUsagesAutomatically, isFalse); + final originals = _sources(fixture.root); + await expectLater( + service.apply( + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: analysis.homePageReplacements.first, + updateUsagesAutomatically: true, + ), + ), + throwsA(isA()), + ); + expect(_sources(fixture.root), originals); + }, + ); + + for (final remaining in ['start-page="doomed.md"', '']) { + test( + 'Home Page reassignment preserves other instance usages ($remaining)', + () async { + final fixture = await _homeFixture( + otherTree: + '', + ); + final analysis = await analyzeHome(fixture); + final other = File(p.join(fixture.root.path, 'other.tree')); + final original = other.readAsStringSync(); + final result = await service.apply( + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: analysis.homePageReplacements.first, + ), + ); + expect(result.orphaned, isFalse); + expect(other.readAsStringSync(), original); + expect(File(analysis.topicPath).existsSync(), isTrue); + }, + ); + } + + for (final change in ['tree', 'replacement', 'delete']) { + test( + 'stale Home Page removal fails closed after $change changes', + () async { + final fixture = await _homeFixture(); + final analysis = await analyzeHome(fixture); + final replacement = analysis.homePageReplacements.first; + if (change == 'tree') { + final tree = File(replacement.treePath); + tree.writeAsStringSync( + tree.readAsStringSync().replaceAll('/guide', '/changed'), + ); + } else if (change == 'delete') { + File(replacement.topicPath).deleteSync(); + } else { + File(replacement.topicPath).writeAsStringSync('# Changed\n'); + } + final originals = _sources(fixture.root); + await expectLater( + service.apply( + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: replacement, + ), + ), + throwsA(isA()), + ); + expect(_sources(fixture.root), originals); + }, + ); + } + + test( + 'failed Home Page transaction rolls back reassignment and preserves concurrent edits', + () async { + final fixture = await _homeFixture( + referrer: '# Referrer\n\n[Old](doomed.md)\n', + ); + final analysis = await analyzeHome(fixture); + final replacement = analysis.homePageReplacements.first; + final originals = _sources(fixture.root); + final referrer = File(p.join(fixture.root.path, 'topics', 'referrer.md')); + var published = false; + await expectLater( + service.apply( + WritersideTopicRemovalRequest( + analysis: analysis, + homePageReplacement: replacement, + updateUsagesAutomatically: true, + ), + validateBeforeCommit: (_) { + if (File(replacement.treePath).readAsStringSync() == + originals[replacement.treePath]) { + return; + } + published = true; + referrer.writeAsStringSync('# Concurrent external edit\n'); + throw const BusyMarkException('test.concurrent-edit'); + }, + ), + throwsA(isA()), + ); + expect(published, isTrue); + expect(referrer.readAsStringSync(), '# Concurrent external edit\n'); + for (final entry in originals.entries) { + if (entry.key != referrer.path) { + expect(File(entry.key).readAsStringSync(), entry.value); + } + } + }, + ); + test( 'analysis finds every tree, topic link, include, and start page', () async { @@ -1950,6 +2309,37 @@ Other: Other guide. ); } +Map _sources(Directory root) => { + for (final file in root.listSync(recursive: true).whereType()) + file.path: file.readAsStringSync(), +}; + +Future<({Directory root, WritersideModule module})> _homeFixture({ + String? referrer, + String? otherTree, +}) => _fixture( + trees: { + 'guide.tree': + ''' + + + + + ${referrer == null ? '' : ''} + +''', + if (otherTree != null) 'other.tree': otherTree, + }, + configuredTrees: ['guide.tree', if (otherTree != null) 'other.tree'], + topics: { + 'doomed.md': '# Doomed\n\nReusable.\n', + 'guides/new.md': '# New\n', + 'elsewhere/new.md': '# New\n', + 'outside.md': '# Outside\n', + if (referrer != null) 'referrer.md': referrer, + }, +); + Future<({Directory root, String mainRoot, String sharedRoot})> _projectFixture({ required String mainTree, required String sharedTree, From 9ae0a679a9b67d91527f2534b5a9f93a31a6f850 Mon Sep 17 00:00:00 2001 From: albert Date: Thu, 8 Oct 2026 00:38:00 -0700 Subject: [PATCH 8/9] Update README to include Nextcloud Notes features and integration details --- README.md | 42 +++++++++++++++++++++++++++++++++++------- 1 file changed, 35 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 8f226b99..291b2bf6 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # BusyMark -Markdown and Writerside editor for Linux. +Markdown, Writerside, and Nextcloud Notes editor for Linux. [![busymark](https://snapcraft.io/busymark/badge.svg)](https://snapcraft.io/busymark) @@ -14,11 +14,11 @@ Markdown and Writerside editor for Linux. * **Markdown editing** — Source, Editor, Reading, and Split views with formatting tools, syntax highlighting, code folding, tables, images, links, code blocks, callouts, collapsible content, and document diagnostics. * **Writerside projects** — Open and create Writerside-compatible projects; edit Markdown and XML topics; manage instances, tables of contents, reusable TOC libraries, and project structure. -* **[Nextcloud Notes](docs/development/nextcloud-notes.md)** — Remote note workspaces with offline-safe synchronization, categories, favorites, and attachments. -* **Project navigation and search** — Files, Topics, and Outline views, tabbed documents, command palette, keyboard shortcuts, document search and replace, reviewed workspace-wide replacement, and Markdown TOC generation. +* **Nextcloud Notes** — Connect to a Nextcloud server, create and edit notes offline, synchronize changes, search and filter notes, manage categories and favorites, and work with attachments. +* **Navigation and search** — Files, Topics, and Outline views, tabbed documents, command palette, keyboard shortcuts, document search and replace, reviewed replacement across local workspaces, and Markdown TOC generation. * **Technical documentation** — Local rendering of Mermaid, PlantUML, D2, fenced OpenAPI specifications, and MathJax mathematical expressions. * **PDF and HTML publishing** — Export Markdown documents and Writerside instances to configurable PDF or portable offline HTML, with controls for layout, typography, tables of contents, heading numbering, and HTML styling. -* **Git integration** — Review changes and diffs, stage and unstage files, commit, create and switch branches, fetch, pull, push, inspect file and project history, compare historical versions, and restore earlier file versions. +* **Git integration for local workspaces** — Review changes and diffs, stage and unstage files, commit, create and switch branches, fetch, pull, push, inspect file and project history, compare historical versions, and restore earlier file versions. * **Clipboard and Local History** — Reuse source, rich-text, and image fragments during the current session; compare and restore persistent on-device document revisions independently of Git. * **AI-assisted editing** — Optional Ollama, OpenAI, and Gemini integration with explicit edit scope and shared context, proposal review before changes are applied, and AI-assisted Git commit-message drafting. * **Workspace reliability** — Detect files changed outside BusyMark, recover unsaved documents, restore previous workspace sessions, manage remote-image permissions, and protect Git operations behind workspace trust. @@ -187,10 +187,38 @@ More information: * [Admonitions](docs/admonitions.md) * [Collapsible elements](docs/collapsible-elements.md) +## Nextcloud Notes + +BusyMark can open a **Nextcloud Notes** workspace alongside its local Markdown and Writerside workflows. Notes stay associated with your Nextcloud account rather than a folder on your computer. + +### Connect your account + +1. Ensure the **Notes** app is enabled on your Nextcloud server. +2. On BusyMark’s welcome screen, choose **Nextcloud Notes**. You can also open **Settings → Nextcloud Notes**. +3. Enter the full **HTTPS** address of your Nextcloud server and click **Connect**. +4. Complete authorization in your default web browser. BusyMark verifies Notes compatibility and opens the note workspace. + +Once connected, select **Nextcloud Notes** on the welcome screen to reopen the workspace. Use **Settings → Nextcloud Notes** to open it, reconnect, or disconnect the account. **One Nextcloud account can be connected at a time.** + +### Work with notes + +* **Create and edit:** Create notes from the Notes sidebar and edit them using the normal Markdown editor. Use each note’s menu to change its title, category, or favorite status, save a separate local copy, or delete the note. +* **Find and organize:** Search notes by title, content, or category; filter by favorites or category; and see synchronization status in the note list and editor. +* **Work offline:** Edits and new notes are saved to local storage before they are synchronized. Pending changes can survive an application restart. Synchronization runs when a connection is available; the sidebar’s **Refresh** control requests another pass. +* **Review conflicts:** If a note changes on the server while you have local edits, BusyMark preserves the competing versions for review instead of silently overwriting one. The comparison workflow supports choosing a version, merging changes, or recovering content as a separate note. Ambiguous note-creation results also require explicit review. +* **Use attachments:** Add files to notes, view supported images and media, and include managed resources when exporting Markdown or HTML. PDF export includes supported images but does not embed arbitrary file attachments. New uploads are limited to **100 MiB per file**. +* **Export or recover:** Export individual notes to PDF or offline HTML, use **Save As** to create an independent local Markdown copy, and restore earlier content through Local History. + +### Requirements and limitations + +* BusyMark requires a server advertising **Nextcloud Notes API 1.4 or later in API major version 1**. Notes 6.0.x and 6.1.x are supported baselines. **Deleting attachments** requires Notes 6.1.0 or newer. +* Connections require HTTPS and certificates trusted by the operating system. Sign-in uses Nextcloud’s browser-based Login Flow; the resulting app password is stored in the Linux keyring (libsecret), not in the notes database. + ## Search and replace BusyMark supports active-document replacement and reviewed workspace-wide -replacement. See [Search and replace](docs/search-and-replace.md) for search +replacement for local workspaces. Nextcloud Notes supports replacement within +individual notes, but not workspace-wide replacement. See [Search and replace](docs/search-and-replace.md) for search options, scope, preview behavior, and stale-result handling. ## Diagrams and mathematics @@ -204,7 +232,7 @@ See: ## Export -BusyMark can export the current Markdown document or a Writerside instance to PDF and portable offline HTML. +BusyMark can export the current Markdown document (including a Nextcloud note) or a Writerside instance to PDF and portable offline HTML. PDF export supports configurable paper size, orientation, margins, typography, headers and footers, page numbering, table of contents, and heading numbering. @@ -233,7 +261,7 @@ undo, crash recovery, and Git. Implementation and verification details are in Issues and focused pull requests are welcome. -Changes should remain consistent with BusyMark's current scope as a desktop Markdown and Writerside documentation editor. +Changes should remain consistent with BusyMark's scope as a Linux desktop editor for Markdown, Writerside documentation, and Nextcloud Notes. ## License From f8d8e10f5b880d7ad8596dc0685d07f9d3831778 Mon Sep 17 00:00:00 2001 From: albert Date: Thu, 8 Oct 2026 01:47:16 -0700 Subject: [PATCH 9/9] Fix release verification races and editor test focus --- README.md | 2 +- test/src/local_history_workspace_test.dart | 3 + test/src/source_editor_widget_test.dart | 5 +- test/src/spelling_service_test.dart | 7 ++- test/src/spelling_workspace_test.dart | 30 +++++---- test/src/wysiwyg_clipboard_test.dart | 72 ++++++++++++++-------- test/support/widget_async.dart | 29 +++++++++ 7 files changed, 104 insertions(+), 44 deletions(-) create mode 100644 test/support/widget_async.dart diff --git a/README.md b/README.md index 291b2bf6..7b710201 100644 --- a/README.md +++ b/README.md @@ -212,7 +212,7 @@ Once connected, select **Nextcloud Notes** on the welcome screen to reopen the w ### Requirements and limitations * BusyMark requires a server advertising **Nextcloud Notes API 1.4 or later in API major version 1**. Notes 6.0.x and 6.1.x are supported baselines. **Deleting attachments** requires Notes 6.1.0 or newer. -* Connections require HTTPS and certificates trusted by the operating system. Sign-in uses Nextcloud’s browser-based Login Flow; the resulting app password is stored in the Linux keyring (libsecret), not in the notes database. +* Connections require HTTPS and certificates trusted by the operating system. Authentication uses Nextcloud’s browser-based Login Flow; the resulting app password is stored in the Linux keyring (libsecret), not in the notes database. ## Search and replace diff --git a/test/src/local_history_workspace_test.dart b/test/src/local_history_workspace_test.dart index 8687f37d..c00262aa 100644 --- a/test/src/local_history_workspace_test.dart +++ b/test/src/local_history_workspace_test.dart @@ -4337,6 +4337,8 @@ void main() { ); final owner = await _harness( store, + // Keep this staged remap unreconciled while testing live-owner recovery. + fileMonitor: _ControlledFileMonitor(), sessionStore: sessions, recoveryStore: ownerRecovery, ); @@ -4364,6 +4366,7 @@ void main() { sessions.value?.pendingLocalHistoryReconciliations.single.phase, LocalHistoryPathReconciliationPhase.committed, ); + expect(owner.state.activeBuffer!.filePath, source); final observerRecovery = _ExternallyOwnedJsonRecoveryStore( filePathOverride: recoveryFile, diff --git a/test/src/source_editor_widget_test.dart b/test/src/source_editor_widget_test.dart index 1a4e3a27..1bece9ed 100644 --- a/test/src/source_editor_widget_test.dart +++ b/test/src/source_editor_widget_test.dart @@ -9365,6 +9365,7 @@ Future _pumpClipboardSourceEditor( width: 900, height: 600, child: BusyMarkSourceEditor( + key: UniqueKey(), text: source, language: SourceSyntaxLanguage.markdown, documentFormat: documentFormat, @@ -9397,8 +9398,10 @@ Future _pumpClipboardSourceEditor( ), ); final field = find.byType(TextField); - await tester.tap(field); + // Clipboard tests need keyboard focus; the centre can hit a selection + // toolbar instead. Each mount starts an independent editor session. await tester.showKeyboard(field); + expect(tester.widget(field).focusNode!.hasFocus, isTrue); return tester.widget(field).controller!; } diff --git a/test/src/spelling_service_test.dart b/test/src/spelling_service_test.dart index c62577f9..59b337b0 100644 --- a/test/src/spelling_service_test.dart +++ b/test/src/spelling_service_test.dart @@ -4865,10 +4865,11 @@ void main() { applicationSupportRoot: p.join(temporary.path, 'support'), dictionaryStorageRoot: p.join(temporary.path, 'dictionary-storage'), wordStoreReader: (store) async { + final snapshot = await store.read(); if (!store.projectStore && ++personalReads == 3) { secondPersonalRefresh.complete(); } - return store.read(); + return snapshot; }, catalogLoader: ({ @@ -4897,7 +4898,9 @@ void main() { await entered.future; final second = controller.prepareSettings(null); await secondPersonalRefresh.future; - await Future.delayed(Duration.zero); + // The read has completed; drain its continuations so the second prepare + // joins the catalog request before releasing that request. + await Future(() {}); expect(loads, 2); release.complete(); await Future.wait([first, second]); diff --git a/test/src/spelling_workspace_test.dart b/test/src/spelling_workspace_test.dart index 4bee497a..6246d316 100644 --- a/test/src/spelling_workspace_test.dart +++ b/test/src/spelling_workspace_test.dart @@ -37,6 +37,7 @@ import 'package:flutter_test/flutter_test.dart'; import 'package:path/path.dart' as p; import '../support/spelling_test_bundle.dart'; +import '../support/widget_async.dart'; void main() { final l10n = AppLocalizationsEn(); @@ -1503,6 +1504,7 @@ void main() { harness.workspace.activeBuffer?.editorState.spellingLanguage, const SpellingLanguageOverride.inherit(), ); + expect(harness.spelling.catalog?.installedById('fr-Test'), isNull); releaseDownload.complete(); await _until( @@ -1510,10 +1512,17 @@ void main() { () => harness.workspace.activeBuffer?.editorState.spellingLanguage == const SpellingLanguageOverride.selected('fr-Test'), + diagnostics: () => + 'downloads=$downloadCount, ' + 'installation=${harness.spelling.dictionaryInstallStatus}, ' + 'override=${harness.workspace.activeBuffer?.editorState.spellingLanguage}', ); + expect(downloadCount, 2); expect(harness.spelling.catalog?.installedById('fr-Test'), isNotNull); + expect(harness.spelling.dictionaryInstallStatus, isNull); await tester.pump(const Duration(milliseconds: 300)); await _until(tester, () => harness.spelling.state.complete); + expect(harness.spelling.effectiveLanguage, 'fr-Test'); }); testWidgets('failed document dictionary install preserves override', ( @@ -1712,19 +1721,14 @@ Future _until( Duration timeout = const Duration(seconds: 10), String Function()? diagnostics, }) async { - final elapsed = Stopwatch()..start(); - while (!condition()) { - if (elapsed.elapsed > timeout) { - throw TimeoutException( - 'Spelling workspace did not settle. ${diagnostics?.call() ?? ''}', - ); - } - await tester.pump(const Duration(milliseconds: 50)); - await tester.runAsync( - () => Future.delayed(const Duration(milliseconds: 10)), - ); - } - await tester.pump(); + await pumpUntil( + tester, + condition, + operation: 'Spelling workspace', + timeout: timeout, + frameStep: const Duration(milliseconds: 50), + diagnostics: diagnostics, + ); } class _Settings implements LocalSettingsStore { diff --git a/test/src/wysiwyg_clipboard_test.dart b/test/src/wysiwyg_clipboard_test.dart index b8016d3c..fb21f013 100644 --- a/test/src/wysiwyg_clipboard_test.dart +++ b/test/src/wysiwyg_clipboard_test.dart @@ -37,6 +37,8 @@ import 'package:flutter_test/flutter_test.dart'; import 'package:html/parser.dart' as html; import 'package:path/path.dart' as p; +import '../support/widget_async.dart'; + const _source = '# Issues\n\n**When** selecting all, keep *formatting*.\n\n- [ ] First task\n- [x] Second task\n'; const _parser = MarkdownParser(); @@ -1021,19 +1023,11 @@ void main() { required String operation, String Function()? diagnostics, }) async { - // Image ingestion performs real filesystem I/O outside FakeAsync. Pump - // until the observable stage completes, retaining a bounded failure. - final deadline = DateTime.now().add(const Duration(seconds: 10)); - while (!complete() && DateTime.now().isBefore(deadline)) { - await tester.runAsync( - () => Future.delayed(const Duration(milliseconds: 25)), - ); - await tester.pump(); - } - expect( - complete(), - isTrue, - reason: '$operation did not complete. ${diagnostics?.call() ?? ''}', + await pumpUntil( + tester, + complete, + operation: operation, + diagnostics: diagnostics, ); } @@ -3942,6 +3936,25 @@ void main() { expect(find.byKey(BusyMarkImageDialogKeys.choose), findsOneWidget); } + Future chooseImage(File file, int publicationCount) async { + final commitsBefore = committed.length; + picks.add(file.path); + await tester.tap(find.byKey(BusyMarkImageDialogKeys.choose)); + await waitForCount(published, publicationCount); + final sourceField = find.descendant( + of: find.byKey(BusyMarkImageDialogKeys.source), + matching: find.byType(TextField), + ); + await waitForImageIo( + tester, + () => + tester.widget(sourceField).controller!.text == + published.last.markdownPath, + operation: 'selected image reflected in dialog', + ); + expect(committed, hasLength(commitsBefore)); + } + systemData = {'text': files[0].path}; var result = 'Target\n'; await mount( @@ -3956,9 +3969,7 @@ void main() { await key(tester, LogicalKeyboardKey.keyV); await waitForCount(published, 1); await waitForDialog(); - picks.add(files[1].path); - await tester.tap(find.byKey(BusyMarkImageDialogKeys.choose)); - await waitForCount(published, 2); + await chooseImage(files[1], 2); await tester.tap(find.byKey(BusyMarkImageDialogKeys.cancel)); await tester.pumpAndSettle(); await waitForCount(rolledBack, 2); @@ -3980,11 +3991,8 @@ void main() { await key(tester, LogicalKeyboardKey.keyV); await waitForCount(published, 3); await waitForDialog(); - picks.addAll([files[1].path, files[2].path]); - await tester.tap(find.byKey(BusyMarkImageDialogKeys.choose)); - await waitForCount(published, 4); - await tester.tap(find.byKey(BusyMarkImageDialogKeys.choose)); - await waitForCount(published, 5); + await chooseImage(files[1], 4); + await chooseImage(files[2], 5); await tester.tap(find.byKey(BusyMarkImageDialogKeys.submit)); await tester.pumpAndSettle(); await waitForCount(committed, 1); @@ -4016,9 +4024,7 @@ void main() { await key(tester, LogicalKeyboardKey.keyV); await waitForCount(published, 6); await waitForDialog(); - picks.add(files[1].path); - await tester.tap(find.byKey(BusyMarkImageDialogKeys.choose)); - await waitForCount(published, 7); + await chooseImage(files[1], 7); final destination = tester.widget( find.widgetWithText(TextField, 'Target'), ); @@ -4082,6 +4088,9 @@ void main() { assetIngestionService: ingestion, hostToasts: true, ); + final l10n = AppLocalizations.of( + tester.element(find.byType(BusyMarkWysiwygEditor)), + ); await key(tester, LogicalKeyboardKey.keyV); await waitForImageIo( tester, @@ -4092,8 +4101,8 @@ void main() { await tester.tap(find.byKey(BusyMarkImageDialogKeys.submit)); await waitForImageIo( tester, - () => commitAttempts > 0, - operation: 'failed image commit attempt', + () => find.text(l10n.clipboardUnavailable).evaluate().isNotEmpty, + operation: 'failed image commit reported to the user', ); expect(commitAttempts, 1); @@ -4109,7 +4118,7 @@ void main() { await tester.runAsync( () => File(published.single.absolutePath).readAsBytes(), ), - isNotEmpty, + await tester.runAsync(source.readAsBytes), ); final pending = await tester.runAsync( () => Directory('${root.path}/images/.busymark-asset-transactions') @@ -4121,6 +4130,15 @@ void main() { .toList(), ); expect(pending, hasLength(1)); + final recordSource = await tester.runAsync( + () => File(pending!.single.path).readAsString(), + ); + final record = jsonDecode(recordSource!) as Map; + expect(record['publicationToken'], published.single.publicationId); + expect( + record['finalFilename'], + p.basename(published.single.absolutePath), + ); }, ); diff --git a/test/support/widget_async.dart b/test/support/widget_async.dart new file mode 100644 index 00000000..7ec4c0cf --- /dev/null +++ b/test/support/widget_async.dart @@ -0,0 +1,29 @@ +import 'dart:async'; + +import 'package:flutter_test/flutter_test.dart'; + +/// Drives both Flutter's fake clock and real I/O until an observable result. +Future pumpUntil( + WidgetTester tester, + bool Function() complete, { + required String operation, + Duration timeout = const Duration(seconds: 10), + Duration frameStep = Duration.zero, + String Function()? diagnostics, +}) async { + final elapsed = Stopwatch()..start(); + while (!complete()) { + if (elapsed.elapsed >= timeout) { + throw TimeoutException( + '$operation did not complete. ${diagnostics?.call() ?? ''}', + ); + } + await tester.pump(frameStep); + if (!complete()) { + // Let file/isolate events run, then flush their FakeAsync continuations + // on the next pump. Sleeping here adds latency to every I/O boundary. + await tester.runAsync(() => Future(() {})); + } + } + await tester.pump(); +}